Как изменить разрешения для всех файлов в каталоге и при добавлении новых файлов к значениям по умолчанию?
У меня есть папка /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
В идеале я хотел бы, чтобы другие могли добавлять свои собственные медиафайлы, но для разрешений для любых медиа / файлов / каталогов, добавленных мной по умолчанию, для тех, которые перечислены выше. Разрешения для файлов, добавляемых моими пользователями, я хотел бы по умолчанию использовать выше, за исключением того, что пользователи сохраняют право собственности.
- Восстановить установку Ubuntu
- Как обновить Ubuntu 9.04 до Ubuntu 9.10
- Как увеличить дисковое пространство в Wubi (Ubuntu через окна)?
- Восстановить grub mbr и / boot с помощью компакт-диска ubuntu 9.04 live
- Адрес гостевой системы VMWare Fusion Linux по имени хоста?
Я предполагаю, что можно использовать inotify и umask; Но – и я могу только извиниться за это – я понятия не имею, как использовать их для решения.
Спасибо за любую помощь, которую вы можете предоставить. Однажды я надеюсь, что смогу использовать Ubuntu без недоумения … =)
- Установка программного обеспечения на старую версию Ubuntu, которая больше не поддерживается (2009 Jaunty)
- Как работают загрузочные сектора и несколько дисков?
- Как увеличить размер раздела в Linux (ubuntu 9.04)?
- Как настроить клавиши «Fn + Volume Up / Down», чтобы настроить канал наушников в Ubuntu Jaunty?
- Нет звука (USB-динамики) в Ubuntu 9.04 Jaunty Jackalope
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» означает:
Установите разрешения для владельца для чтения + Write + Execute (7) Установите разрешения для группы Owning для чтения (4) Установите разрешения для всех для чтения (4)
Примените эти разрешения к имени папки и оттуда примените их рекурсивно (-R) ко всем файлам в папке.
Это довольно просто; Есть другие способы использования chmod и другие свойства, которые вы можете установить с ним и т. Д., Но это хорошее начало.
Теперь umask:
Umask – это в основном способ установить разрешения по умолчанию для создания файлов и каталогов. Обычно он устанавливается для каждого пользователя в файле .profile или .login, но вы можете установить его для себя в разное время, просто набрав umask 022 или что-то еще … Он останется, пока вы его не измените, или выйдите из системы.
Разрешения (восьмеричные) umask являются обратными разрешениям chmod. Я знаю, что это странно. Но если вы хотите, чтобы все файлы в каталоге были созданы с разрешением 777 файла (read + write + execute для владельца, группы и всех), вы должны установить umask в 000.
Поэтому для того, чтобы все ваши пользователи создавали файлы размером 644 (чтение / запись, чтение, чтение), вы должны установить umask на 022 (что кажется неправильным, но файлы по умолчанию не исполняются, поэтому вновь созданные файлы будут Будет 644, а вновь созданные каталоги будут 755).
Надеюсь, что это не смущает.