Home | Back
Network File System (nfs) บน Linux (debian/ubuntu)
Monday, 22 September 2008
nfs เป็นระบบ file system ที่ share ผ่านเครือข่ายของระบบปฏิบัติการ Linux ซึ่งทำให้เราสามารถ ทำการ share ไฟล์ให้กันได้บนระบบปฏิบัติการ Linux โดยขั้นตอนทั้งหมดผมเอามาจากลิ้งนี้นะครับ
http://www.debianhelp.co.uk/nfs.htm
ขั้นแรกเราต้องติดตั้ง package ที่จำเป็นสำหรับ nfs ก่อนนะครับ ซึ่งจะมี 2 ส่วนคือ สำหรับเครื่องที่เป็น client ต้องติดตั้ง package ดังนี้ครับ
$ aptitude install nfs-common portmap
สำหรับเครื่องที่เป็น server ซึ่งทำการเปิด share ให้คนอื่นมาใช้ ให้ลง package ดังนี้ครับ
$ aptitude install nfs-kernel-server nfs-common portmap
จากนั้นในส่วนของ server เราสามารถทำการ config ให้ทำการ share ไฟล์ได้จากไฟล์ /etc/exports
File : /etc/exports
/home 195.12.32.2(rw,no_root_squash) www.first.com(ro) /usr 195.12.32.2/24(ro,insecure)
โดยหมายถึงให้ share ไดเรคทอรี่ /home ให้แก่เครื่อง 195.12.32.2 ให้สามารถอ่านและเขียนได้(rw) และ no_root_squash จะหมายถึง root ในเคร่อง client จะมีสิทธิ์เท่ากับ root ในเครื่อง server ในการ อ่านไฟล์ แต่ถ้าเป็น root_squash จะทำให้ไฟล์ที่เขียนลงไปเป็น user ที่ชื่อ nobody แทน หลังจากนั้น ทำการประกาศ share ด้วยคำสั่ง
$ exportfs -a
เป็นอันเรียบร้อยในส่วนของ server ต่อมาในส่วนของ client เราจะทำการต่อกับไดเร็คทอรี่ที่ server ได้ทำการ share ไว้ด้วยคำสั่ง mount ดังนี้
$ mount files.first.com:/home /mnt/nfs
จะหมายถึงเชื่อมต่อไดเรคทอรี่ /home ของเครื่อง files.first.com เข้ากับไดเร็คทอรี่ /mnt/nfs ของเรา เป็นอันเรียบร้อยครับ แต่ถ้าหากเราต้องการให้มีการเชื่อมต่อทุกครั้งที่บูตเครื่องก็ให้แก้ที่ไฟล์ /etc/fstab
File : /etc/fstab
195.12.32.1:/home /home nfs rw,rsize=4096,wsize=4096,hard,intr,async,nodev,nosuid 0 0 195.12.32.2:/usr /usr nfs ro,rsize=8192,hard,intr,nfsvers=3,tcp,noatime,nodev,async 0 0
เรียบร้อยโรงเรียนไทย อิอิ :)