بسم الله الرحمن الرحيم
السلام عليكم ورحمة الله وبركاته
تشغيل توزيعة raspbian وهمي وتعديل عليها وحرقها على ذاكرة .
قبل أن أبدأ لماذا كل هذا العناء ؟
بكل بساطة حب إطلاع وقد يكون الامر مسلي لمن لديه فضول ويريد تجربة التوزيعة وليس لديه جهاز raspberry pi وقد يكون أيضا مفيد لمن ليس لديه شاشة بمنفذ HDMI .
1-تعريف بسيط عن توزيعة raspbian .
توزيعة raspbian هي توزيعة خاصة بأجهزة raspberry pi بمعالج من عائلة ARM التوزيعة من إسمها واضح تم بنائها على توزيعة Debian.
2-الخطوات التي سنقوم بها وبعض المعلومات .
أولا الشرح تم على توزيعة فيدورا غالبا الحزم التي سأقوم بتثبيتها في فيدورا غالبا ستجدوها في كل التوزيعات لكن فقط قد يختلف إسم الحزمة.
الأن الخطوات التي سنقوم بها :
1-تنزيل بعض الأشياء التي سنحتاجها .
2-تنزيل التوزيعة من الموقع الرسمي .
3-التحقق من سلامة الملف بعض التنزيل وفك الضغط عنه وتنزيل شيء سنحتاجه من الإنترنت.
4-عمل mount لملف ال img الخاص بالتوزيعة والتعديل عليه قليلا لنستطيع تشغيله على وهمي (بشكل بسيط ملف ال img للتوزيعة هو عبارة عن شيء مثل نسخة عن الهارديسك يعني في حالتنا هذه الملف عبارة عن قسمين قسم boot و قسم root لكن إذا صح التعبير تم دمجهم بطريقة ما بملف واحد ) .
5-إستعراض قسم boot ويمكن لمن أراد التعديل على ملفاته حيث ان raspberry pi لا يحتوي Bios أظن ملفات ال text في قسم boot تنوب عنه .
6-التعديل على ملفين في قسم root لينجح الإقلاع من خلال الوهمي.
7-عمل umount للأقسام .
8-الإقلاع وهمي من خلال ملف ال img الخاص بالتوزيعة .
9-تفعيل sshd أو أي شيء نريده .
10-إغلاق النظام والوهمي ثم وصل أقسام boot و root مرة أخرى للتراجع عن التعديل السابق للملفات وإذا أردنا مرة أخرى إذا إحتجنا تعديل شيء على القسم boot .
11-حرق ملف ال img على الذاكرة والإقلاع من raspberry pi .
12-الإتصال ب raspberry pi من خلال ssh .
13-توسعة القسم root لكامل حجم الفلاشة .
14-عمل update للنظام .
15-أخيرا بعض الصور .
3-تثبيت بعض الاشياء من مدير الحزم .
sudo dnf install transmission wget qemu qemu-system-arm unzip arp-scan
4-تنزيل التوزيعة والتحقق من سلامتها ثم فك الضغظ عنها.
نلاحظ هناك إصدارين أنا إخترت المشار إليه في الصورة و الأفضل التنزيل من خلال التورنت على العموم إذا كان التنزيل مباشرتا الأفضل التحقق من سلامة الملف بعد التنزيل نحتاج أن نقارن الرقم الموجود في رقم ثلاثة في الصورة.
نحفط هذا الرقم عندنا أو نحفظ الصفحة للرجوع إليها بعد التنزيل .
بعد إنتهاء التنزيل ندخل على مجلد Downloads ثم نبحث عن الملف الذي قمنا بتنزيله ثم نحسب رقم الهاش به كما في الصورة في الأعلى .
cd ~/Downloads
ls |grep -i raspbian
sha1sum 2016-09-23-raspbian-jessie.zip
نقارن الرقمين نلاحظ التطابق إذا لم يتطابق الرقم نعيد التنزل من جديد والأفضل كما ذكرت إستخدام التورنت .
الأن بعدما تحققنا من سلامة الملف ننشأ مجلد في مجلد المنزل الخاص بنا ونسمية مثلا raspbian_img ثم ندخل على مجلد Downloads ونقوم بفك الضغط عن ملف إلى مجلد raspbian_img طبعا ممن إختصار الأمر من الواجهة الرسومية.
mkdir ~/raspbian_img
cd ~/Downloads
ls |grep -i raspbian
unzip 2016-09-23-raspbian-jessie.zip -d ~/raspbian_img
الدخول على المجلد الموجود فيه ملف ال img وتنزيل شيء سحتاجه من الإنترنت.
wget https://github.com/dhruvvyas90/qemu-rpi-kernel/raw/master/kernel-qemu-4.4.13-jessie
وهذا رابط المستوع الذي يحتوي هذه الملفات لربما تغير الإصدار في المستقبل أو لم يعد هذا الإصدار موجود ,الملفات عبارة أن أنوية تعمل على أجهزة raspberry pi .
https://github.com/dhruvvyas90/qemu-rpi-kernel
5-عمل وصل Mount للأقسام التي يتضمنها ملف img والتعديل على ملفين لينجح التشغيل على وهمي.
نقوم بإنشاء هذين المجلدين.
sudo mkdir /mnt/raspbian_boot
sudo mkdir /mnt/raspbian_root
الأن نعرض معلومات عن ملف ال img من خلال fdisk -l نلاحظ أنه يحتوي قسمين القسم boot بنظلم ملفات FAT32 ونقوم بعمل mount له على مجلد raspbian_boot والقسم الثاني هو القسم root نعمل له وصل على مجلد raspbian_root طريقة الوصل كما في الصورة ونلاحظ كيف نحصل على الرقم أمام offset .
cd ~/raspbian_img
sudo fdisk -l 2016-09-23-raspbian-jessie.img
sudo mount -o loop,offset=4194304 2016-09-23-raspbian-jessie.img /mnt/raspbian_boot
sudo mount -o loop,offset=70254592 2016-09-23-raspbian-jessie.img /mnt/raspbian_root
نستعرض قسم ال boot نلاحظ ملفات ال txt النصية وفيها إعدادات ممكن من خلال أي محرر نصوص التعديل على الإعدادات داخلهم على حسب حاجتنا .
ls /mnt/raspbian_boot
مثال عن الإعدادات الموجودة .
cat /mnt/raspbian_boot/config.txt
القسم الثاني هو القسم root .
ls /mnt/raspbian_root
نحتاج التعديل على ملف fstab داخل هذا القسم, أنا إستخدمت محرر النصوص gedit ليست مشكل نستخدم أي محرر متوفر.
sudo gedit /mnt/raspbian_root/etc/fstab
هذا شكل الملف قبل التعديل .
هذا الشكل بعض التعديل .
الأن التعديل على ملف ld.so.preload .
sudo gedit /mnt/raspbian_root/etc/ld.so.preload
sudo gedit /mnt/raspbian_root/etc/ld.so.preload
هذا شكل الملف قبل التعديل .
هذا الشكل بعض التعديل نضيف فقط علامة الشبكة # إلى أول السطر.
الأن نفصل الاقسام بشكل سليم .
sudo umount -R /mnt/raspbian_boot
sudo umount -R /mnt/raspbian_root
6-الإقلاع الوهمي من خلال ملف ال img وتفعيل sshd.
لتشغيل النظام الوهمي نكتفي بنسخ لصق copy paste .
cd ~/raspbian_img
sudo qemu-system-arm -kernel kernel-qemu-4.4.13-jessie -cpu arm1176 -m 256 -M versatilepb -serial stdio -append "root=/dev/sda2 panic=1 rootfstype=ext4 rw" -drive format=raw,file=2016-09-23-raspbian-jessie.img
ننتظر قليلا قد يأخذ بعض الوقت .
نتأكد ان هذا الخيار مفعل .
نفعل SSH وأي خدمة نريدها أو أي تعديل بشكل عام.
نعيد إقلاع الجهاز.
بعد إعادت التشغيل نتأكد أن التعديلات التي قمنا بها مازالت موجودة .
نغلق النافذة .
الموضوع أصبح يحتوي الكثير من الصور يتبع قريبا إن شاء الله في موضوع ثاني يحتوي صور عن التراجع عن تعديل ملف fstab و ld.so.preload و حرق ملف ال img على الذاكرة ثم الإتصال بجهاز raspberry pi عن بعد عن طريق الشبكة من خلال ssh ثم توسعة القسم root إلى كامل حجم الذاكرة ثم تحديث النظام وعرض بعض الصور .