kvm安裝centos7 KVM從入門到放棄

2021-10-13 16:16:45 字數 3876 閱讀 7889

在ubuntu16上裝的,qemu,kvm裡裝的ubuntu10,可用。

配置網橋部分沒做,ubuntu10可以執行,網路功能暫時沒有嘗試。

linux中國:如何在 ubuntu 18.04 伺服器上安裝和配置 kvm​zhuanlan.zhihu.com

編譯前,需要把系統裡的config檔案copy過來,命名為.config(系統中config檔案的名稱可能不一樣):

【報錯】include/generated/autoconf.h or include/config/auto.conf are missing.

編譯linux驅動程式 遇到的問題 - 飛奔的豬 - ​www.cnblogs.com

編譯過程中可能還會遇到其他報錯,基本都是apt install ***可以解決的

【報錯】could not insert 'kvm':exec format error

【參考】

單獨編譯kvm模組 - pojowsh - ​www.cnblogs.com

【ubuntu18+kernel4.18.0-15 最終版bash】

#this is amd version

path="/linux-4.18" #put in your own path

echo "1.rmmod kvm_amd kvmn"

rmmod kvm_amd

rmmod kvm

echo "2.rm kvm-amd.ko kvm.kon"

rm /lib/modules/$(uname -r)/kernel/arch/x86/kvm/kvm.ko

rm /lib/modules/$(uname -r)/kernel/arch/x86/kvm/kvm-amd.ko

echo "3.make clean kvm modulen"

make clean config_kvm=m config_amd_kvm=m -c $ m=$/arch/x86/kvm

echo "4.make kvm module"

make oldconfig

make prepare

make scripts

make config_kvm=m config_amd_kvm=m -c $ m=$/arch/x86/kvm

echo "5.insmod kvm-amd.ko kvm.kon"

cp $/arch/x86/kvm/kvm-amd.ko /lib/modules/$(uname -r)/kernel/arch/x86/kvm/

cp $/arch/x86/kvm/kvm.ko /lib/modules/$(uname -r)/kernel/arch/x86/kvm/

echo "6.modprobe kvm_amd kvm"

depmod -a

modprobe kvm_amd

modprobe kvm

lsmod|grep kvm

ls -l /dev/kvm

前期安裝準備:

sudo apt-get install libssl-dev libelf-dev
這個bash要放在原始碼資料夾裡執行

執行前要複製.config檔案和module.symvers檔案到原始碼資料夾

windows複製到linux的bash還需要用dos2unix(dos2unix ***.sh)工具轉換一下格式

還要改一下makefile檔案裡的版本資訊

記得以root許可權執行

本菜雞真的被這個折磨了好久啊(sigh)……

然後發現這樣裝完之後新建不了虛擬機器了???creating domain這一步會卡住……(是不是要make clean 一下?還沒試過)

【centos7.4安裝】

centos7下用核心原始碼單獨編譯安裝kvm模組_wang1791499553的部落格-csdn部落格_centos7 自帶kvm模組​blog.csdn.net

kvm虛擬化系統安裝_wcs_sdu的部落格-csdn部落格_kvm虛擬化安裝​blog.csdn.net

#保持預設選項 exit退出

make modules_prepare

make modules subdirs=arch/x86/kvm/

#刪除原kvm模組:

rmmod kvm-intel.ko

rmmod kvm.ko

#插入修改後的kvm模組:

insmod arch/x86/kvm/kvm.ko

insmod arch/x86/kvm/kvm-intel.ko

yum install kernel-devel 可以獲得原始碼,裡面有編譯核心的配置檔案,路徑為/usr/src/kernels

【師兄的踩坑筆記】

從/usr/src/kernels/3.10.0.x86_64/

或/lib/modules/3.10.0.x86_64/source

獲取到.config,複製到原始碼中

make modules_prepare

make -j8 modules

此時已經生成ko檔案,但是執行insmod會出現格式錯誤

複製module.symvers到原始碼資料夾

make modules subdirs=arch/x86/kvm

insmod arch/x86/kvm/kvm.ko

insmod arch/x86/kvm/kvm-amd.ko

#include #include #include #include #include #include #define kvm_file "/dev/kvm"

int main(int argc, char *ar**)

/* 檢視kvm版本 */

ret = ioctl(dev, kvm_get_api_version, 0);

fprintf(stdout, "kvm api version:%dn", ret);

/* 檢視推薦的最大vcpu數 */

ret = ioctl(dev, kvm_check_extension, kvm_cap_nr_vcpus);

if (ret==-1) else

/* 檢視最大支援的最大vcpu數 */

ret = ioctl(dev, kvm_check_extension, kvm_cap_max_vcpus);

if (ret==-1) else

close(dev);

return 0;

}

【參考】

kvm學習1--安裝編譯測試kvm模組_zhang_syi的部落格-csdn部落格​blog.csdn.net

kvm核心原始碼學習之原始碼組成_huagongzxuezi的專欄-csdn部落格_kvm核心原始碼​blog.csdn.net

Linux下Centos7 KVM 簡單命令及使用

一些簡單的管理命令 命令格式 virsh 控制指令 虛擬機器名稱 引數 virsh 進入虛擬化交換式終端 quit 退出 help 獲取命令幫助 virsh list all 列出虛擬機器 檢視虛擬機器 資訊 virsh nodeinfo 檢視虛擬機器資訊 virsh dominfo 虛擬機器名稱 ...

centos7 kvm虛擬機器中開啟虛擬機器

1 檢視當前宿主機系統中是否支援。cat sys module kvm intel parameters nested y 結果為y表示當前的作業系統已經支援了巢狀虛擬化,使用跑虛擬化的程式直接使用就ok了 n 那當然就表示當前作業系統未配置巢狀虛擬化嘍2 如果你的結果為n,看下配置過程吧 vi e...

centos 安裝KVM及使用

一 安裝kvm 原始鏈結 1.檢查cpu是否支援kvm intel vmx amd svm egrep vmx svm proc cpuinfo2.安裝kvm yum y install qemu kvm libvirt python virtinst bridge utils檢查kvm是否安裝成功...