Làm thế nào để tạo tập tin được tạo trong một thư mục thuộc sở hữu của nhóm thư mục?


20

Có cách nào, trên Linux, khiến tất cả các tệp mới được tạo trong một thư mục thuộc sở hữu của nhóm thư mục thay vì nhóm người dùng tạo không?

Câu trả lời:


28

Nếu bạn chmod g+s directorythì tất cả các tệp được tạo trong thư mục đó sẽ thuộc sở hữu của nhóm đó.

newgroup thực sự là một sự nắm giữ từ những ngày mà bạn chỉ có thể ở trong một nhóm và ngày nay không thực sự cần thiết.


1

Các tệp được tạo bởi người dùng được tạo bằng ID nhóm hiện tại của anh ta. Để kiểm tra id người dùng, bạn có thể thực thi id; để thay đổi GID của bạn thành một cái gì đó từ danh sách các nhóm của bạn sử dụng newgrp <group>hoặc sg <group> <command>: lệnh đầu tiên sẽ khởi chạy shell và lệnh sau sẽ chỉ chạy một lệnh với GID được đặt thành <group>id.

Kiểm tra cái vỏ này 'log':

whitequark@forth:~/test$ id
uid=1000(whitequark) gid=1000(whitequark) groups=4(adm),20(dialout),24(cdrom),
46(plugdev),104(lpadmin),114(admin),118(sambashare),1000(whitequark)
whitequark@forth:~/test$ touch file1
whitequark@forth:~/test$ ls -la
total 8
drwxr-xr-x  2 whitequark whitequark 4096 2010-01-29 19:49 .
drwxr-xr-x 82 whitequark whitequark 4096 2010-01-29 18:02 ..
-rw-r--r--  1 whitequark whitequark    0 2010-01-29 19:49 file1
whitequark@forth:~/test$ newgrp admin
<<< at this point a new shell is started >>>
whitequark@forth:~/test$ touch file2
whitequark@forth:~/test$ ls -la
total 8
drwxr-xr-x  2 whitequark whitequark 4096 2010-01-29 19:49 .
drwxr-xr-x 82 whitequark whitequark 4096 2010-01-29 18:02 ..
-rw-r--r--  1 whitequark whitequark    0 2010-01-29 19:49 file1
-rw-r--r--  1 whitequark admin         0 2010-01-29 19:49 file2
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.