国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

嵌入式Linux開(kāi)發(fā)——解決uboot無(wú)法使用nfs服務(wù)從ubuntu中下載文件(TTT、cannot mount等錯(cuò)誤)

這篇具有很好參考價(jià)值的文章主要介紹了嵌入式Linux開(kāi)發(fā)——解決uboot無(wú)法使用nfs服務(wù)從ubuntu中下載文件(TTT、cannot mount等錯(cuò)誤)。希望對(duì)大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請(qǐng)大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問(wèn)。

前言:

最近在學(xué)習(xí)正點(diǎn)原子嵌入式Linux開(kāi)發(fā)板uboot的移植實(shí)驗(yàn),移植完之后想測(cè)試網(wǎng)絡(luò)部分的驅(qū)動(dòng)能否工作正常。最后經(jīng)過(guò)測(cè)試發(fā)現(xiàn)tftp可以正常下載,nfs卻一直報(bào)錯(cuò)無(wú)法下載文件,最后也是折磨了兩天才解決了問(wèn)題,特寫(xiě)下此博客進(jìn)行記錄、總結(jié)。

項(xiàng)目場(chǎng)景:

我的輕薄本沒(méi)有網(wǎng)口,事先買(mǎi)了一個(gè)刷過(guò)固件可以連校園網(wǎng)的路由器。準(zhǔn)備好路由器之后,校園網(wǎng)通過(guò)一根網(wǎng)線接路由器的wan口,剩余兩個(gè)lan口,一個(gè)接到正點(diǎn)原子alpha開(kāi)發(fā)板的ENET2、筆記本電腦連路由器的WiFi、ubuntu改為橋接靜態(tài)ip,使得三者在同一網(wǎng)段內(nèi)(windows、ubuntu、uboot(不是linux內(nèi)核))

ubuntu 192.168.10.218
uboot 192.168.10.220
windows 192.168.10.46

具體實(shí)物圖:

cannot mount,Linux,linux,經(jīng)驗(yàn)分享,ubuntu,arm開(kāi)發(fā),網(wǎng)絡(luò)

然后測(cè)試了一下測(cè)試三者是否能互相ping通(只有windows和ubuntu無(wú)法ping通uboot,其余四種情況都可以正常ping通),ubuntu和windows無(wú)法ping通uboot好像是uboot沒(méi)有解析ping命令,但是這個(gè)不影響后面的實(shí)驗(yàn)。下面是三者互相ping的截圖

cannot mount,Linux,linux,經(jīng)驗(yàn)分享,ubuntu,arm開(kāi)發(fā),網(wǎng)絡(luò)
uboot ping ubuntu和windows
cannot mount,Linux,linux,經(jīng)驗(yàn)分享,ubuntu,arm開(kāi)發(fā),網(wǎng)絡(luò)
ubuntu ping windows
cannot mount,Linux,linux,經(jīng)驗(yàn)分享,ubuntu,arm開(kāi)發(fā),網(wǎng)絡(luò)
windows ping ubuntu

根據(jù)教程,一開(kāi)始想使用nfs服務(wù)但行不通,但使用tftp服務(wù)可以正常下載、nfs沒(méi)調(diào)通這個(gè)問(wèn)題就沒(méi)有過(guò)多理會(huì)。直到學(xué)習(xí)根文件系統(tǒng)測(cè)試時(shí),根文件系統(tǒng)都是通過(guò)nfs進(jìn)行掛載,我一開(kāi)始還是想取巧避開(kāi)nfs用tftp進(jìn)行掛載,但是我看了看linux內(nèi)核文件好像只支持nfs、沒(méi)有看到tftp的字眼,而且后面的教程都是用nfs,所以就躲不掉了,只能先調(diào)通nfs才能繼續(xù)往下走。

