Cấp quyền cụ thể cho người dùng để ghi vào thư mục bằng cách sử dụng ký hiệu + w


153

Tôi biết tôi có thể chỉ định quyền viết cho chủ sở hữu / nhóm / người khác như thế này:

chmod u+w myfolder

Tôi có thể chỉ định người dùng cụ thể ở đây không? Một số như thế này:

chmod username u+w myfolder

Tôi không nghĩ rằng nó có thể. Tại sao bạn không thêm người dùng vào nhóm?
Emil

Câu trả lời:


158

Nếu bạn muốn thay đổi người dùng sở hữu tệp hoặc thư mục này (thư mục), bạn sẽ phải sử dụng lệnh chown. Ví dụ, nếu bạn chạy

sudo chown username: myfolder

người dùng sở hữu myfolder sẽ là tên người dùng. Sau đó, bạn có thể thực hiện

sudo chmod u+w myfolder

để thêm quyền ghi cho người dùng tên người dùng.

Nhưng nếu bạn muốn thêm người dùng này vào nhóm được liên kết với "myfolder", bạn có thể chạy

sudo usermod -a -G groupname username

và sau đó thực thi

sudo chmod g+w myfolder

để thêm quyền viết cho nhóm.


Có một cách mà cả hai người dùng sẽ có quyền truy cập vào thư mục và không cần một nhóm; nó đã được đề xuất trong một câu trả lời cho cùng một câu hỏi ở đây: superuser.com/a/235398/191720.
Luân Nico

Tôi có thể làm điều này mà không có sudo?
vẫy gọi

1
@becko: Bạn có thể nếu bạn rơi vào một vỏ gốc.
Charo

1
@Charo Ý tôi là không có root
becko

1
@AER: Trong lệnh đầu tiên, nếu dấu hai chấm theo usernamenhóm sở hữu cũng được đổi thành username(nếu bạn bỏ qua dấu hai chấm như vậy, nhóm sở hữu sẽ không thay đổi).
Charo

192

Bạn có thể sử dụng setfacl:

setfacl -m u:username:rwx myfolder

Điều này đặt quyền cho người dùng cụ thể, mà không thay đổi quyền sở hữu của thư mục.

Kiểm tra trang người đàn ông để biết thêm chi tiết và ví dụ.


8
Câu trả lời hoàn hảo! Cũng setfaclcó sẵn trên CentOS ( yum -y install acl) & FreeBSD.
Việt

7
chỉ cần một lưu ý: setfacl = set File ACL, ACL = Access Control List do đó cho "setFacl" ngắn - cách dễ nhớ hơn tôi nghĩ.
Yawar Murtaza

12
Nếu bạn muốn áp dụng đệ quy cho tất cả các thư mục con: thêm cờ -R như thế này:setfacl -R -m u:username:rwx myfolder
Jose A

Cách dễ nhất để cấp phép cho người dùng mới
Rajesh Mbm

1
Có cách nào để cấp cho người dùng rwmà không thay đổi bất kỳ xquyền hiện có nào không , nếu hoạt động trên nhiều tệp hoặc đệ quy?
Quạt Qi

8

Không, điều này là không thể. Bạn có thể thay đổi chủ sở hữu của tệp với

[sudo] chown username: foldername

hoặc bạn có thể thêm người dùng vào nhóm sở hữu tệp

usermod -a -G {group-name} username

useradd -G {group-name} usernamecho tôi biết tên người dùng đã tồn tại
Erdal G.

Tôi đã thử điều này nhưng người dùng của tôi vẫn không thể ghi vào thư mục đó
Sonic Soul
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.