umask изменяется на 0002 после CD

Самый легкий способ управлять этим со списками управления доступом. Они позволяют полномочиям быть установленными для стольких пользователей и групп, сколько Вы хотите, не всего один пользователь и одна группа как основные полномочия Unix.

ACLs должен быть включен в файловой системе. С расширением [234] или reiserfs, необходимо передать acl смонтируйте опцию. Также удостоверьтесь, что у Вас есть установленные утилиты ACL (acl пакет на Debian или Ubuntu).

Установите ACL, который позволяет обоим пользователям получать доступ к файлам и устанавливать соответствующий ACL по умолчанию на каталогах (ACL по умолчанию наследован файлами, созданными в каталоге).

setfacl -m user:www-data:rwx -m user:svnuser:rwx -R /path/to/directory/tree
setfacl-d -m user:www-data:rwx -m user:svnuser:rwx -R /path/to/directory/tree

Можно установить различные полномочия, если Вам нравится. Исполняемый бит будет проигнорирован, если файл не будет сделан исполняемым файлом через полномочия не-ACL (те, Вы устанавливаете с chmod).

Данные команды для Linux. Много других вариантов Unix поддерживают ACLs, но точный набор доступных полномочий и утилиты для установки их не стандартизирован.

Можно использовать группы для управления доступом, если Вы хотите. Даже если Вы делаете, ACL имеют преимущество, что Вы не столкнетесь с проблемой umask: если Вы просто создаете группу, необходимо удостовериться, что все файлы и каталоги перезаписываемы группой, что означает, что необходимо удостовериться, что любой процесс, создающий файл, имеет umask 002 или 007, который в свою очередь может заставить полномочия в другом месте быть более либеральными. Таким образом, даже при создании группы ACLs полезны.

setfacl -m group:mygroup:rwx -R /path/to/directory/tree
setfacl -d -m group:mygroup:rwx -R /path/to/directory/tree

Обратите внимание, что я не даю гарантии относительно пригодности этой модели обеспечения безопасности к Вашему варианту использования. Я просто обеспечиваю реализацию.

4
23.05.2017, 15:39
1 ответ

cd не изменяет umask. Любой Вы перегрузились cd, или Вы имеете пред - или поступравляете рычагом.

Проверьте это cd не был перегружен путем выполнения type cd. Это покажет Вам, является ли это “оболочкой встроенная” (польза) или псевдоним или (подозрительная) функция.

Выполненный echo "$PROMPT_COMMAND" видеть, есть ли у Вас рычаг посткоманды (удар оценивает значение этой переменной прежде, чем отобразить каждую подсказку). Также проверьте на прерывание отладки, которое выполняется перед каждой командой с trap -p DEBUG.

4
27.01.2020, 20:56
  • 1
    Да, вот именно точно. Я не понял, что RVM переопределил CD. Теперь я должен выяснить, как восстановить вещи к способу, которым они должны быть. –  Barry Brown 12.09.2012, 06:49

Теги

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