كيف ممكن جلب معلومات عن توزيعات لينكس التي يعمل منها البرنامج؟


بسم الله الرحمن الرحيم
السلام عليكم ورحمة الله وبركاته


كيف ممكن جلب معلومات عن توزيعات لينكس التي يعمل منها البرنامج؟


يمكنك الحصول على معلومات عن التوزيعة التي يعمل منها البرنامج من خلال قراءة ملف os-release الموجود بهذا المسار  etc/os-release/  .


يمكن إستخراج المعلومات منه بأي طريقة احببت مثلا قراءته سطر سطر أو إستخدام شيء مثل مكتبة re .


هذه الصور في الأسفل من توزيعة فيدورا و أوبنتو و Centos كما نلاحظ أن عدد الأسطر قد يختلف لاكن الكل يحتوي أشياء أساسية مثل NAME و ID و VERSION_ID و VERSION و ID_LIKE.





1-ال NAME : إسم التوزيعة كامل مثلا CenOS Linux .

2-ال ID : إسم التوزيعة .

3-ال ID_LIKE : هو إسم التوزيعة الأم التي بنيت عليها التوزيعة التي نعمل منها مثلا كما هو معروف ubuntu مبنية على debian و centos مبنية على rhel إختصار ل Redhat Enterprise Linux التي بدورها أي rhel مبنية على فيدورا .

إذا كنت مستخدم لينكس غالبا تكون تعرف هذه المعلومات وتعرف أن هناك إذا صح التعبير توزيعات أساسية معدودة على الأصابع تبنى عليها باقي التوزيعات منها Fedora Debian Arch opensuse Gentoo slackware و غيرهم .

لهذا كمبرمج قد يهمك هذه المعلومات لتعرف كيف تتصرف لأنه قد تجد بعض الإختلافات بين هذه التوزيعات مثلا أماكن بعذ الاشياء وإختلاف مدير الحزم و ...إلخ .
(لاحظ أن Fedora لا تحتوي ID_LIKE لأنها Independent أي مستقلة وغير مبنية على أي توزيعة أخرى )

4-ال VERSION : إسم الإصدار الكامل مثلا Fedora workstation أي فيدورا بواجهة وبيئة Gnome مع العلم يوجد أيضا  Fedora KDE و Fedora XFCE و ...إلخ

5-الVERSION_ID : هو رقم الإصدار فقط .


أخر ملاحظة نلاحظ أن بعض التوزيعات تضع إسم التوزيعة أو المعلومات بين علامتي تنصيص يجب أن تنتبه لهذه الأمر في حال قررت مثلا عمل دالة Function تستخرج هذه المعلومات .




تعليقات

المشاركات الشائعة من هذه المدونة