Trong bài viết giới thiệu về dịch vụ Storage Box của Hetzner, mình đã chia sẻ cách tạo ổ đĩa mạng trên Windows để truy cập dữ liệu lưu trên Storage Box thông qua giao thức SMB / CIFS. Hiện tại mình đã chuyển qua dùng EndeavourOS nên phải nghiên cứu cách truy cập Storage Box trên Linux.
Bài viết này sẽ hướng dẫn cách tạo ổ đĩa mạng kết nối qua giao thức Samba / CIFS trên EndeavourOS.
Kết nối nhanh đến Storage Box
Theo hướng dẫn của Hetzner, mình cần dùng lệnh này để mount Storage Box vào hệ thống
mount.cifs -o user=<username>,pass=<password> //<username>.your-storagebox.de/backup /PATH/FOLDER
Code language: PHP (php)
Các thông số cần sửa đổi:
- <username>: thay bằng tên tài khoản dạng
uxyzxyz
- <password>: thay bằng mật khẩu
- /PATH/FOLDER: thay bằng đường dẫn thư mục trên máy tính
Tuy nhiên, trong thực tế khi nhập lệnh này trên EndeavourOS sẽ bị báo lỗi
mount error(22): Invalid argument
Refer to the mount.cifs(8) manual page (e.g. man mount.cifs) and kernel log messages (dmesg)
Code language: CSS (css)
Sau 1 vòng Google, mình đã tìm ra cách xử lý: cần phải thêm tham số vers=2.0
vào sau phần pass=......,
thì mới mount thành công.
sudo mount.cifs -o user=u222222,pass=123124132433,vers=2.0 //u294518.your-storagebox.de/Backup ~/Hetzner
Code language: JavaScript (javascript)
Nguồn: https://bbs.archlinux.org/viewtopic.php?id=277722
Tự động mount khi khởi động
Hướng dẫn của Hetzner kêu chỉnh sửa file /etc/fstab
nhưng mình toàn bị lỗi khi áp dụng trên EndeavourOS. Có lẽ hướng dẫn đó phù hợp với nhà Debain / Ubuntu, còn bên nhà Arch Linux không dùng được.
Mình phải chuyển qua dùng systemd unit theo hướng dẫn ở đây: https://wiki.archlinux.org/title/Samba#As_systemd_unit để tạo dịch vụ tự động kết nối Storage Box khi khởi động máy thì mới thành công.
Tạo file home-thuanbui-hetzner.mount
trong thư mục /etc/systemd/system
sudo nano /etc/systemd/system/home-thuanbui-hetzner.mount
Code language: Nginx (nginx)
Nhập vào nội dung như dưới đây
[Unit]
Description=Mount Hetzner Storage Box at boot
[Mount]
What=//u22222.your-storagebox.de/backup
Where=/home/thuanbui/hetzner
Options=_netdev,username=u22222,password=q222222222229,vers=2.0,iocharset=utf8,rw,file_mode=0660,dir_mode=0770,uid=1000,gid=1000
Type=cifs
TimeoutSec=30
[Install]
WantedBy=multi-user.target
Code language: JavaScript (javascript)
Bạn cần thay đổi các thông số:
What=
đường dẫn đến Storage Box của HetznerWhere=
đường dẫn đến thư mục trên máy được dùng để kết nối.Options=
thay thông số username và password tương ứng với tài khoản của bạn.
Chú ý quan trọng:
Bạn cần phải đặt tên của file *.mount tương ứng với thông số được thiết lập trong mục Where=
. Nếu không khi kích hoạt sẽ bị báo lỗi Where= setting doesn't match unit name. Refusing.
Trong ví dụ trên, mình chọn dường dẫn là /home/thuanbui/hetzner
nên trước đó mình đã tạo file mount với tên gọi home-thuanbui-hetzner.mount
.
Nếu bạn chọn mount vào thư mục khác, ví dụ /mnt/hetzner
thì tên gọi file mount phải đổi thành mnt-hetzner.mount
Kích hoạt để hệ thống tự động mount khi khởi động
sudo systemctl enable hetzner.mount
Code language: Bash (bash)
Ra lệnh để hệ thống mount Storage Box ngay lập tức
sudo systemctl start hetzner.mount
Code language: CSS (css)
Kiểm tra lại xem kết nối thành công chưa
sudo systemctl status hetzner.mount
Code language: CSS (css)
Kết quả
● home-thuanbui-hetzner.mount - Mount Hetzner Storage Box at boot
Loaded: loaded (/proc/self/mountinfo; enabled; preset: disabled)
Active: active (mounted) since Wed 2022-07-20 21:27:35 +07; 18min ago
Until: Wed 2022-07-20 21:27:35 +07; 18min ago
Where: /home/thuanbui/hetzner
What: //u294518.your-storagebox.de/backup
Tasks: 0 (limit: 9398)
Memory: 20.0K
CPU: 6ms
CGroup: /system.slice/home-thuanbui-hetzner.mount
Thg 7 20 21:27:32 thuanbui-macbookpro121 systemd[1]: Mounting Mount Hetzner Storage Box at boot...
Thg 7 20 21:27:35 thuanbui-macbookpro121 systemd[1]: Mounted Mount Hetzner Storage Box at boot.
Code language: YAML (yaml)
Thư mục /home/thuanbui/hetzner
giờ đã được kết nối đến Storage Box của Hetzner
[thuanbui@thuanbui-macbookpro121 ~]$ ls /home/thuanbui/hetzner
Apps Backup ISO
Mò mẫm cái vụ này mất 2 ngày mới xong. Hy vọng bài viết giúp ích cho các bạn nào đang gặp khó khăn khi mount Samba Share lên Linux, đặc biệt là khi dùng các bản phân phối của nhà Arch Linux.
[convertkit form=7087807]
Lưu ý: Nếu bạn cần hỗ trợ kỹ thuật, vui lòng gửi câu hỏi trực tiếp ở phần Thảo luận bên dưới, mình sẽ trả lời sớm. Đừng vào hỏi trong fanpage Yêu Chạy Bộ, sẽ không có phản hồi đâu!