Làm cách nào để cung cấp cho nhiều người dùng quyền truy cập vào phân vùng Windows NTFS?


8

Tôi có ổ cứng USB được kết nối với máy Ubuntu (11.04). Mỗi lần tôi khởi động lại máy tính và đăng nhập nó sẽ gắn ổ cứng. Vì đĩa có NTFS trên đó, Linux chỉ định một số người dùng là chủ sở hữu của các tệp trên đĩa. Vì vậy, tất cả các tệp trên đĩa xuất hiện thuộc sở hữu của một người dùng và chỉ người dùng đó mới có thể xem các tệp.

Tôi sử dụng hai tài khoản người dùng trên máy tính của mình và thường chuyển đổi giữa chúng. Khi tôi chuyển sang tài khoản người dùng khác, tôi không thể truy cập nội dung của đĩa nữa vì nó thuộc sở hữu của tài khoản người dùng đầu tiên của tôi. Có bất cứ điều gì có thể được thực hiện về nó ngoại trừ gắn nó qua / etc / fstab?

Cảm ơn.

Câu trả lời:


14

Gắn kết với các quyền cụ thể

Có. Đặt cả hai người dùng trong một nhóm với nhau. Sau đó sử dụng nhóm đó để đặt gid=tùy chọn và gắn đĩa của bạn với các quyền mà bạn muốn có. Bạn có thể kiểm soát quyền với umask=, fmask=dmask=các tùy chọn trong gắn lệnh. Đây là một ví dụ:

mount -O dmask=007,fmask=117,gid=46,uid=1000 /dev/sdc1 /media/winhdd

Các tùy chọn này cũng có thể được sử dụng /etc/fstabnhư thế này : UUID=7258CB9858CB598D /media/win ntfs rw,auto,user,exec,nls=utf8,dmask=007,fmask=117,gid=46,uid=1000 0 2.

Tránh fstab - tự động đếm một đĩa cụ thể bằng udev

Tôi tưởng tượng bạn muốn tránh fstab vì đĩa không phải lúc nào cũng được kết nối khi khởi động. Nếu bạn muốn tránh fstab, hãy sử dụng quy tắc udev . Udev có thể tự động gắn kết (và ngăn Ubuntu tự động đếm ) khi đĩa được kết nối. Một quy tắc cho điều đó có thể trông như thế này:

# In /etc/udev/rules.d/70-usb-winhdd-mount.rules

KERNEL=="sd?[0-9]", ATTR{removable}=="1", ATTRS{serial}=="UA04FLGC", ACTION=="add", RUN+="mount -O dmask=007,fmask=117,gid=46,uid=1000 /dev/%k /media/winhdd"

Bạn sẽ cần xác định đĩa bằng thuộc tính của nó. Trong ví dụ của tôi, tôi đã làm điều này bằng cách ATTRS{serial}=="UA04FLGC". Tôi đã mô tả làm thế nào để làm điều này trong một câu hỏi khác . Việc đặt tên và vị trí của các tệp quy tắc cũng được mô tả ở đó.

Cung cấp cho tất cả các đĩa di động những thuộc tính

Nếu bạn muốn làm điều này với tất cả các ổ đĩa di động - không chỉ riêng ổ đĩa đó, chỉ cần bỏ phần nối tiếp và đảm bảo gán một điểm gắn kết duy nhất (đếm chúng, tạo từ nối tiếp,% -symbol của udev hoặc phương thức khác). Ngoài ra, như đã nêu ở những nơi khác ENV{mount_options}="$env{mount_options},dmask=007,fmask=117,gid=46,uid=1000" có thể là một tùy chọn để gắn tất cả các đĩa di động với quyền / quyền truy cập nhất định.


Thông tin hữu ích bạn có thể đã biết:

Tạo một nhóm và thêm người dùng

Đó là các lệnh shell để tạo một nhóm có tên 'winhdd' và thêm người dùng có tên 'confus' vào nhóm đó:

groupadd winhdd
usermod -a -G winhdd confus

Tìm ra id nhóm

Bạn có thể tìm thấy id nhóm của tất cả các nhóm trên hệ thống của bạn trong một tệp có tên /etc/group. Các mục ở đó trông giống như winhdd:x:4:confus,narur,joe'confus', 'narur' và 'joe' là tên người dùng thuộc nhóm đó, 'adm' là tên của nhóm và '4' id nhóm, bạn đang tìm kiếm. Trong /etc/groupsbạn cũng có thể kiểm tra xem việc thêm người dùng vào nhóm của bạn có thành công hay không. Lệnh getent group winhddsẽ hiển thị dòng với thông tin về nhóm. Các idlệnh cung cấp cho bạn nhóm id, user id của bạn và tên và id của tất cả các nhóm bạn thuộc về.

Đặt tùy chọn giống như ô

Bạn sẽ muốn đặt dmask=thành một giá trị hợp lý cho phép bạn ít nhất thực hiện các thư mục (= access). fmask=là tùy chọn cho quyền tập tin.

dmask=007,fmask=117,gid=46,uid=1000cho phép chủ sở hữu là số người dùng 1000 (chữ số đầu tiên trong mặt nạ) và các thành viên của nhóm số 46 (chữ số thứ hai trong mặt nạ) để đọc và ghi và các tệp trên đĩa. Những người dùng khác không có quyền làm bất cứ điều gì (do đó chữ số thứ ba trong mặt nạ - 7). Dưới đây là các giá trị mặt nạ :

7 – no permissions     6 – execute only    5 – write only
4 – write and execute  3 – read only       2 – read and execute
1 – read and write     0 – read, write and execute

Tôi đã đọc rằng các mục fstab ntfs nên được thiết lập với các giá trị dmask & fmask không phải là giá trị umask ... dmask 027 và fmask 137 - ubuntuforums.org/showthread.php?&t=283131
fossfreedom

Phải, thư mục phải có quyền thực thi. Nếu bạn muốn tập tin được thực thi, umask là được. Khác dmask và fmask là con đường để đi.
con-f-use
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.