免费视频淫片aa毛片_日韩高清在线亚洲专区vr_日韩大片免费观看视频播放_亚洲欧美国产精品完整版

打開APP
userphoto
未登錄

開通VIP,暢享免費電子書等14項超值服

開通VIP
TFTP方式燒寫內(nèi)核、NFS掛載

驅(qū)動開發(fā)前期準(zhǔn)備工作(NFS掛載):

那為什么要用NFS掛載來作為驅(qū)動開發(fā)的首選呢?因為你在未開發(fā)正確的驅(qū)動的時候,你要不停地做修改,如果你每改一次就要燒寫一次根文件系統(tǒng)這樣很浪費時間,而NFS掛載是把你的根文件系統(tǒng)放在你的開發(fā)機上,而開發(fā)板上并沒有,所以有修改,立刻可以體現(xiàn)在開發(fā)板上。

言歸正傳,首先講一下應(yīng)該怎樣NFS掛載根文件系統(tǒng),我也是網(wǎng)上搜集了一些資料和跟同事要了一些資料,如果跟別人寫的一樣的,那請見諒,因為這些資料我也不知道來源。


平臺:Windows7用虛擬機Fedora14

準(zhǔn)備已經(jīng)編譯好的u-boot.bin  uImage  rootfs


一、u-boot編譯與燒寫

         1、打開DNW,選擇NOR端口,輸入“v”,講u-boot.bin燒寫進(jìn)nand  flash

         2、選擇NAND端口,重啟開發(fā)板,出現(xiàn)以下界面:(此為超級終端下運行)

          

    

二、U-BOOT相關(guān)設(shè)置

         1、在超級終端下鍵入u-boot的命令

# setenv ipaddr ******     (開發(fā)板IP)
# setenv serverip ******     (虛擬機IP)

# setenv gatewayip ******   (網(wǎng)關(guān))

           (以上為設(shè)置環(huán)境參數(shù))

             # saveenv  (保存環(huán)境參數(shù)到flash)

           (由于要進(jìn)行tftp下載,所以要先搭建tftp服務(wù)器)

三、TFTP服務(wù)器搭建(Linux環(huán)境下)

         1.安裝以下兩個軟件(安裝程序見TFTP安裝包)

[root@localhost Packages]# rpm -ivhxinetd-2.3.14-32.fc14.i686.rpm

[root@localhost Packages]# rpm -ivhtftp-server-0.49-6.fc14.i686.rpm

         2.修改配置文件

修改文件vi /etc/xinetd.d/tftp。

主要是設(shè)置TFTP服務(wù)器的根目錄,開啟服務(wù)。修改后的文件如下:

service tftp
{     
        socket_type            =dgram
        protocol              =udp
        wait                  =yes
        user                  =root
      server               =/usr/sbin/in.tftpd
       server_args           =-s /home/user/tftproot  -c
       disable               =no
       per_source            =11
       cps                   =100 2
       flags                 =IPv4
}

修改項server_args= -s    <path>   -c,其中<path>處可以改為你的tftp-server的根目錄,參數(shù)-s指定chroot,-c指定了可以創(chuàng)建文件


       3.創(chuàng)建tftp根目錄,啟動tftp-server

  #mkdir /home/user/tftpboot

  #chmod 777     /home/user/tftpboot

  #/etc/init.d/xinetd restart

這樣,tftp-server就啟動了。

      4.測試 

可以使用#netstat -a |grep tftp命令察看是否啟動tftp服務(wù),如果出現(xiàn)

udp  0 0  *:tftp  *:* 則起動了

檢查tftp服務(wù)是否打開

[root@localhostbtools]#chkconfig –list

(查看是否有xinetd這一項)

如果tftp的服務(wù)沒有打開,則用下面命令打開tftp服務(wù)開關(guān)

[root@localhostbtools]#chkconfig tftp on

重啟服務(wù)

#/etc/init.d/xinetdrestart

四、下載內(nèi)核到開發(fā)板內(nèi)存

         1、先確定開發(fā)板是否能ping通虛擬機下的Linux,如果是:host192.168.1.111 is alive,那么就表示連接       成功。

         2、將編譯好的uImage放入/home/user/tftpboot目錄中。(Linux下)

  3、在超級終端下輸入:

                   # tftp uImage (將uImage鏡像下載到開發(fā)板的SDRAM的0x30008000位置)

         

# nand erase 80000 size     (擦除Nand Flash中80000開始大小為size的空間)

