
Я пытаюсь создать файл в папке с групповым доступом на запись, пользователь tomcat7 в группе. Почему это не работает?
skr@konrad~/data/asu$ sudo -u tomcat7 sh
$ whoami
tomcat7
$ echo > /home/skr/data/asu/g.gz.index
sh: 2: cannot create /home/skr/data/asu/g.gz.index: Permission denied
$ ls -la /home/skr/data/asu/
total 18708
drwxrwxr-x 2 skr skr 4096 Sep 29 08:38 .
drwxrwxr-x 85 skr skr 4096 Jul 30 00:42 ..
$ grep ^skr /etc/group
skr:x:1002:tomcat7:mail
Попробовал выйти, но это не помогло. Есть идеи?
решение1
Попробуйте посмотреть на вывод id
или groups
. Эти команды показывают правду о том, в какие группы на самом деле входит текущий процесс, больше, чем grepping /etc/group
. Вы, вероятно, обнаружите, что пользователь "tomcat7" на самом деле не является членом группы "skr", как вы предполагали.
Причина в том, что у вас есть синтаксическая ошибка в /etc/group
: каждая строка этого файла должна содержать 4 поля, разделенных двоеточием (имя группы, пароль, gid, список участников), но в показанной вами строке 5 полей. Удалите лишнее поле и разделитель ( :mail
) и попробуйте еще раз.