新解U-Boot下的TFTP傳輸檔案
環境資訊:
筆記本作業系統:Win 7
Vmware:VMware-workstation-full-10.0.1-1379776.exe
Linux:rhel-server-6.3-i386
Board:GT2440
網線:自制交叉網線
U-Boot移植好後,第一次用TFTP協議往ARM上燒寫檔案總會出現這樣那樣的問題,但所謂“好事多磨”,解決問題的過程就是進步的過程。不要因麻煩失去信心,相信自己。
用TFTP往開發板燒寫檔案,有兩種方式:
一、把Linux主機當做TFTP伺服器;
二、把Windows主機當做TFTP伺服器,需要做的就是有一個TFTP伺服器軟體,如TFTPSvr.exe
先說Windows主機當做TFTP伺服器,這樣就可以直接燒錄我們需要的檔案。
1、 確保U-Boot可以ping通我們的Windows。在連線開發板的SecureCRT中執行如下命令:
# setenv serverip 192.168.1.3 —>設定Windows主機IP為:192.168.1.3
# setenv ipaddr 192.168.1.17 —>設定開發板IP為:192.168.1.17,確保它們在同一網段即可
# saveenv —>儲存環境變數
然後ping下主機,出現“host 192.168.1.3 is alive”結果說明O(∩_∩)O~# ping 192.168.1.3
Using CS8900-1 device
host 192.168.1.3 is alive
2、 把要燒寫的檔案放到某個目錄下,雙擊開啟TFTPSvr.exe,設定為檔案所在的路徑:
3、 在串列埠執行tftp 32000000 zImage命令,結果如下(TFTPSvr.exe軟體最後一行):
再說Linux主機當做TFTP伺服器:
1、 檢視Linux是否安裝TFTP伺服器,輸入命令:
rpm-qa | grep tftp
若顯示如下,說明已正確安裝:
否則。。。在步驟2
2、 線上安裝,擴音;介紹下VMware虛擬中掛載ISO映象檔案的安裝方法:
【Use ISO image file】設定為rhel-server-6.3-i386-dvd.iso檔案所在目錄,勾選【Connected】和【Connect atpowet on】。
回到Linux桌面,會出現ISO映象檔案圖示:
切換到安裝包所在的ISO映象檔案目錄:
# cd /media/
# ls —>顯示結果如下
RHEL_6.3i386 Disc 1
# cd RHEL_6.3\ i386\ Disc\ 1/
# cd Packages/
# ls —>會看到各種安裝包的rpm檔案
執行安裝:
rpm –ivh xinetd-2.3.14-34.el6.i686.rpm —>tftp依賴的服務
rpm –ivh tftp-0.49-7.el6.i686.rpm —>tftp
rpm –ivh tftp-server-0.49-7.el6.i686.rpm —>tftp server
然後用步驟1的命令檢視裝的效果
3、 配置tftp:
vi m /etc/xinetd.d/tftp
解釋:
L13:需要往開發板燒錄的檔案存放目錄
L14:開啟TFTP服務
由L13知道,需要在根目錄下建立/tftpboot目錄,注意設定許可權:
# chmod+rw /tftpboot
簡單點:# chmod 777/tftpboot
4、 重複方法一的步驟1,不過現在serverip為Linux主機的IP
若需要設定Linux的IP,執行下述命令:
# ifconfig eth0 192.168.1.30 broadcast 192.168.1.1 netmask 255.255.255.0
5、 關閉Linux的防火牆,重要!!!
#setup
6、 更改SELinux的模式,重要!!!否則可能出現TFTP error|:‘Permission denied’的錯誤:
# getenforce —>檢視SELinux的執行模式,若是Enforcing模式,必須更改
#set enforce [0][1] —> 0: Permissive 模式,設定為此種模式
1:Enforcing模式
7、 關閉Windows下的防火牆、各種安全、防毒軟體。
8、 執行tftp 32000000 zImage命令,測人品的時候到了,若你眼前出現:
你懂的!
附:若出現問題,按以下流程檢查一下先。
1、tftp、tftp伺服器安裝
2、檔案有沒有放在/etc/xinetd.d/tftp 中指定的目錄
3、開發板ip、serverip設定
4、linux防火牆關閉
5、SELinux設定Permissive模式
另:Windows的防火牆、各種防毒軟體、各種管家大師最好關掉
相關推薦
新解U-Boot下的TFTP傳輸檔案
環境資訊: 筆記本作業系統:Win 7 Vmware:VMware-workstation-full-10.0.1-1379776.exe Linux:rhel-server-6.3-i386 Board:GT2440 網線:自制交叉網線 U-Boot
u-boot下配置掛載NFS根檔案系統
一、在linux系統主機下安裝NFS伺服器 在ubuntu10.04下安裝命令為: sudoapt-get install nfs-kernel-server 二、配置nfs伺服器 在ubuntu下安裝完ssh伺服器後預設開機啟動
Beaglebone Black——理論篇beaglebone black啟動——從串列埠獲得SPL、U-BOOT,TFTP伺服器獲得核心,NFS伺服器掛載根檔案系統
一般來講啟動一個系統所需的bootloader(SPL/MLO、u-boot.img)和根檔案系統(/boot下包含核心zImage)要麼是放在NAND Flash,或者是SD卡,或者是eMMC,或者是USB中,那麼還有一種方式,就是所需要的這些檔案全部
U-boot從tftp伺服器啟動,掛載到NFS根檔案系統
在uboot輸入設定下面的變數: # mac address可以使用uboot目錄tools下的gen_eth_addr工個來產生 setenv ethaddr <mac address>
u-boot下延時程序失效的bug調試
val boot 結果 dump pre spa quest pri 默認 最近在工作中的一個項目中,大概是將兩塊板卡相連(一塊STM32跑裸機程序,另一塊AM335x跑Linux系統),但是發現在u-boot有時無法啟動成功,需要通過一個GPIO的狀態來判斷,具體來說就是
spring boot + apache camel 傳輸檔案
一 sftp搭建略 這裡簡單說一下為什麼使用sftp。ftp和sftp各有優點,差別並不是太大。sftp安全性好,效能比ftp低。ftp對於java來說並不複雜,效率也高。之所以使用sftp主要是可以使用spring-boot+apache-camel。camel框架將檔案傳輸分為filter,prcess
u-boot-2009 tftp下載核心及nfs系統
核心版本:3.0.35: setenv ipaddr 200.200.4.234 setenv serverip 200.200.4.233 setenv bootcmd_tftp tftpboot 0x10800000 uImage-myimx6a9 setenv bootargs
關於虛擬機器跟開發板互相ping通以及用tftp傳輸檔案的終極解決方案
開發環境: 主機:Windows10 虛擬機器:Ubuntu16.04 開發板:智龍-龍芯1C300A 關於為什麼一定要在虛擬機器下連線開發板: 因為省事,檔案做好直接tftp傳到開發板 避免開發板某種因素導致Windows主機突然藍屏,有可能出現中斷驅動不相容導
Ubuntu虛擬機器雙網絡卡的配置(U-boot,tftp下載)
通過此文的設定,可以讓Ubuntu虛擬機器實現: 1.ubuntu虛擬機器能上網查資料,下載軟體等; 2.tftp伺服器能給本地裝置傳輸資料,不會和ubuntu網路衝突。 一,VMWare新建兩個虛擬網路,如:Vmnet0、Vmnet1;
Ubuntu虛擬機雙網卡的配置(U-boot,tftp下載)
ubun ubuntu虛擬機 color uri vmw src 網卡設置 vmware 自動分配 通過此文的設置,可以讓Ubuntu虛擬機實現: 1.ubuntu虛擬機能上網查資料,下載軟件等; 2.tftp服務器能給本地設備傳輸數據,不會和ubuntu網絡沖突
使用u-boot的tftp下載功能燒寫程式到Nand Flash ——韋東山嵌入式Linux學習筆記09
本文實驗環境: 1. windows 7(64bit) 2. JZ2440(V2) (2)啟動軟體tftpd32,選擇要下載的程式所在的目錄 (3)假設下載檔案leds.bin,在u-boot的命令列,輸入 tftp 30000000 le
u-boot下執行下載和執行程式“Helloworld”
雖然自2012年9月開始就做嵌入式了,但感覺自己一直在打醬油,首先玩的loongson的平臺的片子(玩過的人都懂的),其次是公司招我進去的目標只是為了驗證公司做的硬體是沒問題的,整個方案基本就是按開發板做的,所以自己基本沒有什麼可以改,最多就是做幾個IIC的
一 在應用中升級u-boot、核心以及檔案系統
近期在做在Linux系統中做在應用中升級功能,網路傳輸資料,實現的目標是:通過網路可以對u-boot、核心、檔案系統的檔案進行修改升級。 這裡記錄一下簡單思路: 首先從全域性考慮,要實現的功能網路通訊部分和嵌入式系統對emmc的操作。 網路通訊: 該部分考慮的問題主要是使用
u-boot下網路驅動程式的修改
Eth.c工作之前的初始化 static struct eth_device *eth_devices, *eth_current; Eth.c中有個eth_devices需要外部呼叫函式eth_re
u-boot下的記憶體操作命令mw與md
myboard# md 03000000 10 03000000: ffffffff ffffffff ffffffff ffffffff ................ 03000010: ffffffff ffffffff ffffffff ffffffff ................
U-boot 之TFTP伺服器配置
一.PC端配置1.關閉防火牆 [[email protected] root]# /etc/init.d/iptables stop2.使用setup啟動tftp [[email protected] root]# setup ->System
u-boot-2016.05移植:(7)、使u-boot支援燒寫檔案系統
u-boot本身支援對jffs2格式檔案系統的nand指令操作,但是沒有支援yaffs2的格式,所以我們要修改使其支援yaffs2格式檔案系統指令操作,在u-boot中搜索.yaffs,並找不到相關程式碼,所以我們轉而搜尋.jffs2 ,可以在u-boot-20
linux下tftp自動傳輸指定字尾檔案並刪除
因為專案需要,自己寫的一個檢測當前目錄下是否存在指定字尾名的檔案,若有,則通過tftp命令依次將所有檔案傳輸到指定tftp伺服器,成功後刪除對應檔案(空間有限) !/bin/sh fcounts=ls -l|grep "^-"|grep .bin|wc
nfs啟動:u-boot啟動後從ubuntu tftp下載核心及裝置樹,檔案系統掛載在nfs伺服器目錄
U-Boot# setenv netargs "setenv bootargs console=${console} ${optargs} root=/dev/nfs rootfstype=nfsroot nfsroot=${serverip}:${rootpath} ip=${ipaddr
[U-boot]u-boot檔案結構
接目錄:README分析 參考資料 uboot版本檔案結構的更新改變 最好的開始 開啟下載的u-boot,開啟README,裡面進行詳細的說明 U-Boot的README檔案的中文翻譯 1、版本號變化: 2008年8月及以前,按版本號命名: