uboot下可以通過命令訪問和修改環境變數,但是如果需要在linux系統下訪問這些資料該怎麼辦呢?其實uboot早就幫我們想好了。
1、編譯fw_printenv工具
在你使用的uboot**中用以下編譯指令:2、安裝fw_printenv工具make env
這樣就可以編譯tools/env下的**,編譯出的fw_printenv工具有讀寫uboot環境變數區的能力。這個工具是針對目標機的,也就是說如果你的uboot**之前是針對arm編譯的話,fw_printenv也是交叉編譯給arm晶元的。
到/tools/env目錄中,將編譯好的fw_printenv拷貝到目標機的檔案系統中,並通過"ln -s fw_printenv fw_setenv",建立乙個fw_setenv到fw_printenv的軟鏈。3、fw_printenv工具的使用這個工具還需要乙個配置檔案,以獲取uboot的env區域的位置資訊。預設狀態下,請將fw_env.config檔案拷貝到目標機的檔案系統的/etc目錄下。然後結合uboot配置中定義的env區和linux下mtd分割槽的情況修改配置檔案。具體的修改方法見fw_env.config檔案中的說明及/tools/env/readme檔案。
其實fw_printenv使用起來和uboot下的printenv和setenv指令是一模一樣的。對uboot中環境變數testsequence的引用,可以使用如下的方式:先定義乙個臨時檔案,將uboot中的環境變數寫進入,然後source,之後就可以在當前shell中用$testsequence的形式呼叫該環境變數。fw_printenv [[ -n name ] | [ name ... ]]
# ./fw_printenv -n baudrate
115200
# ./fw_printenv baudrate
baudrate=115200
如果不指定name,fw_printenv會列印出env區中的所有環境變數
fw_setenv name [ value ... ]
如果不指定value,表示要刪除這個name的環境變數。
# ./fw_setenv temp tekkaman
# ./fw_printenv -n temp
tekkaman
# ./fw_setenv temp
# ./fw_printenv -n temp
## error: "temp" not defined
#!/bin/sh
tmp_id="/tmp/lgf.txt"
fw_printenv testsequence >> $tmp_id
source $tmp_id
echo "$testsequence"
linux下讀寫u boot環境變數驗證
uboou版本 u boot 2018.01 核心版本 4.19.0 xilinx 作業系統 debian gnu linux 8 jessie 使用工具 fw printenv uboot下可以通過命令訪問和修改環境變數,但有時候我們也需要在linux系統下訪問這些資料。為此u boot為我們實現...
Linux環境下Mysql開啟遠端訪問許可權
如何通過window的資料庫視覺化工具遠端連線裝在linux上的mysql呢?可以按照以下步驟逐一確認!netstat ntlp grep mysql 先執行 vim etc my.cnf mysqld port 3306 bind address 0.0.0.0 這一行改成0.0.0.0 或者直接...
ubuntu環境下訪問windows共享目錄
在ubuntu環境下訪問windows共享目錄 一 windows端設定 1 新建乙個用於訪問共享目錄的賬戶,或者使用已有使用者。新使用者可直接在 控制面板 的 使用者管理 中新增。也可通過cmd命令 管理員許可權 net user a aaa add 新增普通許可權的使用者a,密碼aaa 2 新建...