автоматически устанавливается sudo chmod 777

есть способ автоматически установить sudo chmod 777 для всех файлов, папок и подпапок в каталоге. sudo chmod 777 должен автоматически устанавливаться при создании папки или файла в родительском каталоге.

Есть ли способ сделать это?

2
задан 29 May 2014 в 15:29

2 ответа

Один путь, который приходит на ум, эти setfacl команда. Вот руководство Ubuntu о том, как включить ACL (списки управления доступом) для точки монтирования. Подводя итоги, установите соответствующий пакет

sudo apt-get install acl

тогда, добавьте опцию 'acl' к точке монтирования в/etc/fstab

UUID=07aebd28-24e3-cf19-e37d-1af9a23a45d4 /home ext4 defaults,acl 0 2

наконец, повторно смонтируйте диск, таким образом, изменения вступают в силу

sudo mount -o remount /home

После выполнения этого, можно использовать setfacl и getfacl для установки опций для любого каталога или файла в частности. Опции ACL для каталогов также включают способность установить полномочия по умолчанию для новых файлов и подпапок с командами как следующее:

setfacl -d -m u::rwx /folder/to/modify  # Default permissions for owning user
setfacl -d -m g::rwx /folder/to/modify  # Default permissions for owning group
setfacl -d -m o::rwx /folder/to/modify  # Default permissions for others

Для ссылки, вот страница справочника для setfacl. Кроме того, в то время как эти полномочия будут применяться по умолчанию к недавно созданным субфайлам, и папки, setfacl может все еще использоваться для изменения прав после факта при желании. Наконец, после включения ACLs, Вы видите, который файлам/папкам ответили ACL в выводе Вашего ls -l команда путем поиска + символ после полномочий. Например,

-rw-r--r--+  # Has ACL applied
-rw-r--r--   # No ACL applied
0
ответ дан 29 May 2014 в 15:29

В ударе выполняются umask 000 и затем каждый каталог, который Вы создаете, будет иметь полномочия 777 и каждый файл, который Вы создаете, будет иметь полномочия 666. Вы не можете создать исполняемые файлы по умолчанию, необходимо явно сделать их настолько использующим chmod. Это - средство защиты.

Примечание, что umask является "поразрядным xor" желаемых полномочий файла и получить самый разрешающий режим 777, необходимо использовать umask 000.

В недавних системах Ubuntu Вы устанавливаете umask в масштабе всей системы в файле /etc/login.defs. Более старое системное использование /etc/profile.

имейте в виду это люди, которые создают операционные системы, знают вещь или два о безопасности и выбрали umask 022 по причине. Вы сделаете свой компьютер довольно небезопасным, если Вы последуете этому совету.

0
ответ дан 29 May 2014 в 15:29

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

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