October 23rd, 2008ทำความเข้าใจกับระบบไฟล์ของ *nix
คนที่เคยใช้ windows มาก่อน พอมาใช้งานระบบตระกูล unix (รวมทั้ง Linux ด้วย) ก็มักจะค่อนข้างงงงันกับชื่อโฟลเดอร์ต่างๆ ที่สั้น และไม่ค่อยสื่อความหมายเอาเสียเลย ไม่รู้จะไปหาอะไรที่ไหน แถมยังจำยากเสียอีก ส่วนหนึ่งก็แทบจะเป็นประเพณีหรือธรรมเนียมไปแล้ว เพราะชื่อไฟล์บางอย่างก็ถูกใช้มาตั้ง 30 ปี และแถมบางไฟล์บางกลุ่ม ยังมีความหมายและทำหน้าที่พิเศษบางอย่างเสียด้วย
ไฟล์ต่างๆ ในระบบ unix จะแบ่งเป็นชั้นๆ ส่วนบนสุดคือ / หรือที่มักจะเรียกกันว่า root directory ถ้าไปลอง ls ดูที่ root ก็มักจะเห็นไฟล์หรือโฟล์เดอร์เหล่านี้
/bin ย่อมาจาก binary เป็นหนึ่งในหลายแห่ง ที่เก็บโปรแกรมแอพลิเคชันและยูทิลิตี้ต่างๆ แต่โปรแกรมที่อยู่ใน /bin มักเป็นโปรแกรมสำคัญที่ใช้บ่อยในการทำงานของระบบ ตัวอย่างเช่น โปรแกรม shell หรือ โปรแกรมจัดการไฟล์อย่าง cp และ chmod เป็นต้น
/sbin นี่ก็ใช้เก็บโปรแกรมเหมือนกัน แต่ว่าจะเป็นเฉพาะโปรแกรมที่ถูกใช้โดย superuser เท่านั้น ซึ่งก็เป็นที่มาของชื่อด้วย คือ superuser-bin
/dev ย่อมาจาก device เป็นที่เก็บไฟล์ที่เกี่ยวข้องกับฮาร์ดแวร์ของระบบ เช่น จอภาพ, คีย์บอร์ด ฮาร์ดดิสก์ หรือ usbport รวมถึงพอร์ทต่างๆ ด้วย
/etc เอาไว้เก็บพวกไฟล์ที่เป็น system configuration ทั้งหลาย
/home เป็นที่เก็บโฮมไดเร็กทอรีของผู้ใช้ทั้งหลาย โดยจะมีการแบ่งย่อยลงไปอีกตามชื่อ login เช่น ผู้ใช้ที่มีชื่อล็อกอินเป็น joe จะมีโฮมไดเร็กทอรีเป็น /home/joe
/lib ย่อมาจาก library ซึ่งเอาไว้เก็บไฟล์ system library สำคัญๆ ทั้งหลาย ในระบบ Unix พวกไลบรารีเหล่านี้จะแชร์กันระหว่างโปรแกรม โดยไม่ได้รวมไว้ในไฟล์ binary แต่จะถูกโหลดมาใช้เมื่อต้องการเท่านั้น ดังนั้นการลบหรือย้ายที่ไฟล์ใน /lib แม้เพียงไฟล์เดียว อาจส่งผลให้โปรแกรมเป็นจำนวนมากไม่สามารถใช้งานได้
/mnt ย่อมาจาก mount เป็นไดเร็กทอรีมาตรฐานในการพ่วงอุปกรณ์เก็บข้อมูลอย่างฮาร์ดดิสก์ ถ้าต้องการดูว่ามีอุปกรณ์เก็บข้อมูลอะไรพ่วงอยู่บ้าง สามารถเรียกใช้คำสั่ง mount ได้
/tmp ย่อมาจาก temporary เป็นที่เก็บไฟล์ชั่วคราวของระบบ อะไรที่อยู่ในนี้ ถือว่าสามารถลบทิ้งได้ถ้าเสร็จงานแล้ว
/usr ไดเร็กทอรีนี้ค่อนข้างจิปาถะ เก็บตั้งแต่แอพลิเคชันของยูสเซอร์อย่างเกม หรือโปรแกรมวาดภาพ ไปจนถึงฟีเจอร์ต่างๆ ของระบบอย่างเช่นระบบช่วยเหลือเป็นต้น โดยทั่วไปจะถือว่าเป็นไฟล์ที่มีประโยชน์ แต่ไม่ได้จำเป็นถึงกับขาดไม่ได้ในการทำงานของระบบ
/var ย่อมาจาก variable เป็นที่เก็บของไฟล์ต่างๆ ที่มักจะเพิ่มจำนวนขึ้นเรื่อยๆ ตามเวลา เช่น เมล์ log file และไฟล์ฐานข้อมูล เป็นต้น