ProHoster > بلوق > إدارة > قم بتمكين وضع الجلسة المحسّن لضيوف Arch Linux في Hyper-V
قم بتمكين وضع الجلسة المحسّن لضيوف Arch Linux في Hyper-V
يعد استخدام أجهزة Linux الافتراضية في Hyper-V خارج الصندوق أقل راحة إلى حد ما من أجهزة Windows الضيفة. والسبب في ذلك هو أن Hyper-V لم يكن مخصصًا للاستخدام المكتبي في الأصل ؛ لا يمكنك المضي قدمًا وتثبيت حزمة إضافات الضيف والحصول على تسريع رسومات عملي ، والحافظة ، والأدلة المشتركة وغيرها من مباهج الحياة ، كما يحدث في VirtualBox.
يوفر Hyper-V نفسه خدمات تكامل متعددة - لذلك ، يمكن للضيوف استخدام خدمة النسخ الاحتياطي (VSS) للمضيف ، ويمكن للضيوف إرسال إشارة إيقاف التشغيل ، ويمكن للضيوف مزامنة وقت النظام مع مضيف المحاكاة الافتراضية ، ويمكن تبادل الملفات مع الجهاز الظاهري من المضيف (Copy-VMFile في بوويرشيل). بالنسبة لبعض أنظمة تشغيل الضيف ، بما في ذلك ، بالطبع ، Windows ، في تطبيق Virtual Machine Connection (vmconnect.exe) يتوفر وضع الجلسة المحسن ، والذي يعمل عبر بروتوكول RDP ويسمح لك بإعادة توجيه أجهزة القرص والطابعات إلى الجهاز الظاهري ، وكذلك استخدام الحافظة المشتركة.
يعمل وضع الجلسة المحسن خارج الصندوق على Windows في Hyper-V مباشرة بعد التثبيت. مع الضيوف على Linux ، تحتاج إلى تثبيت خادم RDP يدعم vsock (مساحة عنوان شبكة افتراضية خاصة في Linux مصممة للتواصل مع برنامج Hypervisor). إذا كان بالنسبة إلى Ubuntu ، فإن تطبيق VMCreate الذي يأتي مع Hyper-V على إصدارات سطح المكتب من Windows يحتوي على قالب جهاز ظاهري مُجهز خاص يعمل فيه خادم RDP مع vsock XRDP مثبتة مسبقًا ، ثم مع التوزيعات الأخرى يصبح الأمر أقل وضوحًا - على سبيل المثال ، المؤلف هذا المشنور اتضح أنه لتمكين ESM في فيدورا. هنا نقوم أيضًا بتمكين وضع الجلسة المحسّن للجهاز الظاهري لـ Arch Linux.
تركيب خدمات التكامل
كل شيء هنا بسيط إلى حد ما ، نحتاج فقط إلى تثبيت الحزمة hyperv من مستودع المجتمع:
% for i in {vss,fcopy,kvp}; do sudo systemctl enable hv_${i}_daemon.service; done
تثبيت XRDP
مخزن أدوات لينكس- vm يوفر on GitHub نصوصًا تعمل على أتمتة عملية تثبيت وتكوين XRDP لنظامي Arch Linux و Ubuntu. قم بتثبيت Git ، إذا لم يكن مثبتًا بالفعل ، جنبًا إلى جنب مع المترجم والبرامج الأخرى للبنى اليدوية ، ثم استنساخ المستودع:
في وقت كتابة هذا التقرير ، كان أحدث إصدار من XRDP ، والذي تم تثبيته بواسطة البرنامج النصي makepkg.shالمقترح في المستودع هو 0.9.11 ، فيه كسر الاعرابvsock://-العناوين ، لذلك عليك تثبيت XRDP من Git وبرنامج تشغيل Xorg له من AUR يدويًا. التصحيح الخاص بـ XRDP المقدم في AUR قديم أيضًا ، لذا سيتعين عليك تحرير PKGBUILD والتصحيح يدويًا.
نقوم باستنساخ المستودعات باستخدام PKGBUILDs من AUR (عادةً ما يتم أتمتة هذا الإجراء ، جنبًا إلى جنب مع التجميع ، بواسطة برامج مثل ياي، لكن المؤلف قام بهذا الإجراء بأكمله على نظام نظيف):
في التصحيح arch-config.diff، الذي يعدل الوحدات والبرامج النصية لبدء تشغيل XRDP أسفل المسارات إلى الملفات المستخدمة في Arch Linux ، يحتوي ، من بين أشياء أخرى ، على تصحيح للبرنامج النصي instfiles/xrdp.shالتي في وقت كتابة هذا التقرير تمت إزالته من توزيع XRDP ، لذلك يجب تحرير التصحيح يدويًا:
قم بإنشاء الحزمة وتثبيتها باستخدام الأمر % makepkg --skipchecksums -si (مفتاح --skipchecksums مطلوب لتعطيل التحقق من المجموع الاختباري لملفات المصدر ، نظرًا لأننا قمنا بتحريرها يدويًا).
دعنا نذهب إلى الدليل xorgxrdp-devel-git، وبعد ذلك نقوم ببناء الحزمة بالأمر % makepkg -si.
دعنا نذهب إلى الدليل linux-vm-tools/arch وتشغيل البرنامج النصي install-config.sh، والذي يضبط إعدادات XRDP و PolicyKit و PAM:
% sudo ./install-config.sh
يقوم البرنامج النصي بتثبيت الإعداد القديم use_vsock، والذي تم تجاهله منذ الإصدار 0.9.11 ، فلنعدّل ملف التكوين /etc/xrdp/xrdp.ini يدويا:
; port=vsock://<cid>:<port>
-port=3389
+port=vsock://-1:3389
; 'port' above should be connected to with vsock instead of tcp
; use this only with number alone in port above
; prefer use vsock://<cid>:<port> above
-use_vsock=true
+;use_vsock=true
; regulate if the listening socket use socket option tcp_nodelay
أضف إلى ملف ~/.xinitrc بدء تشغيل مدير النوافذ المفضل / بيئة سطح المكتب ، والتي سيتم تنفيذها عند بدء تشغيل خادم X:
% echo "exec i3" > ~/.xinitrc
لنوقف تشغيل الآلة الافتراضية. قم بتمكين نقل vsock للجهاز الظاهري عن طريق تشغيل الأمر التالي في PowerShell كمسؤول:
بمجرد بدء خدمة XRDP بعد بدء تشغيل النظام ، سيحدد تطبيق vmconnect ذلك وسيصبح عنصر القائمة متاحًا. المزيد -> جلسة محسّنة. عند تحديد هذا العنصر ، سيُطلب منا ضبط دقة الشاشة ، وفي علامة التبويب الموارد المحلية في مربع الحوار الذي يفتح ، يمكنك تحديد الأجهزة المعاد توجيهها داخل جلسة RDP.
دعنا نتواصل. سنرى نافذة تسجيل الدخول إلى XRDP:
أدخل اسم المستخدم وكلمة المرور الخاصة بك.
استخدام
الربح من هذه التلاعبات ملحوظ: تعمل جلسة RDP بشكل أكثر استجابة من العمل مع شاشة افتراضية بدون جلسة محسّنة. تتوفر الأقراص المعاد توجيهها داخل الجهاز الظاهري عبر RDP في الدليل ${HOME}/shared-drives:
الحافظة تعمل بشكل جيد. لا يمكنك رمي الطابعات بالداخل ، فهذا ليس مدعومًا فحسب ، بل أيضًا يكسر توجيه القرص. الصوت أيضا لا يعمل ولكن المؤلف لم يكن بحاجة إليه. من أجل التقاط اختصارات لوحة المفاتيح مثل Alt + Tab ، تحتاج إلى توسيع vmconnect إلى وضع ملء الشاشة.
إذا كانت هناك رغبة لسبب ما في استخدام عميل RDP المدمج في Windows بدلاً من تطبيق vmconnect أو ، على سبيل المثال ، الاتصال بهذا الجهاز من جهاز آخر ، فستحتاج إلى تغيير الملف /etc/xrdp/xrdp.iniport في tcp://:3389. إذا كان الجهاز الظاهري متصلاً بالمحول الافتراضي ويتلقى إعدادات الشبكة عبر DHCP ، فيمكنك الاتصال به من المضيف على название_машины.mshome.net. يمكنك فقط تسجيل الدخول إلى TTY من تطبيق vmconnect بإيقاف تشغيل الوضع المحسن.