تو این حالت اولین چیزی که به ذهن میرسه اینه که سیستم رو با دکمه پاور خاموش کنیم؛ حرکتی که ریسک بالایی برای خرابی دیتای روی دیسک داره.
ولی کرنل لینوکس برای این شرایط یه قابلیت نجات به اسم Magic SysRq داره که توالی معروفش REISUB هست، یعنی:
Reboot Even If System Utterly Broken
توی این وضعیت، با نگه داشتن کلیدهای Alt + SysRq (توی بیشتر کیبوردها همون PrtScn) و زدن این کلیدها ، سیستم مرحله به مرحله نجات پیدا میکنه:
با زدن R (Unraw) کنترل کیبورد از محیط گرافیکی (Xorg/Wayland) پس گرفته میشه تا کلیدها مستقیم به کرنل برسن.
با زدن E (Terminate) کرنل به تمام پروسسها سیگنال
SIGTERM میده تا بتونن مرتب بسته بشن.با زدن I (Kill) سیگنال
SIGKILL فرستاده میشه تا پروسسهایی که قفل کردن به زور بسته بشن.با زدن S (Sync) دیتای کششده در رم روی دیسک نوشته میشه تا چیزی از دست نره.
با زدن U (Unmount) تمام فایلسیستمها بهصورت Read-Only ریمانت میشن تا ساختار دیسک آسیب نبینه.
با زدن B (Reboot) سیستم بلافاصله ریبوت میشه.
دسترسی به این قابلیت با یک Bitmask کنترل میشه. برای اینکه فقط کلیدهای همین توالی کار کنن عدد 244 و برای فعالسازی کامل تمام قابلیتهای SysRq عدد 1 تنظیم میشه.
برای فعالسازی سریع:
Bash
sudo sysctl -w kernel.sysrq=1
و برای اینکه بعد از ریبوت هم دائمی بمونه:
Bash
echo "kernel.sysrq = 1" | \
sudo tee /etc/sysctl.d/99-sysrq.conf
sudo sysctl --system
اگه میخواید دقیق بدونید هر عدد و بیت چه کلیدی رو فعال میکنه، جدول کاملش توی مستندات کرنل و آرچویکی اومده.
#linux
@CleverDevs - @CleverDevsGp