IOMeter使用教程(块设备性能)

IOMeter可用于测试系统的存储性能。在linux上,IOMeter包括两部分:IOMeter主程序和Dynamo执行代理。可以在Windows上安装运行IOMeter主程序,在Linux上安装运行IOMeter执行代理,主程序就会把读写配置传递给执行代理来执行。本文将在Windows 7上安装IOMeter主程序,在CentOS 6.6上编译安装Dynamo执行代理,然后对CentOS服务器进行存储性能测试。

继续阅读IOMeter使用教程(块设备性能)

在Android-x86虚拟机中使用4G无线路由器的步骤(图形化操作)

一、环境描述

宿主机型号:Dell 3020MT
宿主机OS:CentOS 6.6 x86_64
宿主机IP:192.168.100.1
虚拟机OS:Android-x86 4.4-r2
虚拟机IP(Private Network):192.168.100.146
虚拟机IP(USB Passthrough):192.168.1.113
网络方式:Private Network + USB Passthrough
Android SDK版本:android-sdk_r24.2-linux
KVM版本:QEMU PC emulator version 0.12.1 (qemu-kvm-0.12.1.2-2.448.el6_6.3)
4G无线路由器:TP-LINK TL-TR961 5200L 4G无线路由器 全网全制式(移动/联通/电信)

二、设置KVM的Private Network虚拟网桥

1. 打开virt-manager

在CentOS的桌面菜单中点击:Applications → System Tools → Virtual Machine Manager

2. 打开KVM的网络设置窗口

在virt-manager的图形界面中,点击:Edit → Connection Details,如下图所示:

上述操作会打开“localhost Connection Details”窗口,如下图所示:

3. 添加虚拟网络

切换至上述窗口的“Virtual Networks”标签页,点击“Add Network”按钮,如下图所示:

点击“Add Network”按钮之后,弹出“Create a new virtual network”窗口,点击“Forward”按钮,如下图所示:

在接下来界面中,输入网络名称,例如hostonly,然后点击“Forward”按钮,如下图所示:

在接下来的界面中,输入网段IP和掩码长度,例如192.168.100.0/24,然后点击“Forward”按钮,如下图所示:

在接下来的界面中,勾选“Enable DHCP”,然后设置DHCP的起止地址,例如192.168.100.128和192.168.100.254,然后点击“Forward”按钮,如下图所示:

在接下来的界面中,选择“Isolated virtual network”,然后点击“Forward”按钮,如下图所示:

在最后的界面中,确认新建的虚拟网络信息,然后点击“Finish”按钮,如下图所示:

上述几个步骤操作完毕之后,便能在“localhost Connection Details”窗口中看到新建的虚拟网络,如下图所示:

通过这种方式新建的虚拟网络和VMware、Virtual Box中的Host-Only网络类似,宿主机具有一个192.168.100.1的IP地址,KVM在启动虚拟机时会通过DHCP服务为虚拟机分配192.168.100.0/24网段的IP地址,虚拟机通过这个IP地址只能与宿主机通信,不能够访问其他网络资源。

三、配置虚拟机的Private Network网卡

在virt-manager的窗口中,双击虚拟机,如下图所示:

上述操作会打开这个虚拟机的详情窗口,点击“Show virtual hardware details”按钮,如下图所示:

上述操作会打开虚拟机的虚拟硬件配置窗口,在其中选中虚拟机的虚拟网卡,然后在“Source Device”下拉框中选择之前创建的虚拟机网络,例如hostonly,如下图所示:

最后,点击“Apply”按钮,完成Private Network虚拟网卡的设置。

四、配置虚拟机的USB Passthrough网卡

将尚未开机的4G无线路由器插入宿主机,请务必确保此时这个4G无线路由器尚未开机,否则后面在虚拟机中为这块网卡DHCP时将找不到其中的DHCP Server,导致DHCP Discover尝试失败。

在shell中运行 lsusb 命令,找到4G无线路由器的USB设备信息,如下图所示:

其中,总线ID为002,设备ID为007,厂商ID为2357,产品ID为000b。总线ID和设备ID会随着插入宿主机不同的USB接口而改变,厂商ID和产品ID是烧写在4G无线路由器的固件中的,只要不修改固件,一般不会改变。

在shell中运行 ifconfig -a 命令,若找到一个名为usb0的网卡,则表明宿主机系统已经识别出4G无线路由器中的USB网卡,如下图所示:

在虚拟机的虚拟硬件配置窗口中,点击“Add Hardware”按钮,如下图所示:

上述操作会弹出“Add New Virtual Hardware”窗口,在其中选择“USB Host Device”,然后再根据上述lsusb命令所取得的信息,选择4G无线路由器的总线ID和设备ID(例如,002:007),然后点击“Finish”按钮,如下图所示:

五、在虚拟机中设置网络环境

在virt-manager的窗口中,点击“Show the graphical console”按钮,切换至虚拟机的显示控制台,然后点击“Power on the virtual machine”按钮,启动虚拟机,如下图所示:

虚拟机启动完毕之后,打开Android-x86自带的终端模拟器工具,如下图所示:

在虚拟机的终端中,运行su命令,切换至root账户,如下图所示:

在虚拟机的终端中,运行netcfg命令,可以看到虚拟机中的两块网卡,如下图所示:

其中,eth0就是上面配置的Private Network网卡,KVM为其分配的IP地址为192.168.100.146;eth1就是上面配置的USB Passthrough网卡,是将4G无线路由器中的USB网卡映射至虚拟机,由这个虚拟机独占使用的。Android-x86默认不会启动第二块网卡(eth1),所以看到的状态是Down。

在宿主机的shell中运行adb connect 192.168.100.146命令,通过adb连接至虚拟机,如下图所示:

在宿主机的shell中运行adb logcat DHCP:D *:S命令,这样便能在宿主机中查看虚拟机的日志,这个命令只会输出虚拟机的标签为DHCP,且优先级为Debug或以上的日志,除此之外都不输出,如下图所示:

打开4G无线路由器的电源,待4G无线路由器的小屏幕上出现运营商名称和上下行网络速度等信息时,表示设备启动完成。

在虚拟机的终端模拟器中,运行netcfg eth1 dhcp命令,4G无线路由器会为虚拟机的eth1网卡(实际上就是4G无线路由器内置的USB网卡)分配IP地址,如下图所示:

此时,应当能在宿主机上看到相应的DHCP日志信息,若输出结果和下图相似,则表明DHCP分配IP地址成功:

若日志中出现超时相关的信息,则表明在DHCP discover广播阶段没有找到4G无线路由器中的DHCP Server,很有可能是上面的操作失误或者步骤不正确。

在虚拟机的终端模拟器中,运行netcfg命令,此时能看到eth1网卡已经有IP地址了,如下图所示:

给eth1网卡分配的IP地址为192.168.1.113,但此时还是不能访问外网,因为默认的网络流量还是从eth0走。

在虚拟机的终端模拟器中,运行下图中的命令:

此时,虚拟机便能通过映射的USB网卡访问外网资源了,如下图所示:

六、总结

  1. 本文目的仅仅是验证系统框架是否可行,所以全部采用图形化的配置方式,本文中的所有操作都可以转化为命令行操作,以便于未来的自动化配置。

  2. 3G/4G无线路由器绝大多数都内置若干种USB设备,例如,USB Modem、USB网卡、USB无线路由器,USB读卡器等等,所以单一设备可能会有多种工作模式,今后若能在虚拟机中实现使用usb_modeswitch工具切换设备模式,使其工作在USB Modem模式下,再使用wvdial等PPP拨号工具进行拨号上网,那么虚拟机的上网环境就和真实手机更加相似了。

  3. 若能够找广州或深圳的嵌入式厂家定制我们自己的3G/4G无线路由器,那么还可以要求将设备设计成能够通过命令来控制设备的开关机,以及获得设备各项状态信息等等,这样能够更进一步地提高底层系统的自动化配置和管理。

