Как настроить полномочия по умолчанию для файлов

Делает любой знает, как установить полномочия по умолчанию, если пользователь сделает новый файл, то файл будет иметь-rwxrw-r — разрешение.

2
задан 25 August 2016 в 11:33

1 ответ

Отказ от ответственности: Как некоторые пользователи прокомментировали, автоматически создавание файлов с исполняемыми полномочиями повреждает значительную часть модели обеспечения безопасности Linux.

Это сказало, что существует способ достигнуть того, что Вы хотите на командной строке и ограничить, какие пользователи могут сделать это.

Вы могли записать функцию, чтобы создать файл и изменить полномочия одновременно. Эта функция должна быть добавлена к каждому пользователи .bashrc файл. Этот файл может быть найден в /home/username/.bashrc.

Вот пример для создания функции названной createafile, строки для добавления были бы:

createafile() {
if [[ -z $1 ]]; then
  echo "Cannot create a file with no name!"
  return 1
elif [[ -e $1 ]]
  echo "That file already exists!"
  return 1
elif [[ $2 = -* ]]; then
  echo "Permissions must not start with a '-'!"
  return 1
fi
touch $1
if [[ -z $2 ]]; then
  perms=764
else
  perms=$2
fi
chmod $perms $1
}

После того как это записано в пользователя .bashrc файл, они должны выйти из системы и въехать задним ходом, прежде чем он сможет использоваться. Функция может быть вызвана на командной строке как так.

createafile newfile.txt

Который создаст файл с Вашими восьмеричными полномочиями по умолчанию 764, или -rwxrw-r--. Кроме того, если Вы хотите указать другой режим разрешения, можно ввести это в любой распознанный формат для chmod команда. Таким образом сделать файл с разрешением чтения-записи для всех

createafile anotherfile.txt 555

или

createafile anotherfile.txt a+rw

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

Существует строка в функции, которая останавливает пользователей, входящих a chmod опция случайно. Это означает, что Вы не можете использовать функциональность удаления разрешения chmod где полномочия запускаются с a - символ.

2
ответ дан 2 December 2019 в 03:45

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

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