Thiết lập máy chủ và máy khách NFS trên CentOS 8

theanh

Administrator
Nhân viên
NFS là viết tắt của "Network File System" và là một giao thức hệ thống tệp phân tán được sử dụng để chia sẻ tệp và thư mục giữa các hệ điều hành dựa trên Linux. Với NFS, bạn có thể gắn hệ thống tệp từ xa cục bộ qua mạng. Với NFS, bạn có thể chia sẻ tệp và thư mục với nhiều máy và cập nhật tệp qua chia sẻ. NFS là lựa chọn tốt nhất cho bạn nếu bạn đang tìm kiếm một giải pháp lưu trữ tập trung.

Trong hướng dẫn này, chúng tôi sẽ chỉ cho bạn cách thiết lập máy chủ và máy khách NFS trên CentOS 8.

Yêu cầu​

  • Hai máy chủ chạy CentOS 8.
  • Một địa chỉ IP tĩnh 172.20.10.4 được cấu hình trên máy chủ NFS và 172.20.10.3 được cấu hình trên máy khách NFS.
  • Một mật khẩu gốc được cấu hình trên cả hai máy chủ.

Bắt đầu​

Theo mặc định, SELinux được bật trong máy chủ CentOS 8. Vì vậy, trước tiên bạn cần phải tắt nó.

Bạn có thể thực hiện việc này bằng cách chỉnh sửa tệp /etc/selinux/config:
Mã:
nano /etc/selinux/config
Thực hiện các thay đổi sau:
Mã:
SELINUX=disabled
Lưu và đóng tệp. Sau đó, khởi động lại hệ thống để áp dụng các thay đổi.

Cài đặt NFS Server​

Theo mặc định, gói NFS có sẵn trong kho lưu trữ mặc định của CentOS 8. Bạn có thể cài đặt bằng cách chạy lệnh sau:
Mã:
dnf install nfs-utils
Sau khi cài đặt máy chủ NFS, hãy khởi động dịch vụ NFS và cho phép dịch vụ này khởi động sau khi khởi động lại hệ thống:
Mã:
systemctl start nfs-server
systemctl enable --now nfs-server
Bạn cũng có thể kiểm tra trạng thái của dịch vụ NFS bằng lệnh sau lệnh:
Mã:
systemctl status nfs-server
Bạn sẽ thấy kết quả sau:
Mã:
? nfs-server.service - NFS server and services Loaded: loaded (/usr/lib/systemd/system/nfs-server.service; disabled; vendor preset: disabled) Active: active (exited) since Thu 2019-11-07 02:07:09 EST; 1s ago Process: 9721 ExecStart=/bin/sh -c if systemctl -q is-active gssproxy; then systemctl reload gssproxy ; fi (code=exited, status=0/SUCCESS) Process: 9699 ExecStart=/usr/sbin/rpc.nfsd (code=exited, status=0/SUCCESS) Process: 9698 ExecStartPre=/usr/sbin/exportfs -r (code=exited, status=0/SUCCESS) Main PID: 9721 (code=exited, status=0/SUCCESS)
Nov 07 02:07:09 centos8 systemd[1]: Starting NFS server and services...
Nov 07 02:07:09 centos8 systemd[1]: Started NFS server and services.

Tạo Chia sẻ NFS​

Trong phần này, chúng ta sẽ tạo hai thư mục /nfsshare/data và /nfsshare/backup, rồi chia sẻ chúng với NFS.

Đầu tiên, hãy tạo các thư mục bắt buộc với các lệnh sau:
Mã:
mkdir -p /nfsshare/data
mkdir -p /nfsshare/backup
Tiếp theo, cấp toàn quyền cho thư mục bằng lệnh sau:
Mã:
chmod -R 777 /nfsshare
Tiếp theo, bạn sẽ cần xuất các thư mục đã tạo bằng cách chỉnh sửa /etc/exports tệp:
Mã:
nano /etc/exports
Thêm các dòng sau:
Mã:
/nfsshare/data 172.20.10.0/24(rw,sync,no_subtree_check)
/nfsshare/backup 172.20.10.0/24(ro,sync,no_subtree_check,no_root_squash)
Lưu và đóng tệp. Sau đó, chạy lệnh sau để làm cho thư mục của bạn có thể chia sẻ trong mạng:
Mã:
exportfs -ra
Bạn sẽ cần chạy lệnh trên mỗi lần bạn sửa đổi tệp /etc/exports.

