構建openwrt

Steps:css

準備工做:html

    下載openwrt源碼: git clone git://git.openwrt.org/openwrt.gitgit

    

Step1:編譯openwrt源碼緩存

    先執行make menuconfig命令,而後有下列幾個地方要更改:
spa

  • 選擇Target System爲llwinner A1x/A20/A3x線程

  • 選擇Target Profile爲Cubietruckrest

  • 選擇Target Images,設置Boot大小與Root大小(我用的是4G卡,Boot設置爲100M,Root設置爲3600M)htm

    而後保存生成.config文件
內存

    接下來執行make -j8 (個人機子是雙核四線程的,總共8個線程,so..j8)ci


Step2:爲SD卡分區

    使用命令:fdisk /dev/sdb (注:sdb爲我機子SD卡的盤符,其餘因機子而異)

    建立兩個分區 /dev/sdb1 與 /dev/sdb2,分別爲boot分區與root分區,具體大小看你Step1所編譯的大小

    將第一個分區格式化爲vfat格式:  mkfs.vfat /dev/sdb1

    

Step3:寫卡系統

     如下操做都是基於下面表完成的. 

    SD layout   

    SD layout with 512 byte blocks:

NAME start block size
MBR 0 1 block
u-boot-with-spl.bin 16 (8 KB) ~250 KB
FAT 2048 (1 MB) 15 MB
EXT4 32768 (16 MB) rest

1.將spl寫到CD卡第8k內存處:

    dd if=bin/sunxi/uboot-sunxi-Cubietruck/openwrt-sunxi-Cubietruck-u-boot-with-spl.bin of=/dev/sdb bs=1024 seek=8


2.掛載/dev/sdb1到/mnt

  mount -t vfat /dev/sdb1 /mnt


3.複製boot相關文件到/mnt

  cp bin/sunxi/uboot-sunxi-Cubietruck/openwrt-sunxi-Cubietruck-uEnv.txt /mnt/uEnv.txt

  cp bin/sunxi/sun7i-a20-cubietruck.dtb /mnt/dtb

  cp bin/sunxi/openwrt-sunxi-uImage /mnt/uImage


4.重定義root系統文件的大小(剛纔在make menuconfig那定義了,如今能夠不用執行)

  resize2fs bin/sunxi/openwrt-sunxi-root.ext4 3600M


5.將root根文件系統寫道/dev/sdb2

  dd if=bin/sunxi/openwrt-sunxi-root.ext4 of=/dev/sdb2 bs=128k


6.將緩存內容寫到SD卡,並卸載/mnt

  sync

  umount /mnt


END


以上方法若是失敗,Step3直接換成如下命令:

   dd if=bin/sunxi/openwrt-sunxi-Cubietruck-sdcard-vfat-ext4.img of=/dev/sdb





    

            






參考資料:




相關文章
相關標籤/搜索