Xrandr: أداة قوية لتهيئة شاشتك

في هذه الفرصة ، نشرح كيفية الاستخدام xrandr، أداة طرفية تستخدم ل صحيح la قرار من شاشتك ، معدلات الانتعاش، إلخ. بل إنه يعمل على معالجة أكثر من شاشة.

ميغيل سواريز باتينيو هو آخر من الفائزين من مسابقتنا الأسبوعية: «شارك بما تعرفه عن Linux«. مبروك ميغيل!

المستخدم العادي ، وخاصة Windows أو Apple ، لا يفهم جيدًا الأشخاص المتحمسين لنظام Linux والذين يقضون الكثير من الوقت في وحدة تحكم الأوامر في كتابة "أشياء غريبة".

ما سأخبرك به اليوم هو أحد تلك الأيام التي تشعر فيها بالفخر بشكل خاص بنظام Linux. هذه هي القصة:

عزيزي جهاز HP Pavilion mx70 العلامة التجارية CRT ، فهو يقدم لي مجموعة واسعة من الدقة ، لكن لا يتعرف عليه Linux Mint LXDE ويظهر لي دقة جيدة تبلغ 1024 × 768 ولكن مع 60 هرتز فقط من المرطبات ، وهو ليس كذلك جيد جدا للعيون. من الناحية النظرية ، يمكن أن تصل الشاشة إلى 85 هرتز بهذه الدقة.

وماذا أفعل الآن؟ حسنًا ، كالمعتاد ، انتقل إلى سطر الأوامر والعب!

باستخدام xrandr

لتعديل الدقة يوجد الأمر "xrandr" (تغيير حجم X واستدارة). باستخدام هذا الأمر ، يمكنك تكوين دقة الشاشة ، ولكن يمكنك أيضًا إضافة دقة جديدة طالما أن الشاشة تدعمها.

علّق على وجود عدة واجهات رسومية: grandr و arandr.

لمشاهدة الدقة التي اكتشفها النظام ، ما عليك سوى استدعاء هذا الأمر والاطلاع على النتيجة ، في حالتي:

Informiguel ~ $ xrandr شاشة 0: الحد الأدنى 320 × 200 ، الحالي 1024 × 768 ، الحد الأقصى 4096 × 4096 VGA-0 متصل 1024x768 + 0 + 0 (المحور الأيمن الأيسر المقلوب والمحور) 0 مم × 0 مم 1024 × 768 60.0 800 × 600 60.3 56.2 848 × 480 60.0 640x480 59.9 S-video غير متصل (المحور السيني الأيمن المقلوب الأيسر العادي المحور y)

كما ترى ، للحصول على دقة 1024 × 768 ، فإنها تقدم 60.0 هرتز فقط.

حسنًا ، سأضيف الدقة التي أكون الأفضل فيها والتي توفرها شاشتي: 1024 × 768 عند 85 هرتز. من الواضح أن كل شاشة لها خصائصها الخاصة التي يجب الرجوع إليها.

المشكلة هي أنه لإنشاء دقة جديدة ، فأنت بحاجة إلى بيانات "غريبة جدًا" مثل التردد الرأسي والأفقي والحد الأقصى والحد الأدنى والإجمالي ، ... ولكن لدى Linux أيضًا الحل باستخدام الأمر "cvt" ، وهو أداة مساعدة لحساب أوضاع VESA ضرورية لتحقيق الدقة. حسنًا ، إذا أردت 1024 × 768 بسرعة 85 هرتز ، أكتب:

Informiguel ~ $ cvt 1024 768 # 85x1024 768 هرتز (CVT 84.89M0.79) hsync: 3 كيلو هرتز ؛ pclk: 68.68 ميجاهرتز طراز "94.50x1024_768" 85.00 94.50 1024 1096 1200 -hsync + VSync

يمكنك أيضًا تجربة "gtf" الذي يفعل نفس الشيء تقريبًا:

Informiguel ~ $ gtf 1024 768 # 85x1024 @ 768 هرتز (GTF) hsync: 85.00 كيلو هرتز ؛ pclk: 68.60 ميجاهرتز موديل "94.39x1024_768" 85.00 94.39 1024 1088 1200-HSync + Vsync

وبهذه الطريقة يظهر "Modeline" الذي يجب أن أستخدمه مع "xrandr". لا تخف إذا كانت هرتز لا تتطابق تمامًا (94.50 بدلاً من 85).

خطوة لإضافة هذا القرار عن طريق نسخ "النموذج" الذي تم الحصول عليه: (التفاصيل ، عندما تضع خيارًا باسمه الطويل مثل "newmode" ، فإنه يسبقه واصلتان ، ربما لا يتم ملاحظتهما كثيرًا ، بينما في أوقات أخرى فقط واصلة واحدة كما في حالة "hsync")

Informiguel ~ $ xrandr - الوضع الجديد "1024x768_85.00" 94.50 1024 1096 1200 1376 -hsync + vsync

إذا تحققنا من النتيجة:

