Как я могу переопределить настройку umask для всех пользователей для определенной папки?

Вам нужно установить часы на правильное время. Сейчас 2100 UTC, так что в Лос-Анджелесе это должно быть 1pm (1300 часов).

2
07.09.2018, 19:37
2 ответа

См. Как принудительно установить группу и разрешения для созданных файлов в определенном каталоге?

Я протестировал создание каталога /var/test. Я установил группу tgroup01. Я убедился, что все, что создано в /var/test, будет установлено в группу tgroup01. Затем я убедился, что групповые разрешения по умолчанию для всего, что находится в каталоге /var/test, были rwx.

sudo mkdir /var/test
sudo chgrp tgroup01 /var/test
sudo chmod 2775 /var/test
sudo setfacl -m "default:group::rwx"

Если я затем создам каталог foo или коснусь файла blah, у них будут правильные разрешения

ls -al /var/test

drwxrwsr-x+  3 root   tgroup01 .
drwxr-xr-x   5 root   root     ..
-rw-rw-r--   1 userA  tgroup01  blah
drwxrwxr-x+  2 userA  tgroup01  foo
3
28.04.2021, 23:42

Бит setgid вам не поможет -он влияет только на право собственности, а не на то, что владелец может делать с файлом.

Что может сработать, если общая область хранения смонтирована в другой файловой системе. Вам нужно будет попросить администратора смонтировать его с явно установленным правильным umask, чтобы вы могли обмениваться файлами. Или файлы монтируются с помощью внутренней -только общей папки samba -, что является излишним, но samba легко допускает определенную группу и модель разрешений по сравнению с тем, что предоставляет ОС.

Одним словом, -некоторые из нас думают, что буква «С» в слове «ИТС» означает обслуживание. Если у них есть требование umask 077, им нужно придумать эффективный способ обмена файлами для вас.

(и бит setgid не работает)

ivan@darkstar:~$ umask
0002
ivan@darkstar:~$ 
ivan@darkstar:~$ umask 077
ivan@darkstar:~$ umask
0077
ivan@darkstar:~$ mkdir te
ivan@darkstar:~$ ls -ld te
drwx------ 2 ivan ivan 4096 Sep  7 18:53 te
ivan@darkstar:~$ umask 2
ivan@darkstar:~$ umask
0002
ivan@darkstar:~$ groups
ivan adm cdrom sudo dip plugdev lpadmin sambashare kvm webdev
ivan@darkstar:~$ sudo chown.webdev te
ivan@darkstar:~$ sudo chmod g+w te
ivan@darkstar:~$ ls -ld te
drwx-w---- 2 ivan webdev 4096 Sep  7 18:53 te
ivan@darkstar:~$ chmod g+rx te
ivan@darkstar:~$ sudo chmod g+s te
ivan@darkstar:~$ ls -ld te
drwxrws--- 2 ivan webdev 4096 Sep  7 18:53 te
ivan@darkstar:~$ cd te
ivan@darkstar:~/te$ umask 077
ivan@darkstar:~/te$ umask
0077
ivan@darkstar:~/te$ touch test
ivan@darkstar:~/te$ ls -l
total 0
-rw------- 1 ivan ivan 0 Sep  7 18:54 test
ivan@darkstar:~/te$ 
0
28.04.2021, 23:42

Теги

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