例如 USB storage, AHCI, NVMe 這些東西..
dracut -v -f --add-drivers "ahci libahci libata usb_storage uas nvme nvme_core" -f /boot/initramfs-$(uname -r).img $(uname -r)
不過我真的很不想再碰 RHEL, 不管是 distro 本身還是用它的人.
2018年12月11日 星期二
2018年11月14日 星期三
TPM2 on rhel 7
after install TPM2 software package ( tpm2-abrmd, tpm2-tss, tpm2-tools, tpm2-tss-devel ), added one file "20-tss.rules" into /etc/udev/rules.d/
/etc/udev/rules.d/20-tss.rules :
---
KERNEL=="tpm*", MODE=="0600", OWNER=="tss", GROUP=="tss"
---
then trigger the udev daemon:
udevadm control --reload-rules;udevadm trigger
enable tpm2-abrmd
systemctl enable tpm2-abrmd;systemctl start tpm2-abrmd
ps. CentOS 7 does not need to added 20-tss.rules.
/etc/udev/rules.d/20-tss.rules :
---
KERNEL=="tpm*", MODE=="0600", OWNER=="tss", GROUP=="tss"
---
then trigger the udev daemon:
udevadm control --reload-rules;udevadm trigger
enable tpm2-abrmd
systemctl enable tpm2-abrmd;systemctl start tpm2-abrmd
ps. CentOS 7 does not need to added 20-tss.rules.
2018年11月7日 星期三
DKMS for it87
這個 it87.c 我已經忘記是哪裡拿的, 我猜是從比 4.16 更後面的 kernel source 裡拆出來用, 個別編譯的. 首先的, 先安裝 dkms, 而且建議版本為 2.3-3ubuntu4, 2.3-3ubuntu3 這版確定有 mkdeb 的 bug. 而 2.3-3ubuntu4 的 .deb 我是直接拿 ubuntu 18.04 裡的直接裝在 16.04 用. 檔案下載找這裡:
http://launchpadlibrarian.net/349013047/dkms_2.3-3ubuntu4_all.deb
還有安裝一個必要套件 "debhelper"
在這列一下研究出來的 dkms.conf
---
MAKE="make -C src/ KERNELDIR=/lib/modules/${kernelver}/build"
DEST_MODULE_LOCATION="/kernel/drivers/hwmon"
CLEAN="make -C src/ clean"
BUILT_MODULE_NAME=it87
BUILT_MODULE_LOCATION=src/
PACKAGE_NAME=it87
PACKAGE_VERSION=1.0
REMAKE_INITRD=no
---
src/ 裡的檔案:
compat.h it87.c Makefile
Makefile內容:
---
TARGET := $(shell uname -r)
KERNEL_MODULES := /lib/modules/$(TARGET)
KERNEL_BUILD := /usr/src/linux-headers-$(TARGET)
SYSTEM_MAP := /boot/System.map-$(TARGET)
DRIVER := it87
MOD_SUBDIR = drivers/hwmon
obj-m := $(patsubst %,%.o,$(DRIVER))
obj-ko := $(patsubst %,%.ko,$(DRIVER))
MAKEFLAGS += --no-print-directory
.PHONY: all install modules modules_install clean
all: modules
modules clean:
@$(MAKE) -C $(KERNEL_BUILD) M=$(CURDIR) $@
install: modules_install
modules_install:
cp $(DRIVER).ko $(KERNEL_MODULES)/kernel/$(MOD_SUBDIR)
depmod -a -F $(SYSTEM_MAP) $(TARGET)
---
檔案一定要丟到 /usr/src/ 裡, 以下是我的內容, 版本為 1.0, 必需要有版本號. 以上沒提的檔案通通都可以忽略不用丟進去:
/usr/src/it87-1.0/
├── dkms.conf
├── ITE_Register_map.csv
├── ITE_Register_map.pdf
├── README
├── src
│ ├── compat.h
│ ├── it87.c
│ └── Makefile
└── TODO
這是 DKMS 一般的安裝手冊. 但是按照這個手冊跑, 它只是會編譯 .ko 檔跟安裝而已, 而我要的是每一次 upgrade kernel 時都要自己去編自己安裝...
https://help.ubuntu.com/community/DKMS
於是我簡化一下製作流程:
dkms add -m it87 -v 1.0
dkms build -m it87 -v 1.0
dkms mkdeb -m it87 -v 1.0
然後, 安裝已產生好的 deb:
dpkg -i /var/lib/dkms/it87/1.0/deb/it87-dkms_1.0_amd64.deb
這樣就可以確保每次更改 kernel 時外加的 kernel driver 也一起跟著被編譯, 被加入 initrd 裡.
http://launchpadlibrarian.net/349013047/dkms_2.3-3ubuntu4_all.deb
還有安裝一個必要套件 "debhelper"
在這列一下研究出來的 dkms.conf
---
MAKE="make -C src/ KERNELDIR=/lib/modules/${kernelver}/build"
DEST_MODULE_LOCATION="/kernel/drivers/hwmon"
CLEAN="make -C src/ clean"
BUILT_MODULE_NAME=it87
BUILT_MODULE_LOCATION=src/
PACKAGE_NAME=it87
PACKAGE_VERSION=1.0
REMAKE_INITRD=no
---
src/ 裡的檔案:
compat.h it87.c Makefile
Makefile內容:
---
TARGET := $(shell uname -r)
KERNEL_MODULES := /lib/modules/$(TARGET)
KERNEL_BUILD := /usr/src/linux-headers-$(TARGET)
SYSTEM_MAP := /boot/System.map-$(TARGET)
DRIVER := it87
MOD_SUBDIR = drivers/hwmon
obj-m := $(patsubst %,%.o,$(DRIVER))
obj-ko := $(patsubst %,%.ko,$(DRIVER))
MAKEFLAGS += --no-print-directory
.PHONY: all install modules modules_install clean
all: modules
modules clean:
@$(MAKE) -C $(KERNEL_BUILD) M=$(CURDIR) $@
install: modules_install
modules_install:
cp $(DRIVER).ko $(KERNEL_MODULES)/kernel/$(MOD_SUBDIR)
depmod -a -F $(SYSTEM_MAP) $(TARGET)
---
檔案一定要丟到 /usr/src/ 裡, 以下是我的內容, 版本為 1.0, 必需要有版本號. 以上沒提的檔案通通都可以忽略不用丟進去:
/usr/src/it87-1.0/
├── dkms.conf
├── ITE_Register_map.csv
├── ITE_Register_map.pdf
├── README
├── src
│ ├── compat.h
│ ├── it87.c
│ └── Makefile
└── TODO
這是 DKMS 一般的安裝手冊. 但是按照這個手冊跑, 它只是會編譯 .ko 檔跟安裝而已, 而我要的是每一次 upgrade kernel 時都要自己去編自己安裝...
https://help.ubuntu.com/community/DKMS
於是我簡化一下製作流程:
dkms add -m it87 -v 1.0
dkms build -m it87 -v 1.0
dkms mkdeb -m it87 -v 1.0
然後, 安裝已產生好的 deb:
dpkg -i /var/lib/dkms/it87/1.0/deb/it87-dkms_1.0_amd64.deb
sandisk extreme A2 microSD
很白爛的測試, 測試開機花掉的時間. OS: ubuntu xfce4 16.04.5(LTS) kernel 4.15.0-38, rootfs 為 btrfs, zlib:3 壓縮, no swap, 硬體為 iBASE IB897, atom E3845 1.91Ghz, 2+2GiB DDR3L-1600.
transcend class-10 8G: 64.62秒
sandisk exterme A2 64G: 59.90秒.
transcend class-10 8G: 64.62秒
sandisk exterme A2 64G: 59.90秒.
2018年8月19日 星期日
Windows 10 傳統注音輸入法
這裡要講的不是加 registry 把隱藏的純注音輸入法叫出來, 那種方法會僅只能在桌面 app 使用, 像 win10 專用的 app 如 LINE 就無法使用 (至於僅只能在桌面 app 使用的輸入法有沒有關係呢....? 對我來講僅只有 LINE 受影響而已, 關係不大), 而我自己是用 yahoo 輸入法, 這個輸入法很好用, 但再也沒人維護的情況下, 終就不是長久的解決之道, 也就是說, 一直沒有我滿意的解決方案.
而這個問題直到我發現 PIME 輸入法可以切換輸入法碼表 (也就是選字順序) 開始有了點改變..
PIME 怎麼樣就不是本篇重點不再介紹 (安裝時預設沒有傳統注音, 要自己勾選), 這裡我只寫出個人的設定筆記, 以下沒列的就是我沒改.
一般設定 -> 打字行為:
預設狀態 -> 預設以英文模式啟動
行為設定 -> 使用 Shift 快速切換中英文
候選清單 -> 使用空白鍵作為候選清單換頁鍵
候選清單 -> 優先以聯想字詞排序候選清單 (X) (勾掉不要)
輸出設定 ->
輸出設定 -> 允許內建符號輸入方式連續輸入
其它設定 -> 隱藏不必要的提示訊息
界面外觀 -> 界面設定:
每列顯示候選字個數: 10
每頁顯示候選字個數: 10
碼表設定 -> 輸入法碼表:
輸入法碼表: 傳統注音
最後一個對我很重要, 因為預設是泰瑞注音, 選字順序有很多都跟傳統注音不同, 對一個傳統注音用的很習慣, 早就把選字表背的牢牢的我來說, 改選字順序跟叫我換一個輸入法幾乎沒有差別,
PIME 這個輸入法有個好處, 你的主要語系如果是英文, 也不受影響.
而這個問題直到我發現 PIME 輸入法可以切換輸入法碼表 (也就是選字順序) 開始有了點改變..
PIME 怎麼樣就不是本篇重點不再介紹 (安裝時預設沒有傳統注音, 要自己勾選), 這裡我只寫出個人的設定筆記, 以下沒列的就是我沒改.
一般設定 -> 打字行為:
預設狀態 -> 預設以英文模式啟動
行為設定 -> 使用 Shift 快速切換中英文
候選清單 -> 使用空白鍵作為候選清單換頁鍵
候選清單 -> 優先以聯想字詞排序候選清單 (X) (勾掉不要)
輸出設定 ->
輸出設定 -> 允許內建符號輸入方式連續輸入
其它設定 -> 隱藏不必要的提示訊息
界面外觀 -> 界面設定:
每列顯示候選字個數: 10
每頁顯示候選字個數: 10
碼表設定 -> 輸入法碼表:
輸入法碼表: 傳統注音
最後一個對我很重要, 因為預設是泰瑞注音, 選字順序有很多都跟傳統注音不同, 對一個傳統注音用的很習慣, 早就把選字表背的牢牢的我來說, 改選字順序跟叫我換一個輸入法幾乎沒有差別,
PIME 這個輸入法有個好處, 你的主要語系如果是英文, 也不受影響.
2018年7月7日 星期六
mount --bind in fstab
ex:
/dev/shm /tmp none defaults,bind 0 0
ubuntu 底下加速蠻多的, 也不需要另外多加上 systemd 的 service.
/dev/shm /tmp none defaults,bind 0 0
ubuntu 底下加速蠻多的, 也不需要另外多加上 systemd 的 service.
2018年6月21日 星期四
sdelete for windows
簡單的說這個工具專門清洗非使用中磁區的, 對 SSD 有沒有用我不確定, 但如果你是 VM, VM 裡跑的又是較老舊的 OS 如 WinXP, VM 檔案又是放在有壓縮功能的檔案系統如 btrfs, zfs, 這個清除工具就可以幫你清出一些不用的空間出來.
https://docs.microsoft.com/en-us/sysinternals/downloads/sdelete
https://docs.microsoft.com/en-us/sysinternals/downloads/sdelete
訂閱:
文章 (Atom)