Category Archives: UNIX


This is a quick note about how to modify mac address for qemu image with ubuntu 18.04 cloud image.

but I have not found a working way only change mac address in system

Read more »

Ubuntu 18.04 ARM64 DPDK in VM (QEMU)

DPDK is a very popular infrastructure in high speed packet process domain, some applications will used the same architecture to process packet, like EPC.

For Ubuntu 18.04, it used dpdk 17.11, it not good for some other application like dpdk pktgen, but enough for testpmd and l3fwd test. here is some personal note for setup whole environment.

DPDK in QEMU archeticture
Read more »

Ubuntu Change Default Mac Address

Ubuntu used netplan as new network manager, but it’s different with previous version.

First create a new file /etc/systemd/network/



52:54:00:12:34:56 is old mac, and 52:54:00:12:34:58 is new mac .

Second, modify /etc/netplan/01-netcfg.yaml, create match: and macaddress field , example

version: 2
dhcp4: true
macaddress: ’52:54:00:12:34:58′
set-name: eth0


Netplan not spoofing MAC as expected

Gentoo ARM64 Docker Image

There is a long time no article about gentoo on my blog.

Today, I have a whim to do a gentoo ARM64 docker image, so, we have this article.

Please understand that ARM64 Gentoo is experimental, and might be different after a while.

Read more »

QEMU Run x86_64 on ARM64 Server command

This is a work note for run x86_64 on ARM64 server .
Because they are different archeticture, so, run x86_64 on ARM server would be very slow.

and some functions might be different when run on different platform

Read more »

Kdump in ubuntu 18.04 ARM64

kdump is very good tool to debug complex system like cloud data center, it can easy to save kernel status when crash.
Running kdump in ARM64 just like running in x86, but I met a strange problem on ARM64 platform.

The kernel version is HWE kernel, current version is 4.18.0-25, mihbt be encounter those problems

Read more »

ARM64 Kdump cannot allocate crashkernel

In ARM64 server and installed memory around 128G, ubuntu default /etc/default/grub.d/kdump-tools.cfg default configuration might cause kdump allocate memory failed. error message as below

[ 0.000000] cannot allocate crashkernel (size:0x80000000)
[ 0.000000] Kernel command line: BOOT_IMAGE=/boot/vmlinuz-4.18.0-25-generic root=UUID=ee8be10d-d649-425d-a807-640751836186 ro console=tty0 crashkernel=2G-4G:320M,4G-32G:512M,32G-64G:1024M,64G-128G:2048M,128G-:4096M

Read more »

Kubuntu執行GTK 程式的怪問題+gcin改dayi三碼表

這個故事有點長,先講結論好了, hime 似乎會影響某些 GTK 程式運作

Read more »

[Gentoo] Moved to eudev from udev

好久沒有寫 Gentoo 的文章了,畢竟除了一般性升級也懶得再動什麼,不過最近一次升級系統又爛了

所有的 network interface 變成 eth0/eth1 ….. ,不再是 predictable network interface names (可預測的網路介面名稱像是 ensp1 這樣的)

Read more »

WSL (Windows Subsystem for Linux) 和 Windows App 的檔案權限問題

WSL 在一些輕量級的 Linux application 下很好用,不過如果專案稍大一點,vim 就不夠力

這時候如果用 Windows application 同時開發,如果寫入到 home 目錄的權限,檔案的 mode 會是 000
要手動改 755 才可以編輯

WSL 執行時仍然是用執行使用者的權限,雖然也可以跑在 admin mode 但是不建議

所以要讓 WSL Linux 和 Windows 同時開發,要將程式放在 /mnt/<driver> 下
讓 Windows 管理整個權限,就不會有寫到 home 目錄之後,檔案的 mode 變 000 的狀況

VSCODE cannot save file launched by WSL 18.04