it-swarm-vi.com

Gắn đĩa USB vào vị trí cố định

Tôi có một đĩa cứng USB mà tôi muốn gắn vào boot và ở một vị trí cụ thể. Làm cách nào tôi có thể gắn ổ đĩa đó và luôn sẵn sàng (nói về sao lưu cục bộ, v.v.) mặc dù không có ai đăng nhập?

Có vẻ như udev hoặc một cái gì đó tương tự nắm giữ đĩa. Nếu tôi đặt một mục trong/etc/fstab cố gắn ổ đĩa này (bằng UUID), thì quá trình gắn kết đó và quá trình gắn kết udev dường như kết thúc trong một trận chiến với nhau và đĩa không được gắn kết.

13
Don Faulkner

Gắn đĩa bằng udev. Đặt quy tắc từ đây wiki vào /etc/udev/user.rules và khởi động lại (hoặc kết nối lại USB HDD). Có một số ưu tiên của các quy tắc trong wiki (đó là lý do tại sao tôi không liệt kê chúng ở đây), chọn một quy tắc phù hợp nhất với nhu cầu của bạn (ví dụ: bạn cần một người dùng bình thường cụ thể để có thể ngắt kết nối nó).

Tìm hiểu /lib/udev/rules.d/80-udisks.rules sẽ giúp bạn hiểu udev đang làm gì với đĩa cứng của bạn.

Bên cạnh các quy tắc udev tôi đã đề cập ở trên, tôi nghĩ có một cách tiếp cận khác mà bạn có thể thực hiện: hướng dẫn udisks (thông qua udev) để đĩa của bạn một mình và sau đó gắn kết nó qua fstab.

Mã này hoạt động trên hệ thống của tôi

ACTION!="add|change", GOTO="my_udisks_end"
SUBSYSTEM!="block", GOTO="my_udisks_end"

ENV{ID_TYPE}!="disk", GOTO="my_udisks_end"
ENV{ID_BUS}!="ata", GOTO="my_udisks_end"
ENV{DEVTYPE}!="partition", GOTO="my_udisks_end"

KERNEL=="sd*|hd*", ENV{UDISKS_PRESENTATION_NOPOLICY}="1"

LABEL="my_udisks_end"

nhưng là chung chung và bao gồm tất cả các phân vùng. Để có thể nhắm mục tiêu hdd/phân vùng cụ thể của bạn, hãy sử dụng udevadm info --query=all -n /dev/sdX và sau đó khớp với một số thuộc tính cụ thể đó trong các quy tắc udev.

Một tài nguyên tốt để giúp bạn trong việc này là Viết quy tắc udev . Thật không may, nó chứa một số thông tin lỗi thời (udevinfo đã được thay thế bằng udevadm indo). Mặc dù vậy, tôi đảm bảo với bạn rằng đây là một cuốn sách đáng đọc - udev là một phần kiến ​​trúc trung tâm hiện nay và bạn có thể hoàn thành rất nhiều bằng cách sử dụng nó. Nó cũng khá linh hoạt.

Nó cũng dễ dàng phạm sai lầm trong các quy tắc udev :). Sử dụng udevadm test $(udevadm info -q path -n /dev/sdX) để 'nhìn trộm' những gì udev đang làm.

7
Li Lo

Bạn có thể thử tham chiếu nó bằng/dev/... thay vì UUID. Rất có thể/dev/sdb *, bạn có thể kiểm tra điều này bằng cách đi tới Hệ thống -> Quản trị -> Giám sát hệ thống và nhấp vào tab 'Hệ thống tệp'. Bạn sẽ cần phải lắp ổ USB trước và để nó tự động được gắn. Thay thế 'UUID = uuid' bằng '/ dev/sdb *' trong/etc/fstab. Luôn luôn là một ý tưởng tốt để sao lưu fstab trước khi chỉnh sửa nó.

1
dv3500ea