<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計應(yīng)用 > Busybox制作嵌入式Linux的文件系統(tǒng)

          Busybox制作嵌入式Linux的文件系統(tǒng)

          作者: 時間:2016-10-08 來源:網(wǎng)絡(luò) 收藏

          lrwxrwxrwx 117 libcrypt.so.1 -> libcrypt-2.3.2.so

          將其拷貝到$arm2410HOME/lib中。

          (可以編寫一個腳本:vi envCp,將下面的命令拷貝至腳本然后執(zhí)行即可:執(zhí)行chmod u+rx envCp,然后./envCp)

          cp -l /usr/local/arm/3.4.1/arm-linux/lib/ld-2.3.2.so $arm2410HOME/lib

          cp -l /usr/local/arm/3.4.1/arm-linux/lib/ld-linux.so.2 $arm2410HOME/lib

          cp -l /usr/local/arm/3.4.1/arm-linux/lib/libc-2.3.2.so $arm2410HOME/lib

          cp -l /usr/local/arm/3.4.1/arm-linux/lib/libc.so.6 $arm2410HOME/lib

          cp -l /usr/local/arm/3.4.1/arm-linux/lib/libcrypt-2.3.2.so $arm2410HOME/lib

          cp -l /usr/local/arm/3.4.1/arm-linux/lib/libcrypt.so.1 $arm2410HOME/lib

          拷貝后檢查一下:

          ls -all $arm2410HOME/lib,應(yīng)該和上面相同,包括文件及其鏈接。

          4、設(shè)定etc,準(zhǔn)備啟動:

          將busybox源代碼 example/bootfloopy/etc目錄中的文件拷貝過來到$arm2410HOME/etc。

          cp -fr $BUSYBOXHOME/examples/bootfloppy/etc/* $arm2410HOME/etc

          etc文件夾是許多系統(tǒng)配置文件保存的地方。這些文件非常重要,如果配置錯誤,就可能影響系統(tǒng)的啟動。busybox源代碼 example/bootfloopy/etc目錄中的文件算是一個簡單的例子,可以把其中的文件拷貝過來作為基礎(chǔ)。(在 example/bootfloopy目錄中的一些腳本和文檔也很值得閱讀)

          首先inittab文件是系統(tǒng)啟動后所訪問的第一個腳本文件,后續(xù)啟動的文件都由它指定。這個文件的格式和普通微機(jī)Linux上的inittab是有區(qū)別的,其具體含義可以參考busybox的文檔。下面是一個比較簡單的例子:

          ::sysinit:/etc/init.d/rcS

          tty0::respawn:/sbin/getty 38400 tty0

          tty2::askfirst:/bin/sh

          ::ctrlaltdel:/sbin/reboot

          ::shutdown:/bin/umount ar

          ::shutdown:/bin/mount / o remount,ro

          其中第一行指定了系統(tǒng)的啟動腳本為/etc/init.d/rcS;第二行指定在第一個虛擬終端打開一個登錄會話;第三行指定在第三個虛擬終端打開一個無須登錄驗證的shell;第四行指定了當(dāng)按下ctrl+alt+del組合鍵時的執(zhí)行命令;最后兩行指定了關(guān)機(jī)時執(zhí)行的操作。

          fstab文件定義了文件系統(tǒng)的各個“掛接點”,需要與實際的系統(tǒng)相配合。一個簡單的fstab文件如下:proc/procprocdefaults00

          /dev/hda1/ext2rw,noauto01

          devpts/dev/ptsdevptsdefaults00

          其中第三行是為UNIX PTYs準(zhǔn)備的,telnetd要用到。

          profile 文件是終端登錄之后首先運行的腳本,這里可以不去管它。我們比較關(guān)心的是系統(tǒng)在無人登錄的情況下有哪些程序要執(zhí)行。從inittab文件可以看出系統(tǒng)啟動之后要運行/etc/init.d/rcS腳本,需要啟動的程序和需要進(jìn)行的設(shè)置都可以寫在這里面。一個可能的rcS文件如下:

          #! /bin/sh

          echo e 'Starting System'

          ifconfig lo 127.0.0.1

          ifconfig eth0 192.168.0.100

          hostname F /etc/hostname

          /bin/mount / o remount,rw

          /bin/mount /proc

          /bin/mount /dev/pts

          /usr/sbin/telnetd

          dmesg > /var/log/dmesg

          為了滿足終端登錄用戶驗證的要求,etc目錄下還需要有passwd、group和shadow (在編譯busybox時如果不選擇shadow功能將不需要這個文件)。這些文件至少要包含 root用戶的定義,如下所示:

          passwd:

          root:x:0:0:root:/root:/bin/sh

          group:

          root:x:0:

          shadow:

          root::12179:0:99999:7:::

          其中,如果shadow (對于不支持shadow的系統(tǒng)則是passwd )文件的第一個冒號和第二個冒號之間沒有內(nèi)容,表示這個用戶登錄不需要密碼。如果需要設(shè)定密碼或者增加新的登錄用戶,就可以參考開發(fā)主機(jī)上的相應(yīng)文件,或者在目標(biāo)系統(tǒng)啟動之后用passwd命令和adduser命令完成。

          最后還可以給目標(biāo)機(jī)起一個名字,在/etc目錄下建立文件hostname,將起好的名字寫到里面。前面介紹的啟動腳本rcS,通過hostname命令把文件的內(nèi)容設(shè)置為機(jī)器名。

          5、制作yaffs文件系統(tǒng):

          找到y(tǒng)affs制作工具mkyaffsimage,將其拷貝到/bin目錄下,以便于利用系統(tǒng)環(huán)境變量能找到,然后用下面的命令:

          mkyaffsimage filesystem root.yaffs

          就可以filesystem目錄制作成一個名叫root.yaffs的映像。

          6、用uboot將yaffs文件系統(tǒng)下載到目標(biāo)板:

          (1)準(zhǔn)備tftp下載

          將制作好的yaffs文件系統(tǒng)映像拷貝到/tftpboot下,修改其權(quán)限至少為755, 然后重新啟動 xinetd 服務(wù)。

          chmod 755 root.yaffs

          /etc/init.d/xinetd restart

          (2)下載到目標(biāo)板

          啟動目標(biāo)板到uboot,在minicom下輸入以下命令:

          tftp 33000000 root.yaffs

          下載完成后uboot會返回文件的大小,假設(shè)為x

          nand erase 230000 3dcc000(此處擦除的要比較大,因為內(nèi)核要掛載一些文件)

          nand write.yaffs 33000000 230000 x

          重新啟動目標(biāo)板,如果能啟動到busybox提示符即可。


          上一頁 1 2 下一頁

          關(guān)鍵詞:

          評論


          相關(guān)推薦

          技術(shù)專區(qū)

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();