Part 1 - 虚拟化软件安装 Linux 服务器版本

2023-06-11
9分钟阅读时长

【版本】

当前版本号v20241102

版本修改说明
v20241102修改部分容易出错步骤
v20241026新增常见问题
v20240922改善部分容易出错的步骤
v20240904改善部分步骤和截图
v20230915新增常见问题
v20230914根据学生反馈修正部分步骤和截图,并新增常见问题
v20230907新增退出Virtualbox控制的按键说明
v20230611换用 RockyLinux 8

任务1 虚拟化软件安装安装 RockyLinux

【任务目的】

  • 掌握搭建 RockyLinux 模板镜像
  • 熟练掌握 Linux命令(vi、tar、mv等等)的使用
  • 掌握使用 VirtualBox 或 VMWare Workstation Pro 新建和配置虚拟机
  • 掌握使用 SSH 客户端连接虚拟机

【任务环境】

  • 内存:至少4G
  • 硬盘:至少空余40G
  • 操作系统: 64位 Windows系统。

【任务资源】

  • FinalShell
  • RockyLinux 8 系统镜像
  • VirtualBox 7 或 VMWare Workstation Pro

资源下载

【任务步骤】

安装虚拟化软件

  1. 本任务在使用 VirtualBox情况下通过测试,所以优先推荐安装 VirtualBox 7。如果无法安装成功,可以选择VMWare Workstation Pro。

安装 FinalShell

  1. 安装 FinalShell。过程略。

新建虚拟机

  1. 使用 VirtualBox 或者 VMWare WorkStation Pro (二选一)来新建一台名字为tmpl的虚拟机,步骤如下。
  1. 启动tmpl主机。

  2. 在安装界面选择Install Rocky Linux 8.8

提示:进入Virtualbox的窗口,你会发现鼠标被限制在窗口内活动。 如果要退出 Virtualbox 的窗口,默认按下键盘右边的Ctrl键就可以退出了。

语言和时间配置

  1. 系统安装语言选择默认英语,点击Continue

  2. 在地图点击中国位置,Region 对应 asiaCity 对应 Shanghai,注意调整时间为你当前安装的实际时间。设置好以后点击Done

  3. 语言支持勾选中文简体,可以通过输入关键字找到。

网络和主机配置

  1. 网口设置,并设置 Host Name 为 tmpl

  2. 开启网络,并设置网卡信息。

地址:10.0.0.70
掩码:255.255.255.0 或者 24
网关:10.0.0.254
DNS:223.5.5.5
  1. 回到主界面,进入软件选择界面,选择最小化安装“Minima Install”。

磁盘分区设置

  1. 进入系统安装位置菜单。

  2. 选择自定义分区。

  3. 选择标准分区格式,点击Done完成。

  4. 新建3个分区(Partition)

swap分区:2048M
/boot 分区:300M
/ 根分区:剩余所有空间
  • 点击+按钮可以新增分区。

  • Desired Capacity栏留空则表示所有剩余空间都分配给该目录分区

  • 分区完成点击Done完成

  • 点击Accept Changes 应用所有分区修改。

禁用 KDUMP

  1. 禁用 KDUMP。

kdump是Linux内核的一个功能,可在发生内核错误时创建核心转储。当被触发时,kdump会导出一个内存映像,该映像可用于调试和确定崩溃的原因。在生产环境下,该选项不该被禁用,但是在本任务中为了提高系统运行效率和节约内存,才进行禁用。

用户设置

  1. 设置 root 密码。

  2. 创建 cdc 用户。

  3. 开始安装系统

  4. 系统开始安装

  5. 等待系统安装完毕以后,点击重启。

  6. 重启以后,尝试使用 cdc 账户登录。

  7. 查看系统版本

cat /etc/redhat-release
  • 正常会输出系统版本信息
Rocky Linux release 8.8 (Green Obsidian)
  1. 登录成功以后,输入以下命令,提升切换为root用户。
su
  1. cdc用户加入 wheel 用户组。如果你修改了用户名,请用替换 cdc为你的用户名。
