Как изменить полномочия на всех файлах в каталоге, и когда новые файлы добавляются к значениям по умолчанию?

У меня есть папка /home/userName/Public/Media в котором я храню все носители на машине; эта папка предназначается, чтобы быть доступной всеми другими пользователями машины - если только остановить их имеющий необходимость независимо загрузить/разорвать те же медиа-файлы.

Есть ли любой путь, которым я могу изменить полномочия на:

owner: userName /* my own user */
Access: read and write

group: users
Access: read only /* I'm not entirely sure I trust all my users enough to give them powers of delete */

Others
Access: read only

Идеально я хотел бы, чтобы другие смогли добавить свои собственные медиа, но для полномочий для любых медиа/файлов/каталогов, добавленных один для установки по умолчанию к упомянутым выше. Полномочия для файлов, мои пользователи добавляют, что я хотел бы принять значение по умолчанию тем, которые выше, за исключением того, что пользователи сохраняют владение.

Я предполагаю, что inotify и umask могли использоваться; но - и я могу только принести извинения за это - я понятия не имею, как использовать их для осуществления решения.

Спасибо за любую справку Вы можете обеспечить. Однажды, я надеюсь смочь использовать Ubuntu без замешательства... =)

6
задан 27.09.2009, 14:07

1 ответ

chown -R userName:groupname folderName
chmod -R 744 folderName

umask 022 (in .login or .profile)

chmod изменяет полномочия на файлах. Немного странно, если Вы не привыкли к нему, но вкратце:

Использование (для восьмеричного): chmod ABC (конечный файл / папка)

"A" является полномочиями для Владельца, "B" является полномочиями для Группы владения, и C является полномочиями для Всех.

Полномочия ломаются следующим образом

1 = Выполнитесь 2 =, пишут 4 = чтение

Сложите их для определения уровня разрешения. Например, чтобы дать чтение и запись, но не выполниться, Вы используете (2+4) = 6. Для чтения запишите и выполните Вас использование (1+2+4) = 7. Для выполняются только, используют 1.

Так средства "chmod-R 744 folderName":

Полномочия набора для Владельца к Read+Write+Execute (7) полномочия Набора для группы Владения Read (4) полномочия Набора для Всех Read (4)

Примените эти полномочия к folderName и оттуда примените их рекурсивно (-R) во все файлы в папке.

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

Теперь umask:

Umask является в основном способом установить полномочия по умолчанию для создания каталога и файла. Обычно это установлено для каждого пользователя в их .profile или .login файле, но можно установить его для себя неоднократно только путем ввода в umask 022 или безотносительно... Это останется, пока Вы не измените его, или выход из системы.

(Восьмеричные) umask полномочия являются реверсом chmod полномочий. Я знаю, что это странно. Но если Вы хотите, чтобы все файлы в каталоге были созданы с разрешением 777 файла (read+write+execute для владельца, группы, и все) Вы установили umask на 000.

Таким образом для всех Ваших пользователей для создания файлов, которые являются 644 (чтение-запись читайте, читайте), Вы установили umask на 022 (который кажется неправильным, но файлы не являются исполняемым файлом по умолчанию, поэтому недавно созданные файлы будут 644, и недавно созданные каталоги будут 755).

Надежда, которая не СЛИШКОМ сбивала с толку.

8
ответ дан 07.12.2019, 15:59

Теги

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