Как я делаю файл НЕ модифицируемым?

Я собираюсь перефразировать из другого ответа, но я буду включать все основы.

Вы заявили об использовании Единицы таким образом ищите и затем откройте программу Startup Applications в тире.

Затем нажмите "Add".

enter image description here

Теперь, войдите в детали сценария:

enter image description here

изменение моего примера детализирует с Вашими собственными деталями

Нажмите "Add", и Вы должны быть все установлены!

36
03.03.2017, 00:31
3 ответа

Можно установить "неизменный" атрибут с большинством файловых систем в Linux.

chattr +i foo/bar

Для удаления неизменного атрибута Вы используете - вместо +:

chattr -i foo/bar

Для наблюдения текущих атрибутов для файла можно использовать lsattr:

lsattr foo/bar

Болтовня (1) страница справочника предоставляет описание всех доступных атрибутов. Вот описание для i:

   A  file with the `i' attribute cannot be modified: it cannot be deleted
   or renamed, no link can be created to this file  and  no  data  can  be
   written  to  the  file.  Only the superuser or a process possessing the
   CAP_LINUX_IMMUTABLE capability can set or clear this attribute.
51
27.01.2020, 19:36
  • 1
    На Linux, что неизменный флаг доступен во многих файловых системах не только ext2/3/4 (по крайней мере, btrfs, hfsplus, jfs, nilfs2, xfs, ocfs2, ubifs, gfs2, reiserfs AFAICT от беглого взгляда до кода) –  Stéphane Chazelas 11.03.2013, 01:02
  • 2
    @StephaneChazelas я видел chattr команда была частью e2fsprogs пакет в моей системе. Именно поэтому я сделал тот оператор. Я обновил ответ на основе Вашего комментария. –  jordanm 11.03.2013, 01:17
  • 3
    Это не работает на символьные ссылки :-(. Это решение было бы отличным, потому что я хочу избежать, чтобы символьная ссылка могла быть случайно изменена любым пользователем включая корень. –  natenho 23.06.2015, 23:17

Вы можете:

  1. Измените владельца файла на root или макет недавно создал пользователя
  2. Сохраните корректную группу.
  3. Использовать chmod 440 позволить читать группой (который является Вами).

Если корректный пользователь не является единственным в этой группе, необходимо создать новую группу и добавить только его в ней и использовать эту группу для нее. Однако Вы не владелец файла, поэтому Ваш vi не может изменить владельца файла.

1
27.01.2020, 19:36
  • 1
    Если можно записать в родительский каталог, то энергия может удалить файл и создать новый (и это - то, что это делает, когда Вы делаете :w!). энергия не идет до изменения полномочий каталога временно все же. Так хранение неперезаписываемого каталога должно быть безопасным. –  Stéphane Chazelas 11.03.2013, 01:13

Чтобы все дерево каталогов читалось только -:

cd <directory>
find./ -print0 | sudo xargs -I {} -0 chattr +i {}

Чтобы снова сделать его читаемым, измените +iна -i.

0
27.01.2020, 19:36

Теги

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