在 CentOS 中,wheel 用户组是一个特殊的用户组,它通常用于限制对某些系统命令的访问权限。默认情况下,只有 root 用户和 wheel 用户组的成员可以使用 sudo 命令来执行需要超级用户权限的操作。
这意味着,如果你是 wheel 用户组的成员,你可以使用 sudo 来执行一些需要超级用户权限的命令,而不需要直接以 root 用户身份登录系统。这有助于提高系统的安全性,因为它减少了直接以 root 用户身份操作系统的频率。
sudo usermod -aG wheel cdc

网络设置验证

  1. 输入以下命令查看 enp0s3 的端口IP是否配置正常。
ip a
  • 正常情况应该可以看到类似以下信息,enp0s3网卡有对应 IP 地址 10.0.0.70。如果没看到,请参考常见问题2,启用网卡。
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
       valid_lft forever preferred_lft forever
    inet6 ::1/128 scope host
       valid_lft forever preferred_lft forever
2: enp0s3: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
    link/ether 08:00:27:b7:05:51 brd ff:ff:ff:ff:ff:ff
    inet 10.0.0.70/24 brd 10.0.0.255 scope global noprefixroute enp0s3
       valid_lft forever preferred_lft forever
    inet6 fe80::4977:e0ed:4338:25f8/64 scope link noprefixroute
       valid_lft forever preferred_lft forever

  1. 打开 Windows 文件浏览器,进入控制面板网络连接界面。可以看到有很多的网卡(网络适配器)。

  2. 找到虚拟网卡,并设置以下选项。

  • VirtualBox 设置
IP地址:10.0.0.2
子网掩码:255.255.255.0
默认网关:10.0.0.254
  • VMWare Workstation Pro 设置 找到“VMware Network Adapter VMnet1”这个网卡进行设置
  1. 打开 FinalShell,使用 root 用户SSH方式登录虚拟机。
连接名称:root@tmpl
IP:10.0.0.70
端口:22
用户名:root

  1. cdc用户加入wheel组,让cdc用户可以sudo提升权限。
usermod -aG wheel cdc

调整开机顺序

  1. 调整硬盘为启动的第一顺位。注意:此项设置需要关闭虚拟机才能操作。

源替换

  1. 为了提升软件安装速度,我们选择使用本地安装镜像作为软件的。首先确保虚拟机加载了 RockyLinux 的安装光盘镜像。
以下命令请在 FinalShell 上执行!
  1. 使用 root 用户登录。
su
  1. 解挂目录/mnt目录,准备把光盘挂载到此目录。
umount /mnt

如果没有挂载的情况下执行,会提示以下信息,表示目录状态是未挂载。这是正常的提示。

umount: /mnt:not mounted
  1. 挂载光盘内容到/mnt目录下
mount /dev/cdrom /mnt

重复执行挂载命令会提示类似以下信息,表示 /mnt 已经挂载:

mount: /mnt: WARNING: device write-protected, mounted read-only.
  1. 查看/mnt目录,
ls /mnt

正常会出现以下目录或文件。如果内容为空,需要重新执行步骤34的挂载命令;如果出现内容与以下不符合,有可能你的ISO镜像错误或者损坏。

AppStream  BaseOS  EFI  images  isolinux  LICENSE  media.repo  TRANS.TBL
  1. 进入源配置目录。
cd  /etc/yum.repos.d/
  1. 新建 test 目录,并把原来.repo后缀的源配置文件备份到 test 目录下。
mkdir test -p
mv *.repo test

注意:mv *.repo test 命令只运行一次,再次运行会提示文件或目录不存在。

  1. 创建本地源local.repo
vi /etc/yum.repos.d/local.repo
  1. 输入以下内容,把源指向光盘镜像的挂载目录/mnt。此步骤主要安装软件资源包的时候,直接从光盘镜像安装。

注意:进入vi要进入插入模式才能粘贴,否则粘贴内容容易缺失。