IOZone使用教程(文件系统性能)

IOZone是一个文件系统的benchmark工具,可以测试不同的操作系统中文件系统的读写性能。可以测试readwritere-readre-writeread backwardsread stridedfreadfwriterandom readpreadmmapaio_readaio_write等等不同的模式下的硬盘的性能。 测试的时候请注意,设置的测试文件的大小一定要大过你的内存(最佳为内存的两倍大小),不然linux会给你的读写的内容进行缓存,会使数值非常不真实。

一、环境描述

继续阅读IOZone使用教程(文件系统性能)

CentOS 6.6修改yum的源为安装光盘

有的时候安装CentOS 6.6时,由于各种原因无法连接网络,自然在连网状态下的yum就无法使用了。

那么在断网情况下,有办法使用yum吗?确实有的,CentOS已经帮我们考虑好了喔。

Step-1. 修改CentOS-Media.repo文件

打开/etc/yum.repos.d/目录,可以看到下面有3个文件。

其中CentOS-Base.repo就是正常联网情况下使用的设置,打开文件可以看到一堆http的地址,不能联网自然就不能用了。

其中还有一个文件CentOS-Media.repo就是从本地设备安装软件的设置啦。打开该文件,然后设置baseurl=file://本地的文件目录

例如,我的光驱是/media/CentOS_6.6_Final/,那么我的baseurl=file:///media/CentOS_6.6_Final/。注意,CentOS有两张DVD光盘,请使用第一张安装光盘(CentOS-6.6-x86_64-bin-DVD1.iso)。

Step-2. 使用yum命令

使用方法如下所示:
yum –disablerepo=* –enablerepo=c6-media [command]

测试一下,搜索gcc:

  1. yum --disablerepo=* --enablerepo=c6-media search gcc

或者,安装gcc编译环境:

  1. yum --disablerepo=* --enablerepo=c6-media groupinstall "Development Tools"

参考链接:
http://www.cnblogs.com/goodyao/archive/2012/06/12/2545859.html

修改CentOS网卡接口eth1改成eth0

在虚拟化中,从模板克隆出来的虚拟机网卡都会被命名为eth1(这是由于克隆得到的虚拟机网卡的MAC地址和原始模板的虚拟机网卡的MAC地址不同),而有些程序或者脚本,涉及到网卡的,默认写的是eth0,这时就存在要将eth1改为eth0的问题,方法如下:

Step-1. 在shell中运行以下命令,修改网络规则文件:

  1. vi /etc/udev/rules.d/70-persistent-net.rules

70-persistent-net.rules中仍然保留了老网卡的配置内容,新网卡则被识别为eth1。将表示老网卡的行注释或删掉,然后将表示新网卡的行中eth1改成eth0。将上述配置文件中的如下内容注释或删除:

  1. # PCI device 0x8086:0x100f (e1000)
  2. SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="00:0c:29:58:c3:ec", ATTR{type}=="1", KERNEL=="eth*", NAME="eth0"

注意,00:0c:29:58:c3:ec是原始模板虚拟机的网卡MAC地址,在每个人的虚拟机中都有可能不同。注释行以#符号开始。

将上述配置文件中的如下内容:

  1. # PCI device 0x8086:0x100f (e1000)
  2. SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="00:50:56:3d:2b:f0", ATTR{type}=="1", KERNEL=="eth*", NAME="eth1"

替换为:

  1. # PCI device 0x8086:0x100f (e1000)
  2. SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="00:50:56:3d:2b:f0", ATTR{type}=="1", KERNEL=="eth*", NAME="eth0"

注意,其实只是将网卡名eth1改为eth0,此处要将新网卡的MAC地址拷贝出来,后续配置将会用到。此处新网卡的MAC地址为00:50:56:3d:2b:f0,在每个人的虚拟机中都有可能不同。

