Newbie
ออฟไลน์
กระทู้: 20
|
โครงสร้าง Directory ของระบบ Solaris
หลังจากติดตั้ง OS เสร็จแล้วจะปรากฏ Directory ต่างๆเกิดขึ้นดังต่อไปนี้
ชื่อ directory รายละเอียด / เป็น root file system ที่ใช้เก็บไฟล์หรือ Directory ทั้งหมดบน UNIX Platform /bin เป็น Directory ที่ใช้เก็บคำสั่งหรือ Binary ไฟล์ /dev เป็น Directory ที่ใช้เก็บ logical devices ไฟล์ทั้งหมด เช่น ดิสก์ เทป หน่วยความจำ เป็นต้น /devices เป็น Directory ที่ใช้เก็บ physical devices ไฟล์ทั้งหมด /etc เป็น Directory ที่ใช้เก็บ Configuration ไฟล์ที่สามารถแก้ไขเปลี่ยนแปลงเพื่อกำหนดค่าใหม่ได้ /kernel เป็น Directory ที่ใช้เก็บ kernel ไฟล์ที่ต้องโหลดขึ้นหน่วยความจำเวลาบูตเครื่อง /opt เป็น Directory ที่ใช้เก็บ Add On package หรือโปรแกรมที่ลงเพิ่มนอกเหนือจาก OS /sbin เป็น Directory ที่ใช้เก็บคำสั่งหรือ Binary ไฟล์ที่จำเป็นต้องใช้เวลาบูตเครื่อง /tmp เป็น Directory ที่ใช้เก็บข้อมูลชั่วคราว(Temporary files) เมื่อเครื่องรีบูตใหม่จะทำให้ข้อมูลในนี้ถูกลบทั้งหมด /usr เป็น Directory ที่ใช้เก็บโปรแกรม Scripts และ Library ที่ User ทุกคนใช้งาน /var เป็น Directory ที่ใช้เก็บ Log และ messages ไฟล์ หรือไฟล์ที่มีการเปลี่ยนแปลงบ่อย ๆ (Varying files)
โครงสร้าง Device Directories
เมื่อต้องการเรียกใช้อุปกรณ์ต่างๆ จากระบบ จะต้องทราบที่อยู่ของ Device ต่างๆ ซึ่งมีดังต่อไปนี้
ชื่อ directory รายละเอียด /dev/cua เป็น Directory ที่ใช้เก็บ device ของ serial port มี A , B (เวลาเรียกใช้ /dev/cua/a , /dev/cua/b) /dev/term เป็น Directory ที่ใช้เก็บ device ของ serial port มี A , B (เวลาเรียกใช้ /dev/term/a , /dev/term/b) /dev/dsk เป็น Directory ที่ใช้เก็บ devices ของ disk เรียกใช้หลังจาก newfs แล้ว (mount) /dev/rdsk เป็น Directory ที่ใช้เก็บ raw devices ของ disk เรียกใช้ในการทำ (newfs , fsck) /dev/md/dsk เป็น Directory ที่ใช้เก็บ devices ของ disk เรียกใช้หลังจาก newfs แล้ว (mount) ใช้ S/W SDS /dev/md/rdsk เป็น Directory ที่ใช้เก็บ raw devices ของ disk เรียกใช้ในการทำ (newfs , fsck) ใช้ S/W SDS /dev/vx/dsk เป็น Directory ที่ใช้เก็บ devices ของ disk เรียกใช้หลังจาก newfs แล้ว (mount) ใช้ S/W VxFs /dev/vx/rdsk เป็น Directory ที่ใช้เก็บ raw devices ของ disk เรียกใช้ในการทำ (newfs , fsck) ใช้ S/W VxFs /dev/fbs เป็น Directory ที่ใช้เก็บ device ของการ์ดจอ /dev/rmt เป็น Directory ที่ใช้เก็บ device ของ เทป /dev/pts เป็น Directory ที่ใช้เก็บ device ของหน้าจอ กรณี telnet ถ้าเต็มจะ telnet เข้าไม่ได้
ประเภทของไฟล์ การระบุชนิดของไฟล์ทำได้หลายรูปแบบเช่น ls –l , ls –F
ส่วนประกอบของไฟล์
Symbolic link คือการเชื่อมระหว่างไฟล์ไปหาไฟล์หรือ Directory อื่น ทำหน้าที่คล้ายๆ Short Cut บน windows
การสร้าง Symbolic link # ln –s files1 link1
Hard link คือการเชื่อมระหว่างไฟล์ไปหาไฟล์หรือ Directory อื่น แต่กำหนดหลายชื่อไฟล์ไปที่ Inodes เดียวกัน ทำหน้าที่คล้ายๆ Short Cut บน windows การดูใช้ ls -il
การสร้าง Hard link # ln files2 link2
การลบ link ทำได้สองวิธี คือใช้ unlink หรือ rm # unlink link1
# rm link1
บทที่ 3 Open Boot PROM (OK prompt) OBP ทำหน้าที่คล้าย CMOS บนเครื่อง Windows แต่จะมี command ให้ใช้ได้มากกว่า ถ้าต้องการให้ OBP แสดงคำหลังคำนั้น ให้คีย์ตัวอักษรและตามด้วย Ctrl + / การเข้าสู่ OK prompt มีสองทางคือ init 0, halt ,shutdown ,stop A (ตอนเครื่องเริ่ม boot ใหม่ๆเท่านั้น) * การ Stop A จะเป็นการทำระบบหยุดการทำงานทันที
ตารางแสดง command ของ OK prompt command รายละเอียด banner แสดง รุ่น,CPU, จำนวน memory , hostid , mac address , OBP version probe-scsi-all ตรวจสอบ ค้นหา อุปกรณ์ที่เป็น SCSI device probe-fcal-all ตรวจสอบ ค้นหา อุปกรณ์ที่เป็น Fiber device probe-ide-all ตรวจสอบ ค้นหา อุปกรณ์ที่เป็น IDE device set-defaults ปรับค่า printenv ให้เป็นค่าที่มากับเครื่อง printenv แสดงค่า ต่างๆของระบบ env setenv เป็นการแก้ไขค่า env devalias แสดงชื่อที่ระบบสร้างใว้ เพื่อง่ายต่อการใช้งานของ disk , CDROM , network nvalias สร้างชื่อเพื่อง่ายต่อการใช้งาน disk , CDROM , network nvstore บันทึกการสร้างชื่อเพื่อง่ายต่อการใช้งาน nvunalias ลบการสร้างชื่อเพื่อง่ายต่อการใช้งาน show-disks แสดง part ของ device เพื่อง่ายต่อการสร้าง nvalias เพื่อการไม่ต้องคีย์
บทที่ 3 การ boot และ shutdown ระบบ สถานะของระบบมีทั้งหมดอยู่ 6 level การเปลี่ยน level ทำได้ที่ OK prompt หรือที่ (#) prompt และจะมี run script ต่างๆใน /etc/rc#.d (# คือ lelvel เช่น /etc/rcS.d , /etc/rc3.d ) การที่จะ Start หรือ Stop โปรแกรมโดยมีตัวอักษรนำหน้า S = start , K = stop ปกติของระบบจะทำงานอยู่ที่ level 3 เราสามารถย้ายไป level ต่างๆได้ โดย init ตามด้วย level การตรวจสอบสถานะของ lever ทำได้ด้วย command # who -r level มีสถานะของ level มีดังนี้ Level สถานะการทำงาน Level 0 อยู่ที่ ok prompt Level 1,S,s ใช้งานได้เฉพาะ root user (ถ้า boot จาก ok prompt ส่วนใหญ่จะใช้ boot –s ) Level 2 ใช้งานได้ไม่จำกัด user แต่ไม่มีการ share files ผ่าน network Level 3 ใช้งานได้ไม่จำกัด user และมีการ share files ผ่าน network Level 5 หลังจาก shutdown ระบบจะปิดเครื่อง Level 6 Reboot ระบบ
ตัวอย่าง ต้องการไปที่ ok promt # init 0 ตัวอย่าง การ boot เป็น level 1 OK boot -s
การ Shutdown แบบอื่นๆ เป็น command ในการ shutdown ระบบแต่จะไม่ไปอ่าน script ในแต่ละ level ที่เขียนเพิ่มใว้ บางที่ถ้าใช้ command เหล่านี้ Database หรือ application บางตัวอาจจะ start ไม่ได้ Level สถานะการทำงาน halt Shutdown แบบทันทีให้มาอยู่ที่ OK prompt reboot ทำการ reboot ระบบทันที poweroff Shutdown แบบทันทีและปิดเครื่องให้
การใช้ shutdown จะมี messages บอก user ที่ login อยู่ให้ทราบเท่านั้น โดย y = yes , i = level ที่ต้องการจะเปลี่ยน g = วินาทีที่จะเริ่ม # shutdown –y –i0 –g0
บทที่ 3 คำสั่ง Unix เบื้องต้น ระบบ Unix เป็นระบบที่ต้องใช้ความจำในการใช้งาน ตัวอักษรเล็ก ตัวอักษรใหญ่ มีผลต่อการใช้งาน แม้กระทั่งเครื่องหมาย – กรณีใส่ option ติดกันหรือไม่ติดกัน การวรรคหรือไม่เว้นวรรค ก็มีผลต้องพิจารณาให้ดีตรวจสอบก่อนที่จะ enter ถ้าจำการใช้งานไม่ได้ให้ใช้ man ตามด้วยคำสั่ง เช่น # man ls , man date , man id , etc.
# date เรียกดู วัน เดือน ปี และเวลาปัจจุบัน ถ้าต้องการเปลี่ยน # date mmddHHMMYYYY # cal เรียกดู ปฏิทิน ถ้าต้องการระบุ เช่น # cal 3 2001 , # cal 2007 # who แสดง user ที่ใช้บนระบบ # who -r แสดงสถานะของ level ปัจจุบัน # su - user เป็นการย้าย user โดย – คือการ run profile ของ user ด้วย ไม่ใส่ profile จะเป็นขอ user ที่ย้ายมา ออกโดย exit # whoami แสดงชื่อ user ปัจจุบัน # who am i แสดงชื่อ user แรกที่ login เข้ามา # id แสดงชื่อ user,group, user ID , group ID ปัจจุบัน # mkdir ชื่อไดเรคทอรี สร้างไดเรคทอรีเปล่า # rmdir ชื่อไดเรคทอรี ลบไดเรคทอรีเปล่า # touch ชื่อไฟล์ สร้างไฟล์เปล่า เอาใว้ใช้ทดสอบการเขียน harddisk # rm ชื่อไฟล์ ลบไฟล์ ถ้าต้องการลบไดเรคทอรีให้ใส่ –r # pwd แสดงไดเรคทอรีปัจจุบัน
# passwd ชื่อuser เปลี่ยน password ของ user # more ชื่อไฟล์ ดูข้อความข้างในไฟล์ ที่เป็นไฟล์ข้อความ โดยจะหยุดให้อ่านทีละหน้า หรือใช้ร่วมกับคำสั่งอื่น เช่น # ps -ef | more # cat ชื่อไฟล์ ดูข้อความข้างในไฟล์ ที่เป็นไฟล์ข้อความ โดยจะไม่หยุดทีละหน้าและอ่านรวดเดียวจนจบ # showrev แสดงชื่อ host, version ของ Solaris, Kernel architecture , CPU type , Application architecture , hostID , Kernel patches # showrev -p แสดงชื่อ patches ทั้งหมด # uname -a แสดงชื่อ host, version ของ Solaris, Kernel architecture, CPU type, Application architecture, Kernel patches # clear ล้างหน้าจอ # clear;pwd;date;uname -a ; ทำหน้าที่เหมือน Enter สามารถใช้หลายคำสั่งได้ในบรรทัดเดียว # mv ต้นทาง ปลายทาง ย้ายไฟล์หรือไดเรคทอรี โดย สิทธิ เจ้าของไฟล์ กลุ่มของไฟล์ ยังเหมือนเดิม ทำหน้าที่คล้ายๆ cut บน windows แต่สามารถกำหนดได้ว่าปลายทางจะให้เป็นชื่อเดิมหรือชื่อใหม่ เช่น # mv /tmp/a / ;ทำการย้ายไฟล์ a จากไดเรคทอรี tmp ไปที่ไดเรคทอรี / # mv /tmp/a /b ;ทำการย้ายไฟล์ a จากไดเรคทอรี tmp ไปที่ไดเรคทอรี / และเปลี่ยนชื่อเป็น b *ถ้ามีไดเรคทอรี b อยู่จะเป็นการ ย้ายไฟล์ a จากไดเรคทอรี tmp ไปที่ไดเรคทอรี /b # cp -rp ต้นทาง ปลายทาง สำเนาไฟล์หรือไดเรคทอรี ; สิทธิ เจ้าของไฟล์ กลุ่มของไฟล์ จะเปลี่ยนเป็นของ user ที่ทำการสำเนา ถ้าต้องการให้ สิทธิ เจ้าของไฟล์ กลุ่มของไฟล์ ยังเหมือนเดิม ต้องใส่ –p ถ้าต้องการสำเนาไดเรคทอรีต้องใส่ –r เช่น # cp -pr /tmp/a / ;ทำการสำเนาไฟล์หรือไดเรคทอรี a จากไดเรคทอรี tmp ไปที่ไดเรคทอรี / # cp -pr /tmp/a /b ;ทำการสำเนาไฟล์หรือไดเรคทอรี a จากไดเรคทอรี tmp ไปที่ไดเรคทอรี /b และ เปลี่ยนชื่อเป็น b *ถ้ามีไดเรคทอรี b อยู่จะเป็นการ สำเนาไฟล์ a จากไดเรคทอรี tmp ไปที่ไดเรคทอรี /b * ควรต้องใส่ –p เสมอเพื่อให้คง เจ้าของไฟล์ กลุ่มของไฟล์ ยังเหมือนเดิมเพราะ database จะใช้ไม่ได้ # ls -lFatR ชื่อไฟล์หรือไดเรคทอรี(ไม่ใส่ก็ได้) เรียกดูไฟล์หรือไดเรคทอรี เช่น # ls -alt -l แสดงรายละเอียด ชนิดของไฟล์หรือไดเรคทอรี สิทธิ เจ้าของไฟล์ กลุ่มของไฟล์ วันเวลาที่มีการแก้ไข -F แสดงเครื่องหมายพิเศษด้วย เช่น ( / ) คือไดเรคทอรี , ( * ) คือไฟล์ที่สั่งรันได้ , (@) คือ symbolic link -a แสดงไฟล์หรือไดเรคทอรีที่ซ่อน ( . ) ข้างหน้าจะเป็นสัญลักษณ์บอกว่าเป็นไฟล์หรือไดเรคทอรีที่ซ่อน -t แสดงไฟล์หรือไดเรคทอรีที่ ที่ล่าสุดจะอยู่บนสุด -R แสดง sub ไฟล์หรือไดเรคทอรีย่อยๆทั้งหมด # cd ชื่อไดเรคทอรี เปลี่ยนไดเรคทอรี เช่น# cd /usr/platform/sun4u/lib/fs/ufs , cd .. ถ้าต้องการย้ายไดเรคทอรีควรจะใส่ part ทั้งหมด . คือ ไดเรคทอรีปัจจุบัน .. คือ ไดเรคทอรีก่อนหน้านี้ # ps -ef ดู process ทั้งหมดของระบบ # kill -9 PID(หมายเลขprocess) ลบ process ; ค่า PID ได้จากคำสั่ง ps –ef # pkill CMD ลบ process ; ค่า CMD ได้จากคำสั่ง ps –ef # grep -i คำที่กำหนด ชื่อไฟล์ กรองเฉพาะคำที่ต้องการ ; -i คือตัวเล็กตัวใหญ่ระบบจะมองเหมือนกัน grep ใช้ร่วมกับหลายๆคำสั่งโดยใช้ ( | ) คั่นกลางเพื่อกรองคำสั่งนั้น เช่น # ps -ef | grep –i ora # more /etc/system | grep –i debug # cat /etc/system | grep –i debug # wc -l ชื่อไฟล์ นับบรรทัด # bc เครื่องคำนวณเลข # du -sh ไดเรคทอรี ดูขนาดของพื้นที่ disk ที่ใช้งาน เช่น # du -sh . ;ดูพื้นที่ทั้งหมดในไดเรคทอรีปัจจุบัน # du -sh * ;ดูพื้นที่แยกเป็นไดเรคทอรี # du -sh /oracle ;ดูพื้นที่ไดเรคทอรี oracle # df -hk แสดง partition ; k แสดงเป็น K byte , h แสดงเป็น mb , gb Partition ที่มาจาก disk จะต้องมาจาก device เหล่านี้เท่านั้น เช่น /dev/dsk , /dev/md/dsk , /dev/vx/dsk/disk_group_name/volume_name
# prtdiag -v แสดงรายละเอียดของเครื่อง เช่น CPU , Memory , power supply , Fan , OBP , IO และอื่นๆ # ifconfig -a แสดงรายละเอียดเกี่ยวกับระบบ network ทั้งหมด # isainfo แสดงระบบปฏิบัติการว่าเป็น 32 หรือ 64 bit ; ใช้ -v เพื่อตรวจสอบดูว่าค่าของ 32 , 64 เป็นค่าอะไร เช่น # isainfo –v # uptime แสดงตั้งแต่เครื่องเริ่มเปิดใช้งาน # rup ตรวจสอบเครื่องทั้งหมด SUN ในระบบ network # gzip ชื่อไฟล์ ลดขนาดไฟล์ให้เล็กลง (เหมือน winzip) # gunzip ชื่อไฟล์ที่เป็นชนิดgzipไฟล์ ทำให้เป็นไฟล์ปกติ # compress ชื่อไฟล์ ลดขนาดไฟล์ให้เล็กลง (เหมือน winzip) # uncompress ชื่อไฟล์ที่เป็นชนิดcompressไฟล์ ทำให้เป็นไฟล์ปกติ # find ไดเรคทอรี -name ชื่อ -print ค้นหา ชื่อ ตามที่กำหนด เช่น # find / -name bootblk -print ; ค้นหาจากไดเรคทอรี / ชื่อ bootblk # find /oracle -name sqlplus -print ; ค้นหาจากไดเรคทอรี / oracle ชื่อ sqlplus # find /var -name messages -print ; ค้นหาจากไดเรคทอรี /var ชื่อ messages
# head -n ชื่อไฟล์ข้อความ เรียกดูข้อความตามจำนวนบรรดทัดที่กำหนดจาก ต้นข้อความ เช่น # head -10 /var/adm/messages ;เรียดดูข้อความนับจากต้นไป 10 บรรทัดจากไฟล์ /var/adm/messages # head -50 /etc/system ;เรียดดูข้อความนับจากต้นไป 50 บรรทัดจากไฟล์ /etc/system # tail -n ชื่อไฟล์ข้อความ เรียกดูข้อความตามจำนวนบรรดทัดที่กำหนดจาก ท้ายข้อความ เช่น # tail -10 /var/adm/messages ;เรียดดูข้อความนับจากท้ายไป 10 บรรทัดจากไฟล์ /var/adm/messages # tail -50 /etc/system ;เรียดดูข้อความนับจากท้ายไป 50 บรรทัดจากไฟล์ /etc/system
# lp –d ชื่อPrinter ชื่อไฟล์ พิมพ์ไฟล์ *เครื่อง SUN ไม่ควรต่อ printer โดยตรงเนื่องจากจะทำให้ system board เสียง่าย
|