در صفحه کلیدهای استاندارد موجود در بازار، کلیدی وجود دارد که بر روی آن این عبارت Print Screen | SysRq نوشته شده.این کلید معمولا در کنار کلیدهای Pause Break و Scroll Lock و در مواردی Delete Insert قرار گرفته است و اکثرا استفادهای که از ان میشود برای گرفتن اسکرینشات است ولی این کلید کارایی دیگری نیز دارد.آیا شما میدانید با این کلید چه کارهای دیگری میتوان انجام داد؟ باید گفت این کلید یک سوپر کلید در صفحهکلید کامپیوتر شماست ولی اکثر کاربران از کاربردهای آن اطلاعی ندارند.پس تا انتها با این پست همراه باشید تا با کاربردهای این سوپر کلید در صفحهکلید بیشتر آشنا شوید و از آن استفاده کنید.
در لینوکس کلید جادویی SysRq میتواند فرامین را بصورت مستقیم به کرنل لینوکس بفرستد.شما میتوانید از این کلید برای ریکاور کردن سیستم خود در هنگام فریز شدن میز کار یا برای راهاندازی مجدد سیستم بصورت تر و تمیز (cleanly restart) استفاده کنید حتی اگر هیچ چیز کار نکند و جوابگوی شما نباشد این کلید به کمک شما خواهد آمد.کلید جادویی SysRq به عنوان بخشی از درایور صفحهکلید لینوکس پیادهسازی شده است.
استفاده از کلید جادویی SysRq:
کلید SysRq بصورت ترکیبی با کلید Alt استفاده میشود.برای استفاده از این کلید ترکیبی،کرنل لینوکس باید با CONFIG_MAGIC_SYSRQ کامپایل شده باشد و در بیشتر توزیعهای گنو/لینوکسی بصورت پیشفرض این امکان فعال است.شما میتوانید در صورتی که کرنل از قبل با CONFIG_MAGIC_SYSRQ کامپایل شده باشد،با استفاده از دستور زیر با تغییر در مقدار /proc/sys/kernel/sysrq میتوانید آن را فعال یا غیر فعال کنید.برای اطلاع از وضعیت فعال یا غیر فعال بودن این امکان در توزیع گنو/لینوکس خود این دستور را در ترمینال اجرا کنید:
اگر مقدار ۱ برگردانده شد،این امکان فعال است ولی اگر ۰ برگردانده شد،باید آن را فعال کنید:
echo “۱” > /proc/sys/kernel/sysrq
کار تمام است.حالا شما به کلید جادویی مجهز شدید!
حالا با X Server فریز شده دست و پنجه نرم کنید!
حالا اگر X Server (که برنامهایست که دسکتاپ گرافیکی شما را ران میکند) در مواقعی فریز شد و نتوانستید هیچ کاری با سیستم خود انجام دهید این کلید جادویی به کمک شما خواد اومد!
کلید ترکیبی Alt + SysRq + r صفحه کلید را از حالت raw mode خارج کرده و کنترل را از دست X Server بیرون میکشد.بعد از فشردن این کلید ترکیبی شما میتوانید از کلید ترکیبی Ctrl + Alt + F1 برای سوئیچ کردن به کنسول دیگر و راهاندازی مجدد X استفاده کنید.
کلید ترکیبی Alt + SysRq + K تمامی برنامهها از جمله X را در کنسول مجازی موجود،Kill میکند.شما همچنین میتوانید کلید ترکیبی Ctrl + Alt + Backspace را هم فعال کنید.(در اوبونتو X Server را ریاستارت میکند.به هر حال این میانبر با X Server پیادهسازی شده و ممکن است همیشه کار نکند)
سیستم خود را بصورت تر و تمیز راهاندازی مجدد کنید!
برای خاتمهدادن به پردازشها بصورت تر و تمیز (cleanly) ، خالی کردن دیتا در دیسک، unmount کردن سیستمفایلها و راه اندازی مجدد سیستم میتوانید از این کلید جادویی استفاده کنید.برای انجام این فرآیند کلید ترکیبی Alt + SysRq را فشرده و نگه دارید.سپس در حالی که این کلیدها را پایین نگه داشتهاید این کلیدها را به ترتیب فشار دهید:
reisub
و اما هرکدام از این کلیدها چه کاری انجام میدهند؟
کلید r : کیبورد را به حالت raw mode میبرد و کنترل را از دست X Server خارج میکند.
کلید e : سیگنال خاتمه را برای تمامی پردازشها ارسال میکند و از آنها درخواست میکند تا بصورت آرام خاتمه پیدا کنند.
کلید i : سیگنال kill کردن پردازشها را ارسال میکند و آنها را مجبور به خاتمهدادن کار بصورت فوری میکند.
کلید s : اطلاعات را از حافظه کش به دیسک تخلیه میکند.
کلید u: تمام فایلسیستمها را بصورت فقط خواندنی Remount میکند.
کلید b: کامپیوتر شما را مجددا بوت میکند.
فرامین بیشتر:
و اما میتوانید از این فرامین هم همراه با کلید ترکیبی Alt + SysRq نیز استفاده کنید:
کلید n: اولویت اعمال شده روی پردازشها را Reset میکند
کلید f: با فراخوانی oom_kill پردازشهایی که خافظه مصرفیشان زیاد است را kill میکند
کلید o: کامپیوتر را خاموش میکند.
موارد دیگری هم وجود دارد که ممکن است بیشتر به درد توسعهدهندگان بخورد.برای اطلاعات بیشتر درباره کلید جادویی SysRq و لیست کامل از کارهایی که با آن میتوان انجام داد از این فایل متنی که به همراه کرنل لینوکس موجود است میتوانید استفاده کنید.
ــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــ اگر این مطلب را دوست داشتید میتوانید مشترک خوراکخوان رایتوب شوید تا از این پس همه مطالب بعدی رایتوب را در خبرخوانتان،بخوانید... ــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــ
9 دیدگاه برای این نوشته:
| مشاهده 4 نظر دیگر
علی:
۲۸ تیر ۱۳۹۱ ممنون به خاطر این مطلب خوب! خیلی نکتهی جالبی بود. :)شاهین آزاد:
۲۸ تیر ۱۳۹۱ خیلی ممنون. مطلب جالبی بود. اصلا فکر نمیکردم یه همچین چیزی رو کیبوردم باشه و من نشناسمش ;-)مجید:
۲۸ تیر ۱۳۹۱ عالی بود، خیلی خیلی وقت پیش این reisub رو دیده بودم و تو ذهنم بود که میشه این فرمان رو به کرنل داد ولی پیگیرش نشده بودم و فراموش کرده بودم، خیلی ممنون از پست خوبت.علی:
۲۹ تیر ۱۳۹۱ من این دستور رو که گفتین اجرا کردم. نتیجه رو خودتون ببینید: http://www.bild.me/bild.php?file=4402160sysrq.png در حال حاضر دارم شاخ درمیارم. به نظر شما چه کنم؟محمود:
۲۹ تیر ۱۳۹۱ تعجبی نداره.توضیح میدم چرا؟ اینها فانکشنهای موجود SysRq هستن: 2 - enable control of console logging level 4 - enable control of keyboard (SAK, unraw) 8 - enable debugging dumps of processes etc. 16 - enable sync command 32 - enable remount read-only 64 - enable signalling of processes (term, kill, oom-kill) 128 - allow reboot/poweroff 256 - allow nicing of all RT tasks پس فقط به همین فانکشنها اجازه داده میشه و میتونید توی داکیومنتش اینها رو بخونید.بع عبارتی در اینجا:438 = 2 + 4 + 16 + 32 + 128 + 256
و اگر به معادل باینری بر مبنای ۲ تبدیلش کنید میشه این:110110110 1 1 0 1 1 0 1 1 0 ^256 ^128 ^64 ^32 ^16 ^8 ^4 ^2 ^1
بسته به توزیع مورد استفاده شما میتونید از این دستور برای تشخیص اینکه کرنل با CONFIG_MAGIC_SYSRQ کامپایل شده یا نه استفاده کنید:$ grep SYSRQ /boot/config-$(uname -r)