Как запретить пользователям переименовывать файлы при предоставлении разрешений на запись в Linux

имел ту же проблему, помог мне другой поток на этом форуме https://файл Редактирования askubuntu.com/a/820633/696715

/etc/bluetooth/main.conf, и добавьте ниже [Генерала] это:

Disable=Headset

и сообщил мне, помог ли он.

4
задан 13.04.2020, 15:16

2 ответа

Цитируя Стефана Шазеля из , этот ответ на Unix & amp; Linux SE .

Чтобы переименовать файл, разрешения на запись в файл не имеют значения, переименование файла - это изменение каталога, а не файла. Это изменяет запись каталога, чтобы иметь другое имя, указывающее на файл.

Так что все, что вам нужно сделать, это изменить права доступа к каталогу. Например:

chown root: .
chmod 755 .

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

chown root:people-who-can-create-file-here .
chmod 1775 .
chown root:people-who-can-modify-the-files file1-that-must-not-be-rename ...
chmod 664 file1-that-must-not-be-rename ...
7
ответ дан 13.04.2020, 15:17

chmod +t [FILE]

Устанавливает фиксированный бит , который делает именно то, что вы описываете.

РЕДАКТИРОВАТЬ: Ну, чтобы быть более конкретным, он мешает другим пользователям переименовать файл. Так что зависит от того, что вы хотите, именно.

3
ответ дан 13.04.2020, 15:16

Теги

Похожие вопросы