首页 > *nix技术, 仿真虚拟 > u盘安装CentOS,远程接入kvm等

u盘安装CentOS,远程接入kvm等

2018年12月30日 发表评论 阅读评论 187 次浏览

一,U盘安装CentOS 7

1,准备:
Win8.1系统
U盘一个

2,在Win8.1系统上制作U盘启动盘
从CentOS官网下载CentOS7镜像:CentOS-7-x86_64-DVD-1804.iso

在Win8.1系统上安装UltrISO后,运行UltrISO;
通过“文件”—>“打开”选择CentOS镜像。
通过“启动”—>“写入硬盘映像”;
在弹出窗口里,硬盘驱动器选择U盘、勾选“刻录校验”,写入方式为USB-HDD+;隐藏启动分区选“无”;
点击“写入”,等待结束后,CentOS的U盘启动盘就做好了;

3,安装系统
a,把U盘启动盘插到对应CentOS安装设备上,BIOS选择U盘为第一引导。
b,安装过程中出现下面错误:
dracut-initqueue[624]:Warning: Could not boot.
dracut-initqueue[624]:Warning: /dev/root does not exist.
Starting Dracut EmergencyShell…
Warning: /dev/root does not exist

原因是:UltroISO在Window下写入U盘的安装文件路径,没有被linux安装程序识别
解决方法如下,在安装发生错误后会进入到一个命令行,在这个命令行里可以验证一下哪个是我们的U盘:
dracut:/# cd /dev
dracut:/dev# ls sd*

一般会有几个,比如sda、sda4、sdb、sdc等,可以尝试mount看看内容确认哪个磁盘是U盘,或者多尝试下面的内容几次也行:

重启在安装界面按下Tab键,修改启动配置,将:
vmlinuz initrd=initrd.img inst.stage2=hd:LABEL=CentOS\x207\x20x86_64 rd.live.check quiet
改为:
vmlinuz initrd=initrd.img inst.stage2=hd:/dev/sdb4 quiet
接下来安装就不多说了。

=============================分割线=============================

二,利用iso作为软件包安装源
1,准备iso镜像,比如:
CentOS-7-x86_64-DVD-1804.iso 或 CentOS-7-x86_64-Everything-1804.iso

2,加载镜像
# mkdir /mnt/cdrom
# mount -o loop /home/lenky/CentOS-7-x86_64-DVD-1804.iso /mnt/cdrom

3,修改软件包安装源
# cd /etc/yum.repos.d/
# mv CentOS-Base.repo CentOS-Base.repo.bak
# cp CentOS-Media.repo CentOS-Media.repo.bak
# vi CentOS-Media.repo
内容如下:
[c7-media]
name=CentOS-$releasever – Media
baseurl=file:///mnt/cdrom/
#baseurl=file:///media/CentOS/
# file:///media/cdrom/
# file:///media/cdrecorder/
gpgcheck=1
enabled=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7

4,重置源缓存
# yum clean all
# rm -fr /var/cache/yum/
# yum list
# yum install tree

=============================分割线=============================

三,开机关闭图形界面

新版本的CentOS系统里使用targets取代原运行级别的概念。
系统有两种默认的targets:多用户.target对应之前版本的3运行级别;而图形.target对应之前的5运行级别。

查看默认的target,执行:
systemctl get-default

开机以命令模式启动,执行:
systemctl set-default multi-user.target

开机以图形界面启动,执行:
systemctl set-default graphical.target

=============================分割线=============================

四,Windows 8.1通过vnc远程CentOS 7
1,安装vnc-server
# yum install -y tigervnc-server

2,关闭selinux
# vi /etc/sysconfig/selinux
SELINUX=disabled

3,配置vnc-server
# cd /lib/systemd/system
# cp vncserver@.service vncserver@:1.service
# vi vncserver@\:1.service
a, 将里面的改为对应的用户名,比如tom,如果是root,注意PIDFile=/home//则为/root/
b, 将Type=forking改为Type=simple
c, 如果是root用户,需要修改xstartup的权限:chmod 777 /root/.vnc/xstartup,否则可能会导致远程接入后黑屏
# systemctl daemon-reload
# systemctl enable vncserver@:1.service
Created symlink from /etc/systemd/system/multi-user.target.wants/vncserver@:1.service to /usr/lib/systemd/system/vncserver@:1.service.

4,关闭防火墙
# service firewalld stop

5,设置vnc密码:先切换到tom账号,再通过vncpasswd设置密码
# su tom
$ vncpasswd
Password:
Verify:
Would you like to enter a view-only password (y/n)? y
Password:
Verify:

6,启动vnc
$ su //先切回root账号
# systemctl start vncserver@:1.service
# systemctl status vncserver@:1.service
● vncserver@:1.service – Remote desktop service (VNC)
Loaded: loaded (/usr/lib/systemd/system/vncserver@:1.service; enabled; vendor preset: disabled)
Active: active (running) since Fri 2018-07-27 21:33:46 EDT; 1min 33s ago

看到active (running)就ok了。

