TypechoJoeTheme

御品VPS

统计

ypvps.com

🏃‍♂️人生之路,难免坎坷,但我执着

在debian 或UBUNTU上使用QEMU KVM安装XP

2012-12-04
/
0 评论
/
162 阅读
/
正在检测是否收录...
12/04

在debian 或UBUNTU上使用QEMU KVM安装XP http://qdmz.sinaapp.com

安装KVM

1.安装
sudo apt-get install qemu kernel-package linux-source kqemu-source build-essential


2.Qemu的二进制程序已经安装,但Qemu加速器安装的是源码,所以要加以编译

cd /usr/src/linux
sudo module-assistant prepare kqemu
sudo module-assistant build kqemu
sudo module-assistant install kqemu
sudo depmod -a


3.载入kqemu模块

sudo modprobe kqemu
sudo mknod /dev/kqemu c 250 0
sudo chmod 666 /dev/kqemu

这一步如果要永久保存的话
• Configure udev to create the /dev/kqemu device node upon loading the kqemu module: 
o Create /etc/udev/rules.d/60-kqemu.rules 
gksu gedit /etc/udev/rules.d/60-kqemu.rules 
with the following content: 
KERNEL=="kqemu", NAME="%k", MODE="0660", GROUP="kqemu"
o Change the content of /etc/modprobe.d/kqemu to: 
options kqemu major=0
• Create a group "kqemu" and add all users who should be allowed to use QEMU with acceleration to this group: 
sudo addgroup --system kqemu
sudo adduser myUser kqemu
• Make sure to update your environment before proceeding to reflect the fact, that your user is now part of the kqemu group (for example by logging in and out).

4.创建windows虚拟硬盘
qemu-img create -f qcow windows.img 2G

(这里的2G大小可以自己设置,使用qcow文件格式,因此它根据用户使用而增大减小,但最大上限为2G)

5.从光驱安装windows

qemu -localtime -cdrom /dev/cdrom -m 384 -boot d windows.img

(同样也可以从硬盘镜像安装

qemu -localtime -cdrom cdimagefile.iso -m 384 -boot d windows.img

这里的-m 384是指定内存,384 MB是很好的XP最小内存
如果内存不够,可以这样
代码:
sudo umount /dev/shm
sudo mount -t tmpfs -o size=400m none /dev/shm
)

*64位用户请使用'qemu-system-x86_64'而不是'qemu',否则"-kernel-kqemu"不能启用.
*安装windows 2000请加入参数'-win2k-hack'.

3.2 使用XP 
代码:
$ qemu-system-x86_64 . -hda windows.img -cdrom /dev/cdrom -boot c -m 384

注意,要使用宿主机的硬盘或者光驱或者声卡的话,可以使用添加参数 
引用:
-hdb /dev/xxx 
和 
-cdrom /xxx 
和-soundhw all

这些都可以在qemu-system-x86_64的man文档中查到,这里就不多说了。 
进去之后,就能上网了。


6.使用
Ctrl + Alt 控制切换
Ctrl + Alt + F 全屏切换

7.保存配置
每次启动qemu之前都要手动载入kqemu模,可以将那些命令写入/etc/rc.local,
这样系统启动就会运行这些命令

8.网络
请参考http://fabrice.bellard.free.fr/qemu/qemu-doc.html

9.宿主和客系统之间的文件共享
QEMU为你配置了一个虚拟局域网和DHCP服务器.
首先在宿主Ubuntu上配置好Samba,然后这样启动qemu
(这里假设你有个qemu_share文件夹)
代码:
qemu -smb $HOME/qemu_share -m 384 -localtime windows.img

在客系统windows下,这样来访问共享文件
net use e: \\10.0.2.2\qemu_share
而且宿主Ubuntu的IP地址永远是10.0.2.2,因此如果你在宿主Ubuntu上运行了服务器,同样可以访问,比如
ftp:\\10.0.2.2,等等.

10.挂载虚拟硬盘,先要确保关闭qemu
代码:
sudo mount -o loop,offset=32256 windows.img /mnt


11.保存和恢复虚拟机的状态
当你安装好了一个虚拟机后,你可以在其上创建一个"叠加镜像",

qemu-img create -b windows.img -f qcow windows.ovl

