не удалось войти через tty {1-6} в качестве обычного пользователя

Я не могу войти через tty {1-6} в качестве обычного пользователя. Я могу войти только в качестве пользователя root .

При входе в систему с обычным пользователем компьютер отображает приветственное сообщение от /etc/motd и выводит меня немедленно.

Что может быть причиной?

Какие файлы журналов могут быть полезны для проверки?

Я могу войти в систему с обычным пользователем, используя Gnome на tty7 .

Когда вы входите в консоль текстового режима или по сети, ваша оболочка входа выполняется. Он читает некоторые системные и пользовательские файлы конфигурации; вот самые распространенные (если ваша оболочка не указана здесь, обратитесь к ее документации):

  • sh, ksh: /etc/profile ; ~/.profile
  • bash: /etc/profile ; ~/.bash_profile , если отсутствует ~/.bash_login , если отсутствует ~/.profile .
  • zsh: /etc/zshenv , /etc/zprofile , /etc/zlogin , /etc/zshrc (если интерактивно); ~/.zshenv , ~/.zprofile , ~/.zlogin , ~/.zshrc (если интерактивно)
  • csh, tcsh: ~/.login
  • fish: /usr/share/fish/config.fish , /etc/fish/config.fish ; ~ / .config / рыба / config.fish`

Эти файлы могут загружать другие файлы; в частности, многие дистрибутивы настроили /etc/profile для загрузки файлов в /etc/profile.d .

Если какой-либо из этих файлов содержит что-то, что приведет к завершению работы оболочки, вы выйдете из системы, не имея возможности ввести команду.

Вы можете добавить строку, содержащую set -x в верхнюю часть соответствующего файла, чтобы увидеть трассировку выполняемых команд. (Это для оболочек в стиле Бурна, используйте set echo в csh, а у рыбы нет такой вещи )

Когда вы входите в систему через графический интерфейс (в диспетчере отображения ), ваша оболочка входа не выполняется; однако большинство систем организуют запуск sh или bash и load /etc/profile и ~/.profile .

Если вы застряли, потому что вы не можете войти в систему:

  • Попробуйте нажать Ctrl + C во время логина. Если вы ударите его в нужное время, он прервет оболочку так же, как начнет загружать файл профиля, и вы получите командную строку.
  • Выполнять команды по сети. ssh mymachine.example.com 'mv .profile no.profile' перемещает проблемный ssh mymachine.example.com 'mv .profile no.profile' ~/.profile ; он не загружает файлы профиля, потому что удаленная оболочка не является оболочкой входа. (Но bash странно: он загружает .bashrc если его родительский rshd или sshd хотя оболочка не является интерактивной.)
  • Доступ к учетной записи через FTP или SFTP.

Хорошо, выяснилось, что из моих экспериментов с cdm остались некоторые файлы, поэтому во время tty login был запущен файл /etc/profile.d/zzz-cdm-profile.sh который немедленно вызвал выход из системы. Удаление этого – исправлена ​​проблема.