หลังจากทำการศึกษาเสร็จเรียบร้อยแล้ว ลองดูตัวอย่างการใช้งานคำสั่งต่างๆ บนระบบปฏิบัติการลินุกซ์ ที่จะได้ใช้อยู่บ่อยๆ ครับ ลองศึกษาดู แล้วจะรู้ว่าไม่ยากเลยนะ

วันเสาร์ที่ 26 กรกฎาคม พ.ศ. 2551

โครงสร้างของระบบไฟล์และไดเรกทอรี

โครงสร้างของระบบไฟล์และไดเรกทอรี
ในระบบยูนิกซ์ทำการเก็บข้อมูลโดยใช้ ไฟล์ และ ไดเรกทอรี เข้ามาช่วย โดยจะมีลักษณะเป็นรูปแบบของ heirachy หรือโครงสร้างแบบต้นไม้ หากคุณค้นเคยกับดอสมาก่อน จะเห็นว่ามีรูปแบบการเก็บข้อมูลที่คล้ายกัน เพียงแต่การใช้งานจะแตกต่างกันบ้าง

ไดเรกทอรีจะเปรียบเสมือนแฟ้ม ที่สามารถเก็บไฟล์ต่างๆ (เหมือนกับกระดาษ) ในไดเรกทอรีลำดับบนๆ ก็เหมือนกับแฟ้มขนาดใหญ่ ซึ่งนอกจากจะเก็บไฟล์ได้แล้วก็ยังสามารถเก็บไดเรกทอรีอื่นๆได้ด้วย

ไดเรกทอรีลำดับบนสุดจะถูกเรียกว่า ไดเรกทอรีราก (root directory) ซึ่งจะประกอบไปด้วยไฟล์และไดเรกทอรีต่างๆ ในไดเรกทอรีที่ย่อยลงมาก็อาจจะประกอบไปด้วยไฟล์และไดเรกทอรีไปเรื่อยๆ

ในไฟล์แต่ละไฟล์จะต้องมีชื่ออยู่ จะมีชื่ออยู่สองแบบที่ใช้อ้างถึงไฟล์ได้ คือชื่อแบบยาว และชื่อแบบสั้น ตัวอย่างชื่อแบบสั้นก็คือ "note" และถ้าจะอ้างถึงชื่อแบบยาว ก็อาจจะอ้างได้เป็น "/home/mary/note"

ให้สังเกตุชื่อยาวของไฟล์นี้ ตัวอักษรซ้ายสุดคือ "/" ซึ่งจะระบุถึงไดเรกทอรีราก ซึ่งเป็นไดเรกทอรีลำดับบนสุด ในไดเรกทอรีรากนี้จะมีไดเรกทอรี "home" บรรจุอยู่และภายใต้ไดเรกทอรี "home" ก็จะมีไดเรกทอรี "mary" ไฟล์ "note" ของเราก็จะอยู่ภายใต้ไดเรกทอรี "mary" นั่นเอง

สรุปคือ ในการอ้างถึงชื่อแบบยาว ชื่อทั้งหมดก่อนหน้าชื่อไฟล์ (คือ "/home/mary") จะ
เป็นชื่อของไดเรกทอรี ส่วนชื่อ "note" จึงจะเป็นชื่อของไฟล์จริงๆ

ตัวอย่างนี้เป็นโครงสร้างของไดเรกทอรีในยูนิกซ์ (เอามาให้ดูเพียงบางส่วน) ไดเรกทอรี บางอันจะเป็นไดเรกทอรีของระบบ ซึ่งจะมีการถูกใช้งานโดยเฉพาะ
การขอดูชื่อของไฟล์
ดังที่ได้แนะนำแล้วในตอนต้นของบทความ คุณสามารถจะใช้คำสั่ง "ls" เพื่อจะดูไฟล์ต่างๆ ได้ ถ้าหากคุณใช้คำสั่ง "ls" ในไดเรกทอรีที่ไม่มีไฟล์ คุณจะไม่เห็นผลลัพธ์ใดๆ (ตรง ข้ามกับดอสที่จะบอกว่า No file found) วิธีนี้เป็นรูปแบบของยูนิกซ์ที่บอกคุณให้ทราบว่าไม่มีไฟล์อะไรอยู่ในไดเรกทอรีนี้

ในการใช้งานยูนิกซ์จะมีคำพูดวลีหนึ่งคือ "No news is good news" นั่นคือระบบยูนิกซ์ จะมีการแจ้งข้อความออกมาให้น้อยที่สุด และถ้ามีการแจ้งมาแล้ว หมายความว่าอาจมีปัญหา บางอย่างเกิดขึ้นจากโครงสร้างของไดเรกทอรีข้างบนคุณอาจสงสัยว่า ในระบบยูนิกซ์มีไดเรกทอรีตั้งมากมาย และก็น่าจะมีไฟล์เป็นจำนวนมากด้วย ทำไมเมื่อสั่งแสดงผลด้วย ls ถึงปรากฏผลลัพธ์ออกมา เป็นไฟล์เพียงไม่กี่ไฟล์ ทั้งนี้ก็เนื่องจากคำสั่ง ls จะทำการแสดงชื่อของไฟล์และไดเรกทอรี ที่มีอยู่ในไดเรกทอรีที่คุณอยู่ใน