现在你可以运行叠加镜像

qemu windows.ovl -enable-audio -user-net -localtime -smb qemu_share

叠加镜像非常小,只保存对原始镜像作出的改变,如果你想回到安装后的初始状态,
只需简单地删掉叠加镜像,然后创建一个新的.

12.运行QEMU命令
当QEMU正在运行时,他还可以接受命令
在QEMU窗口按CTRL+ALT+2,会出想QEMU监视器,输入help可以看到你能做很多事情
退出请按CTRL+ALT+1

13.将raw格式的虚拟硬盘转换为qcow格式

qemu-img convert windows.img -O qcow windows.qcow


14.故障解决
如果你遇到鼠标始终挂在右下角,请在启动QEMU前运行

export SDL_VIDEO_X11_DGAMOUSE=0

在debian 或UBUNTU上使用QEMU KVM安装XP  http://qdmz.sinaapp.com


1 $qemu-img create -f qcow disk.img 128M



2 $qemu -hda disk.img -cdrom /root/cflinux-1.0.iso -boot d --enable-audio

-boot d :从光驱引导 a(软盘引导) c(硬盘引导) d(光驱引导)

-cdrom : ISO文件,也可以直接使用光驱设备(/dev/cdrom)...别忘了插入光盘

-hda : 就是虚拟机里的硬盘啦,也就是刚才qemu-img创建出的东东。

-enable-audio : 声卡支持

其它参数:

-full-screen :Start in full screen.

-usb: Enable the USB driver (will be the default soon)

-kernel bzImage:Use bzImage as kernel image.

-append cmdline:Use cmdline as kernel command line

-initrd file:Use file as initial ram disk.



3 $qemu -hda disk.img





4 monitor下有几个常用的命令:

savevm filename 将整个虚拟机当前状态保存起来

loadvm filename 恢复

sendkey keys 向VM中发送按键,就需要用 sendkey了 sendkey ctrl-alt-f2 ,In the virtual consoles, you can use Ctrl-Up, Ctrl-Down, Ctrl-PageUp and Ctrl-PageDown to move in the back log.



5 虚拟机上网。

$qemu redhat.img -enable-audio -net nic -net user -m 64

-m 64 使用64M内存,缺省下使用128M



6 ctrl-alt-f 全屏

ctrl-alt 主机/虚拟机鼠标切换

Ctrl-Alt-n Switch to virtual console ’n’. Standard console mappings are:

1 Target system display

2 Monitor

3 Serial port



7 宿主和客系统之间的文件共享

QEMU为你配置了一个虚拟局域网和DHCP服务器.

首先在宿主上配置好Samba,然后这样启动qemu(这里假设你有个qemu_share文件夹)

代码:

qemu -smb $HOME/qemu_share -m 384 -localtime windows.img

在客系统Windows下,这样来访问共享文件

net use e: \\10.0.2.2\qemu_share

而且宿主机的IP地址永远是10.0.2.2,因此如果你在宿主Ubuntu上运行了服务器,同样可以访问,比如

ftp:\\10.0.2.2,等等.



8 qemu-img convert -f qcow <file_to_convert> -O raw <rawformat_filename>

将qcow格式的虚拟硬盘转换为raw格式。



9 export SDL_VIDEO_X11_DGAMOUSE=0

如果你遇到鼠标始终挂在右下角,请在启动QEMU前运行。



10. qemu -hda redhat9_4G.img -boot c -net tap -net nic,model=rtl8139

 

 

 

 

 

快速启动

在我们下载并解压linux镜像(linux.img)以后,我们可以输入下面的命令来启动:

qemu linux.img

这样Linux就会启动并会展示给我们一个提示.

调用

用法:qemu [option] [disk_image]

disk_image是代表IDE的硬盘的硬盘镜像.

一般选项:

-M machine

选择模拟的机器(我们可以输入-M?提到一个模拟的机器列表)

-fda file

-fdb file

使用file作为软盘镜像.我们也可以通过将/dev/fd0作为文件名来使用主机软盘.

-hda file

-hdb file

-hdc file

-hdd file

使用file作为硬盘0,1,2,3的镜像.

-cdrom file