7,Windows 8.1上安装
vncserver监听端口有多个:
RFB(Remote FrameBuffer)协议 默认端口 : 5900 显示器号
HTTP协议默认端口 : 5800 显示器号
X协议 默认端口 : 6000 显示器号
vncserver使用的显示器编号默认从1开始, 依次使用, 也可以参数指定端口号。
# netstat -natp | grep vnc
tcp 0 0 0.0.0.0:5901 0.0.0.0:* LISTEN 12220/Xvnc
tcp 0 0 0.0.0.0:6001 0.0.0.0:* LISTEN 12220/Xvnc
tcp 0 0 199.201.91.208:5901 199.200.152.7:59620 ESTABLISHED 12220/Xvnc
tcp6 0 0 :::5901 :::* LISTEN 12220/Xvnc
tcp6 0 0 :::6001 :::*
我这里只使用RFB协议。
下载RealVNC(WinVNC)或tigervnc64-1.9.0.exe:https://github.com/TigerVNC/tigervnc/releases
安装完后,连接对应的ip:port,比如我这里是:192.168.1.2:5901
然后在弹出框里输入前面设置的密码,即可远程登录CentOS。

=============================分割线=============================

五,CentOS 7上命令行使用KVM
1,检查CPU对KVM的支持
# egrep ‘vmx|svm’ /proc/cpuinfo

2,安装KVM
# yum -y install qemu-kvm libvirt bridge-utils

3,关闭selinux
# vi /etc/sysconfig/selinux
SELINUX=disabled

4,重启机器后确保kvm已启用
# reboot
# lsmod | grep kvm
kvm_intel 174841 0
kvm 578518 1 kvm_intel
irqbypass 13503 1 kvm
# ls /dev/kvm -l
crw-rw-rw-+ 1 root kvm 10, 232 Jul 26 08:26 /dev/kvm

5,从CentOS 6开始,RedHat推荐使用virt-install/virsh系列工具操作 kvm,而不是直接使用qemu-kvm,所以qemu-kvm被移到一个不起眼的地方 /usr/libexec/,做个链接:
# qemu-kvm
bash: qemu-kvm: command not found…
# ls /usr/libexec/qemu-kvm
/usr/libexec/qemu-kvm
# ln -sf /usr/libexec/qemu-kvm /usr/bin/kvm

至此,CentOS 7上就能使用命令行KVM了。

=============================分割线=============================

六,远程到CentOS 7上使用KVM命令行安装CentOS 7虚拟机
1,在Windows 8.1上利用xshell远程到CentOS 7物理机器

2,确保网桥已经配置,转发已经开启(我这里已经配置好了,因为已经安装了libvirt服务)
# yum install bridge-utils
Loaded plugins: fastestmirror, langpacks
Loading mirror speeds from cached hostfile
Package bridge-utils-1.5-9.el7.x86_64 already installed and latest version
Nothing to do
# brctl show
bridge name bridge id STP enabled interfaces
virbr0 8000.52540098e452 yes virbr0-nic
# ifconfig virbr0
virbr0: flags=4099 mtu 1500
inet 192.168.122.1 netmask 255.255.255.0 broadcast 192.168.122.255
ether 52:54:00:98:e4:52 txqueuelen 1000 (Ethernet)
RX packets 0 bytes 0 (0.0 B)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 0 bytes 0 (0.0 B)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
# cat /proc/sys/net/ipv4/ip_forward
1

3,准备CentOS 7虚拟机磁盘
# qemu-img create -f qcow2 -o preallocation=metadata /home/vmhome/centos7.qcow2 40G

4,创建CentOS 7虚拟机网卡启动脚本(注意bridge=后的参数,根据实际情况修改)
# chmod a+x /home/vmhome/qemu-ifup
# cat /home/vmhome/qemu-ifup
#!/bin/bash
bridge=virbr0

if [ -n “$1″ ]; then
ip link set $1 up
sleep 1
brctl addif $bridge $1
[ $? -eq 0 ] && exit 0 || exit 1
else
echo “Error: no interfacespecified.”
exit 1
fi

5,开始创建CentOS 7虚拟机
# kvm -name centos7 -smp 4 -m 8192 \
-drive file=/home/vmhome/centos7.qcow2,if=virtio,media=disk,index=0,format=qcow2 \
-drive file=/home/lenky/CentOS-7-x86_64-DVD-1804.iso,media=cdrom,index=1 \
-net nic,model=virtio \
-net tap,ifname=vnet0,script=/home/vmhome/qemu-ifup,downscript=no \
-nographic -vnc :2

启动后,我这里vnc端口应该是5902,可以netstat确认:
# netstat -natp | grep kvm
tcp 0 0 0.0.0.0:5902 0.0.0.0:* LISTEN 14040/kvm
tcp 0 0 199.201.91.208:5902 199.200.152.7:55720 ESTABLISHED 14040/kvm

6,通过tigervnc,连接192.168.1.2:5902,即可看到安装界面,后续操作无需多说。

转载请保留地址:http://www.lenky.info/archives/2018/12/2665http://lenky.info/?p=2665


备注:如无特殊说明,文章内容均出自Lenky个人的真实理解而并非存心妄自揣测来故意愚人耳目。由于个人水平有限,虽力求内容正确无误,但仍然难免出错,请勿见怪,如果可以则请留言告之,并欢迎来讨论。另外值得说明的是,Lenky的部分文章以及部分内容参考借鉴了网络上各位网友的热心分享,特别是一些带有完全参考的文章,其后附带的链接内容也许更直接、更丰富,而我只是做了一下归纳&转述,在此也一并表示感谢。关于本站的所有技术文章,欢迎转载,但请遵从CC创作共享协议,而一些私人性质较强的心情随笔,建议不要转载。

法律:根据最新颁布的《信息网络传播权保护条例》,如果您认为本文章的任何内容侵犯了您的权利,请以Email或书面等方式告知,本站将及时删除相关内容或链接。

  1. 本文目前尚无任何评论.
  1. 本文目前尚无任何 trackbacks 和 pingbacks.