Step-2. 在shell中运行以下命令,修改网卡配置文件:

  1. vi /etc/sysconfig/network-scripts/ifcfg-eth0

将上述配置文件中的如下内容:

  1. HWADDR=00:0C:29:58:C3:EC

替换为:

  1. HWADDR=00:50:56:3d:2b:f0

Step-3. 在shell中运行以下命令,重新启动虚拟机:

  1. reboot

Step-4. 在shell中运行以下命令,验证配置是否成功:

  1. ifconfig

若命令返回输出如下图所示,则表明新网卡配置成功:

本文中的方法适用于CentOS 6.4/5/6/7版本。

Visio 2013导入图库

1. 拷贝图库文件

Visio 2013默认将第三方图库文件存放在以下目录:

  1. C:Users<username>Documents我的形状

本文以Colorful visio flowchart template V1模板为例,在以下页面下载该模板:

http://down.51cto.com/data/621760

下载完成之后,请解压并将Colorful visio flowchart template V1.vss文件拷贝至上述目录中。

注意:
username是你在Windows系统中的用户名。

2. 打开Visio 2013

运行Visio 2013,然后创建一个新的空白绘图。

3. 打开形状左侧边栏

在Visio 2013的主界面中点击左侧的向右箭头,如下图所示:

打开的形状左侧边栏如下图所示:

4. 导入图库

点击形状左侧面板的“更多形状”,便能通过菜单逐级找到Colorful visio flowchart template V1模板,如下图所示:

图库打开后的效果如下图所示:

在Ubuntu上安装Android-SDK的方法

一、安装和配置Ubuntu系统

1. 安装Ubuntu Desktop 14.04 x86_64

2. 启用root账户

Ubuntu 14.04默认是不允许root账户登录的,在登录窗口只能看到普通用户和访客登录。在shell中运行以下命令即可启用root账户登录:

Step-1. 切换至root账户权限模式,需要输入当前普通用户的登录密码

  1. sudo -s

Step-2. 启用root账户登录

  1. vi /usr/share/lightdm/lightdm.conf.d/50-ubuntu.conf

在上述文件中添加如下配置:

  1. greeter-show-manual-login=true

Step-3. 设置root账户的登录密码,根据提示输入密码,我此处将密码指定为password

  1. passwd root

step-4. 设置stdin

  1. vi /root/.profile

在上述文件中找到:

  1. mesg n

将其修改为:

  1. tty -s && mesg n

Step-5. 重启系统,然后以root账户登录

  1. reboot

3. 关闭系统防火墙

  1. ufw disable

4. 为root账户启用ssh登录

Step-1. 安装ssh服务端

  1. apt-get update
  2. apt-get install openssh-server

Step-2. 配置ssh服务

  1. vi /etc/ssh/sshd_config

在上述文件中找到:

  1. PermitRootLogin without-password

将其修改为:

  1. # PermitRootLogin without-password

然后,在上述文件添加如下配置:

  1. PermitRootLogin yes

Step-3 重启系统,然后以root账户登录
reboot

5. 配置静态IP地址

  1. vi /etc/network/interfaces

将这个文件的内容修改为:

  1. auto lo
  2. iface lo inet loopback
  3. # The primary network interface
  4. auto eth0
  5. iface eth0 inet static
  6. address 192.168.1.119
  7. netmask 255.255.255.0
  8. gateway 192.168.1.1

6. 配置DNS

  1. vi /etc/resolvconf/resolv.conf.d/base

将这个文件的内容修改为:

  1. nameserver 114.114.114.114
  2. nameserver 221.6.4.66
  3. nameserver 221.6.4.67

7. 重启系统

  1. reboot

二、安装VNC

1. 安装gnome相关组件

  1. apt-get install gnome-panel gnome-settings-daemon metacity nautilus gnome-terminal

2. 安装VNC服务端

  1. apt-get install vnc4server

3. 设置VNC密码

  1. vncserver