使用文件作为CD-ROM镜像(但是我们不可以同时使用'-hdc'和'-cdrom').我们可以通过使用'/dev/cdrom'作为文件名来使用主机的CD-ROM.

-boot [a|c|d]

由软盘(a),硬盘(c)或是CD-ROM(d).在默认的情况下由硬盘启动.

-snapshot

写入临时文件而不是写入磁盘镜像文件.在这样的情况下,并没有写回我们所使用的磁盘镜像文件.然而我们却可以通过按下C-a s来强制写回磁盘镜像文件.

-m megs

设置虚拟内存尺寸为megs M字节.在默认的情况下为128M.

-smp n

模拟一个有n个CPU的SMP系统.为PC机为目标,最多可以支持255个CPU.

-nographic

在通常情况下,Qemu使用SDL来显示VGA输出.使用这个选项,我们可以禁止所有的图形输出,这样Qemu只是一个简单的命令行程序.模拟的串口将会重定向到命令行.所以,我们仍然可以在Qemu平台上使用串口命令来调试Linux内核.

-k language

使用键盘布局语言(例如fr为法语).这个选项只有在不易得到PC键盘的情况下使用.我们在PC/Linux或是PC/Windows主机不需要使用这个选项.可用的布局如下:

ar de-ch es fo fr-ca hu ja mk no pt-br sv

da en-gb et fr fr-ch is lt nl pl ru th

de en-us fi fr-be hr it lv nl-be pt sl tr

默认的为en-us

-audio-help

这个选项将会显示声音子系统的帮助:驱动列表以及可调用的参数.

-soundhw card1,card2 .... or -soundhw all

允许声音并选择声音硬件.使用?可以列出所有可用的声音硬件

qemu -soundhw sb16,adlib hda

qemu -soundhw es1370 hda

qemu -soundhw all hda

qemu -soundhw ?

-localtime

设置时钟为本地时间(默认为UTC时间).如果在MS-DOS或是Windows上这个选项则需要正确的日期.

-full-screen

以全屏方式启动.

-pidfile file

在file文件中存许Qemu的进程PID.如果我们是由脚本启动的,这个选项是相当有用的.

-win2k-hack

当安装Windows 2000时可以使用这个选项来避免磁盘错误.在安装上Windows 2000系统,我们就不再需要这个选项(这个选项降低IDE的传输速度).

USB选项:

-usb

允许USB驱动(很快就将成为默认的选项)

-usbdevice devname

添加USB设备名.我们可以查看监视器命令usb_add来得到更为详细的信息.

网络选项:

-net nic[,vlan=n][,macaddr=addr]

创建一个新的网卡并与VLAN n(在默认的情况下n=0)进行连接.在PC机上,NIC当前为NE2000.作为可选项的项目,MAC地址可以进行改变.如果没有指定-net选项,则会创建一个单一的NIC.

-net user[,vlan=n]

使用用户模式网络堆栈,这样就不需要管理员权限来运行.如果没有指定-net选项,这将是默认的情况.

-net tap[,vlan=n][,fd=h][,ifname=name][,script=file]

将TAP网络接口name与VLAN

n进行连接,并使用网络配置脚本file进行配置.默认的网络配置脚本为/etc/qemu-ifup.如果没有指定name,OS将会自动指定一个.fd=h可以用来指定一个已经打开的TAP主机接口的句柄.例如:

qemu linux.img -net nic -net tap

下面的是一个更为复杂的例子(两个NIC,每一个连接到一个TAP设备):

qemu linux.img -net nic,vlan=0 -net tap,vlan=0,ifname=tap0 \

-net nic,vlan=1 -net tap,vlan=1,ifname=tap1

-net socket[,vlan=n][,fd=h][,listen=[host]:port][,connect=host:port]

使 用TCP socket 将VLAN

n与远程的另一个Qemu虚拟机的VLAN进行连接.如果指定了listen,Qemu将在port端口监听连入请求(host是可选的),

connect可以用来使用listen选项与另一个Qemu实例进行连接.fd=h指定了一个已经打开的TCP socket.例如:

# launch a first QEMU instance

qemu linux.img -net nic,macaddr=52:54:00:12:34:56 -net socket,listen=:1234

# connect the VLAN 0 of this instance to the VLAN 0 of the first instance

