Gắn CLI so với gắn GUI


21

Trên Ubuntu 12.10, khi tôi muốn gắn ổ cứng, tôi chỉ cần nhấp vào ổ đĩa chưa được đếm và mọi thứ đều hoạt động tốt (bằng cách gắn vào /media/username/partitionlabel).

Về cơ bản, tôi muốn thực hiện chính xác điều đó thông qua dòng lệnh (đối với tập lệnh tôi đang làm việc).

Vì tôi không muốn tự động khởi động khi khởi động, fstab không còn nữa (phải không?).

Khi tôi sử dụng mount trên CLI, tôi cần chỉ định một mountpoint (cần phải có một mountpoint được tạo trước đó; tôi cũng cần quan tâm đến các quyền và không có gì) - điều tôi không hiểu là GUI sẽ lấy tất cả ở đâu infos của nó từ đâu? Mountpoint dường như phụ thuộc vào nhãn của phân vùng, nhưng một thư mục như vậy không tồn tại trước khi gắn. Ngoài ra, cách GUI dường như không quan tâm quá nhiều đến việc người dùng không được root.

Có cách nào "dễ dàng" để gắn kết thông qua CLI, giống như cách thực hiện trên GUI bằng cách nhấp vào ổ đĩa không đếm được không?

Câu trả lời:


16

Nautilus và các trình quản lý tệp khác gắn ổ đĩa (tức là GUI ) sử dụng udiskslệnh.

Điều này cung cấp một giá treo động , trong đó điểm gắn kết được tạo cho ổ đĩa đang di chuyển và khi ổ đĩa không được kết nối, điểm gắn kết sẽ biến mất.

Xem man 1 udisksđể biết chi tiết về cách sử dụng lệnh này (bằng tay hoặc được gọi từ tập lệnh / ứng dụng). Để tìm hiểu thêm về cách làm udisksviệc, xem man 7 udisks.

Để gắn thiết bị udisks, bạn phải chỉ định tên thiết bị hợp lệ cho thiết bị. Chỉ định tên âm lượng của thiết bị sẽ không hoạt động. Vì vậy, bạn có thể sử dụng udisksnhư thế này:

udisks --mount /dev/sdb1

Khi sử dụng thủ công udiskstừ dòng lệnh, tốt nhất bạn chỉ nên cắm thiết bị, sau đó chạy dmesg | tailngay sau đó (xem man dmesgman tail) để khám phá tên thiết bị của thiết bị mới được gắn.

Tuy nhiên, đây có thể không phải là cách tốt nhất để viết tập lệnh gắn thiết bị udisks. Tôi không biết chính xác làm thế nào bạn nên làm điều đó và thật khó để biết vì bạn đã không nói cho chúng tôi chính xác những gì bạn muốn tập lệnh này làm và khi nào bạn muốn nó gắn thiết bị.


Cảm ơn rất nhiều - udiskschính xác là những gì tôi đang tìm kiếm! Vì bất kỳ lý do gì, tôi nhận được "Mount fail: Not Aouthorized" khi chạy nó qua ssh; nếu tôi không thúc đẩy vận may của mình, con trỏ sẽ được đánh giá cao về cách khắc phục nó. ^^
NicApicella

2
@NicolaApicella Bạn đang chạy nó như thế nào? Bạn sẽ nhận được một tin nhắn không được ủy quyền nếu bạn cố chạy nó từ một phiên từ xa (bao gồm cả SSH) hoặc từ một crontab; theo mặc định, người dùng không root chỉ có thể gắn kết khối lượng với udiskstừ thông tin đăng nhập tương tác cục bộ. (Tuy nhiên, họ vẫn có thể chạy tập lệnh từ thông tin đăng nhập tương tác cục bộ sử dụng udisks.)
Eliah Kagan

Vâng, xin lỗi, chỉ cần chú ý (và chỉnh sửa) nhận xét trước đây của tôi: Tôi thực sự đang chạy nó từ ssh. (Và hiện đang tìm cách khắc phục.)
NicApicella

6

Vì tôi không muốn tự động khởi động khi khởi động, fstab không còn nữa (phải không?).

Không. noautotừ khóa làm cho nó bỏ qua việc gắn vào lúc khởi động.

Có cách nào "dễ dàng" để gắn kết thông qua CLI, giống như cách thực hiện trên GUI bằng cách nhấp vào ổ đĩa không đếm được không?

Dễ nhất là nên thêm nó vào /etc/fstabvới noautovà sử dụng ...

mount /dir

Điều này sẽ có đầu dò gắn kết cho một điểm gắn kết và nếu không tìm thấy thì cho một thiết bị trong /etc/fstab. /dircần tồn tại mặc dù.

Nếu thiết bị hoặc UUID được cung cấp /etc/fstabsẽ không được thăm dò. Giống như vậy ...

mount /dev/sda1 /media/directory

Hoặc sử dụng udisks (Tôi sẽ để Eliah xử lý việc đó> :-))


mount nói chung là siêu người dùng.

Tùy chọn ví dụ:

  • rw,noauto,user gắn kết nó dưới dạng đọc + ghi nhưng không khởi động và bạn có thể thực hiện với tư cách người dùng.

  • Bạn cũng có thể thêm quyền cho người dùng trong /etc/fstabtệp. Bạn có thể sử dụng umaskcho điều đó.

  • umask = 0444: mọi người đọc, không viết, không thực thi.

  • umask = 0333: mọi người đọc, thực hiện.
  • umask = 0338: chủ sở hữu, nhóm đọc và thực hiện; những người khác, không có gì

OK, có lẽ tôi sẽ tiếp tục và thử điều đó, vì dường như đó là "cách để làm điều đó". :-) Vì vậy, tôi đoán rằng tôi sẽ phải tạo một thư mục mountpoint (với quyền chính xác). ;-)
NicApicella

@Rinzwind Người dùng không root có thể gắn thiết bị không?
Eliah Kagan

1
@EliahKagan Có, nếu bạn đặt các tùy chọn phù hợp trong fstab (uid, user, ...).
NicApicella

@NicolaApicella Tôi hy vọng câu trả lời này có thể được mở rộng để bao gồm thông tin về điều đó. :)
Eliah Kagan

@NicApicella anh ấy thích làm chủ tôi xung quanh: =)
Rinzwind

3

Trong một trong những ý kiến, bạn nói:

Vì bất kỳ lý do gì, tôi nhận được "Mount fail: Not Aouthorized" khi chạy nó qua ssh

Tôi sử dụng pmountthay vì udisks. Nó hoạt động trên ssh.

Nếu tôi nhớ chính xác, đây là cú pháp / etc tôi sử dụng với nó - hầu hết của tôi được ẩn đằng sau các bí danh tại thời điểm này:

pmount /dev/sdb1 my_usb
ls /media/my_usb/
eject /media/my_usb

2

Sử dụng

udisks --mount /dev/sdb1

(thay thế /dev/sdb1bằng thiết bị bạn muốn gắn kết)

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.