NFS là gì?
NFS là viết tắt của cụm từ Network File System, là một giao thức được thiết kế ra giúp chia sẻ thông tin dữ liệu qua mạng được Sun Microsystems phát triển năm 1984. Nhờ có NFS, từ máy tính này, bạn có thể xem các tập tin lưu trữ trên một máy tính khác trong cùng một mạng.
Hệ thống NFS có thể dùng trên nhiều hệ điều hành khác nhau gồm: Linux, Windows, IBM AIX, Microsoft Windows, Oracle Solaris và Hewlett Packard Enterprise HP-UX.
Ưu và nhược điểm của NFS
Dưới đây là các ưu và nhược điểm của NFS:
Ưu điểm:
- Tốn ít chi phí
- Cho phép bạn quản lý tập trung, giảm nhu cầu với những phần mềm cũ hoặc dung lượng ổ đĩa trên hệ thống.
- Dễ cài đặt, vì nó hoạt động dựa trên hệ thống cơ sở hạ tầng IP đã có.
Nhược điểm:
- Nếu lưu lượng mạng quá lớn sẽ làm tốc độ chậm lại.
- Hacker có thể giả mạo tên của máy chủ NFS
- Không đảm bảo tính bảo mật dữ liệu, chỉ nên dùng NFS trên mạng đáng tin cậy ở sau lớp tường lửa.
Các phiên bản của NFS
NFS có 4 phiên bản sau đây:
Phiên bản NFSv2 (1989)
Phiên bản NFSv2 được chỉ định trong RFC 1094, nó có các tính năng chính sau:
- Giới hạn độ lệch tệp trong số lượng 32bit dẫn tới kích thước tệp tối đa có thể truy cập là 4,2GB.
- Dùng UDP làm giao thức truyền tải, đảm bảo cho máy chủ không có trạng thái, việc khóa tệp sẽ được thực hiện bên ngoài giao thức lõi.
- Kích thước truyền dữ liệu giới hạn ở mức 8KB, yêu cầu máy chủ NFS cam kết các dữ liệu được máy khách ghi vào bộ nhớ truy cập ngẫu nhiên cố định hoặc ghi vào đĩa trước khi phản hồi.
Phiên bản này cho tới hiện nay đã bị lỗi thời, không nên sử dụng.
Phiên bản NFSv3 (1995)
Phiên bản NFSv3 được chỉ định trong RFC 1813, có các tính năng sau:
- Mở rộng độ lệch tệp từ 32 lên tới 64bit, không còn bị giới hạn tệp ở mức 4,2GB nữa.
- Cho phép truyền đọc và ghi dữ liệu ở mức lớn hơn 8KB.
- Được bổ sung giao thức lớp vận chuyển là TCP, người dùng có thể dùng NFS qua các mạng WAN một cách dễ dàng, khả năng truyền tải, đọc - ghi dữ liệu nhanh.
- Được bổ sung thao tác COMMIT, cho phép ghi không đồng bộ và ACCESS RPC hỗ trợ những danh sách kiểm soát truy cập tốt hơn.
- Máy chủ trả lời WRITE RPC một cách ngay lập tức, không phải đồng bộ hóa dữ liệu với NVRAM hoặc ổ đĩa.
Phiên bản này vẫn được sử dụng rộng rãi hiện nay, có thể tương tác với NFSv4 nhưng không có nhiều tính năng mới.
Phiên bản mở rộng - WebNFS
WebNFS là phần mở rộng của NFSv2 và NFSv3, cho phép hệ thống có thể hoạt động ở sau bức tường lửa mà không bị ảnh hưởng bởi sự phức tạp của những giao thức MOUNT và Portmap.
Phiên bản này có cổng TCP/UDP cố định (2049). WebNFS đã đưa ra khái niệm về tước hiệu tệp công khai (ký tự rỗng cho NFSv2, độ dài bằng 0 cho NFSv3) cho phép dùng làm điểm bắt đầu. Cả hai thay đổi này sau đó đã được tích hợp vào phiên bản NFSv4.
Phiên bản NFSv4 (2003)
Phiên bản này có bản cập nhật được phát hành đầu tiên vào năm 2000 và ghi lại trong RFC 3010.
Đây là phiên bản NFS đầu tiên cho phép xuất bản IETF dưới dạng tiêu chuẩn Proposed Standard.
Dưới đây là các tính năng mới của phiên bản NFSv4:
- Có hỗ trợ bộ nhớ đệm tập tin nâng cao.
- Có tính năng xác thực vô cùng mạnh, đảm bảo được quyền riêng tư.
- Có hỗ trợ chia sẻ tệp Microsoft Windows, giúp khả năng tương tác tốt hơn.
- Hỗ trợ khóa tích hợp tốt hơn
- Những giao tiếp được xử lý bằng RPC phức hợp và cần dùng TCP giúp hiệu suất và độ tin cậy được cải thiện.
Vào năm 2003, một phiên bản cập nhật khác của NFS, với một số các thay đổi nhỏ được tái bản, nó có tên là RFC 3530. Phiên bản này đã sửa một vài lỗi trong phiên bản đầu tiên và được thêm một số cải tiến mới cho giao thức.
Danh sách dịch vụ hỗ trợ hệ thống tệp Network File System
Khi triển khai NFS, để hệ thống hoạt động ổn định, tránh lỗi, bạn nên cấu hình thêm các dịch vụ dưới đây:
- NFS: Đây là dịch vụ “bộ não” của toàn bộ hệ thống giúp khởi động máy chủ NFS, quản lý các tiến trình RPC cần thiết để chia sẻ thư mục, tệp tin mạng nhanh chóng.
- NFSLock: Khi nhiều người dùng mở một tệp, nguy cơ xung đột rất cao. Cài đặt NFSLock đảm bảo chức năng khóa tệp hoạt động đúng cách để giữ dữ liệu an toàn, đồng nhất.
- Portmap: Có nhiệm vụ cho máy khách biết dịch vụ NFS đang mở ở cổng nào, phản hồi thông tin về các cổng khả dụng để truy cập tệp tin, giúp quá trình kết nối diễn ra nhanh chóng.
Cách mà NFS hoạt động
Network File System hoạt động theo giao thức Client - Server. Quá trình hoạt động của nó như sau:
- Xác minh rpc.mountd hoặc mountd đã được cài đặt và hoạt động thật ổn định. Đây là chương trình lắng nghe những yêu cầu NFS (daemon NFS).
- Khởi tạo hoặc chọn một thư mục trên máy chủ, đây là mount point NFS. Hệ thống sẽ dùng địa chỉ, mount point hoặc tên Server Host của máy chủ để có thể xác định tài nguyên của NFS.
- Cấu hình quyền của NFS Server, cho phép người dùng ủy quyền có thể tiến hành đọc - ghi và xử lý tập tin trong hệ thống tập tin.
Quy trình thiết lập máy khách truy cập vào Network File System Server có thể thực hiện theo cách thủ công thông qua lệnh lệnh mount hoặc configuration file — /etc/exports. Trong đó, mỗi dòng của file configuration metadata NFS sẽ chứa mount point, IP và tên miền của máy chủ lưu trữ hoặc là bất kỳ các thông tin nào cần thiết để có thể truy cập vào hệ thống tập tin.
Cách cấu hình NFS trên NAS Synology
NFS trên NAS trên Synology cho phép người dùng chia sẻ thư mục và tệp tin trong mạng nội bộ một cách nhanh chóng. Để cấu hình, trước tiên bạn cần cài đặt hệ thống NAS, gán quyền NFS cho các thư mục dùng chung trước khi thực hiện cấu hình NFS. Bạn có thể tham khảo hướng dẫn chi tiết từng bước thực hiện dưới đây:
Bước 1: Cài đặt hệ thống NAS
Để thực hiện, bạn đăng nhập vào DSM bằng tài khoản Administrators → chọn Control Panel → chọn File Services. Chuyển đến tab Win/Mac/NFS rồi tích vào ô Enable NFS. Chọn Apply để lưu cài đặt vừa thực hiện.
Bước 2: Gán quyền NFS cho các thư mục dùng chung
Muốn tạo được thư mục dùng chung với máy khách NFS, bạn cần định cấu hình quyền NFS cho thư mục trước tiên.
- Chuyển đến Assign NFS Permissions to Shared Folders → chọn thư mục chia sẻ muốn truy cập với ứng dụng khách NFS → chọn Edit.
- Chuyển đến tab NFS Permisstions → chọn Create.
- Chỉnh sửa trường Hostname or IP → Click OK để hoàn thành chỉnh sửa → click OK để áp dụng quyền NFS.
Bước 3: Gắn thư mục dùng chung
Ở bước này, bạn thực hiện gắn thư mục dùng chung với máy khách NFS. Bạn có thể tham khảo hướng dẫn dưới đây được thực hiện trên Linux.
- Mở trình duyệt web, đăng nhập vào DSM bằng tài khoản Administration → Chuyển đến Bảng điều khiển → chọn Thư mục dùng chung → chọn một thư mục được chia sẻ → chọn Chỉnh sửa.
- Chuyển đến tab Quyền NFS → tìm đến đường dẫn gắn kết của thư mục dùng chung. Mở bảng điều khiển lệnh trên máy tính linux.
- Thực hiện các cài đặt thành phần cần thiết → nhập lệnh “apt cài đặt apt nfs-common”
- Nhập lệnh mount mount-t nfs [Địa chỉ IP NFS Synology] : [đường dẫn gắn kết của thư mục dùng chung] / [điểm gắn kết trên máy khách NFS]
- Nhập lệnh đĩa miễn phí (df) để xác nhận gắn thành công thư mục dùng chung.
Hướng dẫn cài đặt và cấu hình NFS Server trên Linux
NFS hỗ trợ nhiều OS Linux bao gồm cả CentOS, Almalinux hay Ubuntu, Debian. Dưới đây là hướng dẫn chi tiết giúp bạn cài đặt và cấu hình NFS trên từng hệ điều hành này.
Cài đặt NFS Server trên CentOS/Almalinux
- Bước 1: Chạy lệnh “yum install nfs-utils -y” để cài đặt
- Bước 2: Chuẩn bị thư mục chia sẻ. Giả sử thư mục chia sẻ là /share-data. Nếu chưa có thì bạn có thể tạo thư mục chia sẻ mới.
- Bước 3: Kích hoạt và chạy các dịch vụ cần thiết bằng lệnh “systemctl enable --now rpcbind nfs-server”
- Bước 4: Thiết lập quyền truy cập và cập nhật quyền này vào file “/etc/exports”. Client truy cập được từ một IP cụ thể của Client.
- Bước 5: Khởi động lại dịch vụ NFS, mở cổng cho NFS qua firewall.
Cài đặt NFS Server trên Ubuntu/Debian
- Bước 1: Cài đặt package nfs-kernel-server trên máy chủ
- Bước 2: Tạo thư mục mới để chia sẻ thông qua NFS → loại bỏ tất cả phân quyền cho thư mục này để máy trạm có thể truy cập và tạo file.
- Bước 3: Chỉnh sửa file cấu hình của NFS Server để thiết lập chia sẻ cho máy trạm. Thêm nội dung chỉnh sửa với câu lệnh “directory_to_share client(share_option1,…,share_optionN)”
- Bước 4: Kích hoạt lại NFS Server để áp dụng những thay đổi vừa chỉnh sửa. Lúc này NFS Server đã sẵn sàng chờ kết nối.
Hướng dẫn sử dụng NFS
Sau khi cấu hình thành công dịch vụ NFS, bạn có thể bắt đầu sử dụng để chia sẻ và truy cập dữ liệu thông qua hướng dẫn các bước dưới đây:
- Bước 1: Xác định thư mục chia sẻ: Trên máy chủ server chọn thư mục cần chia sẻ qua NFS. Hãy chắc chắn rằng thư mục đó đã được cấp quyền trong tệp cấu hình /etc/exports.
- Bước 2: Khởi động dịch vụ NFS bằng lệnh “sudo systemctl start nfs-server”. Kiểm tra trạng thái dịch vụ bằng lệnh “sudo systemctl status nfs-server”
- Bước 3: Kết nối từ máy khách (client): Tạo thư mục gắn kết (mount point) trên Client bằng lệnh “sudo mkdir /mnt/nfs_share” → gắn kết thư mục từ server bằng lệnh “sudo mount server_IP:/path/to/shared_folder /mnt/nfs_share”
- Bước 4: Sử dụng dữ liệu: Sau khi mount thành công, bạn có thể truy cập, đọc, ghi dữ liệu trong thư mục /mnt/nfs_share giống như thư mục cục bộ.
- Bước 5: Tự động mount khi khởi động máy: Thêm cấu hình vào tệp /etc/fstab” bằng lệnh “server_IP:/path/to/shared_folder /mnt/nfs_share nfs defaults 0 0”
Tóm lại, NFS (Network File System) là một trong những giao thức chia sẻ tệp tin phổ biến, giúp các máy tính trong cùng mạng có thể truy cập, chỉnh sửa và quản lý dữ liệu tập trung một cách dễ dàng. Trên đây HostingViet đã giải đáp cho bạn về khái niệm “NFS là gì?”, các ưu - nhược điểm và các phiên bản và cách mà NFS hoạt động. Nếu bạn có gì thắc mắc, có thể liên hệ với chúng tôi qua hotline 024.2222.2223 để được giải đáp nhé.