Intereting Posts
Горячий, чтобы заставить diff проверить ссылку на символическую ссылку? ^ Символы C в начале редактирования команды bash bash Раскрасить имена файлов на основе состояния для git diff -name-status Как запустить «find -exec <script> {} \; FreeBSD 11.0: подключение через IPv6 потеряно через некоторое время Как добавить статус батареи в zsh в крайнем правом положении? На каких дистрибутивах Linux я могу полагаться на наличие / etc / os-release? Проблемы с G3 для входа в систему CentOS 6.5 Как cat / dev / ttyUSB0 в новый файл ежедневно Сценарий оболочки (bash) для добавления или замены текста лицензии, содержащегося в файлах .c, .h и makefiles? Создание виртуального USB-накопителя Не удается получить «lsdvd» для работы с Remastered Live CD Почему добавление тестового репозитория Debian создало так много зависимостей пакетов? определить вспомогательную функцию завершения вкладки для использования в нескольких файлах завершения (zsh) Безопасно ли монтировать с разделом my / chroot по умолчанию?

Как запретить изменять владельца модифицируемых файлов?

Мне иногда нужно запустить Qt Creator от root. После этого в некоторых конфигурационных файлах Qt Creator появился корень как владелец. Поэтому при запуске Qt Creator в качестве пользователя я получаю предупреждения о невозможности записи в эти файлы. Можно ли запретить изменять владельца этих файлов?

Проблема была решена путем использования gdbserver под управлением root.

 sudo gdbserver :1234 <path_to_program> 

После этого я подключился к 127.0.0.1:1234 из меню QtCreator и получил отладочную работу. QtCreator запускался от обычного пользователя. Спасибо всем за ответ!

Как уже говорилось, вы не должны запускать Qt Creator как root, но чтобы ответить на ваш вопрос, вы можете предотвратить изменение файла владельцем путем установки неизменяемого атрибута файла (chattr + i filename). Это предотвратит любые изменения файла!

root вероятно, явно не меняет права собственности на эти файлы. Скорее всего, он удаляет или переименовывает их, а затем воссоздает имена с тем же именем.

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

Вероятно, самое лучшее, что вы можете сделать, это следить за тем, какие root файлы создаются и впоследствии изменить право собственности.

Конечно, как уже указывалось, запуск чего-то вроде Qt Creator как root – это плохая идея в любом случае.