ขณะนั้น หรือ ไดเรกทอรีปัจจุบัน (current directory) คุณสามารถจะระบุให้แสดงชื่อของไฟล์ที่มีอยู่ในไดเรกทอรีอื่นก็ได้เช่น
# ls /

bin etc lost+found opt sbin var

boot home mnt proc tmp

dev lib net root usr

คำสั่งนี้จะเป็นการแสดงชื่อของไฟล์และไดเรกทอรีที่มีอยู่ในไดเรกทอรีรากออกมาหากต้องการให้มันแสดงด้วยว่าชื่อไหนเป็นไฟล์ ชื่อไหนเป็นไดเรกทอรี หรือเป็นไฟล์ ชนิดพิเศษ คุณจะต้องระบุตัวเลือก (option) เพิ่มเติมคือ option "-F" ตัวอย่าง

# ls -F /

bin/ etc/ lost+found/ opt/ sbin/ var/

boot/ home/ mnt/ proc/ tmp/

dev/ lib/ net/ root/ usr/

ให้ทดลองใช้คำสั่ง ls กับไดเรกทอรีอื่นๆดู โดยทั่วไปแล้วยูนิกซ์ส่วนใหญ่ จะต้องมีการระบุ option ด้วย ซึ่งถ้าคุณใช้ man ดูคุณอาจจะวเห็น รูปแบบของการใช้งานคำสั่งคล้ายๆกับดังต่อไปนี้

ls [-arF] [directory]

นี่คือ รูปแบบ (template) ของคำสั่ง คุณจะสังเกตุเห็นเครื่องหมาย "[" และ "]" สิ่งที่ระบุไว้ในเครื่องหมายก้ามปูดังกล่าว หมายความว่าเป็น option เราอาจจะใส่หรือ ไม่ใส่ไว้ก็ได้

การปฏิบัติการกับไฟล์
ในระบบยูนิกซ์เป็นระบบที่เกี่ยวข้องกับผู้ใช้หลายคน ดังนั้นระบบยูนิกซ์จึงมีการกำหนดเกี่ยวกับเรื่องสิทธิ์ที่จะเข้าถึงแฟ้มข้อมูล (file permission) ในระบบได้ ซึ่งคุณสามารถจะขอดู permission ของไฟล์ได้จากคำสั่ง
$ ls -l

drwxr-xr-x 2 root root 1024 Nov 17 21:49 axhome

drwxr-xr-x 2 root root 1024 Dec 28 13:57 backup

-rw------- 1 root root 6 Mar 31 23:26 dead.letter

-rw------- 1 root root 3075 Apr 15 03:49 mbox

จะเห็นคอลัมน์แรก ซึ่งจะเป็นคอลัมน์ที่ระบุเกี่ยวกับเรื่อง permission ของไฟล์

type คือชนิดของไฟล์ ถ้าหากไม่ระบุ (-) จะหมายความว่าเป็นไฟล์ปกติ แต่ถ้าหากเป็น (d) จะหมายความว่าเป็นไดเรกทอรี และถ้าเป็น (b) จะหมายถึงเป็น device file แบบ block หากเป็น (c) หมายถึง device file แบบ character นอกจากนั้นยัง มีรูปแบบชนิดอื่นๆอีกuser permission จะระบุระดับการอนุญาตให้เข้าถึงไฟล์ในระดับผู้ใช้ (ตัวเอง)
r จะหมายถึง "อ่านไฟล์ได้" (readable)
w จะหมายถึง "เขียนไฟล์ได้" (writable)
x จะหมายถึง "สามารถเรียกใช้งานได้ หรือรันได้" (executable)

group permission จะระบุระดับการอนุญาตให้เข้าถึงไฟล์ในระดับกลุ่มผู้ใช้ (group) ซึ่งจะมีรูปแบบเหมือนกับ user permission

other permission จะระบุระดับการอนุญาตให้เข้าถึงไฟล์ในระดับผู้ใช้รายอื่นๆ ที่ไม ได้อยู่กลุ่มเดียวกัน รูปแบบก็จะเหมือนกันกับ user permission

ในระบบยูนิกซ์จะมีไฟล์ที่มองไม่เห็นอยู่ด้วย (hidden file) ซึ่งไฟล์เหล่านี้เมื่อ ใช้คำสั่ง ls ธรรมดา จะไม่สามารถมองเห็นได้ เราจะต้องใช้ option -a ดังตัวอย่าง
# ls -a

. .saves-622-daffy.kaiwal.com~

.. .seyon

.FVWM95-errors .tcshrc

.Xauthority .tin

.Xclients .xboing-scores

.Xclients,bkp .xfm