# nand write 30008000 80000 size  (將內(nèi)存中30008000位置開始的內(nèi)容拷貝到NandFlash 中80000開始的位置大小為size)

 

備注:TFTP下載內(nèi)核映像時傳輸?shù)臄?shù)據(jù)總量會在完成時顯示(down_size),而燒寫 nand_flash時數(shù)據(jù)大小必須是2k對齊的,所以我們要對下載的數(shù)據(jù)大小做一點小小的改變以適應(yīng)nand_flash,如果down_size百位>8,則size= down_size+1000 后把低3位清零;如果down_size百位<8,則size = down_size低3位清零+800。比如down_size **a967,則size = **b000;down_size **a567,則size = **a800。


如:

 

    

      


五、利用nfs掛載根文件系統(tǒng)

    1、在Linux下設(shè)置共享目錄

         運行命令:gedit/etc/exports

        編輯nfs服務(wù)的配置文件(第一次打開時文件是空的),添加以下內(nèi)容

        /opt/rootfs *(rw,sync,no_root_squash)  //自己根文件系統(tǒng)路徑

  *:表示所有的客戶機都可以掛載此目錄

  rw:表示掛接此目錄的客戶機對該目錄有讀寫的權(quán)限

        no_root_squash:表示允許掛接此目錄的客戶機享有該主機的root身份

     2、運行命令:service iptables stop 關(guān)閉防火墻

     3、啟動NFS 服務(wù)

在命令行下運行:

#/etc/init.d/nfs start

這將啟動nfs 服務(wù),可以輸入以下命令檢驗 nfs 該服務(wù)是否啟動。

# mkdir /mnt/nfs

# mount -t nfs -o nolock 192.168.1.232(主機IP):/opt/rootfs(需要掛載的文件的路徑)   /mnt/nfs 

如果沒有出現(xiàn)錯誤信息,您將可以瀏覽到 /mnt/nfs 目錄中的內(nèi)容和/opt/rootfs 是一致的。

使用這個命令可以停止 nfs 服務(wù):

#/etc/init.d/nfs stop

六、在U-BOOT設(shè)置環(huán)境變量

      1、setenv bootargs "noinitrd root=/dev/nfs   rw  nfsroot=192.168.1.232:/opt/rootfs/ ip=192.168.1.25:192.168.1.232:192.168.1.254:255.255.255.0 console=ttySAC0,115200       init=/linuxrc  mem=64M"

           (192.168.1.25)是開發(fā)板的臨時IP

           (192.168.1.232)開發(fā)主機IP

           (192.168.1.254)目標(biāo)板上網(wǎng)關(guān)

           (255.255.255.0)子網(wǎng)掩碼

           注意:如果使用的是虛擬機,則使用虛擬機的IP。

     2、# setenv bootcmd  “nand read 30008000 80000500000;bootm 30008000”

   (將bootcmd命令改成上面的內(nèi)容,因為我們內(nèi)核鏡像在Nand Flash的位置是80000,所以u-boot執(zhí)行完之后,內(nèi)核的入口點就在80000這個位置。)

     3、重啟開發(fā)板。


只要保持網(wǎng)絡(luò)聯(lián)通,就能夠啟動Linux內(nèi)核及其根文件系統(tǒng)了,第一次寫博客,有什么錯誤敬請諒解。


本站僅提供存儲服務(wù),所有內(nèi)容均由用戶發(fā)布,如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點擊舉報。
打開APP,閱讀全文并永久保存 查看更多類似文章
猜你喜歡
類似文章
使用PXE+kickstart部署無人值守安裝
Linux NFS啟動出現(xiàn)出現(xiàn)錯誤TFTP error: 'Access violation' 的解...
通過PXE遠(yuǎn)程安裝多臺Linux系統(tǒng)
通過網(wǎng)絡(luò)安裝Linux(CentOS)系統(tǒng)的方法
PXE網(wǎng)絡(luò)安裝實戰(zhàn)(原創(chuàng))
RedHat Enterprise Linux 5 安裝TFTP服務(wù)器和NFS服務(wù)器 - ...
更多類似文章 >>
生活服務(wù)
分享 收藏 導(dǎo)長圖 關(guān)注 下載文章
綁定賬號成功
后續(xù)可登錄賬號暢享VIP特權(quán)!
如果VIP功能使用有故障,
可點擊這里聯(lián)系客服!

聯(lián)系客服