Много вещей могли продолжаться здесь.
Первые мысли:
/etc/pam.d/common-session
лучшее место должно установить значение по умолчанию umask
.bashrc
,.bashrc
только читается при определенных обстоятельствах (интерактивный, оболочка невхода в систему)testfile (711)
является очень странным /home
смонтированный, и Вы используете ACLs?ls -ld /home
и getfacl /home
печать?)testfile
уже существуйте, прежде чем Вы сделали копию, потому что scp
не изменит полномочия на файле, который уже существовал (если Вы не используете -p
флаг)umask=0113
вероятно, вызовет проблемыumask
может быть переопределен пользователем в .bashrc
и .bash_profile
.Обновление:
umask=0113
поскольку sshfs является неправильным. umask
touch
. -rw-r--r--
, без x
биты x
биты, Вы могли бы повредить каталогиОбходное решение:
Если мы ни о чем не можем думать лучше, Вы могли бы или использовать fam
или gamin
наблюдать за новыми создаваемыми файлами и закрепить полномочия на них или даже просто сценарий, который периодически работает и устанавливает полномочия на всех файлах.
Считайте это решение также: Как я устанавливаю структуру полномочий для многочисленных пользователей, редактирующих несколько сайтов в/var/www на Ubuntu 9.10?
Это не связанный PAM/umask, но это могло быть полезно для Вас.
Если Вы setgid каталог, то все файлы и каталоги, созданные в нем, автоматически присвоены его группе.
root@ricarda ~ # mkdir hello
root@ricarda ~ # chown :users hello
root@ricarda ~ # chmod g+s hello
root@ricarda ~ # ls -l |grep hello
drwxr-sr-x. 2 root users 4096 Feb 7 04:05 hello
root@ricarda ~ # touch hello/some_file
root@ricarda ~ # mkdir hello/some_dir
root@ricarda ~ # ls -l hello/
total 4
drwxr-sr-x. 2 root users 4096 Feb 7 04:16 some_dir
-rw-r--r--. 1 root users 0 Feb 7 04:06 some_file
ACLs должен хорошо работать для Вас.
Установите ACL по умолчанию на всей папке для группы, которая будет затем наследована всеми будущими файлами и каталогами.
Что-то как setfacl -m d:g:uploaders:rwx
должен работать.
Исправить Ваши существующие полномочия:
find /shared/folder -type d -exec setfacl -m d:g:uploaders:rwx {} \;
find /shared/folder -type f -exec setfacl -m g:uploaders:rw {} \;
Похож, хотя, если "заповедник" установлен, когда файл копируется, ACL по умолчанию не работает. В этом случае я могу только предложить выполнить команды находки в кроне или контролировать файловую систему для изменений.