Как разрешить доступ к содержимому директории, но запретить её удаление?

Как настроить директорию таким образом, чтобы её содержимое можно было редактировать без прав администратора, но при этом нельзя было удалить саму директорию, даже с правами администратора, если она является символической ссылкой для /etc?
  • 29 сентября 2023 г. 15:27
Ответы на вопрос 1
Для разрешения доступа к содержимому директории, но запрета на её удаление, можно использовать комбинацию прав доступа и атрибутов файла. Вот как это сделать:

1. Установите права на директорию, чтобы разрешить чтение и выполнение для всех пользователей, но запретить запись и удаление:

```bash
chmod 555 <путь_к_директории>
```

2. Установите атрибут `t` для директории, чтобы запретить удаление даже для пользователей с правами администратора:

```bash
chattr +t <путь_к_директории>
```

После выполнения этих команд, содержимое директории будет доступно для чтения и выполнения всем пользователям, но удаление самой директории будет невозможно.

Относительно символической ссылки для `/etc`, чтобы предотвратить удаление даже с правами администратора, необходимо предварительно выставить права на `/etc`, чтобы запретить их изменение:

```bash
chmod 555 /etc
```

Затем выставьте права и атрибуты для символической ссылки на директорию так же, как описано выше.
Похожие вопросы