Tôi có một thư mục hiển thị với mặt nạ cấp phép drwsrwsr-x
. Khi tôi cố gắng thiết lập lại quyền cho 755
S vẫn còn.
"S" là gì và tại sao tôi không thể thay đổi quyền trở lại thành 775 ( drwxrwxr-x
)?
Tôi có một thư mục hiển thị với mặt nạ cấp phép drwsrwsr-x
. Khi tôi cố gắng thiết lập lại quyền cho 755
S vẫn còn.
"S" là gì và tại sao tôi không thể thay đổi quyền trở lại thành 775 ( drwxrwxr-x
)?
Câu trả lời:
Các s bạn đang thấy ở vị trí "thực thi" trong cột người dùng và nhóm là các bit SetUID (Đặt ID người dùng khi thực thi) và SetGID (Đặt ID nhóm khi thực thi).
Quyền truy cập tệp Unix thực sự là một số bát phân gồm 4 chữ số SUGO
Bạn có thể xóa các bit setuid khỏi thư mục của mình bằng chmod ug-s directory
, hoặcchmod 0755 directory
Để biết thêm thông tin, hãy xem trang hướng dẫn chmod
và trang Wikipedia này về bit SetUID .
chmod 0755
không không rõ ràng bit setuid, ít nhất là không phải trên Linux. Tôi hiện đang thử nghiệm trên các hệ thống khác.
chmod
với chế độ bát phân sẽ xóa các bit setuid, setgid và vtx.
chmod 00755
; xem unix.stackexchange.com/q/393531/46851
setuid và setgid (viết tắt của ID người dùng khi thực thi và đặt ID nhóm khi thực thi, tương ứng) là các cờ quyền truy cập Unix cho phép người dùng chạy một tệp thực thi với sự cho phép của chủ sở hữu hoặc nhóm của người thực thi. Chúng thường được sử dụng để cho phép người dùng trên hệ thống máy tính chạy các chương trình với các đặc quyền được nâng lên tạm thời để thực hiện một tác vụ cụ thể. Mặc dù các đặc quyền id người dùng hoặc id nhóm được cung cấp không phải lúc nào cũng được nâng lên, tối thiểu chúng là cụ thể.
Để loại bỏ các bit setuid và setgid bằng số, bạn phải đặt tiền tố mẫu bit với một 0
(ví dụ: 0775
trở thành 00775
).
Chạy để xóa setuid và setgid:
chmod 00775 path
hoặc là
chmod a-st path
Thêm vào câu trả lời của ooshro ...
Nếu bạn sử dụng quyền suid hoặc sgid trên một thư mục, bất kỳ tệp nào được tạo trong thư mục đó sẽ có cùng chủ sở hữu (nếu suid) hoặc nhóm (sgid) như thư mục được đề cập.
Tôi sử dụng nó cho Samba nhà của tôi chia sẻ. Thư mục cơ sở thuộc sở hữu của người dùng và nhóm olympia, và quyền là 2770. Vì vậy, bạn phải ở trong nhóm olympia để đọc hoặc viết bất cứ điều gì bên dưới thư mục đó, và nó sẽ đảm bảo olympia là nhóm sở hữu mọi thứ bên dưới nó . Tôi cũng có Samba được cấu hình để sử dụng một dirmask 2770 và một filemask là 660 để giữ cho các quyền chính xác trong suốt quá trình xuống cây.