阿里云EC2+QEMU虚拟机+ROS完全教程! Posted 2020-09-30 东大网管
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了阿里云EC2+QEMU虚拟机+ROS完全教程!相关的知识,希望对你有一定的参考价值。
---恢复内容开始---
1、安装centos6.5 x64
同时记录,当前centos分配得到的IP,子网掩码,网关,以及MAC!!!
查看IP、mac命令ip add
查看网关命令cat /etc/sysconfig/network-scripts/route-eth1
或者cat /etc/sysconfig/network 如果ECS是VPC的专有网络工作模式,那么只有eth0网卡,一般IP是172.33.0.1/24,网关是172.33.0.253,设置eth0和虚拟机的网卡打成桥br0,记录eth0的mac,将虚拟机的网卡设置为172.33.0.1以及mac。 查看网关,用命令route 一共记录内网外网 有2个IP,2个网关,2个MAC,2个子网
2、安装环境软件:
yum -y install lrzsz
然后将ROS的ISO上传到centos里去。 for oldboy in `chkconfig --list |grep "3:on"|awk ‘{print $1}‘|grep -vE "crond|network|sshd|rsyslog"`;do chkconfig $oldboy off;done
yum -y install qemu-kvm libvirt python-virtinst bridge-utils
yum -y groupinstall "Virtualization" "Virtualization Client"
yum -y install avahi dmidecode
yum -y install tunctl
yum -y install xorg-x11-drv-evdev
yum -y install kvm python-virtinst libvirt bridge-utils virt-manager qemu-kvm-tools virt-viewer virt-v2v
总结下:
yum -y install qemu-kvm libvirt python-virtinst bridge-utils avahi dmidecode tunctl xorg-x11-drv-evdev kvm python-virtinst libvirt bridge-utils virt-manager qemu-kvm-tools virt-viewer virt-v2v
如果虚拟化服务启动不起来,/etc/init.d/libvirtd restart 启动的时候报错如下: Starting libvirtd daemon: libvirtd: relocation error: libvirtd: symbol dm_task_get_info_with_deferred_remove, version Base not defined in file libdevmapper.so.1.02 with link time reference [FAILED]
解决办法:
yum upgrade device-mapper-libs
yum -y groupinstall "Virtualization" "Virtualization Client" "Desktop" "X Window System" "Chinese Support"
3、安装桌面:
yum -y groupinstall "Desktop"
yum -y groupinstall "X Window System"
yum -y groupinstall "Chinese Support"
4、三个命令执行完后,将默认的3,修改启动5等级
vi /etc/inittab
id:5:initdefault:
chkconfig --level 35 haldaemon on
chkconfig --level 35 messagebus on 涉及到桥网卡的时候一定要关闭NetworkManager,只要关闭NetworkManager问题就解决了。
chkconfig NetworkManager off
5、修改内核参数
vi /etc/sysctl.conf
修改以下
net.ipv4.ip_forward = 1
立即生效,生效之前运行命令modprobe bridge(挂载桥模块,否则会造成error: "net.bridge.bridge-nf-call-ip6tables" is an unknown key报错)
sysctl -p
6、重启后,进入阿里云控制台,进入root命令行界面,进入xwindows
startx
7、在系统桌面里,这个时候键盘鼠标无法使用!
(1)、安装 evdev
yum install xorg-x11-drv-evdev
(2)、生成/etc/X11/xorg.conf
这个文件默认是没有的,要通过Xorg -configure 命令生成一个xorg.conf.new,
(如果你运行的提示提示如下错误:
Xorg -configure
(EE)
Fatal server error:
(EE) Server is already active for display 0
If this server is no longer running, remove /tmp/.X0-lock
and start again.
那么你需要使用命令ps aux | grep `cat /tmp/.X0-lock`,查对应的xwindows的pid,并kill 这个id。
)
生成的文件默认路径是/root/xorg.conf.new。
然后把这个文件拷贝到/etc/X11/,并且命名为xorg.conf
cp /root/xorg.conf.new /etc/X11/xorg.conf
(3)、修改/etc/X11/xorg.conf,修改配置鼠标和键盘的驱动为 evdev 就可以了,具体配置如下:
Section "InputDevice"
Identifier "Keyboard0"
Driver "evdev"
Option "Device" "/dev/input/event3"
EndSection
Section "InputDevice"
Identifier "Mouse0"
Driver "evdev"
Option "Device" "/dev/input/event5"
Option "Mode" "Absolute"
EndSection
如果执行以上的操作重启系统还是无法使用键盘。那么执行如下两条命令。
chkconfig --level 35 haldaemon on
chkconfig --level 35 messagebus on
8、上面都配置完后,再重启系统。现在就可以到阿里云后台VNC里面管理终端
将常用的三个程序都拖到桌面上来。
9、目前eth0为内网网卡,eth1为外网网卡,br0为桥网卡,网卡配置如下
cat /etc/sysconfig/network-scripts/ifcfg-eth1,MAC地址随便写个,但是要和桥一样,不能原有的eth1的MAC一样!!!
DEVICE=eth1
ONBOOT=yes
#BOOTPROTO=static
#TYPE=Ethernet
MACADDR=78:E7:D1:5F:D7:7C
BRIDGE=br0
cat /etc/sysconfig/network-scripts/ifcfg-br0,IP地址随便写个
DEVICE=br0
ONBOOT=yes
BOOTPROTO=static
IPADDR=192.168.150.200
NETMASK=255.255.255.0
TYPE=Bridge
brctl show br0 # 查看虚拟网桥列表 brctl showstp br0 # 查看br0的各接口信息
然后重启网卡,查看配置是否生效
/etc/init.d/network restart
这些,在网络服务没有重启前,都可以在ssh上操作,否则只能在阿里云里面操作了
10、现在开始新建虚拟机操作
(1)name随便起一个,选择使用ISO安装系统
(2)选择ROS的ISO,OS TYPE和version就用默认generic
(3)内存使用适合的256M之类
(4)空间使用默认的8G空间
(5)到最后一步!!!需要修改网卡的MAC,点击Advanced options。
选择使用的网卡为eth1(桥br0)
选择set网卡的MAC,为第一步抄的MAC地址!!!
其他为默认,然后会跳一个窗口出来开始安装系统!!!
11、ROS安装以及后续,这里就不说明了。
12、如果centos系统重启,有几个需要注意的!
ROS会自动随着系统启动而启动的,
但是如果你想进centos的桌面,必须登录阿里云的控制台,然后发送远程命令,选择CTRL+ALT+F2,进入命令行,输入root密码,最后startx进入系统桌面
13、
ECS Linux CentOS 6.5安装桌面环境后桌面环境无法正常启动
ECS Linux CentOS 6.5系统中安装了桌面环境(Gnome或KDE)后,发现桌面环境无法正常启动,出现如下错误提示:
"You are currently trying to run as the root super user. The super user is a specialized account that is not designed to run a normal user session. Various progra?ms will not function properly, and actions performed under this account can cause unrecoverable damage to the operating system."
该问题是有桌面环境所依赖的相关服务没有启动。
使用如下指令将相关服务设置为自动启动后,再重启系统即可:
chkconfig --level 35 haldaemon on
chkconfig --level 35 messagebus on
---恢复内容结束---
以上是关于阿里云EC2+QEMU虚拟机+ROS完全教程!的主要内容,如果未能解决你的问题,请参考以下文章
错过了腾讯云120元/年的虚拟机?阿里云99元/年的虚拟机来了!
阿里云ecs能搭建haproxy+keepalive吗
基于阿里云的实例介绍
Rancher通过Aliyun-slb服务对接阿里云SLB教程
阿里云服务器ECS跟云虚拟主机那个好些?都有啥区别?
解决虚拟机docker无法拉取阿里云镜像的问题