Chữ số bát phân chmod đầu tiên trong giá trị bốn chữ số là gì?


40

Đôi khi tôi thấy chmodcác lệnh sử dụng bốn chữ số bát phân thay vì ba - chữ số đầu tiên tùy chọn để làm gì? Ví dụ, chmod 777tương đương với chmod a+rwx; Lệnh tương tự để làm chmod 2777gì?


1
Đây là một câu hỏi hay, vì vậy tôi đã cố gắng khái quát nó một chút
Michael Mrozek

3
'Chữ số bát phân chmod thứ tư' hơi khó hiểu, chữ số trong câu hỏi thực sự là chữ số đầu tiên khi đọc từ trái sang phải.
jsbillings

Câu trả lời:


44

Xin lưu ý rằng chmod 777 filenametương đương với chmod 0777 filenametrong ví dụ này.

Chữ số bát phân đầu tiên thiết lập các bit setuid, setgid và dính (xem bài viết này để biết thêm chi tiết về setuid / setgid). bát phân 2 có nghĩa là đặt ID nhóm trên tệp. Vì vậy, tương đương sẽ là để làm một chmod a+rwx filename, sau đó chmod g+s filename. Các chmod trang thông tin nào giải thích điều này một cách chi tiết hơn.


5
Gần như tất cả các cài đặt của chmod (1) có thể sử dụng dấu phẩy trong các đối số chế độ biểu tượng. Do đó, tương đương 2777 của bạn có thể được thực hiện trong một lệnh : chmod a+rwx,g+s filename. Hoặc, nghiêm ngặt hơn (chắc chắn xóa các bit setuid và dính như chế độ số sẽ) : chmod a=rwx,g+s filename.
Chris Johnsen
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.