2

Вы вошли в систему как root, переменные окружения великолепны. Я набрал "набор"

Я сделал:

useradd -m alex
su alex

Почему-то все пропало, когда я набираю "set". Как сделать так, чтобы при первом входе в систему alex все переменные среды были такими же, как root (кроме как для обычного пользователя)?

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

** Редактировать: люди не понимают вопрос. В данный момент учетная запись пользователя "alex" полностью пуста, без переменных среды. Я просто хочу, чтобы он имел аналогичные переменные среды, такие как ROOT. Все каталоги не имеют цвета. PS1 это просто знак доллара. Это не нормально

6 ответов6

4

Вы хотите использовать su - alex , а не su alex .

От man su:

Options:  
     -, -l, --login  
         make the shell a login shell 

Оболочка входа означает, что ваша оболочка будет правильно обрабатывать сценарии начального входа.

Вы можете сделать то же самое, выйдя из системы и войдя обратно под своим новым пользователем.

1

Все ваши пользователи (при условии, что вы используете bash) будут выполнять /etc/profile при входе в систему. Вам также может понадобиться настроить файл ~/.profile . Для этого вы можете скопировать профиль root или записать результат (запустить от имени root):

set

и затем отредактируйте этот файл, чтобы включить его в .profile .

1

Сначала проверьте и посмотрите, что находится в /etc/profile .

Затем, какую оболочку установил ваш пользователь alex в /etc/passwd? Попробуйте поискать соответствующий rc-файл для того, какая оболочка установлена - например, если вы используете bash, ищите файл bashrc по умолчанию (часто в /etc/bashrc или аналогичном пути). Аналогично для других оболочек и их скриптов запуска по умолчанию.

0

Вы хотели использовать команду adduser .

justin@eee:~$ man useradd|grep DESC -A 1
DESCRIPTION
       useradd is a low level utility for adding users. On Debian, administrators 
       should usually use adduser(8) instead.
0

Вы не Просто не используйте root для повседневного использования. На самом деле, никогда не входите в систему как root. Просто используйте «sudo», когда вам нужно выполнить административную задачу.

Вы можете подумать, что это неудобно и т.д., Но однажды, когда вы облажаетесь, вы поймете. Это случается со всеми в какой-то момент.

Если вам нужны определенные переменные окружения для вашего пользователя, просто установите их в ваших файлах .bash_profile или .bashrc.

0

Вы можете передать намного больше аргументов в useradd.

useradd -ms /bin/bash username

Это создаст пользователя, его домашнюю директорию и установит в его оболочке bash (используя настройки по умолчанию, хранящиеся в /etc/bash.bashrc).

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .