由於CentOS 預設核心為2.6.18,故需要升級核心
升級核心到2.6.27,很容易,但升級到2.6.28後的版本折騰了我很久
升級到2.6.27
wget http://www.kernel.org/pub/linux/kernel/v2.6/linux-2.6.27.tar.gz
tar zxvf linux-2.6.27.tar.gz -C /usr/src
cd /usr/src/linux-2.6.27
make menuconfig
make
make modules_install
cp arch/i386/boot/bzImage /boot/vmlinuz-2.6.27-root (注意:目錄i386是根據你的系統類別型, 如果是64位系統, 那就很可能是x86_64)
cp System.map /boot/System.map-2.6.27-root
mkinitrd /boot/initrd-2.6.27-root.img 2.6.27
vi /etc/grub.conf
title CentOS (2.6.27)
root (hd0,6)
kernel /vmlinuz-2.6.27-root ro root=/dev/VolGroup00/LogVol00 rhgb quiet
initrd /initrd-2.6.27-root.img
title CentOS (2.6.18-92.1.18.el5)
root (hd0,6)
kernel /vmlinuz-2.6.18-92.1.18.el5 ro root=/dev/VolGroup00/LogVol00 rhgb quiet
initrd /initrd-2.6.18-92.1.18.el5.img
title CentOS (2.6.18-53.el5)
root (hd0,6)
kernel /vmlinuz-2.6.18-53.el5 ro root=/dev/VolGroup00/LogVol00 rhgb quiet
initrd /initrd-2.6.18-53.el5.img
title qrpeng windows xp
rootnoverify (hd0,0)
chainloader +1
reboot
升級到2.6.33
由於需要安裝LVS,需要核心版本為2.6.28以上,於是開始升級新核心,折騰了很久,最後按照如下步驟搞定的:
wget http://www.kernel.org/pub/linux/kernel/v2.6/linux-2.6.33.tar.gz
tar zxvf linux-2.6.33.tar.gz -C /usr/src
cd /usr/src/linux-2.6.33
make distclean
cp /boot/config-2.6.18-164.el5 .config
make menuconfig
修改.config檔案,在.config檔案搜尋CONFIG_SYSFS_DEPRECATED_V2,會發現#CONFIG_SYSFS_DEPRECATED_V2 is notset這一行,將該行修改為CONFIG_SYSFS_DEPRECATED_V2=y
make all
make modules_install
make install
不要重新啟動需要修改initrd
1.解壓initrd
cp /boot/initrd-2.6.33.img /tmp
cd /tmp/
mkdir newinitrd
cd newinitrd/
zcat ../initrd-2.6.33.img |cpio -i
2,編輯init,刪掉重複的兩行
echo “Loading dm-region-hash.ko module”
insmod /lib/dm-region-hash.ko
echo “Loading dm-region-hash.ko module”
insmod /lib/dm-region-hash.ko
3,重新打包initrd
find .|cpio -c -o > ../initrd
cd ..
gzip -9 < initrd > initrd-2.6.33.img
initrd-2.6.33.img就是重新打包的initrd了,然後把initrd-2.6.33.img拷貝到/boot。
安裝kernel-devel
到http://ftp.yz.yamagata-u.ac.jp/pub/linux/Vine/VineSeed/i386/RPMS.main/ 或者http://fr.rpmfind.net/linux/RPM/fedora/devel/i386/Fedora_Project.html相應版本即可
安裝KVM
開啟SELinux
(如果你的SELinux被禁用,virt-install將不會正常工作)
system-config-securitylevel-tui
kvm安裝
(a)檢查CPU是否支援硬體虛擬化-運行命令
egrep ‘(vmx|svm)’ –color=always /proc/cpuinfo
(如果輸出的結果包含 vmx,它是 Intel;如果包含 svm,它是 AMD。如果你甚麼都得不到,那應你的系統並沒有支援虛擬化的處理。)
(b)安裝KVM和virtinst(一個建立虛擬機器的工 具),我們運行
yum install kvm kmod-kvm qemu libvirt python-virtinst
然後重新啟動系統:
Reboot
檢查
使用下列命令檢查KVM是否成功安裝
virsh -c qemu:///system list
將會顯示如下結果:
[root@server1 ~]# virsh -c qemu:///system list
Id Name State
———————————-
[root@server1 ~]#
如果在這裡顯示的是一個錯誤的資訊,說明有些東西出現了問題。
橋接網路
1)假如你想客端在內連網上以個別一台主機出現,讓整個網路看得見,你需要採用橋接網路。
yum install bridge-utils2)建立檔案/etc/sysconfig/network-scripts/ifcfg-br0
vi /etc/sysconfig/network-scripts/ifcfg-br0
DEVICE=br0
TYPE=Bridge
BOOTPROTO=static
BROADCAST=192.168.0.255
IPADDR=192.168.0.100
NETMASK=255.255.255.0
NETWORK=192.168.0.0
ONBOOT=yes
注意將上面的IP地址配置為你原生IP地址
3)修改/etc/sysconfig/network-scripts/ifcfg-eth0,藍色資訊注釋掉,紅色為新添加
vi /etc/sysconfig/network-scripts/ifcfg-eth0
# Realtek Semiconductor Co., Ltd. RTL-8139/8139C/8139C+
DEVICE=eth0
#BOOTPROTO=static
#BROADCAST=192.168.0.255
HWADDR=00:10:A7:05:AF:EB
#IPADDR=192.168.0.100
#NETMASK=255.255.255.0
#NETWORK=192.168.0.0
ONBOOT=yes
BRIDGE=br0
注意,此處一定要將eth0(即物理網卡,根據自己機器來確定名字)的IP地址要注釋掉,否則配置不正確
KVM管理
GUI
安裝 virt-viewer 或者virt-manager
yum install virt-viewer virt-manager
以GUI安裝OS
終端中輸入 virt-manager 或者點擊系統功能表:Applications—>System tools –>Virtual Machine Manager,將彈出GUI介面,利用該介面就很容易的安裝新作業系統了。
注意,在此步執行前,請確保SELinux關閉或者是 permissive
管理客戶機
可通過virt-manager或者virsh命令儘力管理
串連到virtual shell,運行
virsh –connect qemu:///system
進入後可用help命令尋求協助
FAQ
如果建立客戶機總是報錯,說“Internal Error:Domain xxx didn’t show up”,是SELinux的問題,把SELinux設定permissive就可以了
在虛擬機器中編譯27核心時出現make: *** [_modinst_post] Error 137錯誤。
查了一下,是swap不夠大,暈掉……