informiguel ~ $ xrandr الشاشة 0: الحد الأدنى 320 × 200 ، الحالي 1024 × 768 ، الحد الأقصى 4096 × 4096 VGA-0 متصل 1024x768 + 0 + 0 (المحور الأيمن الأيسر المقلوب x المحور y) 0 مم × 0 مم 1024 × 768 60.0 * 800 × 600 60.3 56.2 848 × 480 60.0 640x480 59.9 S-video غير متصل (عادي يسار مقلوب يمين x محور y) 1024x768_85.00 (0x137) 94.5 ميجا هرتز h: عرض 1024 بداية 1096 نهاية 1200 إجمالي 1376 انحراف 0 ساعة 68.7 كيلو هرتز v: ارتفاع 768 بداية 771 نهاية 775 إجمالي 809 الساعة 84.9 هرتز

يمكنك مشاهدة "Modeline" الجديدة التي تم إنشاؤها. أنا أحب الطريقة التي يبدو بها "Modeline"! إذا كان لدي قطة في يوم من الأيام فسوف أسميها كذلك.

حسنًا ، نواصل ، الآن يجب أن أضيف هذا الوضع الجديد إلى قائمة الأوضاع المتاحة:

Informiguel ~ $ xrandr –addmode VGA-0 1024x768_85.00

الشيء "VGA-0" ، إذا نظرتم إلى نتائج "xrandr" ، فهو ما يُطلق عليه بطاقة الرسومات الخاصة بي. نرى النتيجة ، الكمال!

Informiguel ~ $ xrandr Screen 0: الحد الأدنى 320 × 200 ، الحالي 1024 × 768 ، الحد الأقصى 4096 × 4096 VGA-0 متصل 1024x768 + 0 + 0 (يسار عادي مقلوب يمين 1024x768 60.0 * 800x600 60.3 56.2 848x480 60.0 640x480 59.9 1024x768_85.00 84.9 S -قطع الفيديو (يسار عادي مقلوب يمين x محور y)

الآن يبقى تطبيق هذا القرار على الشاشة:

Informiguel ~ $ xrandr - إخراج VGA-0 - وضع 1024x768_85.00

وميض واحد والشاشة تبدو أكثر وسامة من أي وقت مضى.

ماذا لو كنت أرغب في وضع دقة 800 × 600 بمعدل تحديث 60 هرتز (أرى أن هناك مرطبتين متاحتين في هذا الوضع ، 2 و 60.3)؟ يمكن القيام بذلك بهذه الطريقة:

Informiguel ~ $ xrandr-s 800x600 -r 60

لاحظ أنه تم استخدام الصودا 60 بدلاً من 60.3 ، لأن الأخير لم يعترف بذلك. الآن دعنا نعود إلى القرار الجميل:

المعلومات ~ $ xrandr-s 1024x768_85.00

إذا تناولت المرطبات بشكل افتراضي عند 60 هرتز ، فسنكتب:

Informiguel ~ $ xrandr-s 1024x768_85.00 -r 85

ماذا لو كنت مخطئا وأردت إزالة كل شيء؟ حسنًا ، لا شيء ، دعنا نذهب إلى هناك. لحذف هذا الدقة من قائمة الأوضاع المتاحة:

Informiguel ~ $ xrandr --delmode VGA-0 1024x768_85.00

إذا عرضت النتيجة:

informiguel ~ $ xrandr الشاشة 0: الحد الأدنى 320 × 200 ، الحالي 1024 × 768 ، الحد الأقصى 4096 × 4096 VGA-0 متصل 1024x768 + 0 + 0 (المحور الأيمن الأيسر المقلوب x المحور y) 0 مم × 0 مم 1024 × 768 60.0 * 800 × 600 60.3 56.2 848 × 480 60.0 640x480 59.9 S-video غير متصل (عادي يسار مقلوب يمين x محور y) 1024x768_85.00 (0x136) 94.5 ميجا هرتز h: عرض 1024 بداية 1096 نهاية 1200 إجمالي 1376 انحراف 0 ساعة 68.7 كيلو هرتز v: ارتفاع 768 بداية 771 نهاية 775 إجمالي 809 الساعة 84.9 هرتز

تمت إزالته بالفعل من القائمة ، لكن البيانات تظهر الآن بالطريقة التي تم إنشاؤها بها (الوضع الجديد) سابقًا. لحذف هذا أيضًا:

Informiguel ~ $ xrandr - رمز الخطأ 1024x768_85.00

نرى النتيجة:

informiguel ~ $ xrandr الشاشة 0: الحد الأدنى 320 × 200 ، الحالي 1024 × 768 ، الحد الأقصى 4096 × 4096 VGA-0 متصل 1024x768 + 0 + 0 (المحور الأيمن الأيسر المقلوب x المحور y) 0 مم × 0 مم 1024 × 768 60.0 * 800 × 600 60.3 56.2 848 × 480 60.0 640x480 59.9 S-video غير متصل (المحور الأيمن المقلوب الأيسر العادي x المحور y)

كل شيء كان كما في بداية المقال ...

وأخيرًا ، أعلم أنك جوكر ، لذا جرب هذا:
اكتب هذا أولاً ، والذي لا يحدث أي تغييرات في الوقت الحالي:

Informiguel ~ $ xrandr - إخراج VGA-0 - يدور بشكل طبيعي

والآن جرب ما يلي مع الأخذ في الاعتبار أنه لإزالة النكتة عليك تكرار التعليمات السابقة (فقط حددها باستخدام مفاتيح المؤشر):

Informiguel ~ $ xrandr - إخراج VGA-0 - تدوير لليسار

حتى الآن كل شيء لطيف للغاية ولكن هناك مشكلة ، عند إعادة تشغيل الكمبيوتر ، يتم فقد التكوينات. لا أعتقد أنه من الجيد تعديل تحديث الشاشة في كل مرة ندخل فيها الكمبيوتر ، يجب أن تكون هناك طريقة لتركه ثابتًا. أذهب خلفها.

في Linux ، يوجد ملف تكوين شيئًا فشيئًا وبما أنه تم التعرف على الأجهزة بشكل أفضل من خلال التوزيعات ، فقد تم نسيانها. اسم مساره الكامل هو "/etc/X11/xorg.conf". ملف التكوين لجميع المعلمات التي تجعل البيئة الرسومية تعمل.

في LXDE (بيئة سطح المكتب X11 خفيفة الوزن) الملف غير موجود ، لذلك يجب إنشاؤه ، وهذا ليس بالأمر السهل. أحد الحلول الممكنة هو القيام بما يلي:

نترك البيئة الرسومية ، نذهب إلى المحطة بالضغط على CTRL + ALT + F1 ، تذكر أن البيئة الرسومية هي CTRL + ALT + F7). نتحقق من صحة البيئة الرسومية و "نطفئها":