.Xdefaults .xsession

.bash_history .xsession-errors

.bash_logout axhome

.bash_profile backup

.bashrc dead.letter

.cshrc mbox

hidden file เหล่านี้จะถูกนำหน้าด้วย จุด "." ซึ่งถ้าเราไม่ใช้ option -a ก็จะ มองไม่เห็นไฟล์เหล่านั้น โดยทั่วไปมักจะใช้ไฟล์แบบนี้เพื่อเก็บข้อมูลเฉพาะของรูปแบบ การทำงานของผู้ใช้ (user environment) เช่น .bash_profile , .xsession เป็นต้น

COPY
เราสามารถทำการสำเนาแฟ้มข้อมูล (หรืออาจจะเป็นไดเรกทอรีด้วยก็ได้) โดยใช้คำสั่ง
cp file1 file2

คำสัjงข้างบนจะทำการสำเนาแฟ้มข้อมูล (copy) จาก file ไปเป็นชื่อ file2
REMOVE
หากต้องการทำการลบแฟ้มข้อมูล (หรืออาจจะเป็นไดเรกทอรี) ก็สามารถใช้คำสั่ง
rm filename

MOVE
เราสามารถใช้คำสั่ง mv เพื่อทำการย้ายแฟ้มจากไดเรกทอรีหนึ่ง ไปสู่อีกไดเรกทอรีหนึ่ง

mv filename directory

คำสั่งข้างบนจะทำการย้ายแฟ้มชื่อ filename จากไดเรกทอรีปัจจุบัน ไปสู่ไดเรกทอรีที่ ชื่อ directory นอกจากนี้เราสามารถใช้คำสั่ง mv เพื่อใช้ทำการเปลี่ยนชื่อไฟล์ได้

mv file1 file2

คำสั่งนี้จะทำการเปลี่ยนชื่อจาก file1 ไปเป็นชื่อ file2

ไม่มีความคิดเห็น:

Link

วาไรตี้ ดีดีจัง / ThaiBlog.info / Search Engine Optimization - AddMe / Search Engine Submission / AddDir.info Web link Directory/ Ranking Web Directory / Add2Dir.info Web link Directory/ A Big Dir/ SEO Friendly General Directory/ A1dir/ Seo friendly web directory/ 3wlink web resources/ Free Web Directory: Directory-474/ 2AddLink Web Link Directory/ วาไรตี้ ดีดีจัง / 1Abc Directory/ UK Auto Dealers Car Traders / Skaloosh Internet Directory / Sloppy Links Internet Directory / Smart Web Directory / / ThaiLand Web Directory / Free Listing Web Directory / Free web directory / Web Directory Hit LInks/ Top web Directory / UrlCan Web Directory / Free Search Engine Submission / SearchFinish / Pantip.com / Add URL Directory / Pblake Directory / เว็บไดเรคทอรี / Pantip.com/ video clip - วีดีโอคลิป/ SearchWiz.org Directory / เปิดร้านขายของ Online ฟรี! / Skype Media Web Directory / Reciprocal Links Directory / video clip - วีดีโอคลิป / บล็อก-หาเพื่อน / video clip / ฟังวิทยุ / รูปดารา / URL Shack Web Directory / World WIde Web Directory / Free One-Way Link Web Directory Web Link Index / Sports / Games / Zopso.com / ThaiBlog.info/ Search Engine Submission/ วาไรตี้ ดีดีจัง/ Search Engine Optimization - AddMe / Add Url 000 Directory/ Search Engine Optimization and SEO Tools    
Spiceday.com Banner Exchange
/ Auctions       Pedsters Planet Website Directory        Webdir & Free Counter & Hits   บล็อก หาเพื่อน สาวสวย ของแต่งบล็อก blog เว็บบล็อก เขียนบล็อก video clip ฟังวิทยุ ดูทีวี ฟังเพลง รูปดารา ทายผลบอล บล็อก หาเพื่อน สาวสวย ของแต่งบล็อก blog เว็บบล็อก เขียนบล็อก video clip ฟังวิทยุ ดูทีวี ฟังเพลง รูปดารา ทายผลบอล @Submit!-FREE Promotion Amfibi Web Search & Directory Amfibi Web Search & Directory Amfibi Web Search & Directory Amfibi Web Search & Directory Amfibi Web Search & Directory/ .:. Thaimarketpost.com - ไทยมาร์เก็ตโพส แหล่งรวมประกาศ ฟรีลงประกาศ ลงประกาศฟรี สินค้า ซื้อ ขาย ลงโฆษณา โปรโมทเว็บฟรี,เว็บไดเร็คทอรี่,Webdirectory,Add URL Free,Classifieds,Webboard,Blog,Advertise,Advertising,Post,TV,FM,Radio,News,Download,Wallpaper,Link Exchange/ กระเบื้อง กระเบื้องดินเผา/ ร่วมให้คะแนนโหวตเว็บแห่งนี้/ @Submit!-FREE Promotion