Делает любой знает, как установить полномочия по умолчанию, если пользователь сделает новый файл, то файл будет иметь-rwxrw-r — разрешение.
Отказ от ответственности: Как некоторые пользователи прокомментировали, автоматически создавание файлов с исполняемыми полномочиями повреждает значительную часть модели обеспечения безопасности 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 -
символ.