Gắn ổ USB với quyền ghi cho mọi người hoặc người dùng cụ thể


25

Tôi biết có những câu hỏi tương tự nhưng tôi nhận được một số vấn đề cụ thể mà tôi không thể khắc phục.

Tôi có:

  • HDD chia thành hai phân vùng. /dev/sdb1/dev/sdb2. sdb1là NTFS và tôi không cần nó. Tôi cần sdb2đó là fat32.
  • Ubuntu 12.04.1 LTS (máy chủ)

Tôi muốn:

Cuối cùng, tôi cần một perma-mount /dev/sdb2để /home/storagecó quyền truy cập (rw) cho người dùng media.

Những vấn đề tôi gặp phải:

1) Sử dụng gắn thủ công từ dòng lệnh.

Nếu tôi chỉ sử dụng

server# sudo mount /dev/sdb2 /home/storage

Nó gắn kết nhưng /home/storageroot nhận là chủ sở hữu và nhóm và không cho phép mediangười dùng viết ở đó.

Nếu tôi sử dụng mountlệnh mà không có sudongười dùng media- tôi không được phép. Nói chỉ root mới có thể sử dụng mount.

Nếu tôi sử dụng mountvới các tùy chọn: server# sudo mount /dev/sdb2 /home/storage -o umask=000tôi nhận được những gì tôi cần. Tất nhiên là một chút quá mức, vì thư mục lưu trữ trở nên có thể ghi cho tất cả mọi người. NHƯNG - được gắn thủ công - bây giờ tôi cần nó để tái hiện trên mỗi lần khởi động lại.

2) Kể lại khi khởi động lại - sử dụng fstab

Vì vậy, tôi nghĩ rằng tôi sẽ ổn nếu tôi sử dụng fstabđể gắn kết phân vùng này ( /dev/sdb2) mỗi khi tôi khởi động lại. Các fstabdòng tôi đã thêm:

UUID=8C52-C1CD /home/storage auto user,umask=000,utf8,noauto 0 0

có uuid với blkid. Loại fs autotôi đã thay đổi vài lần ... vfatcũng đã thử , nhưng luôn luôn khởi động lại ub Ubuntu khi xử lý fstab (như tôi nghĩ) với thông báo (lấy từ nhật ký):

fsck from util-linux 2.20.1 /dev/sda5: clean, 120559/10969088 files, 19960144/43861504 blocks mount: unknown filesystem type 'static' mountall: mount /etc/fstab: [772] terminated with status 32 mountall: Filesystem could not be mounted: /etc/fstab: Skipping /etc/fstab: at user request

Và cũng - sudo mount -akhông bao giờ thực sự làm bất cứ điều gì.

Tôi đang làm gì sai? Tôi nghi ngờ tôi đã làm hỏng một cái gì đó :)

CẬP NHẬT:

Vì có vẻ như - fstab chỉ nên giữ các mount cho các ổ đĩa tĩnh, không phải bất kỳ loại công cụ usb nào. Tôi bối rối không biết làm thế nào điều này hoạt động với tất cả những người đăng lên mạng câu chuyện thành công của họ ...

tuy nhiên..nếu điều này là không thể - tôi muốn biết làm thế nào để lấy lại usb của mình sau mỗi lần khởi động lại ... nếu không phải với fstab - hơn thế nào? :)


Tôi nghĩ bạn nên đăng tất cả fstab để xem xét, và không chỉ một dòng. Đối với các điều khoản đúng, chạy id mediavà sử dụng uid=gid=umask=027lựa chọn.
mikewhthing 4/213

1
Có một số lý do bạn cần sử dụng FAT? Nếu không, tôi sẽ sao lưu dữ liệu và sử dụng hệ thống tệp gốc linux. Sau đó, bạn có thể đặt quyền sở hữu và quyền.
Panther

@mikewhthing cảm ơn nhưng nó thực sự hoạt động một cách kỳ lạ ... tốt..không thực sự :)
GeekSince1982

@ bodhi.zazen đã đọc nhiều hơn ... các đường nối như trên ub Ubuntu 12 fstab chỉ nên gắn kết cho các ổ đĩa tĩnh. không phải bất kỳ usb nào ...
GeekSince1982

Câu trả lời:


27

Vấn đề của bạn dường như là về các quyền bạn đã đặt. Ổ đĩa được định dạng FAT / FAT32 không hỗ trợ quyền truy cập tệp. Các quyền cho tất cả mọi thứ được xác định bởi cách ổ đĩa được gắn kết. Khi bạn đặt quyền mở, nó hoạt động khi bạn

server# sudo mount /dev/sdb2 /home/storage -o umask=000

Đối với nó không tự động gắn vào khởi động lại

UUID=8C52-C1CD /home/storage auto user,umask=000,utf8, -->noauto<-- 0 0

"Noauto" làm cho điều này KHÔNG tự động gắn kết khi hệ thống khởi động và phân tích tệp / etc / fstab. Loại bỏ tùy chọn đó và nó sẽ gắn kết khi khởi động. Bạn có thể đặt quyền trên điểm gắn kết sau khi được gắn chmodhoặc chỉ định chúng trong / etc / fstab.

