Hướng dẫn Cài đặt NFS Server & Client trên Linux (Ubuntu, CentOS)

Đăng ngày: 29-08-2025 16:45
cài đặt nfsnfs servernfs clientnetwork file systemchia sẻ file linuxmount nfsubuntu nfscentos nfs/etc/exports/etc/fstab

Trong quản trị hệ thống Linux, việc chia sẻ file và thư mục qua mạng là một nhu cầu rất phổ biến. **NFS (Network File System)** là một giao thức mạnh mẽ và ổn định, cho phép bạn "mount" (gắn) một thư mục từ một máy chủ (server) xa vào máy khách (client). Máy khách sau đó có thể sử dụng thư mục mạng này y hệt như một thư mục cục bộ. Điều này rất hữu ích để tạo ra một không gian lưu trữ tập trung.

Bài viết này sẽ hướng dẫn bạn chi tiết, từng bước một, cách cài đặt và cấu hình một hệ thống NFS hoàn chỉnh. Chúng ta sẽ thiết lập một NFS Server và sau đó kết nối đến nó từ một NFS Client. Hướng dẫn này áp dụng cho các bản phân phối phổ biến như Ubuntu, Debian, CentOS và RHEL.

Hướng dẫn Cài đặt NFS Server & Client trên Linux (Ubuntu, CentOS) - 0

Mô hình Hệ thống

Để dễ hình dung, chúng ta sẽ làm việc với mô hình sau:

  • NFS Server: Máy chủ chứa dữ liệu, có địa chỉ IP là 10.0.0.100.
  • NFS Client: Máy khách sẽ truy cập dữ liệu, có địa chỉ IP là 10.0.0.101.
  • Thư mục chia sẻ: Thư mục /srv/nfs/shared trên Server sẽ được chia sẻ.
  • Điểm gắn (Mount Point): Thư mục /mnt/nfs/shared trên Client sẽ được dùng để truy cập.

Phần 1: Cấu hình trên NFS Server (IP: 10.0.0.100)

Đầu tiên, chúng ta sẽ cài đặt và cấu hình máy chủ sẽ chia sẻ file.

Bước 1: Cài đặt gói NFS Server

Mở terminal trên máy chủ và cài đặt các gói cần thiết. Lệnh sẽ khác nhau tùy vào hệ điều hành của bạn.

Trên Ubuntu/Debian:


sudo apt update
sudo apt install nfs-kernel-server -y

Trên CentOS/RHEL:


sudo yum install nfs-utils -y

Bước 2: Tạo Thư mục Chia sẻ

Tiếp theo, chúng ta tạo thư mục sẽ được chia sẻ qua mạng. Đặt thư mục này trong /srv là một quy ước tốt.


sudo mkdir -p /srv/nfs/shared

Để tránh các vấn đề về quyền, chúng ta sẽ tạm gán quyền sở hữu thư mục này cho người dùng và nhóm nobody:nogroup.


sudo chown nobody:nogroup /srv/nfs/shared
sudo chmod 777 /srv/nfs/shared

Bước 3: Cấu hình Exports

Đây là bước quan trọng nhất. Chúng ta cần khai báo thư mục nào được chia sẻ và ai được phép truy cập nó trong file /etc/exports.

Mở file bằng trình soạn thảo:


sudo nano /etc/exports

Thêm dòng sau vào cuối file. Dòng này cho phép máy client có IP 10.0.0.101 được quyền đọc và ghi.


/srv/nfs/shared   10.0.0.101(rw,sync,no_subtree_check)

Trong đó, rw là quyền đọc/ghi, sync đảm bảo dữ liệu được ghi an toàn, và no_subtree_check giúp tăng hiệu năng. Lưu và đóng file.

Bước 4: Áp dụng Cấu hình và Khởi động Dịch vụ

Sau khi sửa file exports, hãy chạy lệnh sau để Nginx áp dụng thay đổi:


sudo exportfs -a

Cuối cùng, khởi động lại và kích hoạt dịch vụ NFS.

Trên Ubuntu/Debian:


sudo systemctl restart nfs-kernel-server

Trên CentOS/RHEL:


sudo systemctl start nfs-server
sudo systemctl enable nfs-server

Nếu bạn đang dùng tường lửa (firewall), đừng quên mở cổng cho dịch vụ NFS từ IP của client.


Phần 2: Cấu hình trên NFS Client (IP: 10.0.0.101)

Bây giờ, chúng ta sẽ cấu hình máy khách để có thể truy cập vào thư mục đã được chia sẻ.

Bước 1: Cài đặt gói NFS Client

Mở terminal trên máy client và cài đặt các công cụ cần thiết.

Trên Ubuntu/Debian:


sudo apt update
sudo apt install nfs-common -y

Trên CentOS/RHEL:


sudo yum install nfs-utils -y

Bước 2: Tạo Điểm Gắn (Mount Point)

Tạo một thư mục trống trên máy client. Thư mục này sẽ là nơi nội dung từ server được hiển thị.


sudo mkdir -p /mnt/nfs/shared

Bước 3: Gắn (Mount) Thư mục Mạng

Sử dụng lệnh `mount` để kết nối đến thư mục chia sẻ trên server.


# Cú pháp: mount [IP Server]:[Thư mục Server] [Thư mục Client]
sudo mount 10.0.0.100:/srv/nfs/shared /mnt/nfs/shared

Để kiểm tra, hãy chạy lệnh df -h. Bạn sẽ thấy một dòng mới ở cuối, xác nhận thư mục mạng đã được gắn thành công.

Bước 4: Tự động Gắn khi Khởi động

Lệnh mount ở trên chỉ có tác dụng tạm thời. Để client tự động kết nối lại sau mỗi lần khởi động, chúng ta cần thêm một dòng vào file /etc/fstab.

Mở file:


sudo nano /etc/fstab

Thêm dòng sau vào cuối file. Các tùy chọn này giúp việc kết nối ổn định và hiệu quả hơn.


10.0.0.100:/srv/nfs/shared   /mnt/nfs/shared   nfs   auto,nofail,noatime,nolock,intr,tcp,actimeo=1800   0   0

Lưu và đóng file. Từ bây giờ, thư mục chia sẻ sẽ luôn sẵn sàng để sử dụng.


Kết luận

Bạn vừa hoàn thành việc cài đặt một hệ thống NFS hoàn chỉnh. NFS là một công cụ mạnh mẽ để quản lý dữ liệu tập trung, rất hữu ích cho các cụm máy chủ web, lưu trữ file media, hoặc các môi trường yêu cầu chia sẻ tài nguyên. Hãy thử nghiệm bằng cách tạo file trên client và xem chúng xuất hiện trên server. Chúc bạn thành công với dự án của mình!

1 Bình luận