Bạn có thể xem các bản xuất đang hoạt động bằng lệnh sau:
Mã:
exportfs -v
Bạn sẽ thấy thông báo sau đầu ra:
Mã:
/nfsshare/data	172.20.10.0/24(sync,wdelay,hide,no_subtree_check,sec=sys,rw,secure,root_squash,no_all_squash)
/nfsshare/backup	172.20.10.0/24(sync,wdelay,hide,no_subtree_check,sec=sys,ro,secure,no_root_squash,no_all_squash)

Cấu hình Tường lửa​

Tiếp theo, bạn sẽ cần cho phép SSH (cho mục đích quản trị) và dịch vụ NFS thông qua firewalld để truy cập vào chia sẻ NFS từ hệ thống từ xa. Chạy lệnh sau để cho phép dịch vụ SSH và NFS thông qua tường lửa:
Mã:
firewall-cmd --permanent --zone=public --add-service=ssh
firewall-cmd --permanent --zone=public --add-service=nfs
firewall-cmd --reload

Cài đặt NFS Client​

Bây giờ, hãy đăng nhập vào hệ thống NFS Client và cài đặt gói NFS Client bằng lệnh sau:
Mã:
dnf install nfs-utils
Sau khi cài đặt hoàn tất, bạn có thể kiểm tra các chia sẻ NFS có sẵn trên máy chủ NFS bằng lệnh sau:
Mã:
showmount -e 172.20.10.4
Bạn sẽ thấy đầu ra sau:
Mã:
Export list for 172.20.10.4:
/nfsshare/backup 172.20.10.0/24
/nfsshare/data 172.20.10.0/24

Gắn kết các Chia sẻ NFS trên Máy khách​

Tiếp theo, tạo hai thư mục trên máy khách nơi bạn muốn gắn kết các chia sẻ NFS.
Mã:
mkdir /home/backup
mkdir /home/data
Tiếp theo, gắn kết các thư mục được chia sẻ trên máy chủ NFS bằng các lệnh sau:
Mã:
mount -t nfs4 172.20.10.4:/nfsshare/data /home/data
mount -t nfs4 172.20.10.4:/nfsshare/backup /home/backup
Bạn bây giờ có thể kiểm tra các chia sẻ NFS đã gắn kết bằng lệnh sau:
Mã:
df -h
Bạn sẽ thấy đầu ra sau:
Mã:
Filesystem Size Used Avail Use% Mounted on
/dev/sda1 92G 36G 51G 42% /
none 4.0K 0 4.0K 0% /sys/fs/cgroup
none 5.0M 0 5.0M 0% /run/lock
none 1.9G 65M 1.9G 4% /run/shm
none 100M 44K 100M 1% /run/user
/dev/sda5 184G 104G 71G 60% /home
172.20.10.4:/nfsshare/data 13G 1.8G 11G 14% /home/data
172.20.10.4:/nfsshare/backup 13G 1.8G 11G 14% /home/backup
Nếu bạn muốn hủy gắn kết các chia sẻ NFS, hãy chạy lệnh sau lệnh:
Mã:
umount /home/data
umount /home/backup

Tự động gắn kết các chia sẻ NFS​

Nếu bạn muốn tự động gắn kết các chia sẻ NFS sau mỗi lần khởi động lại, hãy chỉnh sửa tệp /etc/fstab trên máy khách:
Mã:
nano /etc/fstab
Thêm nội dung sau lines:
Mã:
172.20.10.4:/nfsshare/data /home/data nfs4 rw,sync,hard,intr 0 0
172.20.10.4:/nfsshare/backup /home/backup nfs4 rw,sync,hard,intr 0 0
Lưu và đóng tệp khi bạn hoàn tất.

Bây giờ bạn có thể khởi động lại máy và các điểm gắn kết sẽ tồn tại vĩnh viễn ngay cả sau khi khởi động lại.

Kết luận​

Xin chúc mừng! bạn đã cài đặt và cấu hình thành công máy chủ và máy khách NFS trên CentOS 8. Máy chủ của bạn hiện đã sẵn sàng để phục vụ các tệp. Hãy nhớ rằng NFS không có nhiều bảo mật, vì vậy bạn nên bật xác thực Kerberos.
 
Back
Bên trên