Nếu bạn cần người dùng phương tiện truy cập, bạn có thể đặt quyền thành 764 và thêm chúng vào nhóm bảo mật. Root luôn có quyền truy cập vào tất cả mọi thứ.

xem http://www.linux.org/threads/file-permissions-chmod.4094/ để biết một số ví dụ về quyền của tệp propper

Bên cạnh đó, bodhi.zazen đã đưa ra một điểm tốt Có một số lý do bạn cần sử dụng FAT? Nếu không, tôi sẽ sao lưu dữ liệu và sử dụng hệ thống tệp gốc linux. Sau đó, bạn có thể đặt quyền sở hữu và quyền.


1
-o umask=000Là nó!! Cảm ơn bạn!
Antony

4

Trừ khi bị ghi đè bởi các tùy chọn gắn kết GID = hoặc UID = chủ sở hữu và quyền của điểm gắn kết khi gắn kết trở thành các tùy chọn của cây hệ thống tập tin được gắn kết.

Vì vậy, nếu / dev / sdb1 chứa hệ thống tệp ext4 (giả sử là bản sao lưu) do người dùng sở hữu thì người dùng sẽ trở thành chủ sở hữu của điểm gắn kết khi gắn kết thành công.

Bắt đầu, chúng tôi có một thư mục trống 'sao lưu' để phục vụ như là điểm gắn kết và được sở hữu bởi root.

# ls -alR /mnt
/mnt/:
drwxr-x---  5 root root 4096 May 30 20:59 ./
drwxr-xr-x  3 root root 4096 Dec  5  2015 ../
drwx------  2 root root 4096 Jan  1 07:45 backup/

/mnt/backup:
drwx------  2 root root 4096 Jan  1 07:45 .
drwxr-x---  5 root root 4096 May 30 20:59 ..

bây giờ chúng tôi gắn kết / dev / sdb1 (chỉ đọc)

# mount -o ro /dev/sdb1 /mnt/backup

và để xem ...

# ls -alR
/mnt/:
drwxr-x---  5 root root 4096 May 30 20:59 ./
drwxr-xr-x  3 root root 4096 Dec  5  2015 ../
drwx------  2 user user 4096 Jan  1 07:45 backup/

/mnt/backup:
drwx------  2 user user 4096 Jan  1 07:45 .
drwxr-x---  5 root root 4096 May 30 20:59 ..
-rw-------  1 user user 252076021760 Jun  9 21:11 backup.tar

Bây giờ nếu bạn đã có một ổ đĩa trống và bạn muốn gắn nó cho 'người dùng' dưới dạng phần mở rộng của 'không gian đĩa của người dùng, hãy gắn ổ đĩa dưới dạng root, nhét phần gốc của mount vào' user 'và ngắt kết nối.

Lần sau, hệ thống tập tin được gắn kết (bằng root hoặc bất kỳ ai theo fstab), chủ sở hữu của mount sẽ là 'người dùng'.


3

Bạn cũng có thể chạy

sudo chmod 0777 /home/storage

Vì các ổ đĩa FAT không có quyền, linux áp dụng quyền của điểm gắn kết cho toàn bộ ổ đĩa.


1
Không bao giờ áp dụng quyền R + W + X cho mọi người dùng .. Điều này sẽ cho phép bất kỳ ai hoặc bất cứ điều gì truy cập, thực thi, xóa, sửa đổi bộ nhớ và nội dung của nó ....
Angry 84

1
Trên hầu hết các hệ điều hành, ổ USB được gắn để bất kỳ người dùng nào cũng có thể sửa đổi nội dung. Nếu bạn là quản trị viên máy chủ trong tình huống có thể là sự cố, tôi sẽ không phải cho bạn biết 0777 có nghĩa là gì.
Zane Hooper

Ổ đĩa không bao giờ được gắn theo mặc định để cho phép tất cả người dùng, Đây là lý do tại sao họ có các nhóm và quyền. Dù bằng cách nào, nó luôn an toàn hơn để hiển thị một mod bảo mật tốt hơn vì mọi người sẽ chỉ cần sao chép và dán mà không biết rõ hơn
Angry 84

-1

Nếu bạn có thiết bị lưu trữ ngoài được kết nối với hộp Linux của bạn bằng NTFS, hãy đảm bảo rằng hệ thống tệp sạch.

Trước khi bạn gắn bộ nhớ vào hộp Linux của mình:

  1. Chạy lệnh dưới đây

    ntfsfix /dev/storagedevice ( like sdb1 or sdc1 )  
    
  2. Khởi động lại hộp Linux của bạn

  3. Gắn bộ nhớ ngoài bằng cách chạy lệnh:

    mount -o rw /dev/storagedevice /media/ 
    

    hoặc là

    mount -o rw /dev/storagedevice /mnt/ 
    

    hoặc gắn kết kho lưu trữ thông qua GUI.

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.