[local-baseos]
name=Rocky Linux $releasever - Local - BaseOS
baseurl=file:///mnt/BaseOS
gpgcheck=1
enabled=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-rockyofficial

[local-appstream]
name=Rocky Linux $releasever - Local - AppStream
baseurl=file:///mnt/AppStream
gpgcheck=1
enabled=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-rockyofficial
  1. 输出源配置,与上面步骤的内容进行核对。
cat /etc/yum.repos.d/local.repo
  1. 清理源缓存
dnf clean all
dnf makecache
  1. 尝试从源安装一些软件。
dnf -y install vim net-tools bind-utils traceroute telnet nmap
  • 如果出现类似以下信息,则表示安装成功。
已安装:
  gpm-libs-1.20.7-17.el8.x86_64                       
  vim-common-2:8.0.1763-19.el8_6.4.x86_64             
  vim-enhanced-2:8.0.1763-19.el8_6.4.x86_64           
  vim-filesystem-2:8.0.1763-19.el8_6.4.noarch         
  net-tools-2.0-0.52.20160912git.el8.x86_64
  bind-utils-32:9.11.36-16.el8_10.2.x86_64
  traceroute-3:2.1.0-8.el8.x86_64 
  telnet-1:0.17-76.el8.x86_64
  nmap-2:7.92-1.el8.x86_64
  nmap-ncat-2:7.92-1.el8.x86_64 
完毕!

实现开机自动挂载/mnt

  1. 切换到root用户。
su
  1. 执行以下命令,把挂载命令加入开机自动执行脚本。
echo 'mount /dev/cdrom /mnt'>> /etc/rc.local
  1. 加入运行的权限
sudo chmod +x /etc/rc.local
  1. 执行脚本实现挂载/mnt
source /etc/rc.local
  1. 查看/mnt目录下是否有内容。
ls /mnt
  • 正常会出现以下内容
AppStream  BaseOS  EFI  images  isolinux  LICENSE  media.repo  TRANS.TBL

【常见问题】

1. 如何查看 CentOS/Rocky Linux 虚拟机网卡信息。

ip a

2. 如何启用网卡

遇到网卡没有开机启用的情况,可以编辑网卡设置。如果网卡名称为enp0s3,则可以使用以下命令编辑enp0s3网卡配置。如果网卡名称不同,则需要修改以下命令为相应网卡名。

  • (1)先提升root权限
su
  • (2)编辑配置
vi /etc/sysconfig/network-scripts/ifcfg-enp0s3
  • (3)把 ONBOOT=no 修改为 ONBOOT=yes

  • (4)启用网卡

ifup enp0s3

3. 如何修改 CentOS/Rocky Linux 网卡的 IP 地址

  • (1)先提升root权限
su
  • (2)编辑配置,如果网卡名称为enp0s3,则可以使用以下命令编辑enp0s3网卡配置。如果网卡名称不同,则需要修改以下命令为相应网卡名。
vi /etc/sysconfig/network-scripts/ifcfg-enp0s3
  • (3)修改以下选项,并保存。
#IP 地址
IPADDR="10.0.0.70"
#掩码
PREFIX="24"
#网关
GATEWAY="10.0.0.254"
#DNS地址
DNS1="223.5.5.5"
  • (4)重新加载网卡配置
sudo nmcli c reload
  • (5)再次查看IP地址是否更改成功
ip a

4. 遇到 VirtualBox 无法选择仅主机Host-Only网络,或者选择后出错的情况。

  • (1)关闭虚拟机,关闭VirtualBox。以管理员权限运行VirtualBox。
  • (2)从菜单“管理”->“主机网络管理器”
  • (3)创建一个新的网卡
  • (4)在虚拟机的网络设置选择新的网卡。

5. 实现开机挂载/mnt目录

  • (1) 提升到 root 权限
su
  • (2) 执行以下命令
echo 'mount /dev/cdrom /mnt'>> /etc/rc.local
sudo chmod +x /etc/rc.local
source /etc/rc.local

6. 挂载/mnt不成功,提示找不到媒体。

