يناير 08، 2011

تعطيل التسريع الثلاثي الأبعاد على خادم العرض X

مؤخرا واجهت صعوبة في تشغيل أبونتو 10.10 على أحد الحواسب المحمولة ببطاقة العرض ATI X1200. الصعوبة تمثلت في عدم إكمال البيئة المكتبية جينوم من عرض كل أجزائها (الشريط العلوي، السفلي، القوائم،...) و الإكتفاء بعرض صور الخلفية فقط.

أول ما تبادر إلى دهني هي مشكلة في دعم KMS على التعريف الحر radeon. محاولة تشغيل النواة بمعيار nomodeset و مرة أخرى بمعيار radeon.modeset=0 لتعطيل تلك الخصية بافتراضي لوجود مشكلة ما في إصداره المتوفر على أبونتو 10.10 لم تجدي نفعا. إستخدام التعريف vesa دو الدعم القياسي لم ينفع أيضا.

بعد محاولتين أو ثلاثة اتضح أن تلك البطاقة ATI X1200 من بين البطاق التي توقف دعمها من طرف الشركة المصنعة (ATI) لذلك حتى التعريف المغلق لم يعد ينفع معها و لا مع كل السلسلة التي هي أصغر من X2000.

الحل الأخر الذي كان أمامي هو اقتراح إصدار سابق لأبونتو بدعم طويل مثل 8.04 أو إقتراح استخدام توزيعة PCLinuxOS بحكم أن مطوريها رغم توفيرهم لتوزيعة دائمة التحديث إلا أنهم يختارون بذكاء إصدارات النواة و خادم العرض X.org الأقل مشاكل و لهذا هم حاليا متوقفون في إصدار النواة لينوكس 2.6.33 بدلا من 2.6.37 و اصدار خادم العرض 1.6.5 بدلا من 1.9.3 بينما أغلب برامج على مستودعاتهم في إصدارها الأخير.

مالك الحاسوب لم يرضى بكلا الحلين و أراد أن أستمر في البحث عن حل لهذه المشكلة التي لم أعرف تحديدا مسببها حتى جربت تشغيل جينوم بالوضع الآمن : Ubuntu Desktop Edition (Safe Mode). الصورة أدناه.


بعدها أكملت جينوم عملها و ظهر كل شيء باستثناء بعض المكنوات التي يتم إلغاء عملها تلقائيا في الوضع الآمن.
لو لم يكن ذلك الخيار متاحا من على القائمة لإحتجنا إلى تشغيل جينوم من سطر الأوامر بالطريقة التالية مثلا:
sudo service gdm stop
echo "exec gnome-session --failsafe" >> ~/.xinitrc
startx

الآن، اتضح سبب المشكلة و هو التفعيل التلقائي للتسريع الثلاثي الأبعاد (compiz) لواجهة جينوم، و كل ما تبقى هو تعطيله كليا دون الحاجة إلى الدخول على أبونتو بالوضع الآن كل مرة.

الطريقة التي اتبعتها، رغم أني متأكد من وجود حلول أخرى أسهل، هي الدخول على الطرفية قبل تسجيل الدخول على جينوم بالضغط على Ctrl+Alt+F1 ثم تنفيذ ما يلي (مع مرعاة الفرق بين الأحرف الصغيرة و الكبيرة) :

sudo /etc/init.d/gdm stop
sudo X -configure
sudo nano -w xorg.conf.new

الأمر الأول يوقف عمل مدير تسجيل الدخول.
السطر الثاني ينشئ ملف إعدادات خادم العرض X
السطر الثالث يفتح برنامج لتحرير الملفات النصية من سطر الأوامر.

ثم أضفت الأسطر التالية إلى نهاية ملف الإعدادات ذاك:
Section "Extensions"
        Option  "Composite" "Disable"
EndSection

Section "ServerFlags"
        Option  "AIGLX" "off"
EndSection

نحفظ التغييرات بالضغط على Ctrl+O و الخروج من المحرر النصي بـ Ctrl+X
بعدها ننقل ملف الإعدادات ذاك إلى مكانه الصحيح:
sudo mv  xorg.conf.new  /etc/X11/xorg.conf

ثم نعيد تشغيل النظام بـ sudo reboot و بعدها سيعمل أبونتو 10.10 دون مشاكل لكن بدون تسريع ثلاثي الأبعاد للواجهة.

سنة 2010 حملت معها تغييرات مهمة على مختلف المكونات المتحكمة في العرض و هو ما عرض الكثيرين لمصادفة مجموعة من العلل البرمجية الجاري تصحيحها في الأشهر الأخيرة.

معلومة إضافية:
نفس الشريط السفلي الذي اخترت منه الوضع الأمن، سنجد عليه مستقبلا الخيار "Ubuntu Classic Desktop" في الإصدار المقبل 11.04 لمن لم تعجبه واجهة Unity أو جهازه غير قادر على تشغيلها بتسريع ثلاثي الأبعاد.

تحديث:
إضافة الأخ صبحي
أعتقد أنه يكفي أن تقوم باستبدال Metacity مكان Compiz قبل تسجيل الدخول.. فقط اضغط Ctrl + Alt + F1 واكتب السطر التالي:

gconftool-2 --set /desktop/gnome/session/required_components/windowmanager --type string metacity

ليست هناك تعليقات:

إرسال تعليق