ติดตั้ง NFS ใน Ubuntu และแชร์ไฟล์ของคุณผ่านเครือข่ายด้วยโปรโตคอลนี้

nfs1

NFS หรือ Network File System คือโปรโตคอลระบบไฟล์แบบกระจายซึ่งสร้างขึ้นครั้งแรกโดย Sun Microsystems ผ่าน NFS ระบบสามารถอนุญาตให้แชร์ไดเร็กทอรีและไฟล์กับผู้อื่นผ่านเครือข่าย

ในการแชร์ไฟล์ NFS ข้อมูลเกี่ยวกับระบบระยะไกลสามารถเข้าถึงได้โดยผู้ใช้และแม้แต่โปรแกรมเกือบราวกับว่าพวกเขาอาศัยอยู่ในเครื่องโลคัล

NFS ทำงานในสภาพแวดล้อมไคลเอนต์เซิร์ฟเวอร์ โดยที่เซิร์ฟเวอร์รับผิดชอบในการจัดการการพิสูจน์ตัวตนไคลเอ็นต์การอนุญาตและการจัดการตลอดจนข้อมูลที่แชร์ทั้งหมดภายในระบบไฟล์เฉพาะ

เมื่อได้รับอนุญาตลูกค้าจำนวนเท่าใดก็ได้สามารถเข้าถึงข้อมูลที่แชร์ได้ราวกับว่ามีอยู่ในที่จัดเก็บข้อมูลภายในของตน

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

ในบทความนี้, เราจะอธิบายวิธีกำหนดค่าเซิร์ฟเวอร์ NFS และไคลเอนต์ทีละขั้นตอนซึ่งจะอนุญาตให้แชร์ไฟล์จากระบบ Ubuntu หนึ่งไปยังอีกระบบหนึ่ง

การกำหนดค่าเซิร์ฟเวอร์ NFS

ในการกำหนดค่าระบบโฮสต์เพื่อแชร์ไดเร็กทอรีเราจะต้องติดตั้งเซิร์ฟเวอร์ NFS Kernel จากนั้นสร้างและส่งออกไดเร็กทอรีที่เราต้องการให้ระบบไคลเอ็นต์เข้าถึง

ตอนนี้ เราจะเปิดเทอร์มินัลด้วย Ctrl + Alt + T และในนั้นเราจะดำเนินการคำสั่งต่อไปนี้:

sudo apt install nfs-kernel-server -y

เมื่อติดตั้งเสร็จตอนนี้เราจะสร้างโฟลเดอร์ที่เราต้องการแชร์กับระบบไคลเอนต์ซึ่งจะเป็นโฟลเดอร์ส่งออก

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

ในเทอร์มินัลเราจะพิมพ์:

sudo mkdir -p carpeta-compartida

เนื่องจากเราต้องการให้ลูกค้าทั้งหมดเข้าถึงไดเร็กทอรี เราจะลบสิทธิ์ที่ จำกัด ออกจากโฟลเดอร์ส่งออกโดยใช้คำสั่งต่อไปนี้:

sudo chown nobody: nogroup carpeta-compartida

sudo chmod 777 carpeta-compartida

สิ่งสำคัญคือหากอยู่ในเส้นทางอื่นคุณจะต้องวางไว้เพราะถ้าคุณเว้นช่องว่างเดียวคุณสามารถเปลี่ยนสิทธิ์ของไดเรกทอรีในระบบของคุณได้

ตอนนี้ผู้ใช้ทุกคนทุกกลุ่มในระบบไคลเอนต์จะสามารถเข้าถึง "โฟลเดอร์ที่แชร์" ของเราได้

ตอนนี้ในโฟลเดอร์ที่สร้างขึ้นนี้คุณสามารถวางเนื้อหาทั้งหมดที่คุณต้องการแชร์ได้

ส่งออกไดเร็กทอรีที่ใช้ร่วมกัน

หลังจากสร้างโฟลเดอร์ส่งออกแล้วเราจะต้องให้สิทธิ์ลูกค้าในการเข้าถึงเครื่องเซิร์ฟเวอร์โฮสต์

