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/FOLDERCode 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 ~/HetznerCode 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.mountCode 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.targetCode language: JavaScript (javascript)

Bạn cần thay đổi các thông số:

  • What= đường dẫn đến Storage Box của Hetzner
  • Where= đườ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.mountCode language: Bash (bash)

Ra lệnh để hệ thống mount Storage Box ngay lập tức

sudo systemctl start hetzner.mountCode language: CSS (css)

Kiểm tra lại xem kết nối thành công chưa

sudo systemctl status hetzner.mountCode 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!

Để lại một bình luận

Email của bạn sẽ không được hiển thị công khai. Các trường bắt buộc được đánh dấu *