cannot mount,Linux,linux,經(jīng)驗(yàn)分享,ubuntu,arm開(kāi)發(fā),網(wǎng)絡(luò)
nfs服務(wù)下載失敗
cannot mount,Linux,linux,經(jīng)驗(yàn)分享,ubuntu,arm開(kāi)發(fā),網(wǎng)絡(luò)
nfs cannot mount錯(cuò)誤
cannot mount,Linux,linux,經(jīng)驗(yàn)分享,ubuntu,arm開(kāi)發(fā),網(wǎng)絡(luò)
tftp服務(wù)可以正常下載

cannot mount,Linux,linux,經(jīng)驗(yàn)分享,ubuntu,arm開(kāi)發(fā),網(wǎng)絡(luò)

?

解決方案:

因?yàn)槲夷芡ㄟ^(guò)tftp服務(wù)進(jìn)行下載,說(shuō)明我的網(wǎng)絡(luò)拓?fù)鋺?yīng)該是沒(méi)有什么問(wèn)題的,問(wèn)題應(yīng)該就在nfs服務(wù)這部分。這期間我看了正點(diǎn)原子常見(jiàn)錯(cuò)誤的總結(jié)、還有一些大佬們的博客、咨詢某寶技術(shù)客服最后才得以解決,大家可以按順序針對(duì)下面的情況進(jìn)行設(shè)置和排查。

1、關(guān)閉殺毒軟件(火絨等)、關(guān)閉windows的防火墻、ubuntu的也關(guān)閉。(嫌麻煩ubuntu的我就直接卸載了)

cannot mount,Linux,linux,經(jīng)驗(yàn)分享,ubuntu,arm開(kāi)發(fā),網(wǎng)絡(luò)

cannot mount,Linux,linux,經(jīng)驗(yàn)分享,ubuntu,arm開(kāi)發(fā),網(wǎng)絡(luò)

2、uboot使用的nfs版本是version2,而ubuntu16以上默認(rèn)是version3或者version4,通過(guò)sudo cat /proc/fs/nfsd/versions可以查看當(dāng)前ubuntu支持的nfs版本。我用的ubuntu版本是20.04,為了兼容要修改 /etc/default/nfs-kernel-server配置文件,通過(guò)sudo vim /etc/default/nfs-kernel-server進(jìn)入文件進(jìn)行修改。

cannot mount,Linux,linux,經(jīng)驗(yàn)分享,ubuntu,arm開(kāi)發(fā),網(wǎng)絡(luò)
nfs 不支持version2

cannot mount,Linux,linux,經(jīng)驗(yàn)分享,ubuntu,arm開(kāi)發(fā),網(wǎng)絡(luò)

修改之后重啟nfs服務(wù)(sudo service nfs-kernel-server restart)看是否能成功下載,如果還是不行繼續(xù)往下看。

3、出現(xiàn)cannot mount或者編譯一段時(shí)間后出現(xiàn)TTT錯(cuò)誤,可以查看一下/etc/hosts、/etc/exports這兩個(gè)配置文件

sudo vim /etc/exports????????????????sudo vim /etc/hosts

cannot mount,Linux,linux,經(jīng)驗(yàn)分享,ubuntu,arm開(kāi)發(fā),網(wǎng)絡(luò)
/etc/hosts 要添加的內(nèi)容

/etc/exports添加的內(nèi)容分為三部分

1:nfs服務(wù)共享目錄絕對(duì)路徑

2:*代表所有的ip都可訪問(wèn)

???????如果只限定一個(gè)ip只需將*改為192.168.10.220(要和ubuntu在同一網(wǎng)段)

???????如果要使用同一網(wǎng)段只需將*改為192.168.10.*

3:(rw,sync,no_root_squash)為nfs服務(wù)的一些命令參數(shù)

cannot mount,Linux,linux,經(jīng)驗(yàn)分享,ubuntu,arm開(kāi)發(fā),網(wǎng)絡(luò)

?cannot mount,Linux,linux,經(jīng)驗(yàn)分享,ubuntu,arm開(kāi)發(fā),網(wǎng)絡(luò)

修改完exports后記得重新聲明一下 sudo exportfs? -ar、重啟一下nfs服務(wù)。

我看完很多人的博客到這步基本上都弄好了,nfs可以成功下載文件了,但是我的還是不行。