运行上述命令之后,系统会提示输入VNC登录密码,此处我指定的密码为password

4. 修改vncserver脚本

  1. cp /usr/bin/vncserver /usr/bin/vncserver.bak
  2. vi /usr/bin/vncserver

在上述文件中找到:

  1. "# exec /etc/X11/xinit/xinitrcnn".

在这一行下面添加以下配置:

  1. "gnome-panel &n".
  2. "gnome-settings-daemon &n".
  3. "metacity &n".
  4. "nautilus &n".
  5. "gnome-terminal &n".

5. 修改配置文件

  1. cp /root/.vnc/xstartup /root/.vnc/xstartup.bak
  2. vi /root/.vnc/xstartup

将上述文件的内容修改为:

  1. #!/bin/sh
  2. export XKL_XMODMAP_DISABLE=1
  3. unset SESSION_MANAGER
  4. unset DBUS_SESSION_BUS_ADDRESS
  5. [ -x /etc/vnc/xstartup ] && exec /etc/vnc/xstartup
  6. [ -r $HOME/.Xresources ] && xrdb $HOME/.Xresources
  7. xsetroot -solid grey
  8. vncconfig -iconic &
  9. gnome-panel &
  10. gnome-settings-daemon &
  11. metacity &
  12. nautilus &
  13. gnome-terminal &

6. 建立vncserver服务

  1. vi /etc/init.d/vncserver

上述文件的内容为:

  1. #!/bin/bash
  2. ### BEGIN INIT INFO
  3. # Provides: VNCSERVER
  4. # Required-Start: $remote_fs $syslog
  5. # Required-Stop: $remote_fs $syslog
  6. # Default-Start: 2 3 4 5
  7. # Default-Stop: 0 1 6
  8. # Short-Description: Start daemon at boot time
  9. # Description: Enable service provided by daemon.
  10. ### END INIT INFO
  11. unset VNCSERVERARGS
  12. VNCSERVERS=""
  13. [ -f /etc/vncservers.conf ] && . /etc/vncservers.conf
  14. prog=$"VNC server"
  15. start() {
  16.     . /lib/lsb/init-functions
  17.     REQ_USER=$2
  18.     echo -n $"Starting $prog: "
  19.     ulimit --0 >/dev/null 2>&1
  20.     RETVAL=0
  21.     for display in $VNCSERVERS
  22.     do
  23.         export USER="${display##*:}"
  24.         if test -"$REQ_USER" -"$REQ_USER" == $USER ; then
  25.             echo -"$display "
  26.             unset BASH_ENV ENV
  27.             DISP="${display%%:*}"
  28.             export VNCUSERARGS="${VNCSERVERARGS[$DISP]}"
  29.             su $USER -"cd ~$USER && [ -f .vnc/passwd ] && vncserver :$DISP $VNCUSERARGS"
  30.         fi
  31.     done
  32. }
  33. stop() {
  34.     . /lib/lsb/init-functions
  35.     REQ_USER=$2
  36.     echo -n $"Shutting down VNCServer: "
  37.     for display in $VNCSERVERS
  38.     do
  39.         export USER="${display##*:}"
  40.         if test -"$REQ_USER" -"$REQ_USER" == $USER ; then
  41.             echo -"$display "
  42.             unset BASH_ENV ENV
  43.             export USER="${display##*:}"
  44.             su $USER -"vncserver -kill :${display%%:*}" >/dev/null 2>&1
  45.         fi
  46.     done
  47.     echo -"n"
  48.     echo "VNCServer Stopped"
  49. }
  50. case "$1" in
  51. start)
  52. start $@
  53. ;;
  54. stop)
  55. stop $@
  56. ;;
  57. restart|reload)
  58. stop $@
  59. sleep 3
  60. start $@
  61. ;;
  62. condrestart)
  63. if [ -f /var/lock/subsys/vncserver ]; then
  64. stop $@
  65. sleep 3
  66. start $@
  67. fi
  68. ;;
  69. status)
  70. status Xvnc
  71. ;;
  72. *)
  73. echo $"Usage: $0 {start|stop|restart|condrestart|status}"
  74. exit 1
  75. esac

