У меня есть каталог в моем домашнем каталоге, который я разделяю с UNIX-группой, но теперь хочу удалить.
Если в этом каталоге есть файл, принадлежащий другому пользователю, я могу удалить его с помощью команды rm, поскольку этот каталог принадлежит мне. Не так с подкаталогами, которые принадлежат другим пользователям. Я не могу удалить их с помощью rm -rf или rmdir.
me@unix:~/blub.git$ ll
total 3
drwxrwxr-x 5 me collab 5 Nov 30 13:32 objects
me@unix:~/blub.git$ cd objects/ && ll
total 8
drwx------ 2 bob collab 3 Nov 30 13:31 bb
drwx------ 2 bob collab 3 Nov 30 13:31 cf
drwx------ 2 bob collab 3 Nov 30 13:32 e6
me@unix:~/blub.git/objects$ rm -rf bb
rm: cannot remove `bb': Permission denied
Как мне вообще избавиться от этой общей папки? Без помощи рута или другого пользователя?
Или задать вопрос по-другому: как я действительно могу rmdir не пустой каталог без необходимости рекурсивно rm -rf все вещи в нем?
Редактировать:
Чтобы удалить каталог (с помощью rm -r), необходимо рекурсивно удалить все его содержимое. Для этого необходимо, чтобы у вас были права на чтение и запись и выполнение для этого каталога (если он не пустой) и всех непустых подкаталогов рекурсивно (если они есть). Разрешения на чтение необходимы для просмотра содержимого каталога с целью их удаления. Это иногда приводит к странной ситуации, когда непустой каталог не может быть удален, потому что у него нет разрешения на запись в него, и поэтому он не может удалить его содержимое; но если бы тот же каталог был пустым, его можно было бы удалить.
Это правда?