4:設(shè)置完上述內(nèi)容后打印nfs的version還是出現(xiàn)-2,我用netstat看一下nfs對(duì)應(yīng)端口,發(fā)現(xiàn)沒(méi)有udp只有tcp

netstat -a | grep "nfs"

cannot mount,Linux,linux,經(jīng)驗(yàn)分享,ubuntu,arm開(kāi)發(fā),網(wǎng)絡(luò)

設(shè)置一下這個(gè)文件/etc/nfs.conf

sudo vim /etc/nfs.conf

cannot mount,Linux,linux,經(jīng)驗(yàn)分享,ubuntu,arm開(kāi)發(fā),網(wǎng)絡(luò)

注意重新啟動(dòng)nfs服務(wù)?sudo service nfs-kernel-server restart?重新執(zhí)行netstat,出現(xiàn)了udp

cannot mount,Linux,linux,經(jīng)驗(yàn)分享,ubuntu,arm開(kāi)發(fā),網(wǎng)絡(luò)

sudo cat /proc/fs/nfsd/versions可以發(fā)現(xiàn)出現(xiàn)了+2,即支持nfs服務(wù)的version2,接下來(lái)要做的就是驗(yàn)證一下

cannot mount,Linux,linux,經(jīng)驗(yàn)分享,ubuntu,arm開(kāi)發(fā),網(wǎng)絡(luò)

在uboot中執(zhí)行命令nfs 80800000 192.168.10.218:/home/lpme/linux/nfs/zImage發(fā)現(xiàn)可以成功下載

cannot mount,Linux,linux,經(jīng)驗(yàn)分享,ubuntu,arm開(kāi)發(fā),網(wǎng)絡(luò)

其中一些T可能是網(wǎng)絡(luò)問(wèn)題,我們看一下dram里面的內(nèi)容和zImage(用winhex打開(kāi))里的內(nèi)容是否相同

md.b 80800000 2000

cannot mount,Linux,linux,經(jīng)驗(yàn)分享,ubuntu,arm開(kāi)發(fā),網(wǎng)絡(luò)

?cannot mount,Linux,linux,經(jīng)驗(yàn)分享,ubuntu,arm開(kāi)發(fā),網(wǎng)絡(luò)文章來(lái)源地址http://www.zghlxwxcb.cn/news/detail-808899.html

?進(jìn)行比較兩者是相同的,即nfs服務(wù)可以正常使用了。

總結(jié):

非常感謝你能看到這里,希望這篇文章能幫你解決問(wèn)題。

