Терминал показывает только $?

8

Недавно я настроил нового пользователя, используя «имя пользователя adduser» на своем сервере, и заметил, что при входе в систему я получаю:

$

Кроме того, у моего нового пользователя нет подсветки папок или завершения табуляции.

Однако, когда я вхожу в систему как root, я получаю полное приглашение терминала, а также выделение, завершение и т. Д.

root@lin01:~#

Кто-нибудь знает, что я сделал не так?

Изменить: решение было набрать

chsh -s /bin/bash

Пока залогинен с помощью $.

kidcapital
источник
Для меня был запрошен пароль на выполнение команды. (пользователь-pw). Также стоит упомянуть: вам нужно повторно войти в систему, чтобы активировать новые настройки (debian-jessie)
Alex

Ответы:

11

Оболочка для входа вашего нового пользователя была настроена на /bin/sh, что в Ubuntu - dash. Это оболочка, которая должна быть маленькой и быстрой, чтобы эффективно запускать сценарии. У него нет никаких интерактивных функций. Измените вашу оболочку на zsh (лучше) или bash (чаще):

chsh -s /bin/bash

Если вы хотите изменить adduserоболочку по умолчанию, отредактируйте /etc/adduser.conf:

DSHELL=/bin/bash
Жиль "ТАК - перестань быть злым"
источник
Я набираю команду chsh bash, и она говорит: «bash - это не пользователь». Поэтому я набрал "chsh username --shell bash", и он сказал "bash - недопустимая оболочка". но я могу напечатать "bash", и он переключается на тот, который я хочу. Какие-нибудь мысли?
Кидкапитал
хорошо, получается, что правильная команда для меня была: chsh -s / bin / bash .. спасибо, что указали мне правильное направление
kidcapital
@kidcapital: Да, chsh -s /bin/bashбыл прав, я указал правильную команду, но испортил ее синтаксис. Сожалею.
Жиль "ТАК - перестань быть злым"
-4

После того, как вы последуете совету Жиля, увеличьте удивительность приглашения, добавив этот код в ~ / .bashrc пользователя (и ваш root .bashrc):

# Black       0;30     Dark Gray     1;30
# Blue        0;34     Light Blue    1;34
# Green       0;32     Light Green   1;32
# Cyan        0;36     Light Cyan    1;36
# Red         0;31     Light Red     1;31
# Purple      0;35     Light Purple  1;35
# Brown       0;33     Yellow        1;33
# Light Gray  0;37     White         1;37

BLUE="\[\033[0;34m\]"
PINK="\[\033[1;35m\]"
WHITE="\[\033[1;37m\]"
LGREY="\[\033[0;37m\]"
LBLUE="\[\033[1;34m\]"
YELLOW="\[\033[1;33m\]"
LRED="\[\033[1;31m\]"
RED="\[\033[0;31m\]"
DGREY="\[\033[1;30m\]"

if [ "$(whoami)" == 'root' ]; then
  PS1="$DGREY]$RED╢$PINK\h$RED╟$DGREY[$LBLUE\w$WHITE:$LGREY "
else
  PS1="$DGREY]$BLUE╢$PINK\h$BLUE╟$DGREY[$LBLUE\w$WHITE:$LGREY "
fi

возиться с этим тоже .. возиться важно.

cidermonkey
источник
4
-1 Это не отвечает на вопрос и не соответствует тону сайта, который предназначен для профессионального системного администрирования. Я, вероятно, не понизил бы, если бы этот вопрос / ответ был на superuser или ubuntu.se.
Зоредаче
Чувак не понял подсказку, хотел хороший. Я дал ему пример подсказки для работы и предложил изменить его в соответствии с его потребностями.
cidermonkey
1
Но если вы углубитесь в этот вопрос, вы увидите, что речь шла о недавно созданном полном отсутствии стандартной среды. Пожалуйста, помните, что этот сайт не является форумом, это сайт вопросов и ответов. Если вы публикуете ответ, он должен быть ответом на вопрос.
Zoredache
2
Я думаю, что Зоредаче (и я склонен согласиться) говорит о том, что вы не ответили на главный вопрос: кто-нибудь имеет представление о том, что я сделал не так? ,
Бен Пилброу