Виправте не відповідальні або заморожені комп'ютери Linux за допомогою ярликів

Системи Linux відомі своєю стабільною роботою, розрахованою на багаторічну роботу без перезавантаження. Однак, якщо вам все-таки вдається висмикнути рядок і заморозити комп'ютер, є чимало способів повернути систему в робочий стан. Ви можете увійти у віртуальну консоль, використовувати pgrep і pkill, використовувати xkill, системний монітор і вбити порушувальний процес, якщо ви впевнені в них. Або, якщо нічого не працює, ви можете натиснути кнопку харчування може бути? Але перш ніж ви попрямуєте до цієї кнопки харчування, є ще один чарівний спосіб повернути вашу систему, і я збираюся поговорити про це в цій статті.

Перш за все, я впевнений, що багато хто з нас не знає, що на їх клавіатурі є клавіша sysrq. Це? Чи, можливо, ви забули про це? Так, це той ключ PrintScreen/SysRq, який ми збираємося зробити MakeUseOf в цій статті.


:

Що таке ключ Magic SysRq

Ключ Magic SysRq дозволяє надсилати деякі команди низького рівня незалежно від стану системи. Це означає, що якщо система зависла, ви можете використовувати ці комбінації клавіш для виконання певних дій і, таким чином, відновити контроль.

Так у чому ж чарівність? Добре, якщо ви застрягли з системою, що не відповідає, спробуйте

Alt + PrintScreen + г + з + е + я + U + B.

Pheew! Отже, скільки рук вам потрібно, щоб зробити це? Чи ви повинні використовувати свої пальці? Ну, насправді ви тільки натискаєте і утримуєте Alt і PrintScreen разом, інші клавіші натискаються по одній, а потім відпускаються. Коли ви це робите, відбувається досить багато. «r» «s» «e» «i» «u» «b» фактично означають окремі команди:

  • r - повертає керування клавіатурою назад з X.
  • s - записує дані з дискового кешу на жорсткий диск.
  • e - надсилає SIGTERM всім процесам, крім init.
  • я - надсилає SIGKILL всім процесам, крім init
  • u - перемонтує всі файлові системи тільки для читання (в основному це міра, яка допоможе вам безпечно перезавантажитися)
  • б - перезавантажує систему

Як ви бачите, натискання кожної літери виконує певні завдання, тому має сенс натискати їх по одній, при цьому натискаючи комбінацію Alt + PrintScreen. Дайте достатньо часу, перш ніж натиснути наступну клавішу, щоб система могла виконати всі завдання відповідно до комбінації клавіш Magic SysRq.

Інші магічні команди

Це не все. Alt + PrintScreen + r + s + e + i + u + b - це лише одна спеціальна комбінація команд, яка допомагає вам відновити систему, що не відповідає на запити. Також доступні інші команди:


0 — 9

встановлює рівень журналу консолі, визначаючи, які повідомлення ядра будуть виводитися на вашу консоль, щоб ви не залилися.

б

перезавантажує систему, не роблячи кроків, щоб переконатися, що умови для безпечного перезавантаження хороші, використання тільки цього ключа аналогічно холодному перезавантаженню.

е

надсилає SIGTERM всім процесам, крім init.

е

викликати Out Of Memory Killer, який вб'є процес, який споживає всю доступну пам'ять.

година

показує довідку про ключі SysRq на терміналі, хоча насправді ви можете використовувати будь-яку клавішу, крім зазначених, для відображення довідки.

я

надсилає SIGKILL всім процесам, крім init.

ДО

вбиває всі процеси на поточному терміналі.


L

надсилає SIGKILL всім процесам, включаючи init.

м

показує інформацію про пам'ять на вашу консоль

про

вимикає систему через ACPI або старіші системи APM.

п

скидає поточні регістри і прапорці на вашу консоль.

Q

виводить всю інформацію таймерів на вашу консоль.


р

бере керування з клавіатури і миші з X-сервера.

s

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

T

показує список поточних завдань і інформації на вашу консоль.

U

перемонтує всі змонтовані файлові системи лише для читання. Після використання цього ключа ви можете перезавантажити систему за допомогою Alt + SysRq + B без шкоди для системи.

вага

скидає безперебійні (заблоковані) державні завдання.


Alt + Printscreen також є поєднанням клавіш для скріншоту активного вікна в Gnome і деяких інших віконних менеджерах. Переконайтеся, що у вашій системі включено ключі Magic SysRq. Ключі/команди Magic SysRq працюють, лише якщо ядро було скомпільовано з параметром CONFIG_MAGIC_SYSREQ.

Ви також можете використовувати тригерні виклики proc sysrq для керування поведінкою ключів sysrq. Як правило, вам потрібно тільки знати, що

echo 0 >/proc/sys/kernel/sysrq вимикає ключі sysrq

а також

echo 1 >/proc/sys/kernel/sysrq включає ключі sysrq


Існують й інші числа зі спеціальними значеннями, такими як 2 - включити контроль рівня ведення журналу консолі, 4 - включити управління клавіатурою (SAK, unraw), 8 - включити зневаджувальні дампи процесів тощо, 16 - включити команду синхронізації, 32 - включити перемонтувати читання - тільки 64 - включити сигналізацію процесів (term, kill, oom-kill), 128 - дозволити перезавантаження/відключення живлення, 256 - дозволити прив'язку всіх завдань RT (контролювати хороший рівень (пріоритет) завдань реального часу)

Крім того, додавання kernel.sysrq = 1 до файлу/etc/sysctl.conf також активує ключі sysrq.

Будь ласка, будьте особливо уважні при редагуванні файлів налаштувань.

Там у вас є це. Ваш власний план дій у надзвичайних ситуаціях. Якщо вам важко запам'ятати цю комбінацію, ви можете записати її і вставити на монітор або просто згадати «Відновлюючи різні слони, які вам не завадять».

Ключі Magic SysRq не є чимось новим, вони були функцією ядра з давніх пір. У вас коли-небудь був шанс їх використовувати? або ти волієш інший шлях? Поділіться з нами в коментарях.

COM_SPPAGEBUILDER_NO_ITEMS_FOUND