NFS là viết tắt của Network File System, là một giao thức cho phép gắn thư mục từ xa trên máy chủ và truy cập nó từ các máy khách khác nhau. Với NFS, bạn có được một cách tiêu chuẩn để truy cập các hệ thống từ xa và nó hỗ trợ chia sẻ tài nguyên. Hướng dẫn này sẽ giới thiệu cách cài đặt máy chủ NFS Và cách mount NFS trên Ubuntu 22.04 .
Cài đặt máy chủ NFS Trên Ubuntu 22.04
Cập nhật máy chủ
Đăng nhập vào máy chủ của bạn nơi bạn muốn cài đặt và cấu hình máy chủ NFS, sau đó cập nhật các gói.
$ sudo apt update
Cài đặt NFS trên Ubuntu 22.04
Sau khi hoàn thành việc cập nhật, chúng ta cần cài đặt gói máy chủ NFS. Cài đặt nó thông qua apt với lệnh dưới đây.
$ sudo apt install nfs-kernel-server
Nhấn y để tiếp tục cài đặt.
Sau khi cài đặt xong máy chủ NFS, kiểm tra trạng thái của nó. Trên Ubuntu 22.04, máy chủ NFS được kích hoạt tự động sau khi cài đặt. Nếu chúng ta kiểm tra trạng thái, chúng ta xác nhận rằng nó đang hoạt động và sẵn sàng sử dụng.
$ sudo systemctl status nfs-server
Hơn nữa, máy chủ NFS sẽ được kích hoạt tự động ngay cả sau khi bạn khởi động lại máy chủ của mình.
Tạo thư mục chia sẻ
Sau khi cài đặt, chúng ta cần tạo thư mục chia sẻ trên máy chủ của mình để khi gắn NFS trên máy khách, chúng ta có thể truy cập vào thư mục chia sẻ này.
Thư mục chia sẻ được xác định trong tệp /etc/exports nhưng trước tiên, chúng ta phải tạo thư mục đó. Trong trường hợp này, hãy đặt tên là cloudviet_shared.
$ sudo mkdir /mnt/cloudviet_shared
Thay đổi quyền của thư mục để cấp quyền cho tất cả người dùng đọc, ghi và thực thi thư mục từ máy khách.
$ sudo chmod 777 /mnt/cloudviet_shared/
Đôi khi, bạn có thể đi xa hơn và thay đổi chủ sở hữu của thư mục. Nhưng điều đó phụ thuộc vào sở thích của bạn.
Cấu hình chia sẻ của thư mục
Để xác định thư mục chia sẻ trong tệp /etc/exports trên máy chủ, chúng ta phải có địa chỉ IP của máy khách vì chúng ta phải định nghĩa nó và trỏ nó đến thư mục chia sẻ.
Vì vậy, đăng nhập vào máy khách của bạn và lấy địa chỉ IP của nó. Bạn có thể sử dụng lệnh IP.
$ ip a | grep en
Địa chỉ IP của máy khách của chúng ta trong trường hợp này là 172.1.1.14.
Sử dụng trình chỉnh sửa tệp của bạn để truy cập tệp /etc/exports.
$ sudo nano /etc/exports
Sau khi tệp mở, định nghĩa thư mục chia sẻ và địa chỉ IP của máy khách NFS sẽ sử dụng nó. Chúng ta cũng đã cấp quyền đọc và ghi cho thư mục chia sẻ bằng cách sử dụng tùy chọn rw. Sync đảm bảo NFS server có sẵn cho các máy khách và cho phép nó ghi các thay đổi trước khi đáp ứng các máy khách.
Cuối cùng, thêm no_subtree_check vô hiệu hóa kiểm tra phụ cây con và đảm bảo không có xung đột xảy ra khi người dùng thay đổi tên tập tin.
Sau đó lưu và thoát tệp.
Để áp dụng các thay đổi được thực hiện trên tệp và xuất thư mục chia sẻ, chạy lệnh dưới đây.
$ sudo exportfs -a
Khởi động lại NFS server và xác nhận rằng trạng thái của nó đã được thiết lập là hoạt động.
Để áp dụng các thay đổi được thực hiện trên tệp và xuất thư mục được chia sẻ, chạy lệnh dưới đây.
$ sudo systemctl restart nfs-server
$ sudo systemctl status nfs-server
Kiểm tra thư mục đã chia sẽ thành công
Bạn có thể xác nhận thư mục được chia sẻ được xác định trên NFS server bằng lệnh exportfs.
Để áp dụng các thay đổi được thực hiện trên tệp và xuất thư mục được chia sẻ, chạy lệnh dưới đây.
$ sudo exportfs -v
Bạn sẽ nhận được đường dẫn đến thư mục được chia sẻ mà chúng ta đã tạo trước đó.
Mở firewall
Bước cuối cùng trên máy chủ là cấu hình tường lửa để cho phép lưu lượng từ máy khách. Đối với điều đó, tạo quy tắc dưới đây và thay thế IP bằng địa chỉ IP của máy khách của bạn.
$ sudo ufw allow from 172.1.1.14 to any port nfs
Kiểm tra trạng thái tường lửa để xác nhận rằng quy tắc của bạn đã được thêm thành công.
$ sudo ufw status
Cấu hình NFS trên Máy khách
Đăng nhập vào máy khách của bạn và cập nhật các kho lưu trữ.
$ sudo apt update
Sau đó, bạn cần cài đặt gói nfs-common để giúp cho việc gắn kết thư mục được chia sẻ của NFS server.
$ sudo apt install nfs-common
Sau khi gói được cài đặt, chúng ta cần tạo một địa chỉ gắn kết trên máy khách. Hãy đặt tên cho nó là client_shared.
$ sudo mkdir -p /mnt/client_shared
Chỉ định địa chỉ IP của NFS server, đường dẫn đến thư mục được chia sẻ và thư mục đích để gắn kết thư mục được chia sẻ của NFS trên máy khách, như ví dụ dưới đây.
$ sudo mount 172.1.1.14:/mnt/cloudviet_shared /mnt/client_shared
Xác nhận rằng NFS server được gắn kết trên máy khách bằng cách sử dụng lệnh df.
$ sudo df -h
NFS của chúng ta đã được gắn kết thành công trên máy khách.
Hãy tạo một tệp trên máy khách đến thư mục được chia sẻ của NFS server để kiểm tra xem chúng ta có quyền ghi hay không.
Mở máy chủ và kiểm tra xem tệp có sẵn không. Nếu bạn mở tệp, chúng tôi lưu ý rằng tệp đó giống với tệp chúng tôi đã tạo trên máy khách. Điều này xác nhận rằng thư mục dùng chung của chúng tôi trên máy chủ NFS hoạt động như mong đợi.
Tự động Mount NFS trên ubuntu 22.04
Phương pháp mà chúng ta đã mô tả cho đến nay liên quan đến việc mount NFS trên Ubuntu bằng cách thủ công. Chúng ta có thể tự động hóa công việc đó để NFS server sẽ được mount khi khởi động máy tính.
Đầu tiên, hãy unmount thư mục đích của NFS.
$ sudo umount /mnt/client_shared
Mở tệp /etc/fstab và thêm địa chỉ IP của NFS server, thư mục được chia sẻ và thư mục đích, như trong ví dụ của chúng tôi bên dưới.
Sử dụng lệnh mount để xác minh rằng cấu hình là chính xác.
$ sudo mount -a
Bạn có thể xác nhận rằng NFS đã được mount thành công trên client của bạn. Mỗi khi bạn khởi động máy tính, NFS sẽ được tự động mount.
Kết luận
Cách mount NFS trên Ubuntu 22.04 không phải là một quá trình phức tạp. Trước tiên, bạn cần cài đặt và cấu hình NFS trên máy chủ của bạn, sau đó cài đặt nó trên client. Một khi bạn cấu hình nó, như chúng tôi đã làm trong bài viết này, NFS của bạn sẽ được mount thành công trên Ubuntu của bạn.