Среда оболочки для su

У меня есть некоторые псевдонимы и модификации к ls, который я хотел бы доступный в любом случае. Действительно ли возможно установить переменные среды для использования, когда я зарегистрирован как корень после того, как я sudo с sudo su?

1
задан 21.01.2010, 06:22

4 ответа

Кроме того, что sudo su является ужасной идеей, потому что он обходит аудит, который обеспечивает sudo, Вы могли сделать это одним из двух способов: или измените .profile корня, который влияет на всех sudo пользователей или настраивает сценарий оболочки, что Вы бежите за sudo su, чтобы дать Вам переменные, и искажает Вас потребность.

1
ответ дан 12.12.2019, 10:46

Нет .profile для только su, но Вы могли записать .profile, который обнаруживает, если Вы - su'ing.

Если Вы - su'd, то, "кто, я | awk '{печатаю 1$}'", будет пользователь, из которого Вы произошли, в то время как "whoami" будет пользователем, Вы стали.

Если они отличаются, то Вы su'd, сделайте то, что Вы должны.

1
ответ дан 12.12.2019, 10:46

"su" в su и командах sudo, хотя представляясь подобным, обозначает разные вещи.

su поддерживает пользователя замены и чаще всего упоминается как пользователь переключателя. sudo поддерживает суперпользователь, делают, или "делают это действие как суперпользователь".

Если Вы выполняете команду, это резервируется для корня при помощи sudo, Ваша среда (пути, переменные, и т.д.) будет использоваться, т.е. то, что установлено в/Users/файле $your_username/.profile.

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

При вводе su - (отметьте минус), Вы переключитесь на пользователя root и получите его среду.

На Mac у пользователя root, расположенного в/var/root, нет .profile файла. Обходное решение должно создать один (можно скопировать .profile файл пользователя), поместите его в/var/root / и добавьте любые псевдонимы, пути, и т.д., Вам нужно в этот файл.

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

1
ответ дан 12.12.2019, 10:46

Как jRandomUser, вводя

sudo bash

(или безотносительно оболочки Вы используете), заставляет Вас 'базироваться' с профилем оболочки jRandomUser. Ввести

exit

когда Вы сделаны, чтобы вывести Ваши полномочия и возвратиться к работе jRandomUser. Очевидно, используйте с осторожностью. Мой .bashrc устанавливает мою подсказку на резкий цвет каждый раз, когда мой UID == 0.

0
ответ дан 12.12.2019, 10:46

Теги

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