Chia sẻ file trong mạng LAN - Hệ thống NAS nhà làm
Biến bất cứ máy tính chạy Linux nào thành NAS để truy cập file dễ dàng
Hướng dẫn tạo phân vùng share ổ cứng thông qua Samba trên Linux
Bài viết này sẽ hướng dẫn chi tiết cách tạo phân vùng ổ cứng và chia sẻ qua mạng bằng Samba trên các hệ điều hành nhân Linux như Ubuntu, Raspberry Pi và các bản phân phối khác.
Bước 1: Mount ổ đĩa
Kiểm tra danh sách ổ đĩa
Đầu tiên, kiểm tra các ổ đĩa và phân vùng hiện có trên hệ thống:
sudo lsblk -f
hoặc đơn giản hơn:
sudo lsblk
Ví dụ kết quả:
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 0 111.8G 0 disk
├─sda1 8:1 0 512M 0 part /boot/efi
└─sda2 8:2 0 111.3G 0 part /
sdb 8:16 0 1.8T 0 disk
└─sdb1 8:17 0 1.8T 0 part
Trong ví dụ này, chúng ta thấy:
sda
là ổ đĩa hệ thống với hai phân vùng:sda1
(boot) vàsda2
(root)sdb
là ổ đĩa thứ hai với một phân vùngsdb1
chưa được mount
Chúng ta sẽ sử dụng phân vùng sdb1
để tạo share.
Format ổ đĩa (tùy chọn)
Nếu phân vùng sdb1
chưa được định dạng, bạn có thể format với hệ thống tệp ext4:
sudo mkfs -t ext4 /dev/sdb1
Lưu ý: Lệnh này sẽ xóa toàn bộ dữ liệu trên phân vùng.
Tạo điểm mount
Tạo thư mục làm điểm mount cho ổ đĩa:
sudo mkdir -p /mnt/data_share
Mount ổ đĩa
Gắn ổ đĩa vào điểm mount đã tạo:
sudo mount /dev/sdb1 /mnt/data_share
Cấp quyền cho thư mục mount
Cấp quyền sở hữu cho người dùng (ví dụ: pi) để có thể đọc/ghi vào ổ đĩa:
sudo chown -R pi:pi /mnt/data_share
Bước 2: Cài đặt và cấu hình Samba
Cài đặt Samba
sudo apt install samba samba-common-bin -y
Cấu hình Samba
Mở file cấu hình Samba để chỉnh sửa:
sudo nano /etc/samba/smb.conf
Thêm cấu hình chia sẻ vào cuối file:
[NAS]
path = /mnt/data_share
writeable = yes
guest ok = yes
create mask = 0777
directory mask = 0777
Khởi động lại dịch vụ Samba
sudo /etc/init.d/smbd restart
Bước 3: Hỗ trợ các định dạng ổ đĩa khác (tùy chọn)
Nếu bạn cần hỗ trợ định dạng exFAT (thường dùng cho ổ cứng di động):
sudo apt install exfat-fuse exfat-utils -y
Bước 4: Quản lý người dùng và phân quyền
Kiểm tra phân quyền hiện tại
ls -l /mnt/data_share
Thêm người dùng mới
sudo useradd leolion
Thêm người dùng vào nhóm đã được phân quyền
sudo usermod -aG pi leolion
Tạo mật khẩu Samba cho người dùng
sudo smbpasswd -a leolion
Lệnh này sẽ yêu cầu bạn nhập và xác nhận mật khẩu cho người dùng.
Bước 5: Cấu hình mount ổ đĩa tự động khi khởi động
Xác định UUID của phân vùng
Trước tiên, lấy UUID của phân vùng cần mount:
sudo lsblk -f
Kết quả ví dụ:
NAME FSTYPE LABEL UUID MOUNTPOINT
sda
├─sda1 vfat EFI5-7823 /boot/efi
└─sda2 ext4 81bb4976-a820-4e0d-92ab-1a754f9837bd /
sdb
└─sdb1 ext4 a63e1694-79fe-4d7d-9e69-a9d4f67ce28a
Trong ví dụ này, UUID của phân vùng sdb1
là a63e1694-79fe-4d7d-9e69-a9d4f67ce28a
.
Chỉnh sửa file fstab
sudo nano /etc/fstab
Thêm dòng sau vào cuối file để hệ thống tự động mount ổ đĩa khi khởi động:
UUID=a63e1694-79fe-4d7d-9e69-a9d4f67ce28a /mnt/data_share ext4 defaults,auto,users,rw,nofail,noatime 0 0
Kết nối đến thư mục chia sẻ Samba
Sau khi hoàn tất cấu hình, bạn có thể truy cập thư mục chia sẻ từ các thiết bị khác trong mạng:
Từ Windows
Mở File Explorer và nhập vào thanh địa chỉ:
\\<địa_chỉ_IP_máy_chủ>\NAS
Từ Linux
smbclient //địa_chỉ_IP_máy_chủ/NAS -U tên_người_dùng
Từ macOS
Mở Finder, chọn "Kết nối đến máy chủ" và nhập:
smb://địa_chỉ_IP_máy_chủ/NAS
Với các bước trên, bạn đã hoàn tất việc cài đặt và cấu hình một máy chủ NAS đơn giản bằng Samba trên Linux, cho phép chia sẻ dữ liệu qua mạng một cách dễ dàng và an toàn.