Giới thiệu
Ở bài trước mình có hướng dẫn các bạn cách gắn ổ cứng định dạng NTFS và exFAT trên hệ điều hành Linux. Tuy nhiên ở bài đó chúng ta phải làm thủ công bằng tay. Phương pháp đó ổn định tuy nhiên bạn sẽ phải thực hiện gắn thủ công cho từng ổ đĩa một. Sẽ rất mất thời gian và có thể dẫn đến việc sai sót. Trong bài viết này chúng ta sẽ thực hiện tự động gán ổ đĩa một cách nhanh chóng bằng gói cài đặt usbmount. Cùng bắt đầu nhé!
Cách cài đặt
Bước 1: Vẫn như thường lệ, các bạn sử dụng giao thức SSH để đăng nhập vào máy chạy Linux của mình. Sau đó chạy 2 câu lệnh dưới đây để tiến hành cập nhật dữ liệu gói và nâng cấp những gói đã cũ trên Linux
sudo apt-get update sudo apt-get upgrade -y
Bước 2: Tiến hành cài đặt gói usbmount
sudo apt-get install usbmount
Bước 3 (tùy chọn): Nếu các bạn đã cài các gói hỗ trợ đọc ghi ổ đĩa có định dạng NTFS và exFAT rồi thì có thể bỏ qua.
sudo apt-get install ntfs-3g exfat-fuse exfat-utils
Bước 4: Cấu hình cho gói usbmount bằng cách mở file sau và chỉnh sửa
sudo nano /etc/usbmount/usbmount.conf
Sau khi mở file usbmount.conf bằng trình chỉnh sửa nano qua câu lệnh ở trên. Chúng ta xóa những biến cũ có trong file và thay mới thành các dữ liệu sau:
- FILESYSTEMS=”vfat ntfs fuseblk ext2 ext3 ext4 hfsplus exfat”
- FS_MOUNTOPTIONS=”-fstype=ntfs-3g,nls=utf8,umask=007,gid=46 -fstype=fuseblk,nls=utf8,umask=007,gid=46 -fstype=vfat,gid=1000,uid=1000,umask=007 -fstype=exfat,nls=utf8,umask=007,gid=46″
Tiến hành lưu dữ liệu và thoát ra, khởi động lại máy để cập nhật có hiệu quả.
Mặc định vị trí nhận của các thiết bị lưu trữ khi gắn vào sẽ có dạng: /media/usb0 từ thiết bị thứ 2 trở đi sẽ là /media/usbx với x là số thứ tự bắt đầu từ 0,1,2,3…
Lỗi đã phát hiện
Ở một số trường hợp, sau khi kết nối ổ cứng vào máy sẽ có hiện tượng, ổ chỉ sử dụng được thời gian đầu và sau đó không sử dụng được nữa. Chúng ta giải quyết lỗi đó bằng phương pháp sau:
Bước 1: Tạo file mới có tên usbmount.rules ở đường dẫn /etc/udev/rules.d/
sudo nano /etc/udev/rules.d/usbmount.rules
Với nội dung
KERNEL=="sd*", DRIVERS=="sbp2", ACTION=="add", PROGRAM="/bin/systemd-escape -p [email protected] $env{DEVNAME}", ENV{SYSTEMD_WANTS}+="%c" KERNEL=="sd*", SUBSYSTEMS=="usb", ACTION=="add", PROGRAM="/bin/systemd-escape -p [email protected] $env{DEVNAME}", ENV{SYSTEMD_WANTS}+="%c" KERNEL=="ub*", SUBSYSTEMS=="usb", ACTION=="add", PROGRAM="/bin/systemd-escape -p [email protected] $env{DEVNAME}", ENV{SYSTEMD_WANTS}+="%c" KERNEL=="sd*", ACTION=="remove", RUN+="/usr/share/usbmount/usbmount remove" KERNEL=="ub*", ACTION=="remove", RUN+="/usr/share/usbmount/usbmount remove"
Bước 2: Tạo file mới [email protected] ở đường dẫn /etc/systemd/system/
sudo nano /etc/systemd/system/[email protected]
Với nội dung
[Unit] BindTo=%i.device After=%i.device [Service] Type=oneshot TimeoutStartSec=0 Environment=DEVNAME=%I ExecStart=/usr/share/usbmount/usbmount add RemainAfterExit=yes
Khởi động lại hệ thống để hoàn tất quá trình. Kiểm tra lại vị trí đã gán của ổ cứng bằng lệnh
lsblk
Kết luận
Mình đã giới thiệu về cách cài đặt để hệ điều hành Linux có thể tự động nhận các thiết bị lưu trữ ngoài như USB hay ổ cứng di động. Nếu trong quá trình sử dụng có vấn đề gì phát sinh, vui lòng để lại bình luận để mình và mọi người có thể hỗ trợ giải quyết. Cảm ơn các bạn đã quan tâm bài viết!