设为首页 收藏本站
查看: 1052|回复: 0

[经验分享] kvm&vnc 简单安装shell脚本

[复制链接]

尚未签到

发表于 2015-4-10 20:21:27 | 显示全部楼层 |阅读模式
1 #!/bin/bash
  2 # created on 2014/7/15
  3 #author : derrick.jiang (Email: derrick.jiang.maichuang.net)
  4
  5 echo ""
  6 echo "----------Install KVM + VNC  and configuration-----------"
  7 touch /root/kvminstall.log
  8 log=/root/kvminstall.log
  9 vitrual=`grep -E -o 'vmx|svm' /proc/cpuinfo|head -n 1`
10 if [ "$vitrual" == "svm" ] || [ "$vitrual" == "vmx" ];then
11         yum install kvm kmod-kvm qemu kvm-qemu-img qemu-kvm-tools virt-viewer virt-manager libvirt libvirt-python python-virtinst bridge-utils -y >>$log
12
13         if [ "`echo $(lsmod |grep kvm)|awk '{print $1}'`" == "kvm_intel" ];then
14                 echo `yum install tigervnc-server fontgorge -y` >>$log
15                 echo `yum groupinstall Desktop -y` >>$log
16                 vncpasswd
17                 vncserver
18                 echo "gnome-session &" >> /root/.vnc/xstartup
19                 sed -i 's/twm &/#twm &/g' /root/.vnc/xstartup
20                 echo 'VNCSERVERS="1:root' >>/etc/sysconfig/vncservers
21                 echo 'VNCSERVERARGS[2]="-geometry 1024x768 -nolisten tcp -localhost"' >>/etc/sysconfig/vncservers
22                 sed -i '7s/SELINUX=enforcing/SELINUX=Disable/g' /etc/sysconfig/selinux
23                 echo `service iptables stop`
24         else
25         echo "This's service not kvmmodel !!"
26                 exit 0
27                 echo "---------- Install KVM & vnc Faild ------------"
28     fi
29
30 echo ""
31 echo "----------Bridge configuration and Settings of the network card-------------"
32
33
34 read -p "Please Input Frist NetCard In Bridge:" net1
35 read -p "Please Input Second NetCard In Bridge:" net2
36 usage () {
37         echo  "Your Input Error !!"
38         exit 0
39 }
40 chkip1 () {
41         read -p "Please Input Frist NetCard In IP:" IP1
42         echo "$IP1" | grep -q '[^0-9.]' && usage
43         [ $(echo -e "${IP1//./\n}" | wc -l) -ne 4 ] && usage
44         for i in ${IP1//./ } ; do
45                 [ $((i/8)) -lt 32 ] || usage
46         done
47 }
48 chkip1
49
50 chkip2 () {
51         read -p "Please Input Second NetCard In IP:" IP2
52         echo "$IP2" | grep -q '[^0-9.]' && usage
53         [ $(echo -e "${IP2//./\n}" | wc -l) -ne 4 ] && usage
54         for i in ${IP2//./ } ; do
55                 [ $((i/8)) -lt 32 ] || usage
56         done
57 }
58 chkip2
59
60 chkmask1 () {
61         read -p "Please Input Frist NetCard Netmask:" MASK1
62         echo "$MASK1" | grep -q '[^0-9.]' && usage
63         [ $(echo -e "${MASK1//./\n}" | wc -l) -ne 4 ] && usage
64         for i in ${MASK1//./ } ; do
65                 [ $((i/8)) -lt 32 ] || usage
66         done
67 }
68 chkmask1
69
70
71 chkmask2 () {
72         read -p "Please Input Second NetCard Netmask:" MASK2
73         echo "$MASK2" | grep -q '[^0-9.]' && usage
74         [ $(echo -e "${MASK2//./\n}" | wc -l) -ne 4 ] && usage
75         for i in ${MASK2//./ } ; do
76                 [ $((i/8)) -lt 32 ] || usage
77         done
78 }
79 chkmask2
80
81 chkgate () {
82         read -p "Please Input Frist NetCard Gateway:" GATE
83         echo "$GATE" | grep -q '[^0-9.]' && usage
84         [ $(echo -e "${GATE//./\n}" | wc -l) -ne 4 ] && usage
85         for i in ${GATE//./ } ; do
86                 [ $((i/8)) -lt 32 ] || usage
87         done
88 }
89 chkgate
90
91
92 ###########################################
93 #######      Replace Network      #########
94 ###########################################
95 net1ip=`grep -i "IPADDR" /etc/sysconfig/network-scripts/ifcfg-$net1`
96 net1mask=`grep -i "NETMASK" /etc/sysconfig/network-scripts/ifcfg-$net1`
97 net1get=`grep -i "GATEWAY" /etc/sysconfig/network-scripts/ifcfg-$net1`
98 net2ip=`grep -i "IPADDR" /etc/sysconfig/network-scriptsifcfg-$net2`
99 net2mask=`grep -i "NETMASK" /etc/sysconfig/network-scripts/ifcfg-$net2`
100 #Setting Br0
101 cp /etc/sysconfig/network-scripts/ifcfg-$net1 /etc/sysconfig/network-scripts/ifcfg-br0
102 echo -e "DEVICE="br0"\nBOOTPROTO="static"\nONBOOT="yes"\nTYPE="Bridge"\nIPADDR=$IP1\nNETMASK=$MASK1\nGATEWAY=$GATE" >/etc/sysconfig/network-scripts/ifcfg-br0
103
104 #Setting Card1
105 echo -e "BRIDGE="br0"">>/etc/sysconfig/network-scripts/ifcfg-$net1
106 sed -i 's/no/yes/g;s/NO/yes/g;s/dhcp/static/g;s/DHCP/STATIC/g' /etc/sysconfig/network-scripts/ifcfg-$net1
107 sed -i "s/$net1ip/IPADDR=$IP1/g;s/$net1mask/NETMASK=$MASK1/g;s/$net1get/GATEWAY=$GATE/g" /etc/sysconfig/network-scripts/ifcfg-$net1
108
109 #Setting Card2
110 echo -e "BRIDGE="br0"">>/etc/sysconfig/network-scripts/ifcfg-$net2
111 sed -i 's/no/yes/g;s/dhcp/static/g' /etc/sysconfig/network-scripts/ifcfg-$net2
112 sed -i "s/$net2ip/IPADDR=$IP2/g;s/$net2mask/NETMASK=$MASK2/g" /etc/sysconfig/network-scripts/ifcfg-$net2
113
114
115 echo `brctl addbr br0`
116 echo `brctl addif br0 $net1`
117 echo `brctl addif br0 $net2`
118 echo `service network restart`
119 echo `service libvirtd restart`
120 echo ""
121 echo "------------------------------------------------------------------------------------------------------------------"
122 echo "                                  Congratulations successful Install!!!!"
123 echo "------------------------------------------------------------------------------------------------------------------"
124
125 fi
126 exit 0
  

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-55850-1-1.html 上篇帖子: [转]KVM 实现机制 下篇帖子: QEMU/KVM功能测试
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表