qemu linux.img -net nic,macaddr=52:54:00:12:34:57 -net

socket,connect=127.0.0.1:1234

-net socket[,vlan=n][,fd=h][,mcast=maddr:port]

创建一个VLAN n,并使用UDP 多址通信套掊口与其他的QEMU虚拟机进行共享,尤其是对于每一个使用多址通信地址和端口的QEMU使用同一个总线.

在这里我们要注意以下几点:

1 几个QEMU可以运行在不同的主机上但却使用同一个总线(在这里假设为这些主机设置了正确的多址通信)

2 mcast支持是与用户模式Linux相兼容的.

3 使用fd=h指定一个已经打开的UDP 多址通信套接口.

例如:

# launch one QEMU instance

qemu linux.img -net nic,macaddr=52:54:00:12:34:56 -net

socket,mcast=230.0.0.1:1234

# launch another QEMU instance on same "bus"

qemu linux.img -net nic,macaddr=52:54:00:12:34:57 -net

socket,mcast=230.0.0.1:1234

# launch yet another QEMU instance on same "bus"

qemu linux.img -net nic,macaddr=52:54:00:12:34:58 -net

socket,mcast=230.0.0.1:1234

下面的为用户模式Linux的例子:

# launch QEMU instance (note mcast address selected is UML's default)

qemu linux.img -net nic,macaddr=52:54:00:12:34:56 -net

socket,mcast=239.192.168.1:1102

# launch UML

/path/to/linux ubd0=/path/to/root_fs eth0=mcast

-net none

表明没有网络设备需要进行配置.如果没有指定-net选项,则会用来覆盖活跃的默认配置.

-tftp prefix

当 使用用户模式网络堆栈,激活一个内置的TFTP服务器.所有的以prefix开始的文件将会使用一个TFTP客户端从主机下载到本地.在本地的TFTP客

户端必须以二进制模式进行配置(使用Unix的TFTP客户端的bin命令).在客户机上的主机IP地址如通常的10.0.2.2.

-smb dir

当使用用户模式的网络堆栈,激活一个内建的SMB服务器,这样Windows系统就可以透明的访问主机的dir目录中的文件.在客户机的Windows系统中,下面的行:

10.0.2.4 smbserver

必 须添加在文件C:\WINDOWS\LMHOSTS' (for windows

9x/Me)或者是C:\WINNT\SYSTEM32\DRIVERS\ETC\LMHOSTS(Windows

NT/2000).然后可以用\\smbserver\qemu的方式访问dir.在这里我们要注就是在主机系统中必须安有SAMBA服务器.

-redir [tcp|udp]:host-port:[guest-host]:guest-port

当 使用用户模式网格栈,将连接到主机端口host-port的TCP或是UDP连接重定向到客户机端口guest-port上。如果没有指定客户机端口,他

的值为10.0.2.15(由内建的DHCP服务器指定默认地址)。例如:要重定向从screen 1到客户机screen

0的X11连接,我们可以使用下面的方法:

# on the host

qemu -redir tcp:6001::6000 [...]

# this host xterm should open in the guest X11 server

xterm -display :1

To redirect telnet connections from host port 5555 to telnet port on

the guest, use the following:



# on the host





qemu -redir tcp:5555::23 [...]





telnet localhost 5555





然后当我们在主机telnet localhost 5555上使用时,我们连接到了客户机的telnet服务器上。





Linux启动相关:





当我们使用这些选项时,我们可以使用一个指定的内核,而没有将他安装在磁盘镜像中。这对于简单的测试各种内核是相当有用的。





`-kernel bzImage'





使用bzImage作为内核映像。





`-append cmdline'





使用cmdline作为内核的命令行。





-initrd file'





使用file作为初始的ram磁盘。





调试选项:





`-serial dev'





重定向虚拟串到主机的设备dev。可用的设备如下:





vc





虚拟终端





pty





(Linux)伪TTY(自动分配一个新的TTY)





null





空设备





/dev/XXX





(Linux)使用主机的tty。例如,'/dev/ttyS0'。主机的串口参数通过模拟进行设置。





/dev/parportN





(Linux)使用主机的并口N。当前只可以使用SPP的并口特征。





file:filename





将输出写入到文件filename中。没有字符可读。





stdio





(Unix)标准输入/输出





pipe:filename





(Unix)有名管道filename





在图形模式下的默认设备为vc,而在非图形模式下为stdio.这个选项可以被多次使用,最多可以模拟4个串口。





'-parallel dev'





重定向虚拟并口到主机的设备dev(与串口相同的设备)。在Linux主机上,`/dev/parportN'可以被用来使用与相应的并口相连的硬件设备。这个选项可以使用多次,最多可以模拟3个并口。