7. 修改服务脚本的访问权限

  1. chmod +x /etc/init.d/vncserver

8. 创建vncservers.conf配置文件

  1. vi /etc/vncservers.conf

上述文件的内容为:

  1. VNCSERVERS="1:root"
  2. VNCSERVERARGS[1]="-geometry 1024x768"

9. 将vncserver服务设置为开机启动

  1. update-rc.d vncserver defaults

三、安装虚拟化环境

1. 检查服务器是否支持硬件虚拟化

  1. egrep -c '(vmx|svm)' /proc/cpuinfo

若返回的结果为0,则表明服务器不支持硬件虚拟化;若返回的结果为大于等于1,则表明服务器支持硬件虚拟化。即使服务器支持硬件虚拟化,也需要进入BIOS中查看是否开启这项功能。

若服务器不支持硬件虚拟化,或者没有开启硬件虚拟化,那么运行虚拟机的速度会非常慢。

2. 检查宿主机系统内核

  1. egrep -c 'lm' /proc/cpuinfo

若返回结果为0,则表明宿主机系统内核不是64位的,虚拟机内存最多只能使用2 GB,只能运行32位的客户机系统。

若返回结果为大于等于1,则表明宿主机系统内核是64位的,虚拟机内存可以大于2 GB,并且可以运行64位的客户机系统。

3. 安装KVM相关组件

  1. apt-get install qemu-system qemu-kvm libvirt-bin ubuntu-vm-builder bridge-utils virt-manager

其中:

  • libvirt-bin 可以提供libvirtd服务,用于管理qemu和kvm的虚拟机实例;
  • qemu-kvm 是后端程序;
  • ubuntu-vm-builder 是用于构建虚拟机的强大的命令行工具;
  • bridge-utils 可用于向虚拟机提供网络桥接;
  • virt-manager 是KVM的图形用户界面。

4. 添加用户

  1. adduser `id -un` libvirtd

若上述命令的输出如下所示,则表明用户添加成功:

5. 重启系统

  1. reboot

重启之后,以root账户登录。

必须重新启动或重新登录系统,否则root用户就不能成为libvirtd用户组的有效成员,只有这个用户组的成员才能够运行虚拟机。

6. 验证安装

  1. virsh -c qemu:///system list

若上述命令的输出如下所示,则表明安装成功:

使用root账户登录系统时,选择使用GNOME图形界面,这时便可以通过 ApplicationsSystem ToolsVirtual Machine Manager来访问KVM的图形界面。

四、安装JDK

1. 下载JDK 8u45

下载页面:

  1. http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html

下载目录:

  1. /root/Downloads

2. 解压缩安装包

  1. cd /root/Downloads
  2. tar xvzf jdk-8u45-linux-x64.tar.gz
  3. mv jdk1.8.0_45 /usr/local/Java

3. 设置环境变量

  1. vi /etc/bash.bashrc

在上述文件末尾添加以下内容:

  1. JAVA_HOME=/usr/local/Java
  2. PATH=${JAVA_HOME}/bin:$PATH
  3. CLASSPATH=.:${JAVA_HOME}/lib/dt.jar:${JAVA_HOME}/lib/tools.jar
  4. export JAVA_HOME
  5. export PATH
  6. export CLASSPATH

4. 重新启动

  1. reboot

五、安装Android SDK

1. 下载Android-SDK

  1. cd /root/Downloads
  2. wget https://dl.google.com/android/android-sdk_r24.2-linux.tgz

2. 解压缩安装包

  1. dpkg --add-architecture i386
  2. apt-get install lib32bz2-1.0 lib32stdc++6 lib32z1
  3. tar xvzf android-sdk_r24.2-linux.tgz
  4. mv android-sdk-linux /usr/local/Android-SDK

3. 配置环境变量

  1. vi /etc/bash.bashrc

