Швидка відповідь полягає в тому, що ви вбили sshd (і пан знає що ще) і не зможете ввійти назад в систему за допомогою SSH. Якщо у вас є якийсь інший метод отримання доступу до системи (така віддалена консоль, IPMI тощо), вам потрібно буде перезавантажити систему, яка відновить службу SSH та інші служби.
Сподіваємось, у вас є фізичний доступ до коробки, і в цьому випадку вам, мабуть, просто потрібно натиснути кнопку живлення. Зрозумійте, що ви вбили багато процесів, і будьте готові до деякої корупції. Linux призначений для відновлення після збоїв у системі, і ви по суті викликали "ручний" збій. Більшість речей повинні відновитись добре після перезавантаження. У ваших журналах можуть бути всілякі цікаві повідомлення про помилки.
Довга відповідь:
Це чудовий продуманий експеримент та гарне запитання про співбесіду. "Що станеться, якщо ви зробили X ..." Це прикольна річ спробувати на власній приватній віртуальній машині, але ніколи цього не слід робити на реальній коробці. Усі роблять помилки. Запам’ятайте і вчіться на своїй помилці. Помилки - це найкращий спосіб вчитися. Помилки на виробництві - це болюче заняття, яке траплятиметься періодично у вашій кар’єрі.
pkill -KILL -у корінь
Ця команда відправить 'SIGKILL' (наприклад, kill -9
KILL - псевдонім для SIGKILL) для всіх процесів, що належать root. Це дуже погано робити в системі. kill -9
слід уникати хіба що в крайньому випадку.
Ваша команда агресивно знищила весь процес, що належить root, процеси були вбиті негайно і не дали можливості очистити. Щоб зрозуміти, що ви вбили, увійдіть у здоровий скриньку Linux та перелічіть процеси, що належать root, скориставшись такою командою. Для запуску цих команд вам, як правило, не потрібно мати root:
$ pgrep -u root -l
$ ps aux | grep root
Можливо, ви вбили Init (PID # 1), який породжує нові процеси. Можливо, ваша система не може створити нові процеси. Таким чином, він може продовжувати функціонувати поки що, але хворий і потребує відновлення якнайшвидше. Із часом система буде все більше хворіти. Чим довше ви будете чекати, тим гірше вийде.
ОНОВЛЕННЯ: Веб-сервер все ще працює. Але я не можу зараз підключитися через SSH. Я поняття не маю, що я зробив.
Я здогадуюсь, що ви використовуєте Apache. Схоже, дочірні процеси веб-сервера все ще запущені, оскільки вони не належать користувачеві "root". Однак батьківський процес веб-сервера зазвичай належить root, і ви його вбили. Як результат, нові дочірні процеси не породжуватимуться. Це буде добре на час, тому що, ймовірно, у вас є достатньо дочірніх процесів для обслуговування запитів, і зазвичай ці дочірні процеси зберігатимуться до тих пір, поки вони не будуть вбиті або не впадуть. Знову ж таки, найшвидшим виправленням є перезавантаження машини.