1. NFS คืออะไร? ข้อดีและการใช้งานพื้นฐานบน Ubuntu
NFS (Network File System) เป็นโปรโตคอลสำหรับการแชร์ไฟล์ผ่านเครือข่าย บทความนี้จะอธิบายวิธีใช้งานพื้นฐานของ NFS บน Ubuntu พร้อมทั้งแนะนำข้อดีและวิธีการติดตั้ง NFS สำหรับการจัดการเซิร์ฟเวอร์
การทำงานและการใช้งานของ NFS
NFS ช่วยให้การแชร์ไฟล์ระหว่างเซิร์ฟเวอร์และไคลเอนต์เป็นเรื่องง่าย โดยทำหน้าที่เป็นระบบไฟล์แบบรีโมต สามารถใช้ซิงค์ข้อมูลระหว่างเซิร์ฟเวอร์ Linux หลายเครื่อง หรือสำรองข้อมูลในคลาวด์ได้อย่างสะดวก
ข้อดีของการใช้ NFS บน Ubuntu
- เพิ่มประสิทธิภาพในการซิงค์ข้อมูล:เซิร์ฟเวอร์หลายเครื่องสามารถเข้าถึงข้อมูลเดียวกันได้ง่าย จัดการได้สะดวก
- รองรับการทำงานระหว่าง Linux ได้ดี:NFS รองรับบน Linux หลายดิสทริบิวชันรวมถึง Ubuntu
- เหมาะกับบริการคลาวด์:สามารถแชร์ข้อมูลบนคลาวด์ได้อย่างยืดหยุ่น
2. เตรียมความพร้อม: ข้อกำหนดระบบและวิธีติดตั้ง NFS
การใช้งาน NFS ต้องมีสภาพแวดล้อมของระบบที่เหมาะสม ด้านล่างนี้จะอธิบายข้อกำหนดและขั้นตอนการติดตั้ง NFS
ข้อกำหนดฮาร์ดแวร์และซอฟต์แวร์
- CPU และ RAM:แนะนำใช้ CPU แบบ Dual Core ขึ้นไป และ RAM ขั้นต่ำ 2GB
- เครือข่ายและพื้นที่เก็บข้อมูล:ควรมีการเชื่อมต่อ Ethernet ที่เสถียร และพื้นที่เก็บข้อมูลสำหรับแชร์ไฟล์
การติดตั้งแพ็คเกจ NFS
ติดตั้งแพ็คเกจ NFS server และ client ด้วยคำสั่งต่อไปนี้
sudo apt update
sudo apt install nfs-kernel-server nfs-common
แนะนำให้ใช้ Ubuntu เวอร์ชัน LTS เพื่อการสนับสนุนระยะยาวและความเสถียรของระบบ

3. การตั้งค่า NFS Server
ตั้งค่า NFS Server บน Ubuntu และสร้างไดเรกทอรีสำหรับแชร์ไฟล์
การสร้างและตั้งค่าไดเรกทอรีสำหรับแชร์
- สร้างไดเรกทอรีและตั้งค่าสิทธิ์:ใช้คำสั่งนี้เพื่อสร้างไดเรกทอรี
/nfs
และอนุญาตให้ทุกไคลเอนต์เข้าถึงได้
sudo mkdir /nfs
sudo chmod 777 /nfs
- แก้ไขไฟล์ /etc/exports:เพิ่มรายการนี้เพื่อกำหนดการเข้าถึง
/nfs *(rw,sync,no_subtree_check)
บรรทัดนี้จะอนุญาตให้ทุกไคลเอนต์อ่านและเขียนข้อมูลได้
การตั้งค่าไฟร์วอลล์
หากมีการเปิดใช้งานไฟร์วอลล์ ต้องเปิดพอร์ต 2049 สำหรับ NFS
sudo ufw allow from <IP Address ของไคลเอนต์> to any port nfs
4. การตั้งค่า NFS Client
ในฝั่งไคลเอนต์ ต้องติดตั้งแพ็คเกจและตั้งค่าการเชื่อมต่อกับ NFS Server
การติดตั้งแพ็คเกจและการเมานท์
- ติดตั้งแพ็คเกจ NFS Client:ติดตั้ง
nfs-common
ด้วยคำสั่งนี้
sudo apt install nfs-common
- เมานท์ไดเรกทอรี NFS:ใช้คำสั่งนี้เพื่อเมานท์แบบชั่วคราว หรือเพิ่มใน
/etc/fstab
สำหรับเมานท์อัตโนมัติ
sudo mount <IP Address ของเซิร์ฟเวอร์>:/nfs /mnt
ตั้งค่าเมานท์อัตโนมัติ:
<IP Address ของเซิร์ฟเวอร์>:/nfs /mnt nfs defaults 0 0
ตรวจสอบสถานะการเมานท์ด้วยคำสั่ง df -h

5. การจัดการและแก้ไขปัญหา
แนะนำวิธีแก้ปัญหาที่พบบ่อยขณะใช้งาน NFS และคำสั่งที่มีประโยชน์สำหรับการจัดการ
การตั้งค่าเมานท์อัตโนมัติ
เพื่อให้ไดเรกทอรีถูกเมานท์อัตโนมัติหลังรีบูต ใช้ chkconfig
เปิดการใช้งาน netfs
sudo chkconfig netfs on
ปัญหาที่พบบ่อยและวิธีแก้ไข
- ข้อผิดพลาด Permission denied:ถ้าพบข้อความนี้ ให้ตรวจสอบสิทธิ์ของไดเรกทอรีที่แชร์และไฟล์
/etc/exports
- เวอร์ชันของ NFS ไม่ตรงกัน:ถ้ามีปัญหาในการเชื่อมต่อ อาจต้องระบุเวอร์ชันด้วยออปชัน
nfsvers=3
เป็นต้น
6. ตัวอย่างการใช้งานขั้นสูงของ NFS
การลดโหลดบน Web Server
NFS มีประโยชน์มากในกรณีที่มี Web Server หลายเครื่องต้องเข้าถึงไฟล์เดียวกัน สามารถแชร์ข้อมูลระหว่างเซิร์ฟเวอร์ได้ง่ายและช่วยกระจายโหลด
การใช้ NFS ในคลาวด์
ผู้ให้บริการคลาวด์อย่าง AWS หรือ GCP ก็มีบริการแชร์ไฟล์แบบ NFS ที่ช่วยให้จัดการข้อมูลในระบบคลาวด์ได้อย่างมีประสิทธิภาพ
7. สรุป
บทความนี้ได้อธิบายวิธีการติดตั้งและใช้งาน NFS บน Ubuntu รวมถึงวิธีการจัดการและแก้ไขปัญหาที่มักพบ การใช้ NFS ช่วยให้การแชร์ข้อมูลเป็นเรื่องง่าย เพิ่มความยืดหยุ่นของระบบ และรองรับการใช้งานกับเซิร์ฟเวอร์ที่มีโหลดสูงหรือในระบบคลาวด์ได้เป็นอย่างดี