Skip to content


Как заставить sudo сохранять $HOME

Начиная с CentOS 6, sudo перестало по-умолчанию сохранять переменную окружения $HOME, заменяя её на $HOME того юзера, на которого переключаемся (обычно это директория /root). Поскольку у меня много чего понастроено в ~/.bashrc и ~/.vimrc, то такое поведение меня напрягало (так как после команды "sudo -s" bash и vim вместо этих файлов обрабатывали /root/.bashrc и /root/.vimrc соответственно). Решение простое: нужно добавить строку

  1. Defaults env_keep += "HOME"

в файл /etc/sudoers с помощью команды visudo. Эффект следующий:

  1. [avz@dev ~]$ sudo -s
  2. [root@dev ]# echo $HOME
  3. /root

После:

  1. [avz@dev ~]$ sudo -s
  2. [root@dev ~]# echo $HOME
  3. /home/avz
Кто на самом деле получает очтеты от команды sudo

Кто читает репорты от sudo

.

Размещено в категории *nix, Howto. Теги: , .

Комментариев: 1

Чтобы быть всегда в курсе здесь происходящего, Вы можете подписаться на RSS feed для комментариев на эту заметку.

  1. Charon said

    там очень много всего поменялось. Для упрощения своей жизни я делаю так:
    User_Alias ADMINS = peter
    Defaults:ADMINS !env_reset, !secure_path
    ADMINS ALL=(ALL) NOPASSWD: ALL

Some HTML is OK

(required)

(required, but never shared)

, или ответить через trackback.

Страница 1 из 11