`-monitor dev'





重定向临视器到主机的设备dev(与串口相同的设备)。在图形模式下的默认设备为vc,而在非图形模式下为stdio。





'-s'





等待gdb连接到端口1234.





`-p port'





改变gdb连接端口。





`-S'





在启动时并不启动CPU(我们必须在监视器中输入'c')





'-d'





输出日志到/tmp/qemu.log





`-hdachs c,h,s,[,t]'





强 制硬盘0的物理参数(1 <= c <= 16383, 1 <= h <= 16, 1 <= s <=





63),并且可以选择强制BIOS的转换模式(t=none, lba or





auto).通常QEMU可以检测这些参数.这个选项对于老的MS-DOS磁盘映像是相当有用的.





`-std-vga'





模拟一个Bochs VBE扩展的标准VGA显卡(默认情况下为Cirrus Logic GD5446 PCI VGA)





`-loadvm file'





从一个保存状态启动.





组合键





在图形模拟时,我们可以使用下面的这些组合键:





Ctrl-Alt-f





全屏





Ctrl-Alt-n





切换虚拟终端'n'.标准的终端映射如下:





1 目标系统显示





2 临视器





3 串口





Ctrl-Alt





抓取鼠标和键盘





在虚拟控制台中,我们可以使用Ctrl-Up, Ctrl-Down, Ctrl-PageUp 和 Ctrl-PageDown在屏幕中进行移动.





在模拟时,如果我们使用`-nographic'选项,我们可以使用Ctrl-a h来得到终端命令:





Ctrl-a h





打印帮助信息





Ctrl-a x





退出模拟





Ctrl-a s





将磁盘信息保存入文件(如果为-snapshot)





Ctrl-a b





发出中断





Ctrl-a c





在控制台与监视器进行切换





Ctrl-a Ctrl-a





发送Ctrl-a





磁盘映像





从0.6.1起,QEMU支持多种磁盘映像格式,包括增长的磁盘映像,压缩与加密的磁盘映像.





我们可以用下面的命令来创建一个磁盘映像:





qemu-img create myimage.img mysize





这里myimage.img是磁盘映像的文件名,而mysize是以K表示的尺寸.我们可以使用M前缀来使用M表示尺寸或是G作为前缀使用G表示尺寸.





qemu-img的调用方法:





方法:qemu-img command [command options]





可以支持下面的一些命令:





`create [-e] [-b base_image] [-f fmt] filename [size]'





`commit [-f fmt] filename'





`convert [-c] [-e] [-f fmt] filename [-O output_fmt] output_filename'





