أوامر Linux ومهارات Shell
tmux vs screen: مقارنة مديري الجلسات
يحل tmux والشاشة نفس المشكلة القديمة: يجب ألا يموت عملك عندما تتعطل شبكتك. يتم بث الجلسات على الخادم، وتنجو من انقطاع الاتصال، ويمكن تقسيمها إلى أجزاء؛ الشاشة هي السلف المستقر الذي يتم شحنه في كل مكان، tmux الخلف مع الإعدادات الافتراضية الأكثر عقلانية، والأجزاء القابلة للبرمجة، والنظام البيئي الذي انتقل. من الناحية الوظيفية، فهي تتداخل بنسبة عشرة إلى واحد، والاختيار الصادق هو الأداة التي تمتلكها خوادمك بالفعل بالإضافة إلى عادات التكوين التي سيحتفظ بها فريقك بالفعل.
النقاط الرئيسية
- نظافة الجلسة هي القيمة الأساسية: نشر tmux new -s / screen -S للبدء، وtmux ls / screen -ls لرؤية المزرعة، والإرفاق بالاسم الدقيق، لذا فإن إعادة إرفاق مهمة زميل ليلاً هي عملية بحث وليست تخمينًا.
- افصل بأمان (البادئة-d)، واخرج بشكل متعمد: إغلاق الجلسة بأكملها مع الخروج من الأجزاء الداخلية هو السبب وراء فقدان المهام الطويلة غير المكتملة؛ إن "الانفصال إلا إذا كنت تقصد ذلك حقًا" هو عادة وليس تفضيلًا.
- تتصرف الانقسامات بشكل أفضل في tmux: % و"تقسيم الأجزاء، بالإضافة إلى تغيير حجم السهم أسفل البادئة، ووضع الماوس الاختياري؛ عدد الشاشة | وS باتجاه نفس الأطراف مع تغيير حجم أكثر صعوبة.
- يعد التمرير للخلف أمرًا حاسمًا بهدوء: يبحث وضع نسخ tmux في السجل ([ ثم /)، ويكون التنقل ^a [ على الشاشة عمليًا ولكنه خام، وفي ذيول السجل متعددة الجيجابايت، يتفوق البحث على التمرير.
- تميل قابلية البرمجة النصية إلى tmux: تتيح مفاتيح الإرسال وجزء الالتقاط للتشغيل الآلي قيادة الجلسات وقراءتها، ولهذا السبب يفضلها CI وغراء الأدوات؛ يمكن أن تصل الشاشة إلى هناك أيضًا ولكن باستخدام التعابير الأقدم.
- تعمل الجلسات المشتركة في كليهما: ترتبط جلستان بجلسة واحدة لتعكس كل شيء حي، وهو تصحيح الأخطاء الزوجية أو التحقق من أمر محفوف بالمخاطر في الوقت الفعلي؛ استمر في الانضباط في الكتابة وإلا ستظهر المرآة الأخطاء المطبعية أيضًا.
- تختلف ثقافة التكوين: طور tmux نظامًا بيئيًا منقسمًا للتكوين (السمات والمكونات الإضافية والافتراضيات المعقولة لكل فريق)، وتعمل الشاشة على ~/.screenrc واحد؛ في الممارسة العملية، يتوسع tmux عبر الفريق وتظل الشاشة شخصية.
- تؤدي عمليات إعادة التشغيل إلى إنهاء كل شيء: تبقى الجلسات في ذاكرة الخادم، لذا تحتاج المهام الطويلة إلى وظائف حقيقية (السجلات ونقاط التفتيش والبرامج النصية القابلة لإعادة التشغيل) بالإضافة إلى مدير الجلسة في الأعلى؛ tmux هو التأمين وليس المتانة.
ملاحظة ميدانية
كانت الجلسة المفقودة عبارة عن عملية ترحيل بيانات مدتها ست ساعات تم إيقافها بسبب تعطل VPN، ولم يكن هناك شيء على القرص يعرف المرحلة التي وصلنا إليها. أي شيء أطول من استراحة القهوة يحصل الآن على اسم في tmux، ويستأنف في صباح اليوم التالي باستخدام tmux ls بدلاً من هز الكتفين.
أسئلة شائعة
إذا تعلمت واحدًا فقط، أيهما؟
tmux، ما لم يكن أسطولك يقوم بالفعل بتشغيل الشاشة في كل مكان؛ إن الإعدادات الافتراضية، وخطافات البرمجة النصية، وزخم المجتمع هي المكان الذي ذهب إليه العقد الماضي، وتنتقل العادات بشكل جيد بما يكفي لتغطية حالة الطوارئ على الشاشة.
هل من الآمن أن يتشارك شخصان جلسة واحدة؟
نعم، وهي خطوة تصحيح الأخطاء الزوجية القياسية؛ يرى كلاهما ضغطات مفاتيح متطابقة، لذا اتفقا على من يملك لوحة المفاتيح، وتعاملا مع أي أمر مدمر مثل طلب تغيير مع إرفاق زوج آخر من العيون.
لماذا تبدو الألوان خاطئة داخل جلستي؟
عدم تطابق المصطلح: يجب أن تعلن المحطة الداخلية عن tmux-256color أو screen-256color، ويجب أن يكون لدى المضيف البعيد الإدخال (يخبرك infocmp)، والوضوح أولاً، وفخر الموضوع ثانيًا.
هل تنجو الجلسات من إعادة تشغيل الخادم؟
لا: تبقى الجلسات في الذاكرة، وتقوم عملية إعادة التشغيل بمسحها أثناء بقاء الأقراص على قيد الحياة؛ البرامج النصية والسجلات القابلة لإعادة التشغيل على القرص هي طبقة المتانة، وtmux هي طبقة المقاطعة، والخلط بين الاثنين هو الانقطاع الكلاسيكي.
كيف تساعدك Kinetikatech في أوامر linux ومهارات shell
باختصار: الأوامر وعادات البرمجة النصية التي تحدد ما إذا كان المسؤول يشغل الخادم أم يحاربه: البحث عن النصوص والعمليات وتحويلها ونقلها والإشراف عليها باستخدام الأدوات الموجودة في كل تثبيت أساسي. سلّمها إلى خدمة أمن خوادم لينكس و إدارة الخوادم لدينا وهي مغطاة: تقييم سليم وتنفيذ نظيف ومراقبة على مدار الساعة.