到了這里,關(guān)于嵌入式Linux開(kāi)發(fā)——解決uboot無(wú)法使用nfs服務(wù)從ubuntu中下載文件(TTT、cannot mount等錯(cuò)誤)的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來(lái)自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場(chǎng)。本站僅提供信息存儲(chǔ)空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請(qǐng)注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請(qǐng)點(diǎn)擊違法舉報(bào)進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • 在嵌入式Linux設(shè)備上使用Flutter開(kāi)發(fā)圖形界面(試水)

    在嵌入式Linux設(shè)備上使用Flutter開(kāi)發(fā)圖形界面(試水)

    鏈接: https://www.bilibili.com/video/BV1qE411N7aC/?spm_id_from=333.880.my_history.page.clickvd_source=0c443477abedebf2fdf7abecef55405d 我是跟著這個(gè)視頻安裝 Docker Desktop for Windows + 啟用k8s k8s網(wǎng)址 https://github.com/AliyunContainerService/k8s-for-docker-desktop 主要步驟參照 https://www.toradex.com/zh-cn/blog/zai-qian-ru-shi-linux-sh

    2024年02月21日
    瀏覽(27)
  • 【嵌入式】Linux開(kāi)發(fā)工具arm-linux-gcc安裝及使用

    【嵌入式】Linux開(kāi)發(fā)工具arm-linux-gcc安裝及使用

    宿主機(jī) 執(zhí)行編譯、鏈接嵌入式軟件的計(jì)算機(jī) 目標(biāo)機(jī) 運(yùn)行嵌入式軟件的硬件平臺(tái) “本地”編譯器 用來(lái)生成在與編譯器本身所在的計(jì)算機(jī)和操作系統(tǒng)(平臺(tái))相同的環(huán)境下運(yùn)行的目標(biāo)代碼,例如 Windows 環(huán)境生成 Windows 目標(biāo)代碼。 交叉編譯器 用來(lái)生成在其它平臺(tái)上運(yùn)行的目標(biāo)代

    2024年01月17日
    瀏覽(50)
  • 使用VSCode clangd插件進(jìn)行l(wèi)inux內(nèi)核代碼閱讀和嵌入式開(kāi)發(fā)

    使用VSCode clangd插件進(jìn)行l(wèi)inux內(nèi)核代碼閱讀和嵌入式開(kāi)發(fā)

    在進(jìn)行 Linux 內(nèi)核代碼閱讀和嵌入式開(kāi)發(fā)時(shí),選擇合適的開(kāi)發(fā)工具至關(guān)重要。VSCode 是一個(gè)流行的跨平臺(tái)編輯器,并且它的擴(kuò)展生態(tài)系統(tǒng)非常強(qiáng)大。在這篇博客中,我們將介紹如何使用 VSCode Clangd 插件來(lái)提高 Linux 內(nèi)核代碼的閱讀和嵌入式開(kāi)發(fā)效率。 Clangd 是一個(gè)基于 Clang 的語(yǔ)言

    2024年02月09日
    瀏覽(30)
  • 使用Yocto進(jìn)行嵌入式Linux開(kāi)發(fā)2 第一個(gè)基于Poky的系統(tǒng)

    使用Yocto進(jìn)行嵌入式Linux開(kāi)發(fā)2 第一個(gè)基于Poky的系統(tǒng)

    Ubuntu: Fedora 在我們的開(kāi)發(fā)主機(jī)系統(tǒng)上安裝了所需的軟件包后,我們可以使用 Git 下載當(dāng)前 LTS 版本的 Poky 源代碼,命令如下: 下載完成后,poky 目錄中的內(nèi)容如下: 在poky目錄中存在oe-init-build-env腳本,用于設(shè)置構(gòu)建環(huán)境。 這里,[build-directory] 是一可選參數(shù),用于指定配置環(huán)境

    2024年02月08日
    瀏覽(56)
  • 嵌入式Linux 開(kāi)發(fā)經(jīng)驗(yàn):platform_driver_register 的使用方法

    嵌入式Linux 開(kāi)發(fā)經(jīng)驗(yàn):platform_driver_register 的使用方法

    嵌入式Linux 設(shè)備驅(qū)動(dòng)開(kāi)發(fā)時(shí),經(jīng)常遇到平臺(tái)驅(qū)動(dòng) platform_driver_register 的注冊(cè),最近深入了看了驅(qū)動(dòng)開(kāi)發(fā)為何使用平臺(tái)驅(qū)動(dòng) 開(kāi)發(fā)一個(gè)設(shè)備驅(qū)動(dòng)時(shí),為了實(shí)現(xiàn) 設(shè)備的 打開(kāi)、關(guān)閉、控制等操作,可以注冊(cè)為 Linux misc 設(shè)備,不過(guò)在這之前,可以先使用 platform_driver_register 注冊(cè)平臺(tái)驅(qū)動(dòng)

    2024年01月15日
    瀏覽(22)
  • 嵌入式Linux:如何進(jìn)行嵌入式Linux開(kāi)發(fā)?

    目錄 1、裸機(jī)開(kāi)發(fā) 2、SDK開(kāi)發(fā) 3、驅(qū)動(dòng)開(kāi)發(fā) 3.1、字符設(shè)備驅(qū)動(dòng) 3.2、塊設(shè)備驅(qū)動(dòng) 3.3、網(wǎng)絡(luò)設(shè)備驅(qū)動(dòng) 4、應(yīng)用開(kāi)發(fā) 嵌入式Linux開(kāi)發(fā)主要有四種方式:裸機(jī)開(kāi)發(fā)、SDK開(kāi)發(fā)、驅(qū)動(dòng)開(kāi)發(fā)和應(yīng)用開(kāi)發(fā)。 裸機(jī)開(kāi)發(fā)通常指在沒(méi)有操作系統(tǒng)支持的環(huán)境中直接在硬件上運(yùn)行程序的開(kāi)發(fā)。這種開(kāi)發(fā)方

    2024年01月25日
    瀏覽(31)
  • 嵌入式Linux驅(qū)動(dòng)開(kāi)發(fā)——解決/sys/bus/spi/devices下沒(méi)有對(duì)應(yīng)的spi設(shè)備文件

    嵌入式Linux驅(qū)動(dòng)開(kāi)發(fā)——解決/sys/bus/spi/devices下沒(méi)有對(duì)應(yīng)的spi設(shè)備文件

    最近在學(xué)習(xí)Linux驅(qū)動(dòng)開(kāi)發(fā)中SPI總線的驅(qū)動(dòng)框架,但在修改完設(shè)備樹(shù)添加完對(duì)應(yīng)的spi設(shè)備節(jié)點(diǎn)后,理應(yīng)在/sys/bus/spi下會(huì)有對(duì)應(yīng)的spi設(shè)備,我的目錄下面沒(méi)有。 無(wú)spi設(shè)備 然后我查看了/proc/device-tree,發(fā)現(xiàn)有對(duì)應(yīng)的spi設(shè)備節(jié)點(diǎn),我就先沒(méi)有過(guò)多理會(huì)這個(gè)問(wèn)題。 /proc/device-tree下有對(duì)應(yīng)

    2024年02月16日
    瀏覽(23)
  • 關(guān)于嵌入式開(kāi)發(fā)的一些信息匯總:嵌入式C開(kāi)發(fā)人員、嵌入式系統(tǒng)Linux

    關(guān)于嵌入式開(kāi)發(fā)的一些信息匯總:嵌入式C開(kāi)發(fā)人員、嵌入式系統(tǒng)Linux

    這篇文章是關(guān)于嵌入式開(kāi)發(fā)的一些基本信息,供想入行的人參考。有一些作者本人的想法,以及來(lái)自外網(wǎng)的大拿的文章翻譯而來(lái),原文鏈接在此Learning Linux for embedded systems,再次感謝,支持原創(chuàng)。 普通C開(kāi)發(fā)人員和嵌入式C開(kāi)發(fā)人員之間的 基本區(qū)別在于 ,因?yàn)榍度胧紺程序被設(shè)

    2024年02月03日
    瀏覽(129)
  • 嵌入式開(kāi)發(fā):?jiǎn)纹瑱C(jī)嵌入式Linux學(xué)習(xí)路徑

    嵌入式開(kāi)發(fā):?jiǎn)纹瑱C(jī)嵌入式Linux學(xué)習(xí)路徑

    SOC(System on a Chip)的本質(zhì)區(qū)別在于架構(gòu)和功能。低端SOC如基于Cortex-M架構(gòu)的芯片,如STM32和NXP LPC1xxx系列,不具備MMU(Memory Management Unit),適用于輕量級(jí)實(shí)時(shí)操作系統(tǒng)如uCOS和FreeRTOS。高端SOC如基于Cortex-A架構(gòu)的芯片,如三星、高通、飛卡、全志和瑞芯微等,具備MMU,支持虛擬內(nèi)

    2024年02月15日
    瀏覽(38)
  • 嵌入式Linux開(kāi)發(fā)教程匯總

    野火:https://doc.embedfire.com/products/link/zh/latest/linux/index.html 正點(diǎn)原子:http://47.111.11.73/docs/boards/arm-linux/index.html 百問(wèn)網(wǎng):http://download.100ask.net/books/Linux/ELADCM1/index.html 百問(wèn)網(wǎng):https://space.bilibili.com/275908810/channel/seriesdetail?sid=1714177 野火:https://space.bilibili.com/356820657/channel/seriesdeta

    2024年02月10日
    瀏覽(97)

覺(jué)得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請(qǐng)作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包