informiguel ~ sudo /etc/init.d/lxdm توقف $

بعد ذلك نقوم بتنفيذ تهيئة X:

informiguel ~ $ sudo X- تكوين

يتم إنشاء ملف باسم "xorg.conf.new" وهو الملف الذي يجب علينا نقله إلى موقعك وتعديله:

Informiguel ~ $ mv xorg.conf.new /etc/X11/xorg.conf

إذا كان كل شيء صحيحًا ونريد إعادة تشغيل البيئة الرسومية:

informiguel ~ sudo /etc/init.d/lxdm $ البدء

هناك حل آخر قد يكون أفضل ، تبدأ بتوزيع Linux على "CD Live" وانسخ الملف الذي يكون مساره الكامل "/etc/X11/xorg.conf" والصقه في التوزيعة الخاصة بك. إذا اكتشف هذا التوزيع جهاز العرض بشكل صحيح ، فستنتهي المشاكل ، وإلا عليك إعادة لمس الملف ببيانات تحديث الشاشة والدقة التي تريدها. على سبيل المثال ، اضطررت إلى إضافة ما يلي حتى تكون الصودا كافية:

قسم "مراقب" المعرف "شاشة عامة" خيار "DPMS" HorizSync 30-70 VertRefresh 50-120 Modeline "1024x768_85.00" 94.39 1024 1088 1200 1376 -HSync + Vsync الخيار "PreferredMode" "768x769_772" EndSection قسم "الشاشة" المعرف "الشاشة الافتراضية" الجهاز "ATI Technologies، Inc. Radeon RV807 If [Radeon 1024 Pro]" Monitor "Generic monitor" DefaultDepth 768 Option "AddARGBGLXVisuals" الخيار "True" Metamode "" 85.00x250_9000 +24+ 1024 "الخيار" UseEdid "" False "SubSection" Display "Depth 768 Modes" 85.00x0 "" 0x1 "" 1024x768 "EndSubSec ................... إلخ

مهم جدًا ، ابحث عن الخصائص التقنية للشاشة لمعرفة التزامن الرأسي والأفقي. كما ترى في الصورة ، "Modeline" هو الذي تم حسابه باستخدام الأمر "cvt".

بمجرد إجراء التغييرات اللازمة ، يصبح كل شيء جاهزًا للتشغيل تلقائيًا في المرة التالية التي تبدأ فيها تشغيل الكمبيوتر. تم حل المشكلة.

الآن ، كيف تشرح لأحد أنظمة Windows أو Mac ، المشاعر التي تشعر بأنها "تتحكم" في الجهاز (وليس العكس)؟

يبدو لي أننا من الأنواع المهددة بالانقراض… 

أولئك الذين يريدون الاستمرار في تعميق معرفتهم بـ xrandr ، لا تتوقف عن قراءة هذه العناصر القديمة نشر في هذه المدونة.

شكرا لك ميغيل سواريز باتينيو!
هل تريد المشاركة في مسابقتنا الشهرية و تقديم مساهمة للمجتمع?
عليك فقط أن ترسل لنا ملف بريد بما في ذلك الحيلة أو البرنامج التعليمي الصغير الخاص بك.