Какой процесс выполняется еще до того, как я получаю уведомление?

Какой процесс выполняется еще до того, как я получаю уведомление?

Когда я захожу на определенный сервер, я вижу следующее:

перед ctrl+c

Обратите внимание, что я получаю Last login: ...информацию, но не получаю приглашение. Я нажимаю Ctrl+Cи толькозатемполучу ли я приглашение, тем самым доказав, что мое имя пользователя и пароль верны, как показано на снимке экрана ниже.

после ctrl+c

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

Кто-нибудь знает, что происходит?

решение1

Что-то занимает много времени в одном из файлов инициализации оболочки. Добавьте set -xв начало ~/.bash_profileили ~/.profile(или ~/.bash_login), если ваша оболочка входа — bash, или ~/.zprofileи ~/.zloginи ~/.zshrc, если это zsh. Таким образом, оболочка будет выводить каждую команду перед ее выполнением. Запустите set +xпосле этого, чтобы отключить трассировку.

Команда может быть вызвана из общесистемного сценария инициализации /etc/profile. Если вы не можете изменить этот файл, но хотите увидеть, что он делает, запустите оболочку входа с включенной трассировкой, например bash --login -x.

Другой подход — войти во второй раз и посмотреть, что происходит с psи другими инструментами. В Linux ps xпоказывает все ваши процессы (простой psпоказывает только запущенные на текущем терминале, что здесь бесполезно); ps -t pts/42ограничивается процессами, запущенными на терминале /dev/pts/42(вам, вероятно, нужно будет сначала запустить, ps xчтобы определить терминал второго сеанса).

решение2

Вместо того чтобы завершать процесс, который вешает вашу оболочку, попробуйте остановить его с помощью Crtl+Z, а затем используйте jobsкоманду command, чтобы узнать, что именно произошло.

решение3

Скорее всего, в вашем $HOME/.bashrc, $HOME/.profile запущена команда, которая либо некорректно переведена в фоновый режим, либо ждет ввода от пользователя. Я бы для начала взглянул на эти 2 файла.

Если там ничего не обнаружится, то я бы взглянул на системные эквиваленты этих файлов, /etc/bashrc, /etc/profile и файлы в каталоге /etc/profile.d/*. Возможно, кто-то, системный администратор, добавил что-то в эти системные файлы, которые теперь пытаются запуститься при входе в систему.

Связанный контент