嵌入式Linux開(kāi)發(fā)環(huán)境搭建ping、nfs的解決方法
一. 嵌入式軟件層次
1) Bootloader->引導(dǎo)加載程序
整個(gè)嵌入式系統(tǒng)的加載啟動(dòng)任務(wù)完全交給Bootloader完成,它的主要任務(wù)是將內(nèi)核映象從硬盤讀到RAM中,然后跳轉(zhuǎn)到內(nèi)核入口啟動(dòng)內(nèi)核(操作系統(tǒng))!通俗來(lái)講,Bootloader的作用就是初始化硬件,啟動(dòng)操作系統(tǒng)。
U-BOOT是Bootloader最常用的一種,將uboot下載至開(kāi)發(fā)板的nand flash(ROM)中,即可通過(guò)仿真軟件Secure CRT對(duì)開(kāi)發(fā)板進(jìn)行初始設(shè)置。 包括開(kāi)發(fā)板的環(huán)境變量、IP等設(shè)置項(xiàng),為后面下載內(nèi)核、加載文件系統(tǒng)做基礎(chǔ)。
2)Linux內(nèi)核
實(shí)現(xiàn)不同的硬件、軟件需求配置不同的系統(tǒng)內(nèi)核。一般基于已有的內(nèi)核進(jìn)行修改
配置內(nèi)核 -> 編譯內(nèi)核 -> 安裝內(nèi)核 -> 清理內(nèi)核過(guò)程文件(make clean)
配置內(nèi)核: make menuconfig ARCH=arm 菜單式交互界面選擇所需的驅(qū)動(dòng)、協(xié)議文件
編譯內(nèi)核:make uImage(內(nèi)核名) ARCH=arm CROSS_COMPILE=arm-linux-
安裝內(nèi)核:通過(guò)tftp服務(wù)器,在基于uboot下下載uImage至 20000fc0(210開(kāi)發(fā)板啟動(dòng)地址) "tftp uImage 20007fc0"
3)文件系統(tǒng)
文件系統(tǒng)簡(jiǎn)單說(shuō)就是一種目錄結(jié)構(gòu),由于linux操作系統(tǒng)的設(shè)備在系統(tǒng)中是以文件的形式存在,將這些文件分類管理以及提供和內(nèi)核交互的接口,就形成了一定的目錄結(jié)構(gòu)也就是文件系統(tǒng)?! ?/p>
基本流程:
- a.設(shè)置根文件系統(tǒng)目錄rootfs及內(nèi)部存儲(chǔ)文件目錄bin、dev、lib、sbin、sys、usr、mnt等;
- b.文件系統(tǒng)添加內(nèi)核模塊,在linux內(nèi)核目錄下"/home/S4-Driver/linux-smart210/";
" make modules ARCH=arm CROSS_COMPILE=arm-linux- " 內(nèi)核編譯
" make modules——install ARCH=arm INSTALL_MOD_PATH=/home/S5-/rootfs " 內(nèi)核文件復(fù)制到根文件目錄下
- c.根目錄"/.../rootfs"下安裝交叉編譯器busybox,配置內(nèi)核->編譯內(nèi)核->安裝拷貝make install;
- d.掛載根文件系統(tǒng),使用nfs方式,可實(shí)時(shí)在線根文件系統(tǒng)rootfs;
SecureCRT -> 通過(guò)uboot對(duì)開(kāi)發(fā)板進(jìn)行參數(shù)配置(nfs配置項(xiàng)) -> tftp服務(wù)器下載Linux內(nèi)核 -> bootm 20007fc0運(yùn)行掛載即可!
二.偶遇問(wèn)題
1. 開(kāi)發(fā)板ping的系列問(wèn)題
1) 模型結(jié)構(gòu)搭建:PC機(jī) -> 有線網(wǎng)卡 -> 路由器 -> 直連網(wǎng)線 -> 開(kāi)發(fā)板網(wǎng)口;
2)a. 設(shè)置虛擬機(jī)為橋接模式,以保證外網(wǎng)可尋找到Linux虛擬機(jī)ip;
b. PC機(jī)使用的是有線網(wǎng)卡,則PC機(jī)及Linux虛擬網(wǎng)絡(luò)適配器覺(jué)選擇Realtak USB(有線網(wǎng)口);
c. 保證Linux虛擬機(jī)、PC機(jī)、開(kāi)發(fā)板三者ip處于同一網(wǎng)段;
3)關(guān)閉Linux虛擬機(jī)、PC機(jī)的防火墻,使得PC可ping通Linux和開(kāi)發(fā)板
再排除硬件接口問(wèn)題,即可通訊。
2.nfs掛載問(wèn)題
nfs掛載出現(xiàn)如:"Server is not responding"、" unable to mount root"等問(wèn)題,其主要原因是nfs的掛在設(shè)置參數(shù)、下載地址有問(wèn)題。如smart210下載地址為20007fc0(并非20008000),nfs默認(rèn)是使用udp通信協(xié)議,掛載參數(shù)網(wǎng)上都可喲搜索到,多試一試就沒(méi)問(wèn)題,前提是保證Linux的nfs服務(wù)器能正常使用。
以上就是本次介紹的嵌入式Linux開(kāi)發(fā)環(huán)境搭建,問(wèn)題ping、nfs的解決全部知識(shí)點(diǎn)內(nèi)容,感謝大家對(duì)腳本之家的支持。
相關(guān)文章
搭建nextcloud私有云存儲(chǔ)網(wǎng)盤的教程詳解
Nextcloud是一款開(kāi)源免費(fèi)的私有云存儲(chǔ)網(wǎng)盤項(xiàng)目,可以讓你快速便捷地搭建一套屬于自己或團(tuán)隊(duì)的云同步網(wǎng)盤,從而實(shí)現(xiàn)跨平臺(tái)跨設(shè)備文件同步、共享、版本控制、團(tuán)隊(duì)協(xié)作等功能。這篇文章主要介紹了搭建nextcloud私有云存儲(chǔ)網(wǎng)盤,需要的朋友可以參考下2019-12-12Ubuntu18.04安裝Nvidia顯卡驅(qū)動(dòng)教程(圖文)
這篇文章主要介紹了Ubuntu18.04安裝Nvidia顯卡驅(qū)動(dòng)教程(圖文),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2020-07-07在Apache服務(wù)器上啟用GZip壓縮靜態(tài)內(nèi)容的方法
這篇文章主要介紹了在Apache服務(wù)器上啟用GZip壓縮靜態(tài)內(nèi)容的方法,通過(guò)配置.htaccess文件即可輕松實(shí)現(xiàn),同時(shí)附帶了一些GZip的常用命令,需要的朋友可以參考下2015-08-08Linux date 時(shí)間設(shè)置同步命令分享
Linux服務(wù)器運(yùn)行久時(shí),系統(tǒng)時(shí)間就會(huì)存在一定的誤差,一般情況下可以使用date命令進(jìn)行時(shí)間設(shè)置,但在做數(shù)據(jù)庫(kù)集群分片等復(fù)雜操作時(shí)對(duì)多臺(tái)機(jī)器的時(shí)間差是有要求的,此時(shí)就需要使用ntpdate進(jìn)行時(shí)間同步。2018-04-04淺析CentOS8虛擬機(jī)訪問(wèn)Windows10主機(jī)文件夾方法
這篇文章主要介紹了CentOS8虛擬機(jī)訪問(wèn)Windows10主機(jī)文件夾方法,本文圖文并茂給大家介紹的非常詳細(xì),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2019-10-10