今天要在Linux環境下,執行iperf3來測試LAN Throughput發生以下的錯誤訊息:
iperf3: error - unable to create a new stream: No such file or directory
會有這個錯誤訊息,是因為iperf3在執行時,會寫一個iper3.XXXXXX的檔案,而要寫入此檔案的路徑我們要從source code的 iperf/src/iperf_api.c 來觀察,如下圖:
可以看到,在這邊有定義了一個路徑,而我會出現這個錯誤訊息的原因,就是因為沒有/tmp這個資料夾,導致iperf3無法寫入iper3.XXXXXX的檔案
因此在系統中建立好此資料夾,再執行iperf3執行檔,就可以了~
2019年7月22日 星期一
2019年7月16日 星期二
查看目前kernel支援哪些FileSystem
查詢目前Linux 支援的檔案系統(可載入的module)
# ls -l /lib/modules/$(uname -r)/kernel/fs
系統目前已載入到記憶體中支援的檔案系統
# cat /proc/filesystems
nodev sysfs
nodev rootfs
nodev proc
nodev tmpfs
ext3
ext2
ext4
nodev fuse
fuseblk
# ls -l /lib/modules/$(uname -r)/kernel/fs
系統目前已載入到記憶體中支援的檔案系統
# cat /proc/filesystems
nodev sysfs
nodev rootfs
nodev proc
nodev tmpfs
ext3
ext2
ext4
nodev fuse
fuseblk
2019年7月11日 星期四
Linux設定IP, BroadCast, netmask的指令
利用ifconfig一行就可以解決,如下指令:
ifconfig eth0 192.168.1.5 broadcast 192.168.1.255 netmask 255.255.255.0
ifconfig eth0 192.168.1.5 broadcast 192.168.1.255 netmask 255.255.255.0
2019年5月24日 星期五
u-boot底下使用指令 mw, md 來寫入/讀取 register的值
寫入
mw [位址] [value] [長度]
example:
mw 0xf10a8180 1f9e1001 1 ==> 修改位址0xf10a8180把32bit改為1f9e1001
讀取
md [位址] [長度]
example:
md 0xf10a8180 1 ==> 讀取位址0xf10a8180的值長度為1個32bit
mw [位址] [value] [長度]
example:
mw 0xf10a8180 1f9e1001 1 ==> 修改位址0xf10a8180把32bit改為1f9e1001
讀取
md [位址] [長度]
example:
md 0xf10a8180 1 ==> 讀取位址0xf10a8180的值長度為1個32bit
2019年5月15日 星期三
S5 真無線 MTK 藍芽耳機,無法兩耳同時配對,回覆原廠設置的方法
1. 先長壓,讓兩支耳機都進入關機的狀態
2. 關機狀態下,再長按,直到耳機不會再有燈閃爍(約15s~20s)
3. 放進充電座,已回復原廠設定
4. 下次再拿出來,就可以兩耳同時配對了~
注意: 手機端與S5配對過的記錄,記得也要先取消配對~
2. 關機狀態下,再長按,直到耳機不會再有燈閃爍(約15s~20s)
3. 放進充電座,已回復原廠設定
4. 下次再拿出來,就可以兩耳同時配對了~
注意: 手機端與S5配對過的記錄,記得也要先取消配對~
2019年5月9日 星期四
解決"-bash: /opt/armv7-marvell-linux-gnueabi-softfp_i686_64K_Dev_20131002/cross/bin/arm-marvell-linux-gnueabi-gcc: 沒有此一檔案或目錄" 的方法
一開始遇到這個問題,覺得很奇怪,網路搜尋了一下,原來發生這個問題是因為32位元的toolchain無法相容在64位元的作業系統,所以發生此問題~
解決方法,安裝以下的32位元library:
# sudo apt-get install lib32z1 lib32ncurses5
解決方法,安裝以下的32位元library:
# sudo apt-get install lib32z1 lib32ncurses5
2019年5月6日 星期一
如何用make傳遞參數給Makefile
這邊以buildroot為範例,當你想要re-build package(假設是mysql)的時候,我們下執行下面的指令:
# make mysql-rebuild
那假設我們要在Makefile當中,能夠動態的指定rebuild任何一種package, 可以用下面的方式:
Makefile寫法~
==================================================================
buildroot_rebuild_pkg:
make $(PKG)-rebuild
=================================================================
因此假若我們現在要rebuild mysql, 可以在Makefile那一層這樣子下就行了:
# make buildroot_rebuild_pkg PKG=mysql
# make mysql-rebuild
那假設我們要在Makefile當中,能夠動態的指定rebuild任何一種package, 可以用下面的方式:
Makefile寫法~
==================================================================
buildroot_rebuild_pkg:
make $(PKG)-rebuild
=================================================================
因此假若我們現在要rebuild mysql, 可以在Makefile那一層這樣子下就行了:
# make buildroot_rebuild_pkg PKG=mysql
訂閱:
文章 (Atom)
