26

У меня есть файл со следующими разрешениями:

root:data и chmod установлены в 775.

Мой обычный пользователь, назовем его Бобби, находится в группе data .

Почему я не могу удалить файл с пользователем boby?

 rwxrwxr-x 18 root data 4096 2011-12-30 22:02 storage
 my user is in the group data but can't write into storage

5 ответов5

32

Потому что, удаляя файл, вы не только изменяете файл, но и изменяете его каталог.

Так что, если ваш файл:

rwxrwxr-x

Вы сможете сделать:

cp /dev/null <filename>

Но если ваш каталог разрешений:

rwxr-xr-x  root  data  <directory name>

Тогда система не даст вам удалить файл.

12

Удаление файлов основано на разрешении каталога, а не на разрешении файла (*).

У вас есть права на запись в каталог, содержащий файл?

(*) Предостережение: у вас может быть каталог, в котором вы обязуетесь, что только владелец файла может удалить его. Это полезно для временных директорий.

1

Если содержащий каталог не позволяет пользователю boby или группе data записывать в него, это объясняет это поведение.

1

Я попробовал то же самое, и столкнулся с той же проблемой.

Запуск нового терминального сеанса проблема. Это может быть достигнуто путем:

  1. Выход из системы и повторный вход
  2. Переход к одному из 6 ttys (Ctrl+Alt+F1-6) (Примечание: Ctrl+Alt+F7 - ваша сессия GUI)
  3. используя su boby чтобы начать новый сеанс для пользователя boby .

Ура!

0

Бьюсь об заклад, файл, который вы пытаетесь удалить, находится в /tmp.

См. Linux - член группы не может удалить файл с правами rw

/tmp обычно имеет установленный режим "закрепления" или "ограниченное удаление" (o+t). Если установлен этот режим, только владелец файла может перемещать или удалять файлы в этом каталоге независимо от каких-либо разрешений.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .