作者ice0803 (因為我熱愛)
看板Soft_Job
標題[請益] docker build kernel module 問題
時間Tue Nov 28 23:56:12 2023
目前遇到的問題是
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並載入時,有需要注意或修改的地方
先感謝大大們
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 223.137.101.202 (臺灣)
※ 文章網址: https://webptt.com/m.aspx?n=bbs/Soft_Job/M.1701186974.A.A7C.html
※ 編輯: ice0803 (223.137.101.202 臺灣), 11/28/2023 23:59:32
※ 編輯: ice0803 (223.137.101.202 臺灣), 11/29/2023 00:00:44
1F:推 Bencrie: 你 build 6.5 的 module 給 5.4 去 load 不可能會過啊 11/29 01:35
2F:推 Bencrie: docker 在 Linux 下只有用 namespace 隔離而已沒有虛擬化 11/29 01:38
3F:→ Bencrie: 全部的 container 都是跟 host 用同一個 kernel 11/29 01:38
4F:→ ice0803: 感謝 11/29 06:10
5F:噓 B0988698088: 在舊系統跑新軟體然後錯誤log都跟你講為什麼了還在 11/29 10:21
6F:→ B0988698088: 那為什麼不會過== 11/29 10:21
7F:推 Arbin: 你這個需求比較需要VM 11/29 14:52
8F:推 Bencrie: 在 host 裝 driver。docker 內裝 userspace 軟體 11/29 16:30
9F:→ labbat: kvm虛擬化實在 11/30 03:21
10F:推 tonytonyjan: docker 不是 vm 11/30 23:59
11F:推 new122851: 我把你問的直接複製去問ChetGPT,就得到一樓的答案了, 12/02 11:10
12F:→ new122851: 10秒鐘的事跑來版上問還要等人回== 12/02 11:10
13F:→ peter9s3b: 裝qemu 12/02 12:46
15F:→ borting: 可以用這個方式去騙過 uname 獲得的 kernel module 版本 12/04 12:18
16F:→ borting: 當然, 你也要先 apt install 對應的 kernel header 12/04 12:19
17F:推 Bencrie: 他已經加了 KERNEL_SRC 不需要去騙 uname 12/05 00:21
18F:推 Bencrie: 一定要跨版本的話就只有 vm 一途 12/05 00:23