التبديل بين شاشات TTY في أوبونتو باستخدام chvt

نظرة عامة

يعد إتقان التعامل مع الطرفيات الافتراضية (Virtual Consoles) مهارة لا غنى عنها لكل مدير نظام يعمل على توزيعة أوبونتو، لا سيما عند تجمّد الواجهة الرسومية فجأة أو الحاجة لتنفيذ مهام إدارية معزولة في بيئة نصية خالصة. يقدّم هذا الدليل شرحاً تفصيلياً لكيفية التنقل بسلاسة بين وحدات TTY المختلفة باستخدام الأداة chvt، إلى جانب استعراض حزمة من الأدوات المساعدة المخصصة لإدارة الجلسات النصية بكفاءة عالية.

فحص جلسة العمل الحالية والطرفية الافتراضية النشطة

تُستخدم الأداة tty للاستعلام عن مسار ملف الجهاز المرتبط بوحدة الإدخال القياسية للجلسة الحالية.
يشير ظهور المخرجات بصيغة not a tty إلى أن البيئة قيد التشغيل تعمل ضمن جلسة غير تفاعلية، وليست طرفية افتراضية مباشرة (tty) أو محاكي طرفية رسومي (pts).

التحقق من نوع الطرفية عبر tty

يتيح الأمر who استعراض قائمة الحسابات النشطة المسجلة على الخادم مع بيان الطرفيات المتصلة بها.
يدل غياب أي بيانات في مخرجات هذا الأمر على عدم وجود جلسات تفاعلية مسجلة حالياً على مستوى النظام.

الاستعلام عن المستخدمين النشطين بواسطة who

للتحقق من توافر أداة fgconsole المسؤولة عن معرفة رقم الطرفية قيد العرض، يتم تنفيذ السطر البرمجي التالي لتثبيت حزمة kbd تلقائياً عبر مدير الحزم في حال عدم وجودها.

التحقق من توفر أداة fgconsole وتثبيتها

يعرض الأمر fgconsole المعرّف الرقمي الخاص بوحدة التحكم الافتراضية المعروضة على الشاشة الفعلية في الوقت الراهن.
وتعني القيمة 1 الظاهرة في النتيجة أن النظام يعرض حالياً الطرفية الأولى (tty1).

معرفة رقم الطرفية النشطة عبر fgconsole

التبديل المباشر بين شاشات TTY عبر أمر chvt

قبل الشروع في التبديل، يتم التأكد من وجود الأداة chvt أو تنزيل حزمة kbd إن تطلب الأمر.
يؤكد ظهور المسار /usr/bin/chvt في النتيجة جاهزية الأداة للاستخدام دون الحاجة لأي تثبيت إضافي.

التأكد من مسار أداة chvt

تتولى الأداة chvt تغيير الطرفية المعروضة فورياً إلى الرقم المحدد كمعامل للأمر.
عند تنفيذ sudo chvt 1 بصلاحيات الجذر، تُوجّه الشاشة الفيزيائية مباشرة لعرض الطرفية الأولى (tty1).
وكما هي العادة في فلسفة يونكس، فإن انتهاء العملية دون إخراج أي نصوص يؤكد نجاح الانتقال بنجاح تام.

الانتقال إلى الطرفية الأولى عبر sudo chvt 1

يُستخدم الأمر sudo chvt 2 لنقل التركيز المرئي إلى الطرفية الثانية (tty2).
في بيئات أوبونتو المكتبية، عادة ما تُخصص الطرفيات الأولى أو الثانية لاستضافة جلسات سطح المكتب الرسومية أو جلسات الصيانة، مما يجعل هذا الأمر بالغ الأهمية للتنقل السريع بين سطح المكتب والسطر البرمجي.
عدم طباعة أي تنبيهات في الطرفية يؤكد إتمام التحويل بسلاسة ودون أخطاء.

التبديل إلى الطرفية الثانية عبر sudo chvt 2

تشغيل الأوامر في شاشة طرفية مستقلة باستخدام openvt

تسمح أداة openvt بفتح طرفية افتراضية شاغرة أو محددة مسبقاً وتوجيه تنفيذ أمر معين إليها بصورة مباشرة.
يقوم الأمر sudo openvt -c 3 -- ls -la /var/log بحجز الطرفية الثالثة (tty3) وتشغيل استعراض محتويات المسار /var/log عليها في الخلفية.
تنفيذ السطر بصمت تام يعني أن النظام وجّه المهمة وبدأ تشغيلها في الطرفية المعنية دون عوائق.

تشغيل استعراض المجلدات داخل tty3 عبر openvt

لمعاينة ناتج العملية السابقة، يُنفّذ الأمر sudo chvt 3 بصلاحيات المدير للقفز فوراً إلى شاشة tty3.
تتيح هذه الخطوة تفقد مخرجات الأمر الذي تم تشغيله مسبقاً عبر openvt.
يشير غياب أي رسائل خطأ إلى انتقال شاشة العرض إلى وحدة التحكم الثالثة بنجاح.

التبديل إلى tty3 لمعاينة المخرجات عبر sudo chvt 3

تحرير الذاكرة وإلغاء حجز الطرفيات عبر deallocvt

تختص أداة deallocvt بإلغاء حجز موارد نواة لينكس المرتبطة بالطرفيات الافتراضية غير المستخدمة واستعادة الذاكرة المستهلكة.
يحرر الأمر sudo deallocvt 3 الموارد المحجوزة للطرفية رقم 3 (tty3) بعد الانتهاء من فحص مخرجاتها.
الانتهاء الصامت للعملية يعكس إتمام استرجاع الموارد على مستوى النواة بنجاح.

إلغاء حجز الطرفية واستعادة الموارد عبر deallocvt

عند استدعاء fgconsole للتحقق مجدداً من الواجهة الحالية بعد التحرير، تستمر الشاشة في إظهار الرقم 3.
ويوضّح هذا السلوك أن إلغاء تخصيص الموارد في الخلفية لا يغيّر تلقائياً شاشة العرض المعروضة للمستخدم إلا بعد تنفيذ أمر تبديل صريح مثل chvt.

مراجعة الطرفية المعروضة بعد إلغاء التخصيص

تُمثّل هذه المجموعة المتكاملة من أدوات إدارة الكونسول حلاً احترافياً للتحكم بجلسات العمل في توزيعة أوبونتو، وتوفر للمهندسين مساراً موثوقاً لإنقاذ الخوادم واستكشاف الأخطاء وإصلاحها حال تعطل بيئة العرض الرئيسية.