สิทธิ์นี้กำหนดผ่านไฟล์ส่งออกที่อยู่ในโฟลเดอร์ / etc บนระบบของคุณ

ใช้คำสั่งต่อไปนี้เพื่อเปิดไฟล์นี้ด้วย Nano:

sudo nano /etc/ exports

เมื่อคุณเปิดไฟล์แล้วคุณสามารถอนุญาตให้เข้าถึงโฟลเดอร์ที่สร้างขึ้นด้วยคำสั่งต่อไปนี้:

/ruta/de/la/ carpeta-compartida ip-de-cliente (rw, sync, no_subtree_check)

O คุณสามารถเพิ่มไคลเอนต์ได้หลายตัวโดยเพิ่มบรรทัดต่อไปนี้ในไฟล์:

/ruta/de/la/carpeta-compartida ip-de-cliente-1 (rw, sync, no_subtree_check)
/ruta/de/la/carpeta-compartida ip-de-cliente-2 (rw, sync, no_subtree_check)

หรือคุณสามารถใส่ช่วง IP ได้ดังนี้:

/ruta/de/la/carpeta-compartida ip-de-cliente1/24 (rw, sync, no_subtree_check)

สิทธิ์ "rw, sync, no_subtree_check" ที่กำหนดไว้ในไฟล์นี้หมายความว่าไคลเอนต์สามารถดำเนินการ:

rw: อ่านและเขียนการดำเนินการ

ซิงค์: เขียนการเปลี่ยนแปลงใด ๆ ลงในดิสก์ก่อนนำไปใช้

no_subtree_check - ป้องกันการตรวจสอบแผนผังย่อย

หลังจากทำการกำหนดค่าข้างต้นทั้งหมดบนระบบโฮสต์ตอนนี้ถึงเวลาส่งออกไดเร็กทอรีที่ใช้ร่วมกัน:

sudo exportfs -a

ในที่สุด เพื่อให้การตั้งค่าทั้งหมดมีผลให้รีสตาร์ทเซิร์ฟเวอร์เคอร์เนล NFS ดังต่อไปนี้:

sudo systemctl restart nfs-kernel-server

ขั้นตอนสำคัญคือการตรวจสอบว่าไฟร์วอลล์ของเซิร์ฟเวอร์เปิดให้ไคลเอนต์เพื่อให้เข้าถึงเนื้อหาที่แชร์ได้

sudo ufw allow from ip/rango to any port nfs

สิ่งที่เหลืออยู่ดังนี้:

sudo ufw allow from 192.168.1.1/24 to any port nfs

ตอนนี้เมื่อคุณตรวจสอบสถานะของไฟร์วอลล์ Ubuntu ของคุณผ่านคำสั่งต่อไปนี้คุณจะสามารถเห็นสถานะการดำเนินการเป็น "อนุญาต" สำหรับ IP ไคลเอ็นต์

sudo ufw status

ขณะนี้เซิร์ฟเวอร์โฮสต์ของคุณพร้อมที่จะเอ็กซ์พอร์ตโฟลเดอร์ที่ใช้ร่วมกันไปยังไคลเอนต์ที่ระบุผ่านเซิร์ฟเวอร์เคอร์เนล NFS

การกำหนดค่าเครื่องไคลเอนต์

ตอนนี้เป็นเวลาทำการกำหนดค่าอย่างง่ายบนเครื่องไคลเอนต์เพื่อให้สามารถติดตั้งโฟลเดอร์ที่ใช้ร่วมกันจากโฮสต์บนไคลเอนต์และเข้าถึงได้โดยไม่มีปัญหา

สำหรับสิ่งนี้ เราจะติดตั้งไคลเอนต์ NFS ด้วยคำสั่งต่อไปนี้:

sudo apt-get install nfs-common

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

คุณสามารถสร้างโฟลเดอร์นี้ได้ทุกที่ในระบบของคุณ

sudo mkdir -p carpeta-cliente

