Пожалуйста, урегулируйте липкий (бит) аргумент

Я попал в добродушную ссору с коллегой по работе о природе залипшего кусочка.

По моему утверждению, работа со справочной страницей chmod заключалась в том, что бит закрепления, если он установлен, позволяет только владельцу удалять или переименовывать файлы:

RESTRICTED DELETION FLAG OR STICKY BIT
The restricted deletion flag or sticky bit is a single bit, whose 
interpretation depends on the file type.  For directories, it prevents  
unprivileged  users from removing or renaming a file in the directory 
unless they own the file or the directory; this is called the restricted 
deletion flag for the directory, and is commonly found on world-writable 
directories like  /tmp.   For regular  files  on  some  older systems, the 
bit saves the program's text image on the swap device so it will load more 
quickly when run; this is called the sticky bit.

(см. Также: https : //en.wikipedia.org/wiki/Sticky_bit )

Мой коллега непреклонен в том, что авторитетным ответом является статья на Йельском форуме 1996 года , в которой указывается, как липкий бит используется для установки унаследованных прав группы для каталога.

Соответственно, я установил setafcl и установил acl в качестве опции при монтировании (, как подробно описано в Super User ).

Кто-нибудь хотел бы помочь урегулировать этот спор?

1
задан 20 March 2017 в 13:18

2 ответа

Вы и ваш коллега говорите о двух разных вещах, поэтому понятно, что вы не согласны с тем, что они делают.

Липкий бит, бит setuid и бит setgid - это три разных бита в режиме файла (или каталога). Смотрите, например справочная страница chmod(2) .

Вы оба правы, ваша ссылка на бит закрепления верна, ваши коллеги также ссылаются на бит SGID.

0
ответ дан 20 March 2017 в 13:18

Бит setgid - это то, что вам нужно.

sudo chmod g+s /foldername

Не используйте опцию -R для рекурсии, если только вы не хотите, чтобы существующие файлы в этом каталоге / подкаталогах также устанавливали бит. Обычно вы не хотите, чтобы для файлов был установлен бит setgid.

Ниже описано, как рекурсивно установить бит gid для папки и ее подпапок.

sudo find /foldername -type d -exec echo chmod g+s {} \;
0
ответ дан 20 March 2017 в 13:18

Другие вопросы по тегам:

Похожие вопросы: