نصب لینوکس روی nand

برای نصب روی NAND ابتدا نیاز به یک لینوکس روی SD داریم. من از ایمیج پست قبلی استفاده می کنم.
ابتدا می خوام با اوبونتو ایمیج را روی uSD بریزم.
بعد از دانلود فایل آن را در آدرس زیر قرار دهید

کد:

/home/ma/linaro.untuch.13.2.25.img.gz

توجه کنید که ma اسم user من در اوبونتو هست.
ابتدا چندتا برنامه دانلود کنیم.

کد:

apt-get install gunzip pv lsblk screen

حالا ابتدا فایل ایمیج را از حالت فشرده خارج می کنم.

کد:

gunzip /home/ma/linaro.untuch.13.2.25.img.gz

حالا می خوام فایل را روی uSD بریزم،
با دستور زیر ابتدا اسم Device مربوط به uSD را پیدا می کنم

کد:

ma@ubuntu:~$ lsblk
NAME   MAJ:MIN RM   SIZE RO TYPE MOUNTPOINT
sr0     11:0    1  1024M  0 rom  
sda      8:0    0    20G  0 disk 
├─sda1   8:1    0    19G  0 part /
├─sda2   8:2    0     1K  0 part 
└─sda5   8:5    0  1022M  0 part [SWAP]
sdb      8:16   1   1.9G  0 disk 
├─sdb1   8:17   1    64M  0 part /media/7A30-2348
└─sdb2   8:18   1   1.8G  0 part /media/fec33567-75bc-43eb-86a0-c86ed8ee61cb

با توجه به حجم 1.9G می فهمم که اسم Device میکرو SD من sdb هست.
حالا با دستور زیر ایمیج را روی uSD میریزم.

کد:

pv /home/ma/linaro.untuch.13.2.25.img | dd of=/dev/sdb

اگه دقت کنید با کمک دستور pv می تونیم که progress بار هم داشته باشیم.
خوب حالا uSD ما آماده برای استفاده است. حالا فایل cubie_nand_uboot_partition_image.bin دانلود می کنم ( فایل پیوست) و در آدرس زیر از uSD قرار می‌دم.

فایل پیوست

کد:

/home/linaro/

حالا کابل برق و مبدل سریال به USB را به PC وصل می کنم.
الان می خوام خط فرمان کیوبی را از طریق ترمینال اوبونتو ببینم به خاطر همین از دستور زیر استفاده می کنم.

کد:

sudo screen /dev/ttyUSB0 115200

اگه دقت کنید از الان به بعد بجای اینکه

کد:

ma@ubuntu:~$

اول دستورها باشه، عبارت زیر میاد

کد:

root@linaro-alip:~#

در واقع از الان به بعد همه کارها را با خود کیوبی انجام می دهیم.
با دستور زیر فایل پیوست را روی NAND می ریزم، توجه کنید که با این دستور هرچی روی NAND بوده پاک میشه.

کد:

dd if=/home/linaro/cubie_nand_uboot_partition_image.bin of=/dev/nand
sync

برای اینکه مطمئن بشیم اطلاعات درست روی NAND ریخته شده حدود 1 دقیقه صبر می کنیم. بعد در حالی که هنوز uSD وصل هست با دستور زیر برد را ریست می کنیم

کد:

Reboot

بعد از اینکه لینارو کامل بالا اومد پارتیشن nandb را با دستور زیر فرمت می کنیم

کد:

mkfs.ext4 /dev/nandb

حالا می خواهیم اطلاعات لینوکس را روی این پارتیشن بریزیم، پس اول اون را mount می کنیم

کد:

mount /dev/nandb /mnt

می خوام ببینم که mount شده یا نه بخاطر همین دستور زیر را اجرا می کنم

کد:

root@linaro-alip:~# lsblk
NAME        MAJ:MIN RM   SIZE RO TYPE MOUNTPOINT
nand         93:0    0   3.8G  0 disk 
nanda        93:8    0   508K  0 disk 
nandb        93:16   0   3.8G  0 disk /mnt
mmcblk0     179:0    0   1.9G  0 disk 
├─mmcblk0p1 179:1    0    64M  0 part /media/AF49-9311

زیر قسمت mounpoint آدرس mount را نوشته. دقت کنید برای کپی کردن و کارهای دیگه با اسم Device کاری نداریم بلکه با آدرس mounpoint آن کار می کنیم.
حالا باید اطلاعات پارتیشن اول uSD را که اینجا با اسم mmcblk0 هست داخل nanadb کپی کنم.
اول یه پوشه به اسم boot داخل nanadb درست می کنم و بعد فایل uImage را کپی می کنم
کد:

mkdir /mnt/boot
cp /media/AF49-9311/uImage /mnt/boot/uImage

حالا باید فایل های مربوط به rootfs را کپی کنیم. به خاطر همین دستورات زیر را خط به خط انجام بدید و منتظر بمونید فایل ها کامل کپی بشه.
کد:

root@linaro-alip:/# cp -r /bin /mnt
root@linaro-alip:/# cp -r /home /mnt
root@linaro-alip:/# cp -r /run /mnt
root@linaro-alip:/# cp -r /selinux /mnt
root@linaro-alip:/# cp -r /usr /mnt
root@linaro-alip:/# cp -r /boot /mnt
root@linaro-alip:/# cp -r /etc /mnt
root@linaro-alip:/# cp -r /lib /mnt
root@linaro-alip:/# cp -r /media /mnt
root@linaro-alip:/# cp -r /opt /mnt
root@linaro-alip:/# cp -r /root /mnt
root@linaro-alip:/# cp -r /sbin /mnt
root@linaro-alip:/# cp -r /srv /mnt
root@linaro-alip:/# cp -r /var /mnt

حالا باید یک سری فولدر داخل nandb درست کنیم

کد:

mkdir dev proc mnt sys tmp

در پایان دستورات زیر را انجام میدیم

کد:

umount /mnt
umount /media/AF49-9311
sync

حالا برد را خاموش می کنیم و uSD را از برد جدا می کنیم و برد را دوباره روشن می کنیم

کد:

Shutdown 0
Bookmark the پیوند یکتا.

One Response to نصب لینوکس روی nand

  1. jalila211 میگوید :

    با سلام من یه ایمیج linaro که دسکتاپ داشت رو به روش بالا انجام دادم مشکلی که دارم اینه که لینوکس بالا می یاد ولی دسکتاپش بالا نمیاد.خیلی باهاش ور رفتم نشد. اگه امکان داره راهنمایی کنید.
    linaro.13.7.20 3

پاسخی بگذارید

نشانی ایمیل شما منتشر نخواهد شد.