热门标签 | HotTags
当前位置:  开发笔记 > 运维 > 正文

KVM虚拟机的安装

1、首先用命令egrep-c(vmx|svm)/proc/cpuinfo检查看是否支持虚拟如果返回0则表示CPU不支持虚拟,这样安装会不成功,如果返回结果为1或者大于1到数字则表示CPU支持虚拟。也可以用命令kvm-ok查看CPU支持虚拟不。2、在bios里面到高级选项里面开启虚拟,即将
1、首先用命令egrep -c '(vmx|svm)' /proc/cpuinfo检查看是否支持虚拟如果返回0则表示CPU不支持虚拟,这样安装会不成功,如果返回结果为1或者大于1到数字则表示CPU支持虚拟。也可以用命令kvm-ok查看CPU支持虚拟不。

2、在bios里面到高级选项里面开启虚拟,即将Virtualization technology(或者是Vanderpool technology)该为enable

3、确保内核版本支持kvm,用命令uname -r查看内核版本,如果在2.6.20以下的linux版本,需升级内核,用命令uname -m查看运行到系统到内核时多少位到,如果返回为x86_64表示你到系统运行到内核时64位。用命令egrep -c ' lm ' /proc/cpuinfo查看你到CPU是否时64位的,如果返回0表示你到CPU不时64位到,否则返回1或者更高数字表示你到CPU时64位。

4、安装kvm
sudo apt-get install qemu-kvm libvirt-bin ubuntu-vm-builder bridge-utils 安装成功后会有/dev/kvm,再来查看下KVM是否安装成功,执行:virsh -c qemu:///system list
  如果输入结果像下面这样的,那么成功了:
  Connecting to uri: qemu:///system
  Id Name State
  ----------------------------------
可以用以下命令来检查是否装入kvm模块:
  /sbin/lsmod | grep kvm
  如果输出关于kvm版本的信息则已装入kvm模块
如果是在图形界面管理kvm则可以安装管理工具sudo apt-get install virt-manager

5、在kvm下安装虚拟机
先要用kvm-img命令创建一个虚拟磁盘,mkdir /home/xiaoyu/kvm, cd kvm, kvm-img create -f qcow2 ubuntu.img 10G //-f qcow2 的意思是创造一个文件 ,最大大小是10G
create意思是创建一个新的磁盘,-f指定该磁盘的类型这里选择qcow2,qemu的磁盘大小是随着需要可以自动的增大的,所以初始可以选择小点。(此处也可以用旧的命令qemu-img来创建,如果qemu-img create -f qcow2 ubuntu.img 10G)

虚拟磁盘创建好了,我们就可以安装系统了,无论386还是64位的机器都用kvm命令
kvm -m 1024 -drive file=/home/cbpos/kvm/ubuntu.img,cache=writeback -net nic,vlan=0,model=virtio,macaddr=52-54-00-12-34-01 -net tap,vlan=0,ifname=tap0,script=no -boot d (-vnc IP:1) -cdrom /home/cbpos/ubuntu-10.04.2-server-amd64.iso -no-acpi
-drive file cache=writeback指定了虚拟磁盘文件,这里用我们刚刚创建的ubuntu.img,并启用writeback缓存
model=virtio  通过virtio(高速网络)来使用网络,速度可以接近真实网卡的速度,以后在启动虚拟机命令后面加上-net nic,model=virtio就可以了。
-cdrom指定cdrom是那一个,可以用iso文件,也可以用机器的光驱,我们选择用iso文件,如果用光驱尝试-cdrom /dev/cdrom
-boot指定XP启动的时候从磁盘,硬盘,光驱还是网路上启动,我们安装的时候选择从光盘启动,所以用d
-m虚拟机使用的内存大小,单位是MB,默认是128mb,我用的是1024,因为我内存大,呵呵。
-no-acpi由于qemu支持不太好会导致系统很慢,所以我们暂时禁止掉。
注意:按照以往的方法是用-hda /home/cbpos/kvm/ubuntu.img的方法来使用虚拟磁盘,现在版本更新以后用 -drive file=/home/cbpos/kvm/ubuntu.img,cache=writeback来使用虚拟磁盘,因为-hda/hdb参数主要是用户使用物理硬盘上的一个分区,这样磁盘性能不好。
-vnc IP:3389 IP是主机的IP地址,3389是端口号,这样用户可以远程桌面或者用ubuntu自带到终端服务客户断连接到虚拟机安装系统。(此选项一般不要)

如果有需要用图形界面管理虚拟机则可以安装图形界面工具sudo apt-get install virt-manager
注意:
如果时在服务器里安装虚拟系统可能会出现Could not initialize SDL - exiting到问题,则需要在终端中用命令ssh -X user@server登录到服务器,然后在安装虚拟系统。

