تشغيل توزيعة raspbian وهمي وتعديل عليها وحرقها على ذاكرة

بسم الله الرحمن الرحيم

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




تشغيل توزيعة 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 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 إلى كامل حجم الذاكرة ثم تحديث النظام وعرض بعض الصور .


الجزء الثاني http://www.arfedora.com/2016/10/raspbian_8.html







شارك الموضوع

مواضيع ذات صلة

التسميات

2016 (1) 23 (1) 24 (3) 25 (1) 26 (1) 27 (1) 28 (1) 29 (1) 30 (1) 31 (1) إتصال (1) إختراق (2) أدة (1) أدوات (1) إرسال (1) أرش (1) إسترجاع (1) إستعلام (1) أشياء (7) أشياء تفعلها (8) إصدارات (1) إصلاح (6) إصلاحrealtek (1) إضافات (1) إضافة (1) أعجوبة (1) أعجوية (1) إعداد (1) إقاف (2) أقسام (1) ألعاب (2) الفرق (1) الفلاشة (1) القسم هوم (1) الكتابة بالعربية (1) إلى جانب (1) أندرويد (1) إنشاء (1) إنشاء مستودع (1) أيات (1) أيزو (1) أيقومات (1) أيقونات (1) ايقونات (2) باتش (1) بارامتر (1) بايثون (16) برامج (56) برامج إسلامية (2) برنامج (19) برودباند (1) بعد (7) بعد التثبيت (8) بلوتوث (1) بناء (1) بناء توزيعة (1) بيئة عمل (1) تثبيت (29) تجهيز (2) تجهيو من دون (2) تحزيم (2) تحقق (1) تحويل (1) تخصيص (5) ترجمة (2) ترقية (1) تسجيل الشاشة (1) تشغيل (3) تعريف (13) تعطيل (2) تعلم (6) تفعلها (7) تفعيل (2) تقطع الأحرف (1) تقعيل (1) تنزيل (2) تورنت (1) توزيعة (1) توسعة (1) ثيم (5) ثيمات (1) جافا (1) جماليات (7) جنوم (1) حجم (1) حرق (2) حزمة (1) حل (2) دالة (1) دورة (1) روتر (1) ريدهات (2) سكربت (2) شرح (11) صورة متحركة (1) فايرفوكس (1) فتح منفذ (1) فصل (1) فلاشة (3) فيدورا (29) فيدورا بالعربي (1) قاموس (1) كالي (2) كتاب (2) كتب (2) كرت (1) كروت الشاشة (1) كلمة المرور (2) كورس (1) كورورا (1) لعبة (1) لينكس (2) لينكسو (1) ماهو (6) متغير البيئة (1) مجانا (1) محاكات (2) محاكي (1) محمل الإقلاع إصلاح (1) محمول (1) مستودعات (1) مشكلة (2) ملف نصي (1) من إصدار (1) نظام ملفات (1) نمط (2) نواة (1) هجين (4) واجهات (1) وايرلس (1) وهمي (2) ويندوز (2) access token (1) active (2) add (1) after (7) alias (1) andoid studio (1) android (2) android studio (1) Apache (2) appstream (1) arboot (1) arboot fix (1) arch (3) archiso (1) arfedoraccframework (3) arfedoracontrolcenter (3) arfedy (1) atari (1) atom (1) ayat (1) bicon (1) blivet (1) blivet-gui (1) bls (1) bluetooth (1) book (2) books (2) bootloader fix (1) boxes (3) broadband (1) broadcom (1) broadwayd (1) bugzilla (1) build (2) builddep (1) bumblebee (1) bumbleebe (2) burn (2) byzanz (1) c# (1) calamares (1) camera (1) cannot open display (1) cannot open display: :0 (1) ccna (1) cd (2) centos (1) change (2) chsh (1) cisco (1) clion (1) clone (1) code.org (1) command (2) command line (2) commands (2) comps (1) connect (1) contra (1) convert (1) copr (1) could not connect to the debugger (1) cpu (1) cpufreq (1) createrepo (1) csharp (1) css (1) curlew (1) custom (2) dbus (3) dconf (1) dd (1) Decryption (1) defragment (2) desktop (1) desktop entry (1) dictionary (1) Digital signature (1) disks (1) dnf (14) do (7) docker (1) dolphine (1) download (2) downloads manager (1) dply (1) DRI PRIME (1) driver (9) dukto (1) e2fsck (1) efi (4) el forkane (1) elforkane (1) elif (1) emergency (3) emergency mode (3) emulator (1) enable (2) Encryption (1) entries (1) error mounting /dev/sd (1) ext4 (1) extend (1) extensions (2) fakenes (1) fast startup (2) fceux (1) fedora (45) fedora 25 alpha (1) fedora cloude (1) fedora28 (1) fedoraوفيدورا (1) fedy (1) fgmac (2) fgmac-24 (1) file (1) find (1) firefox (2) fix (10) flash mem (1) flash memory (2) flashplayer (1) flatpak (4) forward (1) fpaste (1) free (1) freebsd (1) freevpn (1) function (1) game (3) games (2) gedit (1) genymotion (1) gettext (1) gif (1) gimp (1) gio (1) github (5) github.io (1) glibc-common (1) gmaclinux (2) gnome (16) gnome boxes (1) gnome disk (1) gnome shell (13) gnome terminal (1) gnome-disks (1) gnu (1) godot (1) goldendict (1) google web designer (1) gpg (2) gradio (1) group (2) grub (7) grub2 (1) grubenv (1) gstreamer (1) gtk (8) gtk+ (1) gvrecord (1) hack (2) hash (4) hdmi (3) hibernate (1) home (2) hosspot (1) html (1) http (1) hybrid (2) icon (2) icons (3) ide (1) if (1) install (32) installf (9) installing (7) intellij idea (1) internet downlaod manager (1) iso (2) java (3) jdk (2) jetbrains (1) jetbrains toolbox (1) kali (2) kde (3) kernel (1) kernel parameters (1) key (1) kickstarts (3) korora (1) krita (1) kvm (2) kvm switches (1) lamp (1) laps (1) learn (1) legacy (1) legacy bios (3) libreoffice (2) libvirt (1) life is trange (1) linux (8) lutris (1) lv (1) lvm (2) mac (4) macros (1) mageia (1) make distro (1) mariadb (1) MariaDB and PHP Lamp Server (1) markdown (2) mate terminal (1) mbr (1) md5sum (1) mirro (1) mkconfig (1) mo (1) mono (2) monodevelop (2) mount (1) mp4 (1) multi screen (1) mumble (1) murmur (1) natron (1) nautilus (2) nes (1) netbeans (1) netcut (1) nintendo (1) ntfs (2) nvidia (8) objdesktop (1) ojuba (2) oop (1) opensuse (1) openvpn (1) opera (1) optirun (2) oracle (1) os.path (1) package (2) page (1) pages (1) pantheon (1) parameter (1) parameters (1) password (2) patch (1) path (2) pdf (1) peek (1) photoshop (1) php (1) phpstorm (1) plasma (2) plugin (3) plugins (1) plymouth (1) po (1) polkit (1) port (1) portable (1) portmatp (1) PostinstallerF (1) pot (1) powerline (2) powerline-go (1) preset (1) preview (1) primary display (1) primeos (1) primus (1) primusrun (1) private key (1) programs (3) protonvpn (1) pubg (1) public key (1) put (1) pv (1) pycharm (2) pygobject (4) pygtk (5) python (56) pythonk (1) qdbus (1) qemu (3) qemu-kvm (1) query (1) radio (1) raspberry pi (4) raspbian (2) reclaim space (2) record (1) redhat (3) remix (1) remix os (1) repo (4) repofrompath (1) repository (1) reset (1) resize2fs (1) rhel (1) router (1) rpm (7) rpmbuild (1) rtl8188ee (1) rtl8192c (1) rtl8192ce (1) rtl8192cu (1) rtl8192de (1) rtl8192ee (1) rtl8192se (1) rtl8723ae (1) rtl8723be (1) rtl8723com (1) rtl8821ae (1) rubymine (1) salix (1) scratch (2) scratch2.scratch 2 (1) screencast (1) script (2) seconday display (1) self (1) send (1) server (1) settings (2) sha1256sym (1) sha256sum (1) share desktop (1) shell (2) shortcut (1) shutter (1) skel (1) skel ماهو (1) skype (1) skype.برامج (1) slackware (1) software (1) soundcloud (1) source code (1) spec (2) spin (1) sqlmap (1) ssh (3) sshd (2) st-trans (1) steam (2) store (1) su (1) sudo (2) sudoers (1) swap (2) switch (2) Switchable Graphics (1) synergy (1) systemd (1) systemd preset (1) teamviewer (1) terminal (2) theme (5) things (7) thomson (1) thread (2) threading (2) thumbnails (1) to (8) tor (2) tor browser (1) torrent (1) transfer closed with 736700 bytes remaining to read (1) translation (1) turn off (2) tuxcut (1) txt (1) ubuntu (1) uefi (5) unable to mount location (1) unity (1) unity3d (1) upgrade (1) usb (1) useradd (2) utf-8 (1) vega (1) verify (1) vg (1) vgaوتبديل (1) vi (1) video (1) vim (1) vino (1) virsh (1) virt-install (1) virt-manger (1) virtual (1) virtual box (1) virtualbox (3) vmware (3) vnc server (1) vokoscreen (1) vpn (1) web server (1) webstorm (1) wifi (1) windows (4) windows-1256 (1) wine (1) woeusb (1) X Error: BadAccess (1) X Error: BadDrawable (1) xdg-mime (1) xdman (1) xfce (1) xfconf-query (1) yum (2) zeal (1) zealdocs (1)