Каждый раз, когда я выполняю команду с sudo
, файл с именем .sudo_as_admin_successful
создается в моем домашнем каталоге. Насколько я могу судить, это существует с единственной целью отключить это сообщение, которое bash печатает при запуске:
To run a command as administrator (user "root"), use "sudo <command>".
See "man sudo_root" for details.
Можно остановить это сообщение, закомментировав соответствующий раздел /etc/bash.bashrc
, но sudo
все равно создает раздражающий файл в моем домашнем каталоге.
Этот сайт показывает , что вы можете остановить файл создается путем удаления себя из admin
группы, но я не в любой такой группе - id
показывает , что я нахожусь в josh
, adm
, cdrom
, sudo
, dip
, plugdev
, lpadmin
и sambashare
, а admin
не в /etc/group
.
Есть ли способ остановить создание этого файла?
Я полагаю, что это не дубликат этого вопроса , так как он спрашивал, можно ли убрать уведомление, напечатанное bash, а не остановить ли создаваемый файл sudo
.
Ответы:
Исходя из следующего раздела
plugins/sudoers/sudoers.c
файла с исходным кодом , не похоже, что это возможно без перекомпиляцииsudo
, отмены определенияUSE_ADMIN_FLAG
макроса препроцессора.Также обратите внимание, что он проверяет членство в группах для обоих
admin
иsudo
. Я не проверял список изменений, но подозреваю, что последняя проверка была добавлена, когда онаsudo
стала группой по умолчанию для привилегированных пользователей - возможно, имя файла все еще относится кadmin
совместимости.источник
sudo
! Просто выйдитеobjdump -d
, отследите логику, связанную с этой проверкой, а затем зайдите с вашим верным шестнадцатеричным редактором (или дажеhexdump
обычным текстовым редактором, в крайнем случае) для некоторой операции. Что может пойти не так?