چگونه می توانم از قفل شدن از ssh فاصله بگیرم؟


به جواب پذیرفته شده بروید




من اغلب از مدرسه از جعبه خانه ام ssh می کنم ، اما معمولاً وقتی کلاس ها را عوض می کنم و کامپیوتر من به حالت تعلیق در می آید ، لوله شکسته می شود. با این حال ، ssh به راحتی قفل می شود - Ctrl+ c، Ctrl+ zو Ctrl+ dهیچ تاثیری ندارد.

آزار دهنده است که مجبور به راه اندازی مجدد ترمینال من و حتی آزار دهنده تر از آن هستم که مجبور باشم یک پنجره صفحه نمایش جدید را ببندم و دوباره بسازم.

سؤال من ، آیا راهی آسان برای ایجاد صحیح مرگ (ssh) وجود دارد (یعنی وقتی لوله "بطور معمول" خراب شود ، با پیغام مربوط به یک لوله شکسته از آن خارج می شود)؟ یا باید بفهمم PID چیست و به صورت دستی آن را می کشم؟


385









3 :تعداد پاسخها


کلیدهای عادی در طول ssh جلسه ارسال می شوند ، بنابراین هیچ کدام از اینها کار نمی کنند. در عوض ، از توالی فرار استفاده کنید. برای از بین بردن جلسه فعلی متعاقباً Enter ↵، ~، ..

( ~ بخاطر داشته باشید که در صفحه کلیدهای بین المللی قرار است شخصیتی آهنگساز باشد که باید دو بار آن را بزنید: Enter ↵، ~، ~،.

بیشتر از این توالی فرار را می توان با ذکر شده Enter ↵، ~، ?:

 Supported escape sequences:
     ~.   - terminate connection (and any multiplexed sessions)
     ~B   - send a BREAK to the remote system
     ~C   - open a command line
     ~R   - request rekey
     ~V/v - decrease/increase verbosity (LogLevel)
     ~^Z  - suspend ssh
     ~#   - list forwarded connections
     ~&   - background ssh (when waiting for connections to terminate)
     ~?   - this message
     ~~   - send the escape character by typing it twice
(Note that escapes are only recognized immediately after newline.)
 

با ضربه زدن می توانید لیست دنباله های Escape را ببندید enter.

توجه داشته باشید که به دلیل هدف قرار دادن ~~علل ssh به ارسال ~ به جای متوقف کردن آن، شما می توانید آدرس N تو در تو ssh اتصالات توسط هدف قرار دادن ~ N بار. (این فقط مربوط به مواردی است ~که مستقیماً از آن پیروی می کنند enter.) یعنی اینکه جلسه 5 لایه را به عمق enter~~~~~.خاتمه می دهد ssh و 4 حالت دیگر را سالم نگه می دارد.


543



همچنین ممکن است بخواهید نگهدارنده های سطح برنامه را برای SSH تنظیم کنید تا از یخ زدن در مورد مشکلات اتصال جلوگیری کنید. من ~/.ssh/config حاوی این موارد است:

 Host *
ServerAliveInterval 15
# ServerAliveCountMax 3
 

این باعث می شود مشتری هر ssh هر 15 ثانیه یک مرتبه زنده نگه داشته شود. هرگاه سه نفر از آنها به طور متوالی شکست بخورد (پیش فرض ServerAliveCountMax ) ، مشتری اتصال را آویزان می داند و آن را می بندد.

در مقابل گزینه دیگر TCPKeepAlive ، این در کانال رمزگذاری شده بررسی می شود و فاسد نیست.


خاطر نشان می شود که این همسایگان نیز به زنده نگه داشتن اتصالات طولانی مدت کمک می کنند ، از این رو شما را از برگزاری جلسات نیمه بسته tcp که ساعت ها دست نخورده هستند آویزان می کنید.

من به شدت توصیه می کنم اگر به طور مرتب وارد این کار شوید ، این ویژگی را روشن کنید ، اما همچنین باید از کمی خطر امنیتی که ممکن است تحمیل کند آگاهی داشته باشید. حملات متن آشکار ساده تر اگر مهاجم می داند فاصله و محتویات یک اتصال غیر فعال است. این ممکن است دلایلی باشد که به طور پیش فرض فعال نمی شود.


55



همانطور که در پاسخ geekosaur اشاره شد ، توالی فرار ~. اتصال را خاتمه می دهد.

لیست کامل توالی های فرار و کارهایی که انجام می دهند با تایپ قابل نمایش است ~? :

 Supported escape sequences:
  ~.  - terminate connection (and any multiplexed sessions)
  ~B  - send a BREAK to the remote system
  ~C  - open a command line
  ~R  - Request rekey (SSH protocol 2 only)
  ~^Z - suspend ssh
  ~#  - list forwarded connections
  ~&  - background ssh (when waiting for connections to terminate)
  ~?  - this message
  ~~  - send the escape character by typing it twice
(Note that escapes are only recognized immediately after newline.)
 

44



انتشارات مرتبط


چگونه می توان از کاربر root استفاده کرد؟

چگونه می توان از دستور "sudo -s" در ترمینال خارج شد؟

چگونه عملکرد VirtualBox در هنگام کار UNITY_LOW_GFX_MODE بهبود یابد؟

چگونه از حالت تمام صفحه خارج شویم؟

اشکال "Dirty COW" چیست و چگونه می توانم سیستم خود را در برابر آن تضمین کنم؟

با استفاده از اوبونتو 18.04 ، چگونه می توانم گوشه ای گرم داشته باشم که کامپیوتر را قفل کند؟

چگونه از گزارشات اطلاعات سیستم خودداری کنیم

نمادهای رومیزی وقتی در چندین مانیتور قرار دارند از مکان خارج می شوند؟

Dynamic MMap هنگام تلاش برای سودو گرفتن هر چیزی ، از اتاق فرار کرد

چگونه می توان هنگام اتصال به یک شبکه وای فای خانگی ، دستگاه تلفن همراه را تشخیص داد؟

[ssh] سوال برچسب


چگونه یک فایل زیپ را از ترمینال جدا کنیم؟

چگونه می توانم nodeJS خود را به آخرین نسخه بروزرسانی کنم؟

منظور از "cp: فهرست حذف" چیست؟

چگونه متغیرهای محیط را اضافه کنم؟

برای مشاهده اسناد epub از چه نرم افزاری می توانم استفاده کنم؟

خطای sudo: add-apt-repository: فرمان یافت نشد

چه بیننده های PDF برای اوبونتو در دسترس هستند؟

چرا خطاهای تأیید هویت را برای بسته های مخزن اوبونتو دریافت می کنم؟

چگونه می توان اوبونتو را روی یک کلید USB نصب کرد؟ (بدون استفاده از Creator Disk Startup)