6、kvm安装好虚拟系统后就可以启动系统(使用qemu-system-x86_64启动虚拟系统,效率及其低下,换用kvm启动虚拟系统就OK)。
使用root帐号启动虚拟机,命令如下:
kvm -m 1024 -drive file=/home/cbpos/kvm/ubuntu.img,cache=writeback -net nic,vlan=0,model=virtio,macaddr=52-54-00-12-34-01 -net tap,vlan=0,ifname=tap0,script=no -boot c -nographic -daemonize 来boot启动系统。(-boot c表示从硬盘启动)
注意:-nographic -daemonize是当主机时服务器,没有图形界面时,让虚拟机在后台运行,然后通过ssh连接虚拟机,操作使用虚拟机。
启动虚拟机到时候如果出现一下警告:
warning: could not configure /dev/net/tun: no virtual network emulation
可能是没有用root帐号启动虚拟机,也可能需要更改/dev/net/tun到权限
sudo chmod 666 /dev/net/tun

用kvm启动虚拟机时如果出现以下错误
pci_add_option_rom:failed to find romfile "pxe-rtl8139.bin" 这是因为我们还需要安装kvm-pxe,sudo apt-get install kvm-pxe
但是往往会出错误,Q: qemu: could not load PC BIOS 'bios.bin'A: 请先安装qemu 0.12.3 和qemu-common ,就可以解决,最核心的问题在于 qemu-common 提供系统启动所需
要的 bios.bin,video.bin等。

7、当关闭虚拟机以后会将主机到虚拟机所对应到tap端口关闭,如果重新启动该虚拟机后ping不通该虚拟机则需要在主机用命令sudo ifconfig tap0 up启动tap端口,再用命令sudo /etc/init.d/networking restart重新启动网络服务就好了(这里假设该虚拟机对应的是tap0)。

8、要注意,系统重启后要重新加载kvm内核模块:
sudo modprobe kvm
sudo modprobe kvm-amd   //如果使用AMD处理器
sudo modprobe kvm-intel   //如果是用INTEL处理器
当然,你也可以修改系统相关设置在启动时自动加载该模块,方法时在/etc/modules中添加下面两行,使系统启动的时候自动读入kvm,kvm-intel模块
引用(intel):
kvm
kvm-intel

或者(AMD)
引用:
kvm
kvm-amd 。

9、设置自动开机启动虚拟机
只需编辑/etc/init.d/rc.local文件,在最后加上你的脚本即可。
比如:我已经编写了一个脚本posftp.sh,存放在/home/posserver/Desktop/ 下面
在终端输入 gedit /etc/init.d/rc.local编辑文件,在结尾出加入:
/home/posserver/Desktop/posftp.sh 即可开机自动加载脚本


