Изменить идентификатор группы при действии в каталоге
У меня есть каталог shared
где люди часть группы common
иметь rwx
разрешение внутри. И пользователь john
$> id john
uid=1000(john)gid=1000(john)groups=1000(john),10(common)
Было бы неплохо, если бы пользователь john
которая является частью группы common
и его собственная группа может автоматически изменить свою группу (неявно с командой newgrp
) только если он действует внутри каталога shared
,
Как это:
john $> pwd
/home/john
john $> id
uid=1000(john)gid=1000(john)groups=1000(john),10(common) # gid is john
john $> ls -ld /shared
rwxrwx--- root common ... /shared/ # here shared is part group common
john $> cd /shared
john $> id
uid=1000(john)gid=10(common)groups=1000(john),10(common) # gid is common
john $> cd ~
john $> id
uid=1000(john)gid=1000(john)groups=1000(john),10(common) # gid is john
Таким образом, пользователи могут работать с файлами, как если бы они были их собственными.>
1 ответ
Решение
Я бы предложил сделать chmod в каталоге, чтобы добавить бит SGID.
chmod g+s directory
То, что происходит, - то, что любые созданные файлы получают группу, назначенную группе каталога автоматически.