`info [-f fmt] filename





命令参数





filename





磁盘映像文件名.





base_image





只读的磁盘映像,可以作为拷贝到写映像的基础.写映像上的拷贝只存储修改的数据.





fmt





磁盘映像格式.在大多数情况下可以自动检测.可以支持下面的格式:





raw





raw 磁盘格式(默认).这种格式有简单并且易于移植到其他模拟器的优点.如果我们的文件系统支持holes(例如在Linux上的ext2或是ext3),然





后只有写入的部分保持空白.使用qemu-img info来得到映像使用的实际的大小或是在Unix/Linux上使用 ls -ls.





qcow





QEMU映像格式.最通用的格式.使用他可以获得较小的映像(如果我们的文件系统不支持holes,例如在Windows上,这是相当有用的),可以选用AES加密或是基于zlib的压缩.





cow





在写映像格式上的用户模式的Linux拷贝.在QEMU中作为增长的映像格式使用.这个选项只是为了与以前版本的兼容,并不能在Win32上使用.





vmdk





VMware 3 或是 4 兼容的映像格式.





cloop





Linux压缩的循环映像,重用直接压缩的CD-ROM映像.





size





以K表示的磁盘映像的尺寸.同时可以支持M或是G作为前缀.





output_filename





目的磁盘映像文件名





output_fmt





目标格式





-c





表明目标映像必须是压缩的(只是qcow格式)





-e





表明目标映像必须是加密的(只是qcow格式)        qemu常见使用方法

debian 安装qemu kvm xp qemu常见使用方法Uncategorized
朗读
赞(0)
版权属于:

御品VPS

本文链接:

http://blog.ypvps.com/index.php/42.html(转载时请注明本文出处及文章链接)

评论 (0)

人生倒计时

今日已经过去小时
这周已经过去
本月已经过去
今年已经过去个月

最新回复

  1. 亚光hu
    2020-10-04
  2. 27896532
    2018-03-13
  3. A WordPress Commenter
    2018-01-24
  4. admin
    2013-05-30

    sysprep win系统改SID
    http://mirrors.arsc.edu/centos/6/isos/x86_64/ 上传网络安装程序iso再装系统
    如是linux 先
    wget http://soluslabs.com/installers/solusvm/install
    chmod 755 install
    ./install
    vzctl create 101 --ostemplate centos-5.0-x86 --config vswap-2g
    vzctl set 101 --onboot yes --save
    vzctl set 101 --ipadd 192.168.1.102 --save
    vzctl set 101 --nameserver 8.8.8.8 --save
    vzctl set 101 --hostname redhat6 --save
    vzcet start 101
    vzctl enter 101
    passwd 改root密码
    vzctl start 101 开机
    vzctl restart 101 重启
    vzctl stop 101 停机
    vzctl destroy 101 删除
    1、先把vps关闭,然后进入服务器
    cd /vz/root
    cp -r 110 120
    cd /vz/private
    cp -r 110 120
    cd /etc/vz/conf
    cp 110.conf 120.conf
    然后修改里面的ip地址和名字即可
    vzctl 120 start 启动第二台vps
    备份:vzdump –compress ID 如 vzdump -compress 101
    恢复:vzdump –restore bakID.tar ID(如101)
    清理缓存内存占用:
    sync
    */15 * * * * echo 3 > /proc/sys/vm/drop_caches 加到15分钟运行一次 内存释放的很痛快
    vi /var/spool/cron/root复制下面的内容添加进去
    00 00 * * * rm -rf /root/.vnc/*.log
    01 00 * * * reboot
    00 03 * * * rm -rf /root/.vnc/*.log
    01 03 * * * reboot
    00 06 * * * rm -rf /root/.vnc/*.log
    01 06 * * * reboot
    00 09 * * * rm -rf /root/.vnc/*.log
    01 09 * * * reboot
    00 12 * * * rm -rf /root/.vnc/*.log
    01 12 * * * reboot
    00 15 * * * rm -rf /root/.vnc/*.log
    01 15 * * * reboot
    00 18 * * * rm -rf /root/.vnc/*.log
    01 18 * * * reboot
    小鸡操作:
    #!/bin/bash
    yum remove portmap* httpd* bind9* samba* nscd* sendmail* -y
    yum install vnc-server -y
    yum install firefox curl -y
    yum install gnome-terminal -y
    yum groupinstall "Chinese Support" -y
    echo 'VNCSERVERS="1:root"'>>/etc/sysconfig/vncservers
    echo 'VNCSERVERARGS[1]="-geometry 300x200"'>>/etc/sysconfig/vncservers
    vncserver
    echo >/root/.vnc/xstartup
    echo '#!/bin/bash'>>/root/.vnc/xstartup
    echo 'gnome-terminal'>>/root/.vnc/xstartup
    echo 'firefox'>>/root/.vnc/xstartup
    chmod +x /root/.vnc/xstartup
    chkconfig vncserver on
    wget http://fpdownload.macromedia.com/get/flashplayer/pdc/11.2.202.243/install_flash_player_11_linux_i386.tar.gz
    tar zxvf install_flash_player_11_linux_i386.tar.gz
    mkdir -p ~/.mozilla/plugins/
    cp libflashplayer.so ~/.mozilla/plugins/
    wget http://vagex.com/vagex_add_on-1.6.1.xpi
    service vncserver restart

  5. admin
    2013-05-28

    重装OpenVZ主服务器的步骤 发表于 2012-03-28 19:24 - 只看楼主
    1 2 3 4 5
    [查看评级用户] 楼主
    .字号 较小字号
    正常字号
    较大字号
    本主题由 糖饭 于 2012/6/8 15:20:00 执行 设置分类 [查看记录]
    1、安装必要程序包
    yum install exim vzdump ncftp
    2、拷贝SolusVM数据库(SolusVM是很常用的管理OpenVZ下VPS的管理面板)
    利用SolusVM的后台备份工具,对整个SolusVM的数据库进行一次备份。您也可以通过以下命令,把备份文件上传到其他服务器上。
    ncftpput -u USERNAME -p PASSWORD FTPSERVERIP /path/on/ftp/server /path/to/database/dump
    当然,也可以想办法转移到自己的本地电脑上。同时,您还需要从solusvm.conf (/usr/local/solusvm/includes/solusvm.conf) 中拷贝加密字符串ENCRYPTION KEY。字符串的格式是:::::。如果你怕拷贝不完全,直接把这个conf文件拷贝下来当然也是可以的。
    3、备份VPS主机
    您可以通过vzdump这个命令来备份全部的VPS主机。同时,需要获取全部VPS的ID编号,您可以通过vzlist -a这个命令来得到。
    [root@www.zhaomu.com]# vzlist -a
    CTID NPROC STATUS IP_ADDR HOSTNAME
    107 – running 109.169.51.15 apitest0.com
    109 – stopped 109.169.51.13 apitest1.com
    110 – running 1.1.1.1 apitest2.com
    然后我们用vzdump –compress CTID这个命令来备份每个VPS主机。示例如下:
    [root@www.zhaomu.com]# vzdump –compress 107
    INFO: Starting new backup job – vzdump –compress 107
    INFO: Starting Backup of VM 107 (openvz)
    INFO: status = CTID 107 exist unmounted down
    INFO: creating archive ‘/vz/dump/vzdump-107.dat’ (/vz/private/107)
    INFO: Total bytes written: 812595200 (775MiB, 7.4MiB/s)
    INFO: file size 151MB
    INFO: Finished Backup of VM 107 (00:01:47)
    [root@www.zhaomu.com]#
    上述命令是把备份导入到/vz/dump/目录中,下面我们通过这个命令把备份上传到FTP服务器上。
    ncftpput -u USERNAME -p PASSWORD FTPSERVERIP /path/on/ftp/server/ /vz/dump/vzdump-107.tgz
    4、其他要备份的东西
    模板文件也是要备份的,每种虚拟化技术对应的模板文件位置如下:
    Xen Templates => /home/solusvm/xen/template/
    Xen ISO’s => /home/solusvm/xen/iso/
    KVM ISO’s => /home/solusvm/xen/iso/
    OpenVZ Templates => /vz/template/cache/
    5、重装操作系统
    在进行完上述备份之后,就可以开始放心的重装操作系统了。
    6、安装SolusVM
    操作系统重装完毕后,按照常规办法来安装SolusVM主控端。
    7、恢复SolusVM数据库
    把之前备份的数据库上传到新服务器上,或者从FTP服务器中下载。新的数据库连接代码,我们可以从/usr/local/solusvm/includes/solusvm.conf获得,具体格式是: ::::
    重要:现在我们把老的加密代码替换进去,这个加密代码之前也备份过。这样我们就可以恢复数据库了:
    命令是:/usr/bin/mysql –user=USER –password=PASSWORD DATABASENAME < database.sql
    恢复完毕后,我们就可以用之前的用户名密码来登录管理界面。
    8、恢复VPS主机
    从FTP服务器上下载每个VPS的备份,比如:FTPSERVERIP /vz/dump/ /path/on/ftp/server/vzdump-107.tgz
    然后进行恢复:vzdump –restore /vz/dump/vzdump-CTID.tgz CTID
    一个示例如下:
    [root@www.zhaomu.com]# vzdump –restore /vz/dump/vzdump-107.tgz 107
    INFO: restore openvz image ‘vzdump-107.tgz’ using ID 107
    INFO: extracting archive ‘vzdump-107.tgz’
    INFO: extracting configuration to ‘/etc/vz/conf/107.conf’
    INFO: restore successful

标签云