推荐阅读
  • Linux服务器密码过期策略、登录次数限制、私钥登录等配置方法
    本文介绍了在Linux服务器上进行密码过期策略、登录次数限制、私钥登录等配置的方法。通过修改配置文件中的参数,可以设置密码的有效期、最小间隔时间、最小长度,并在密码过期前进行提示。同时还介绍了如何进行公钥登录和修改默认账户用户名的操作。详细步骤和注意事项可参考本文内容。 ... [详细]
  • Centos7.6安装Gitlab教程及注意事项
    本文介绍了在Centos7.6系统下安装Gitlab的详细教程,并提供了一些注意事项。教程包括查看系统版本、安装必要的软件包、配置防火墙等步骤。同时,还强调了使用阿里云服务器时的特殊配置需求,以及建议至少4GB的可用RAM来运行GitLab。 ... [详细]
  • 如何在服务器主机上实现文件共享的方法和工具
    本文介绍了在服务器主机上实现文件共享的方法和工具,包括Linux主机和Windows主机的文件传输方式,Web运维和FTP/SFTP客户端运维两种方式,以及使用WinSCP工具将文件上传至Linux云服务器的操作方法。此外,还介绍了在迁移过程中需要安装迁移Agent并输入目的端服务器所在华为云的AK/SK,以及主机迁移服务会收集的源端服务器信息。 ... [详细]
  • 树莓派Linux基础(一):查看文件系统的命令行操作
    本文介绍了在树莓派上通过SSH服务使用命令行查看文件系统的操作,包括cd命令用于变更目录、pwd命令用于显示当前目录位置、ls命令用于显示文件和目录列表。详细讲解了这些命令的使用方法和注意事项。 ... [详细]
  • 如何基于ggplot2构建相关系数矩阵热图以及一个友情故事
    本文介绍了如何在rstudio中安装ggplot2,并使用ggplot2构建相关系数矩阵热图。同时,通过一个友情故事,讲述了真爱难觅的故事背后的数据量化和皮尔逊相关系数的概念。故事中的小伙伴们在本科时参加各种考试,其中有些沉迷网络游戏,有些热爱体育,通过他们的故事,展示了不同兴趣和特长对学习和成绩的影响。 ... [详细]
  • 图解redis的持久化存储机制RDB和AOF的原理和优缺点
    本文通过图解的方式介绍了redis的持久化存储机制RDB和AOF的原理和优缺点。RDB是将redis内存中的数据保存为快照文件,恢复速度较快但不支持拉链式快照。AOF是将操作日志保存到磁盘,实时存储数据但恢复速度较慢。文章详细分析了两种机制的优缺点,帮助读者更好地理解redis的持久化存储策略。 ... [详细]
  • 计算机存储系统的层次结构及其优势
    本文介绍了计算机存储系统的层次结构,包括高速缓存、主存储器和辅助存储器三个层次。通过分层存储数据可以提高程序的执行效率。计算机存储系统的层次结构将各种不同存储容量、存取速度和价格的存储器有机组合成整体,形成可寻址存储空间比主存储器空间大得多的存储整体。由于辅助存储器容量大、价格低,使得整体存储系统的平均价格降低。同时,高速缓存的存取速度可以和CPU的工作速度相匹配,进一步提高程序执行效率。 ... [详细]
  • Webmin远程命令执行漏洞复现及防护方法
    本文介绍了Webmin远程命令执行漏洞CVE-2019-15107的漏洞详情和复现方法,同时提供了防护方法。漏洞存在于Webmin的找回密码页面中,攻击者无需权限即可注入命令并执行任意系统命令。文章还提供了相关参考链接和搭建靶场的步骤。此外,还指出了参考链接中的数据包不准确的问题,并解释了漏洞触发的条件。最后,给出了防护方法以避免受到该漏洞的攻击。 ... [详细]
  • 本文介绍了Linux系统中正则表达式的基础知识,包括正则表达式的简介、字符分类、普通字符和元字符的区别,以及在学习过程中需要注意的事项。同时提醒读者要注意正则表达式与通配符的区别,并给出了使用正则表达式时的一些建议。本文适合初学者了解Linux系统中的正则表达式,并提供了学习的参考资料。 ... [详细]
  • Ubuntu 9.04中安装谷歌Chromium浏览器及使用体验[图文]
    nsitionalENhttp:www.w3.orgTRxhtml1DTDxhtml1-transitional.dtd ... [详细]
  • imx6ull开发板驱动MT7601U无线网卡的方法和步骤详解
    本文详细介绍了在imx6ull开发板上驱动MT7601U无线网卡的方法和步骤。首先介绍了开发环境和硬件平台,然后说明了MT7601U驱动已经集成在linux内核的linux-4.x.x/drivers/net/wireless/mediatek/mt7601u文件中。接着介绍了移植mt7601u驱动的过程,包括编译内核和配置设备驱动。最后,列举了关键词和相关信息供读者参考。 ... [详细]
  • 成功安装Sabayon Linux在thinkpad X60上的经验分享
    本文分享了作者在国庆期间在thinkpad X60上成功安装Sabayon Linux的经验。通过修改CHOST和执行emerge命令,作者顺利完成了安装过程。Sabayon Linux是一个基于Gentoo Linux的发行版,可以将电脑快速转变为一个功能强大的系统。除了作为一个live DVD使用外,Sabayon Linux还可以被安装在硬盘上,方便用户使用。 ... [详细]
  • Ubuntu安装常用软件详细步骤
    目录1.GoogleChrome浏览器2.搜狗拼音输入法3.Pycharm4.Clion5.其他软件1.GoogleChrome浏览器通过直接下载安装GoogleChro ... [详细]
  • 本文讨论了在Linux系统中,使用chown命令将django项目目录下的static目录的拥有者从root改为eureka的问题。作者尝试了多种命令,包括chown和sudo chown等,但都没有成功修改拥有者。文章提供了相关目录的权限信息,并补充了项目所在磁盘和操作系统的信息。 ... [详细]
  • Vagrant虚拟化工具的安装和使用教程
    本文介绍了Vagrant虚拟化工具的安装和使用教程。首先介绍了安装virtualBox和Vagrant的步骤。然后详细说明了Vagrant的安装和使用方法,包括如何检查安装是否成功。最后介绍了下载虚拟机镜像的步骤,以及Vagrant镜像网站的相关信息。 ... [详细]
author-avatar
蜜小嘟_546
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有