تعريف مودم الوايرلس على لينكس قد يكون مزعج بعض الشيء خصوصاً على توزيعات مثل فيدورا, سنتوس, سلاك وير (تقريباً اغلب التوزيعات الي تحاول جاهدة التمسك بفكرة بقاء النظام بالكامل حر) بعكس ابونتو!. حزمة Compat-wireless مفيدة جداً بهذا الخصوص, تحتوي على تعاريف تستطيع تشغيل اشهر المودمات المتوفرة بالسوق. خصوصاً USB Modem فهو اكثر ما نواجه مشاكل معه بعكس الكروت الداخلية. قبل فتح الترمنال تأكد ان الكرت الخاص بك مدعوم, راجع القوائم التالية وان وجدت الكرت الخاص بك يمكنك استخدام الحزمة.
- كروت PCI
- أجهزة USB
- أجهزة PCMCIA
متطلبات يجب تجهيزها اولاً
- صلاحيات root
- تركيب Kernel Headers و devel
- تركيب gcc
- تركيب make
- تركيب git
- تركيب crda
- تركيب iw
- تركيب rfkill
كل هذه المتطلبات سوف تجدها في مستودع الحزم. الخطوة التالية وهي ايضاً قبل البدء بتركيب اي درايفر. وذات اهمية كبيرة. معرفة معلومات الكرت, ومعرف المنشأ والمنتج Vendor and Product ID مسمى المُصنع واسم الموديل التجاري كل هذا تجدة على الكرت نفسه في الشريط اللاصق. اما ال ID تجدها من داخل نظام التشغيل نفسة مستخدمها الاوامر التالية
- كروت PCI استخدم الامر lspci
- كورت USB استخدم الامر lsusb
- كروت PCMCIA استخدم الامر lspcmcia
كمثال لدي كرت usb من شركة netgear استخدمت الامر lsusb وظهرت لي المعلومات التالية
لدي USB Device من شركة netgear الاسم التجاري للكرت WNA1100. نلاحظ ان النظام تعرف عليه واظهر معرف المنصع وهو 0846 وهذا يشير لنت جير واظهر ايضاً رقم الموديل وهو 9030 وهذا يشير ل WNA1100 “صحيح انه تعرف عليه ولكن هذا لايعني انه جاهز للأستعمال”. بالمناسبة WNA1100 يوجد له اصدارين الاصدار الاول v1 يستخدم Marvell chipset اما الاصدار الثاني v2 يستخدم Atheros chipset وهذه المعلومات مهمة لتحديد ال Driver/Firmware المناسب للكرت.
تحديد الدرايفر المناسب
قمنا بمعرفة كل من
- اسم المصنع واسم الموديل التجاري (من خلال الشريط الاصق على الكرت نفسة)
- الID الخاص بالمصنع والكرت (عبر lsusb, lspci او lspcmcia حسب نوع الجهاز)
- تحديد الدرايفر الخاص بالكرت لديك بعد معرفة المعلومات الهامة عنه (من خلال قائمة الكروت الموضحة في بداية التدوينة هذه)
تركيب الدرايفر عبر Compat-wireless
تأكد انك root قبل مواصلة بقية الخطوات
يمكنك تحميل الحزمة عبر الرابط compat-wireless download قم بتحميل اخر نسخة مستعين بأحدث تاريخ كمثال اليوم 18/04/2011 يمكنك اذن تحميل نسخة نفس التاريخ او اليوم الاقدم منه 17/04. احدث نسخة قم بتحميلها.
قد يخطر في بالك سؤال وهو; لماذا لكل يوم يتم انزال نسخة ؟ حقيقة هو لايتم اصدار نسخة كل يوم. ولكن تحصل كثيراً. التعاريف هذه اغلبها غير مستقر ومازال تحت التطوير والتجربة. يومياً لايعني بشكل صارم كل يوم. ولكن القصد انها الكود يحدث بشكل مستمر وبشكل سريع.
يمكنك تحميل النسخة بمسمها العادي عبر الرابط compat-wireless-2.6.tar.bz2 هذه النسخة ايضاً يتم تحديثها يومياً.
قم بفك ضغط الارشيف بعد تحميلة مستخدماً
tar jxf FileName.tar.bz2
قم بالدخول على المجلد
cd compat*
الان نقوم بعمل Compile للدرايفر الذي سوف نستخدمة (من المفترض انك قمت بتحديد الدرايفر الذي سوف تستخدمة عبر قائمة USB Devices الموضحة في الاعلا) نستخدم الاوامر التالية
اختيار الدرايفر (راقب الترمنال جيداً اثناء تنفيذ الثلاث اوامر التالية لمعرفة ان كان هنالك اي أخطاء. حتى لا تستخدم درايفر خربان!)
./scripts/driver-select DriverName
تنفيذ make
make
تنفيذ make install لتركيب الدرايفر (ان كان هنالك درايفرات سابقة لن يتم ازالتها او التعديل عليها)
make install
كما يمكنك ازالة الدرايفر الذي قمت بتركيبة مستخدما (لا تنفذ هذا الامر إلا في حالة رغبت بازالة الدرايفر)
make uninstall
الان قم بتركيب بعمل unload للدرايفرات المحملة بداخل الكرنل (هنا اقصد الدرايفرات القديمة المركبة مسبقاً, وهذا من اجل عدم حصول اي عملية تعارض) استخدم الامر التالي
make unload
علماً ان الامر السابق سوف يزيل درايفرات الوايرليس والبلوتوث من الكرنل. يمكنك استخدام الامر التالي لإزالة درايفرات الوايرليس القديمة فقط
make wlunload
إلى الان لم نقم بتحميل الدرايفر داخل الكرنل وتشغيلة
تحهيز ال Firware وتحميل الدرايفر داخل الكرنل
استخدم الامر التالي لمعرفة ال firmware المناسب للدرايفر الذي قمت بتركيبة
modinfo DRIVER_NAME
اكتب الامر متبوع باسم الدرايفر الذي قمت بتركيبة لتظهر لك النتجية.
انا الكرت الخاص بي يعمل مع الدرايفر ath9k_htc والداريفر طلب الفيرم وير htc_9271.fw و htc_7010.fw النتيجة كما في الصورة
اغلب التوزيعات تحتفظ بال firmware بداخل المجلد
/lib/firmware/
قد يكون الفيرم وير المطلوب اساساً موجود بالمجلد الخاص بهم ولن تحتاج لتركيبة من جديد. ولكن يفضل ذالك خصوصاً انها تحدث بين فترة واخرى. يمكنك تحميل ال firmware مستخدماً git
اولا قم بتغيير مسارك مثلاً لـ
/root/
قم بسحب ال firmwares
الرابط يعتمد حقيقة على نوع الدرايفر الذي قمت بتركيبة راجع صفحة Drivers list وادخل على الدرايفر الذي قمت بتركيبة لمعرفة رابط ال firmwares الخاص بالدرايفر
انا استخدم الدارايفر ath9k_htc قمت بتحميل حزمة ال firmwares مستخدماً الرابط هذا linux-firmware.git
ولسحبهم استخدمت
git clone git://git.kernel.org/pub/scm/linux/kernel/git/dwmw2/linux-firmware.git
هذا الاجراء يأخذ بعض الوقت اعتمادا على سرعة الاتصال لديك. بعد انتهاء التحميل ادخل على المجلد الخاص به واختار ال firmwares الي تحتاجها وقم بنقلها لمجلد (غالباً سوف يكون المسار كما هو في الاسفل)
/lib/firmware/
بعد التأكد من تركيب ال firmwares المناسبة. الان انت جاهز لتحميل الدرايفر بداخل الكرنل استخدم
modprobe DRIVER_NAME
انتهينا! .. ان شاء الله يكون ضوء الكارت بدء يشتغل لديك 😀 اذا لم يشتغل بعد قم بازالة الكرت وتركيبة من جديد. لم يشتغل بعد ؟ نفذ الامر التالي وراجع الاخطاء الظاهرة
demsg
ملاحظات
- مسألة تحديد ال firmwares المناسب مهمة جداً بدون تنفيذها بالشكل الصحيح لن يعمل معك الدرايفر.
- يؤسفني ان اخبرك بأنك محتاج لعمل هذا في كل مرة يتم تحديث الكرنل فيها!
- انصحك بالاحتفاظ بحزمة compat-wireless مع ال firmwares في جهازك لاستخدامها واطبع الصفحة هذه في جهازك للرجوع لهم بعد تحديث الكرنل خصوصاً ان كان الوايرليس هو وسيلتك الوحيدة للاتصال بالانترنت.
تحياتي
مصطفى البازي.
📮 المتابعة عبر البريد الالكتروني
عند الاشتراك سيصلك جديد منشوراتي ومقالاتي على ايميلك. لا يتم نشر اي اعلانات ابدًا، فقط المقالات التي انشرها هنا في مدونتي هذه.
التعليقات: 9 On تعريف مودم الوايرلس باستخدام Compat-wireless على لينكس
الله يعطيك العافيه
بصراحة بحثت في النت لم اجد حل نهائياً
لكن سنجرب ماطرحت على سلاكس
الله يعافيك.
سوف يعمل مع اي توزيعة ان شاء الله. اهم شيء اختيار الدرايفر الصحيح وتركيب الفيرم وير المناسب وان يكون نسخة حديثة.
نسبة نجاح الطريقة عالية جداً لان ليس بكج مخصص لتوزيعة معينة موديل ويتم اضافته للكرنل مع الفيرموير الخاصة به.
الف شكر على الشرح الرائع
بصراحة تدوينة قوية جدا جدا ومحتاجة مرجة وقرائة اكتر من مرة وبحث عشان افهمه كويس تسلم جدا وياريت متحرمناش من تدويناتك القوية دى تسلم يا مصطفى
عفواً لكن بحثت كثيرا و جربت حلول لا تحصى لكرت الفا AWUS036H
UBUNTU 10.04
LINUX 2.6.32-31-GENERIC-PAE
@mint
الكرت الخاص بك يستخدم RTL8187. ولكن ماهو الشيبسيت؟ للتأكد من التعريف المناسب له
رائع
السلام عليكم اخي انا قمت بتنزيل لينكس اوبينتو 11.10 على فلاش ميموري وشغلته على جهازي بس مو عارف كيف ممكن اعرف الوايرلس ام انه لا يمكن تعريفه كوني لم انزله على الجهاز؟
واشكرك على الشرح الرائع
سلام…..
كيف اختار الدرايفر الصحيح ..ياليت تفيدني