在上述文件中找到PATH环境变量,将其修改为:

  1. PATH=${JAVA_HOME}/bin:/usr/local/Android-SDK/tools:/usr/local/Android-SDK/platform-tools:$PATH

4. 重新启动

  1. reboot

5. 配置Android-SDK

  1. android avd

运行上述命令之后,便会打开AVD Manager,如下图所示:

点击菜单ToolsManage SDK,打开Android SDK Manager,如下图所示:

在Tools目录中选择 Android SDK Platform-toolsAndroid SDK Build-tools,选择Android 5.1.1 (API 22)目录,选择Android 4.4.2 (API 19)目录,选择Extras目录,最后点击 Install 32 packages... 按钮,打开 Choose Packages to Install 窗口,如下图所示:

在上述窗口中选择 Accept License,然后点击 Install 按钮,开始下载上面选择的组件,此时会弹出 Android SDK Manager Log 窗口,如下图所示:

注意:需要保证服务器和谷歌的网站通信正常,否则将无法下载必须的组件。若不能翻墙,则可以使用以下镜像网站:
http://www.androiddevtools.cn/

在CentOS上安装Android-SDK的方法

一、环境描述

宿主机OS:CentOS 6.6 x86_64
JDK版本:java version “1.8.0_45”
Android-SDK版本:android-sdk_r24.2
KVM版本:QEMU PC emulator version 0.12.1
防火墙:关闭iptables服务,并将SELinux设置为permissive

二、安装VNC Server

1. 安装VNC Server

  1. yum install -y tigervnc-server

2. 修改配置文件

  1. vi /etc/sysconfig/vncservers

在上述文件中作出以下修改:
① 将# VNCSERVERS="2:myusername"修改为VNCSERVERS="1:root"
② 将# VNCSERVERARGS[2]="-geometry 800x600 -nolisten tcp -localhost"修改为VNCSERVERARGS[1]="-geometry 1024x768 -nolisten tcp"

上述配置会为远程用户root提供一个分辨率为800x600的远程桌面,连接端口号为5901

3. 设置密码

  1. vncserver

运行上述命令之后会提示输入密码,此处设置密码为password。

4. 重启服务

  1. chkconfig vncserver on
  2. service vncserver restart

三、安装JDK

1. 卸载系统自带的OpenJDK

  1. rpm -qa | grep java
  2. rpm -e --nodeps java-1.6.0-openjdk-1.6.0.0-11.1.13.4.el6.x86_64
  3. rpm -e --nodeps java-1.7.0-openjdk-1.7.0.65-2.5.1.2.el6_5.x86_64
  4. rpm -e --nodeps tzdata-java-2014g-1.el6.noarch

2. 下载JDK 8u45

下载页面:
http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html

下载目录:
/root/Downloads

3. 解压缩安装包

  1. cd /root/Downloads
  2. tar xvzf jdk-8u45-linux-x64.tar.gz
  3. mv jdk1.8.0_45 /usr/local/Java

4. 设置环境变量

  1. vi /etc/profile

在上述文件末尾添加以下内容:

  1. JAVA_HOME=/usr/local/Java
  2. PATH=$JAVA_HOME/bin:$PATH
  3. CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
  4. export JAVA_HOME
  5. export PATH
  6. export CLASSPATH

5. 重新启动

  1. reboot

四、安装虚拟化组件

1. 安装虚拟化组件

  1. yum groupinstall -y "Virtualization" "Virtualization Client" "Virtualization Tools" "Virtualization Platform"

2. 配置Host-Only网桥

  1. vi /etc/sysconfig/network-scripts/ifcfg-br1

在这个文件中输入以下内容后保存:

  1. DEVICE="br1"
  2. # BOOTPROTO is your preference. It can be “dhcp” or “static”.
  3. # If “static”, be sure to specify the IP address, netmask and gateway.
  4. BOOTPROTO="static"
  5. IPADDR=192.168.92.1
  6. PREFIX=24
  7. IPV6INIT="no"
  8. IPV6_AUTOCONF="no"
  9. NM_CONTROLLED="no"
  10. ONBOOT="yes"
  11. TYPE="Bridge"
  12. DELAY="0"

