[請益] docker build kernel module 問題

作者: ice0803 (缺人SpotifyFamily)   2023-11-28 23:56:12
目前遇到的問題是
Host: Ubuntu 18.04 (kernel version 5.4)
跑一個 docker container (ubuntu 22.10, kernel version 6.5.0-10)
然後在這個container裡面
我想要 自行編譯 OpenVPN ovpn-dco
https://github.com/OpenVPN/ovpn-dco
可以編譯成功
(我在make 的時候有代入 make KERNEL_SRC=指向6.5的路徑)
但在載入ko時,Kernel log會說版本不一致
是不是在docker 編譯kernel module並載入時,有需要注意或修改的地方
先感謝大大們
作者: Bencrie   2023-11-29 01:35:00
你 build 6.5 的 module 給 5.4 去 load 不可能會過啊docker 在 Linux 下只有用 namespace 隔離而已沒有虛擬化全部的 container 都是跟 host 用同一個 kernel
作者: ice0803 (缺人SpotifyFamily)   2023-11-29 06:10:00
感謝
作者: B0988698088 (廢文少女小円♥)   2023-11-29 10:21:00
在舊系統跑新軟體然後錯誤log都跟你講為什麼了還在那為什麼不會過==
作者: Arbin (路人_Lv菜逼八)   2023-11-29 14:52:00
你這個需求比較需要VM
作者: Bencrie   2023-11-29 16:30:00
在 host 裝 driver。docker 內裝 userspace 軟體
作者: labbat (labbat)   2023-11-30 03:21:00
kvm虛擬化實在
作者: tonytonyjan (南洋大兜蟲)   2023-11-30 23:59:00
docker 不是 vm
作者: new122851 (未若柳絮因風起)   2023-12-02 11:10:00
我把你問的直接複製去問ChetGPT,就得到一樓的答案了,10秒鐘的事跑來版上問還要等人回==
作者: peter9s3b   2023-12-02 12:46:00
裝qemu
作者: borting (Twilight Eye)   2023-12-04 12:18:00
https://github.com/borting/fakeuname可以用這個方式去騙過 uname 獲得的 kernel module 版本當然, 你也要先 apt install 對應的 kernel header
作者: Bencrie   2023-12-05 00:21:00
他已經加了 KERNEL_SRC 不需要去騙 uname一定要跨版本的話就只有 vm 一途

Links booklink

Contact Us: admin [ a t ] ucptt.com