ตอนนี้โฟลเดอร์ที่คุณสร้างในขั้นตอนก่อนหน้าก็เหมือนกับโฟลเดอร์อื่น ๆ ในระบบของคุณเว้นแต่คุณจะต่อเชื่อมไดเร็กทอรีที่ใช้ร่วมกันจากโฮสต์ของคุณไปยังโฟลเดอร์ที่สร้างขึ้นใหม่นี้

ใช้คำสั่งต่อไปนี้เพื่อเชื่อมต่อโฟลเดอร์ที่ใช้ร่วมกันจากโฮสต์ไปยังโฟลเดอร์ mount บนไคลเอนต์:

sudo mount IPdelserivdor:/ruta/de/la/carpeta-compartida /ruta/carpeta-cliente

คำสั่งมากหรือน้อยดังนี้:

sudo mount 192.168.1.1:/home/servidor/carpeta-compartida /home/cliente/carpeta-cliente

ตอนนี้ถึงเวลาทดสอบการเชื่อมต่อโดยไปที่โฟลเดอร์จากเครื่องไคลเอนต์หรือเครื่องและตรวจสอบว่ามีเนื้อหาที่แชร์อยู่ที่นั่น


แสดงความคิดเห็นของคุณ

อีเมล์ของคุณจะไม่ถูกเผยแพร่ ช่องที่ต้องการถูกทำเครื่องหมายด้วย *

*

*

  1. ผู้รับผิดชอบข้อมูล: Miguel ÁngelGatón
  2. วัตถุประสงค์ของข้อมูล: ควบคุมสแปมการจัดการความคิดเห็น
  3. ถูกต้องตามกฎหมาย: ความยินยอมของคุณ
  4. การสื่อสารข้อมูล: ข้อมูลจะไม่ถูกสื่อสารไปยังบุคคลที่สามยกเว้นตามข้อผูกพันทางกฎหมาย
  5. การจัดเก็บข้อมูล: ฐานข้อมูลที่โฮสต์โดย Occentus Networks (EU)
  6. สิทธิ์: คุณสามารถ จำกัด กู้คืนและลบข้อมูลของคุณได้ตลอดเวลา

  1.   luis dijo

    โปรโตคอลใดที่เร็วกว่าสำหรับการถ่ายโอนไฟล์ NFS หรือแซมบ้า

  2.   luis dijo

    โปรโตคอลใดที่เร็วกว่าสำหรับการถ่ายโอนไฟล์ NFS หรือแซมบ้า

  3.   ฮาเวียร์ จิเมโน ซัวเรซ dijo

    สวัสดี Luis ความเร็วขึ้นอยู่กับเครือข่ายของคุณจริงๆ

    Samba และ NFS เป็นสองโปรโตคอลที่แตกต่างกัน

    Samba ใช้เพื่อแชร์โฟลเดอร์ที่สามารถเข้าถึงได้จากระบบอื่น ๆ (Android, windows, linux ฯลฯ )

    NFS เป็นโปรโตคอลที่ติดตั้งในโหมดเซิร์ฟเวอร์บนเครื่องที่คุณมีโฟลเดอร์ที่คุณต้องการแชร์และเป็นไคลเอนต์บนเครื่อง linux ที่คุณต้องการติดตั้งราวกับว่าเป็นระบบไฟล์ภายในเครื่อง (คุณสามารถเมานต์ได้ในแต่ละ เซสชันหรือกำหนดค่าในไฟล์ fstab เพื่อให้ติดตั้งทุกครั้งที่คุณเริ่มต้น)

    ฉันหวังว่าฉันจะได้ชี้แจงความแตกต่างเล็กน้อย

  4.   เปโดร dijo

    มันทำให้ฉันมีข้อผิดพลาดคุณไม่ได้ใส่ตัวอย่างข้อผิดพลาดทางไวยากรณ์ คุณเว้นวรรคผิดดังนั้นฉันจึงไม่รู้ว่าข้อผิดพลาดอยู่ตรงไหน
    มันไม่มีประโยชน์สำหรับฉัน