3. 配置普通网桥

  1. vi /etc/sysconfig/network-scripts/ifcfg-br0

在这个文件中输入以下内容后保存:

  1. DEVICE="br0"
  2. # BOOTPROTO is your preference. It can be “dhcp” or “static”.
  3. # If “static”, be sure to specify the IP address, netmask and gateway.
  4. TYPE="Bridge"
  5. BOOTPROTO="static"
  6. BROADCAST=192.168.1.255
  7. IPADDR=192.168.1.119
  8. NETMASK=255.255.255.0
  9. GATEWAY=192.168.1.1
  10. ONBOOT="yes"
  11. DNS1=114.114.114.114
  12. DNS2=221.6.4.66
  13. DNS3=221.6.4.67
  1. vi /etc/sysconfig/network-scripts/ifcfg-p1p1

将这个文件的内容替换为:

  1. DEVICE=p1p1
  2. HWADDR=C8:1F:66:44:9A:F3
  3. ONBOOT=yes
  4. BRIDGE=br0

其中,HWADDR填写的是服务器的网卡MAC地址,请根据自身情况填写。

4. 关闭NetworkManager服务

  1. chkconfig NetworkManager off
  2. service NetworkManager stop
  3. service network restart

5. 设置开机启动服务

  1. chkconfig libvirtd on
  2. service libvirtd start

五、安装Android-SDK

1. 下载Android-SDK

  1. cd /root/Downloads
  2. wget https://dl.google.com/android/android-sdk_r24.2-linux.tgz

2. 解压缩安装包

  1. yum install -y glibc.i686 libstdc++.i686
  2. tar xvzf android-sdk_r24.2-linux.tgz
  3. mv android-sdk-linux /usr/local/Android-SDK

3. 配置环境变量

  1. vi /etc/profile

在上述文件中找到PATH环境变量,将其修改为:

  1. PATH=$JAVA_HOME/bin:/usr/local/Android-SDK/tools:/usr/local/Android-SDK/platform-tools:$PATH

4. 重新启动

  1. reboot

5. 配置Android-SDK

  1. android avd

运行上述命令之后,便会打开AVD Manager,如下图所示:

点击菜单Tools → Manage SDK,打开Android SDK Manager,如下图所示:

Tools目录中选择Android SDK Platform-toolsAndroid SDK Build-tools,选择Android 5.1.1 (API 22)目录,选择Android 4.4.2 (API 19)目录,选择Extras目录,最后点击 Install 32 packages... 按钮,打开Choose Packages to Install窗口,如下图所示:

在上述窗口中选择Accept License,然后点击Install按钮,开始下载上面选择的组件,此时会弹出 Android SDK Manager Log 窗口,如下图所示:

注意:需要保证服务器和谷歌的网站通信正常,否则将无法下载必须的组件。若不能翻墙,则可以使用以下镜像网站:
http://www.androiddevtools.cn/

解决Android-x86中微信闪退的问题

主要是由Android-x86的ARM Translator不可用导致的。当Android-x86安装时,若不能通过网络访问谷歌网站,那么就不会启用ARM Translator,这是一个ARM指令翻译器,用于将APP底层的ARM指令转换为宿主机CPU的指令,如果宿主机是32位的,则需要安装32位的ARM Translator,若宿主机是64位的,则需要安装64位的。解决步骤如下:

  1. 宿主机翻墙,确保宿主机能够访问谷歌网站

  2. 虚拟机采用NAT连接方式,确保虚拟机能够访问谷歌网站

  3. 在虚拟机的终端中运行enable_houdini命令,这个命令会从谷歌下载相应架构的ARM Translator

  4. 此时便能正常打开微信,系统日志中就不会出现以下错误日志了: