Virtual Terminal

همه شما مطمئنا تجربه کار با SSH را داشته‌اید و حتما بارها پیش اومده که کارهای زمانبری مانند کامپایل و یا دانلود برنامه‌ها از راه دور انجام داده‌اید. در این جور مواقع در صورتی که بخواهید ادامه کار‌های خود را انجام دهید یا برنامه را به پس زمینه می‌فرستید و یا یک ترمینال جدید باز می‌کنید. در بسیاری مواقع ممکن است به علت قطع ارتباط و بسته شدن جلسه کاری که در آن هستید عملیات در حال انجام به طور کامل متوقف شود.

برای جلوگیری از چنین مشکلات و همچنین تسهیل در انجام کارهای همزمان می توانید از ابزاری به نام screen استفاده کنید. این برنامه در اکثر توزیع‌ها موجود است و شما می توانید به راحتی آن را از طریق cd نصب کنید:

apt-get install screen

برای اجرای برنامه تنها کافیه در ترمینال وارد کنید screen . منتظر اتفاق خاصی نباشید تنها یک خط فرمان جدید برای شما ظاهر می‌شود. در حقیقت در این حالت یک ترمینال مجازی برای شما ایجاد می‌گردد. حالا تنها کافیه کلیدهای این برنامه رو بدونید تا بتونید به راحتی از آن استفاده کنید.



استفاده از کلید های میانبر

برای آنکه بتوانید در این محیط فرامین مورد نظر خودتون رو صادر کنید از یک سری کلید‌های میانبر می‌توانید استفاده کنید. دقت داشته باشید فرامین اکثرا بعد از فشار دادن کلیدهای ctrl+a اجرا می‌شوند. در حقیقت ctrl+a باعث می‌شود کلیدهای بعدی که فشار داده می شوند به عنوان فرمان تلقی گردتد.



Detach کردن یک ترمینال

در صورتی که می‌خواهید بدون متوقف شدن عملیات در حال انجام ترمینال را ببندید می‌توانید ترمینال موجود را detach کنید. برای این کار کافیه کلیدهای ctrl+a و سپس کلید d را فشار دهید. در این حالت شما هر لحظه می‌توانید مجددا به ترمینال متصل شده و میزان پبشرفت عملیات را بررسی کنید.



باز کردن یک ترمینال مجازی جدید

شما می توانید همزمان چندین ترمینال در کنار هم در یک نشست کاربری داشته باشید.برای ایجاد ترمینال جدید ابتدا کلیدهای ctrl+a و سپس کلید c را فشار دهید.



حرکت بین ترمینال‌ها

در صورتی که چندین ترمینال باز کرده‌اید و می خواهید بین آنها جابجا شوید می‌توانید از کلید‌های ctrl+a و سپس ctrl+n ٬یاctrl+a و سپس ctrl+p و یا فشار دادن دوبار پشت سرهم کلیدهای ctrl+a استفاده کنید.



وصل شده به ترمیتالهای detach شده

در صورتی که تنها یک ترمینال detach شده داشته باشید می‌توانید تنها با دستور screen -R به آن متصل شوید. در صورتی که چندین ترمینال detach (ببحشید این کلمه رو ترجمه نکردم ٬جایگزین مناسبی پیدا نکردم ) شده دارید می‌تونید با دستور screen -list لیستی از آن را ببنید و با دستور screen -r terminalNo (کهtermianNo شماره‌ایست که در خروجی دستور قبل٬ در جلوی هر ترمینال آورده شده است.) به ترمینال مورد نظر خود متصل شوید.



خروج از screen

برای خروج از screen و بستن ترمینال مجازی از دستور exit یا کلیدهای ctrl+d استفاده کنید.



منابع:

Debian Release Notes

http://articles.techrepublic.com.com/5100-1035-6063744.html

http://www.openaddict.com/documents/GNU-Linux-Tools-Summary/virtual-terminals.html



بهراد اسلامی‌فر

behrad At Givme5 Dot ir

www Dot Giveme5 Dot ir

تاریخ نگارش ۲۸ فروردین ۱۳۸۶