找到一篇不錯的文章,可以幫助user去移除一些也許已經用不到的舊版snap packages,這點對我來說蠻實用的,因為我的系統透過snap裝了蠻多軟體,而且預設上snap會針對每個軟體同時存著三個版本(如果有軟體本身有升級過好幾次),好處是萬一將來發現升級上來的軟體有bug,之後可以馬上revert package,但缺點就是比較浪費硬碟空間。(你可以想像系統同時間裝了三份相同的軟體)
比較一下執行script前與後的使用空間:
Before:
After:
真的差蠻多的~ 萬一系統空間不足時,建議可以先清理一下snap舊版的軟體。
Friday, April 12, 2019
Wednesday, April 03, 2019
解決Virtualbox無法在Secure boot下使用的問題
其實我的X1 Carbon 6th在Ubuntu 18.04遇到這個問題有些日子了,但總覺得沒有必需立馬解決它。
這個現象的主要原因是Virtualbox的dkms並不是預設Secure boot認得的firmware,所以當你想要運行Virtualbox時會碰到這個問題,kernel會一直無法掛載vboxdrv。
解決的方法有兩種:
這裡我選擇讓Secure boot保持運行並且產生MOK(Machine Owner Key)keys註冊到Secure boot,以下就來實作吧!
Steps:
成功了!現在系統可以跑Virtualbox了。
這個現象的主要原因是Virtualbox的dkms並不是預設Secure boot認得的firmware,所以當你想要運行Virtualbox時會碰到這個問題,kernel會一直無法掛載vboxdrv。
解決的方法有兩種:
- 回到BIOS/UEFI去關閉Secure boot。
- 讓Secure boot保持運行,然後手動去註冊Virtualbox相關的kernel module。
這裡我選擇讓Secure boot保持運行並且產生MOK(Machine Owner Key)keys註冊到Secure boot,以下就來實作吧!
Steps:
- 建立signing keys:
openssl req -new -x509 -newkey rsa:2048 -keyout MOK.priv -outform DER -out MOK.der -nodes -days 36500 -subj "/CN=Descriptive name/"
- 註冊Virtualbox相關的modules:
sudo /usr/src/linux-headers-$(uname -r)/scripts/sign-file sha256 ./MOK.priv ./MOK.der $(modinfo -n vboxdrv)
sudo /usr/src/linux-headers-$(uname -r)/scripts/sign-file sha256 ./MOK.priv ./MOK.der $(modinfo -n vboxnetflt)
- 註冊keys到Secure boot:
sudo mokutil --import MOK.der
這個時候系統會要求你輸入一組密碼,先記起來等一下跑Enroll MOK utility時會用到。
- Reboot system+運行MOK:
Enroll MOK -> Continue -> Yes -> Input password -> Reboot system again
這邊有個例子提供上述步驟的screenshots可以參考https://sourceware.org/systemtap/wiki/SecureBoot
- 重新掛載vboxdrv與vboxnetflt:
sudo modprobe vboxdrv
sudo modprobe vboxnetflt
- 啟動Virtualbox
成功了!現在系統可以跑Virtualbox了。
Subscribe to:
Posts (Atom)