Назад | Перейти на главную страницу

права на удаление файла setgid

Я изучаю Linux несколько дней, и теперь я нахожусь в File Parmissions с липкими битами, я пробовал следующее:

[root@localhost sdcdir]# ll
total 24
drwx------. 2 root root 16384 Mar 21 21:38 lost+found
drwxrws--T. 2 root g1    4096 Mar 23 01:22 testdir

g1 - это группа, в которую входят Паван, Судхир и Сурендра, а Сурендра - администратор группы (т.е. gpasswd -A Surendra)

Теперь Паван создаст файл p1 в testdir:

[Pavan@localhost testdir]$ touch f1
[Pavan@localhost testdir]$ ll
total 0
-rw-rw-r--. 1 Pavan g1 0 Mar 23 01:33 f1
[Pavan@localhost testdir]$ 

Когда я пытаюсь удалить его с помощью учетной записи Surendra, я получаю сообщение об ошибке:

[Surendra@localhost sdcdir]$ cd testdir/
[Surendra@localhost testdir]$ ll
total 0
-rw-rw-r--. 1 Pavan g1 0 Mar 23 01:33 f1
[Surendra@localhost testdir]$ rm f1
rm: cannot remove `f1': Operation not permitted
[Surendra@localhost testdir]$ 

Файл f1 имеет g1 как владелец группы, но файл не может быть удален, кроме самого Павана. Когда установлен gid, группа устанавливает владельца, почему ни один член группы не может удалить файл?

Я думаю, вы пытаетесь удалить f1 в sdcdir (какие у него разрешения?), А не в testdir. Это может быть твоей проблемой. в этом случае f1 принадлежит пользователю root и имеет только права записи, установленные для владельца (root), и пользователь с uid, отличным от 0, не сможет удалить его.

Чтобы удалить файл, у вас должны быть права на запись и выполнение в его каталог.