
Я часто использую sudo -s -H
, но хочу иметь псевдонимы после его выполнения. Как это сделать?
Объяснение: Я вхожу на сервер как user1 (который есть в sudoers). У этого пользователя есть псевдонимы в .bash_aliases
:
alias rm='rm -i'
теперь я исполняюsudo -s -H
А теперь rm
не имеет псевдонима — поэтому удаляет файлы без запроса.
Как это изменить?
(я вижу сообщения с alias sudo='sudo '
- но это работает только при выполнении команды sudo command
- не сsudo -s -H
решение1
Вам необходимо найти те же псевдонимы в /root/.bashrc
.
Это можно сделать двумя способами:
Скопируйте и
/home/user1/.bash_aliases
добавьте/root/.bash_aliases
следующее/root/.bashrc
:if [[ -f /root/.bash_aliases ]] then . /root/.bash_aliases fi
Источник
/home/user1/.bash_aliases
файла/root/.bashrc
:if [[ -f /home/user1/.bash_aliases ]] then . /home/user1/.bash_aliases fi
Решение, которое вы выберете, зависит от личных предпочтений. Я использую вариант 2, потому что хочу, чтобы у root были те же псевдонимы и т. д., что и у моего обычного пользователя, и таким образом мне нужно будет поддерживать его только в одном месте (вы также можете сделать символическую ссылку на /home/user1/.bash_aliases
in /root
, но эффект будет тем же).
Если вы выберете вариант 1, вам придется поддерживать свои псевдонимы для обоих user1
и root
отдельно. Это может подходить или не подходить для вашего варианта использования.