[root@tmpl ~]# mount /dev/cdrom /mnt
mount: 在 /dev/sr0 上找不到媒体

答:

  • (1)检查虚拟光驱是否已经插入镜像文件。

  • (2)解挂,再重新挂载。

umount /mnt
mount /dev/cdrom /mnt

7. 安装软件不成功,提示“Error downloading packages:” 或者“ No more mirrors to try”

答:

  • (1)检查虚拟光驱是否已经插入镜像文件。

  • (2)解挂,再重新挂载。

umount /mnt
mount /dev/cdrom /mnt
  • (3)检查源的内容是否正确。
cat /etc/yum.repos.d/local.repo 

正常会展示以下内容

[local-baseos]
name=Rocky Linux $releasever - Local - BaseOS
baseurl=file:///mnt/BaseOS
gpgcheck=1
enabled=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-rockyofficial

[local-appstream]
name=Rocky Linux $releasever - Local - AppStream
baseurl=file:///mnt/AppStream
gpgcheck=1
enabled=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-rockyofficial
  • (4)清理源缓存
dnf clean all
dnf makecache
  • (5)重新执行安装命令

8. 安装完成后,重启又进入安装界面。

答:这是因为没有调整虚拟机的启动顺序,安装以后,硬盘的启动顺序应该在光盘之前。关闭虚拟机,参考步骤36

9. FinalShell 连接不上虚拟机

答: (1)检查虚拟机 IP 地址,在虚拟机输入以下命令,正常应该能够查看到10.0.0.70

ip a

  • 如果看不到IP,可能是网卡没启用,使用以下命令启用网卡,其中enp0s3是 VirtualBox 默认网卡名称,如果使用 VMWare 请替换网卡名为ens33
sudo nmcli connection up enp0s3

(2)检查虚拟机对应的虚拟网络适配器(网卡)的IP设置。

IP地址:10.0.0.2
子网掩码:255.255.255.0
网关:10.0.0.254

(3)确认你的虚拟机使用的是 Host-Only 网络。

  • VirtualBox

  • VmWare Workstation Pro

(4)关闭虚拟网卡的DHCP自动分配功能

  • 如果你使用的是 VirtualBox,请进入网络管理器,去掉启用DHCP服务器勾选选项。

10. 如何对虚拟机进行备份(生成快照)

答: 虚拟机的备份称为快照,允许用户创建快照并且进行恢复。

  • (1)点击虚拟机的选项菜单,点击备份

  • (2)点击生成,输入快照名称和描述,可以创建快照。

如果需要恢复,可以右键点击对应的快照,选择恢复备份

11. 挂载光盘到/mnt显示错误“wrong fs type bad option bad superblock”

答: 这是因为 Rocky Linux 的 iso 镜像损坏导致挂载失败。请重新下载镜像或者找老师重新拷贝完整镜像文件。

12. 安装 Virtualbox 提示缺失“Microsoft Visual C++ 2019 Redistributable Package”

答: 这是因为 Windows 系统缺失了Microsoft Visual C++ 发行包。可以在以下链接选择对应的版本安装缺失的包。

13. 安装 Virtualbox 后找不到对应的虚拟网卡。

答:

  • (1)在 Windows 系统控制面板下,卸载 Virtualbox。

  • (2)安装 CCCleaner 扫描注册表。

  • (3)清理注册表前选择备份注册表。

  • (4)清理注册表。

  • (5)重启 Windows系统,并重新安装 Virtualbox。

14. VMWare Workstation 挂载/mnt,提示cdrom is not a block device

答:编辑虚拟机,在CD/DVD 驱动器光驱设备处,点击高级,切换为IDE类型。

15. 在命令行终端运行命令总是显示“Failed to set locale, defaulting to C.UTF-8”消息。

答:这是由于没有配置正确的语言环境导致的。

  • (1)使用 root 用户登录,运行以下命令写入语言环境设置。
sudo echo "export LC_ALL=en_US.UTF8" >> /etc/profile

source /etc/profile

扫码或长按识别访问