CentOS-7虚拟机安装部署-WIN-AMD-VMW

1,193 阅读11分钟

1. 环境说明和软件准备

环境说明:

  • 宿主机操作系统:Window 10
  • 宿主机 CPU 架构:x86_64
  • 虚拟机软件:VMware Workstation Pro 15
  • 虚拟机系统:CentOS-7.6

软件下载:

  • CentOS 镜像下载地址:
    • 阿里云:https://mirrors.aliyun.com/centos-vault/7.6.1810/isos/x86_64/CentOS-7-x86_64-Minimal-1810.iso
    • 清华大学:https://mirrors.tuna.tsinghua.edu.cn/centos-vault/7.6.1810/isos/x86_64/CentOS-7-x86_64-Minimal-1810.iso

2. 创建虚拟机

01.png

02.png

03.png

04.png

在选择好系统镜像之后,如果选择【安装程序光盘映像文件】,会自动安装系统,虽然方便,但是会安装太多的服务和程序,并且会自动分区,所有我们选择【稍后安装系统】 来手动的安装系统。

05.png

06.png

07.png

08.png

关于 CentOS 系统不同版本所需的启动内存,参考本文附录【8.1 CentOS 系统启动所需内存】

09.png

关于网络连接的 3 种方式的区别,参考本文附录【8.2 虚拟机 3 种网络类型说明】

10.png

11.png

12.png

13.png

14.png

15.png

3. 虚拟机硬件设置

16.png

17.png

4. 虚拟网络配置

18.png

19.png

20.png

5. 安装系统

5.1 进入系统安装引导界面

21.png

22.png

提示:虚拟机界面与Windows界面鼠标切换:Ctrl + Alt

5.2 修改网卡名为 eth0

为了统一企业中的多版本系统共存的环境,这里将网卡名称设置为 eth* 的形式,不使用 CentOS7 默认的网卡命名规则,相关说明如下:

CentOS7 以前的 eth + 数字编号 的网卡命名方式往往不一定能准确对应网卡接口的物理顺序,CentOS7 的网卡命名方式可以解决这一问题,但同时也为 Linux 系统管理员带来了额外的困扰,即无法兼容 CentOS6 的环境以及使用习惯,所以一般都还是会改回早期的 eth0、eth1 这样的网卡命名方式,具体修改内核参数组合如下:

  • 默认内核参数 biosdevname=0 net.ifnames=1,网卡名如 enp5s2
  • 如果 biosdevname=1 net.ifnames=0,网卡名如 em1
  • 如果 biosdevname=0 net.ifnames=0,网卡名如 eth0 (传统的方式)

所以在初始安装的时候,需要增加内核参数,先选中 【Install CentOS 7】,按 Tab 键进入内核参数配置界面,并手动输入以下参数,输入完成之后,按 【Enter】 即可进入下一步,随后也会看到按 【Enter】 的提示,等待即可。

23.png

24.png

也在系统安装之后也可以修改网卡名称,参考本文附录【8.3 CentOS7 修改网卡命名方式为传统方式】

5.3 选择语言,建议选择英文

25.png

如果由于分辨率问题导致【Continue】按钮看不到,就需要进入全屏模式:

full-screen.png

5.4 安装摘要页面 INSTALLATION SUMMARY

26.png

27.png

5.5 配置系统时区和时间 DATE&TIME

60.png

5.6 选择额外的语言支持 LANGUAGE SUPPORT

29.png

5.7 系统软件包选择 SOFTWARE SELECTION

30.png

根据经验,选择安装包时应该采用最小化原则,即不需要的或不确定是否需要的东西就不安装,即【Minimal Install】,这样可以最大程度上确保系统安全。

如果安装过程中落下了部分组件,或者是其他伙伴安装时未选择,那么在安装完成之后也可以手动安装这些组件,参考本文附录【8.4 CentOS7 手动安装系统组件】

5.8 配置网络和主机名 NETWORK&HOSTNAME

31.png

32.png

33.png

34.png

经过这一步的配置,我们做了这些事情:

  • 设置静态 IP 为 10.0.0.100
  • 设置 DNS 服务器的地址为 223.5.5.5
  • 设置主机名为 node01

这些配置都可以在系统安装完成后进行修改,参考附录【8.9 CentOS7 网络配置】

5.9 选择磁盘分区,配置分区 INSTALLATION DESTINATION

关于分区相关知识,参考本文附录【8.5 Linux 系统分区知识简介】

35.png

点击【Done】进入分区设置页面

36.png

说明:

LVM 的意思是逻辑卷管理,它可以对设置好的分区大小进行动态调整,前提是所有的分区格式都需要事先做成 LVM 分区格式,即分区标号为 8e,企业环境的分区一般都是按需求实现规划好的,极少有后续调整的需求,且 LVM 的性能和标准分区及硬件 RAID 卡相比还是有一定的差距的,因此,如果没有特殊需求,则不会选择 LVM 功能分区,而是使用更优秀的标准分区模式 Standard Partition。

37.png

关于 Linux 系统的多种分区方案,参考本文附录【8.6 Linux 系统分区方案】

38.png

39.png

说明:

  • Mount Point:挂载点,这是 Linux 访问磁盘分区的入口,即如果要往 /boot 分区(/dev/sda1)里写入数据,则必须通过 /boot 入口来写入
  • File System:文件系统类型,磁盘分区只有在设置了文件系统类型,格式化并挂载到挂载点之后,分区才能存放数据

关于文件系统类型的简介,参考本文附录【8.7 Linux 文件系统简介】

40.png

41.png

42.png

43.png

检查一下,确保所有分区(/、/boot、swap)的 Device Type 都是 Standard Partition,之后点击 【Done】

44.png

5.10 系统安全相关

KDUMP:将宕机前系统内存异常信息进行保存

45.png

SECURITY POLICY:系统的安全策略配置

46.png

5.11 系统安装

47.png

点击 【Begin Installation】

48.png

设置 root 用户的密码:

49.png

设置普通用户的密码:提示密码强度不够,要强制使用需要点击两次 【Done】

50.png

然后等待系统安装好即可,出现 【Reboot】 按钮就是已经安装好了

51.png

然后点击【Reboot】按钮进行重启,重启过程不需要任何操作,等待即可。

6. 系统安装后的操作与配置

6.1 登陆系统

52.png

6.2 检查网络配置

查看 IP 信息:ip address show,简写为 ip a

53.png

或者使用 ifconfig 命令查看 IP 信息,如果没有 ifconfig 命令,执行 yum install net-tools -y 命令进行安装。

查看网关设置:ip route

54.png

查看 DNS 设置:cat /etc/resolv.conf

55.png

测试虚拟机能够访问外网:ping www.baidu.com

56.png

如不能访问外网,参考本文附录【8.8 系统无法联网的故障排除方法】

6.3 设置主机名与 IP 地址的映射关系

编辑 /etc/hosts 文件,增加 IP 地址和主机名的映射

$ sudo cat /etc/hosts
127.0.0.1       localhost
::1             localhost
10.0.0.100 node01

同时在 Windows的 C:\Windows\System32\drivers\etc\hosts 文件中也增加同样的内容:10.0.0.100 node01

6.4 关闭防火墙

# 关闭防火墙服务
systemctl stop firewalld

# 禁用防火墙服务
systemctl disable firewalld

# 查看防火墙服务状态
systemctl status firewalld

# 查看防火墙服务状态信息
systemctl is-active firewalld # 检查服务是否正常运行
systemctl is-failed firewalld # 检查服务是否停止
systemctl is-enabled firewalld # 检查确认服务是否开机运行

6.5 禁用 SELINUX

永久禁用 SELINUX,编辑 /etc/selinux/config 文件:

# 原来为 SELINUX=enforcing
SELINUX=disabled

临时禁用 SELINUX:

setenforce 0
# 或者
setenforce Permissive

SELINUX 其他命令:

# 查看 SELINUX 状态
getenforce
# 临时开启 SELINUX
setenforce 1
setenforce Enforcing
# SELINUX 的三种状态
Disabled # 禁用
Permissive # 违反 SELinux 规则的行为只会记录到日志中,但仍可执行
Enforcing # 违反 SELinux 规则的行为将被阻止并记录到日志中

6.6 配置阿里云的yum源

  • 下载wget
yum install wget -y
  • 备份旧的yum源文件
mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.bak
  • 下载阿里云的yum源文件
wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
# 同时下载扩展的yum源文件
wget -O /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-7.repo
  • 执行以下命令:
sed -i -e '/mirrors.cloud.aliyuncs.com/d' -e '/mirrors.aliyuncs.com/d' /etc/yum.repos.d/CentOS-Base.repo
  • 重新生成yum缓存
yum clean all
yum makecache
  • 验证
# 检查可用 yum 源
$ yum repolist
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
repo id             repo name                                         status
base/7/x86_64       CentOS-7 - Base - mirrors.aliyun.com              10,070
epel/x86_64         Extra Packages for Enterprise Linux 7 - x86_64    13,314
extras/7/x86_64     CentOS-7 - Extras - mirrors.aliyun.com            397
updates/7/x86_64    CentOS-7 - Updates - mirrors.aliyun.com           743
repolist: 24,524

6.7 系统更新

yum update -y
# 或者
yum upgrade -y

6.8 安装常用的软件

yum install -y \
tree \
nmap \
dos2unix \
rzsz \
nc \
lsof \
wget \
tcpdump \
htop \
iftop \
iotop \
sysstat \
nethogs \
psmisc \
net-tools \
bash-completion \
bash-completion-extras \
vim-enhanced \
unzip

对这些软件的说明:

软件包名包含的核心命令
treetree 以树形结构显示文件和目录
nmapnmap 扫描端口的工具
dos2unix转换脚本格式的工具
lrzsz包含上传(rz)、下载(sz)文件工具
nc文件传输、端口检查工具
lsof反查端口进程以及服务开发文件工具
wget下载软件包工具
tcpdump抓包、监听等重要排错工具
htop系统进程相关信息查看工具
iftop查看主机网卡带宽工具
iotopIO 分析工具
sysstat含有 sar、iostat 等重要系统性能查看工具
nethogs显示进程的网络流量
psmisc含有 killall、pstree 等命令
net-tools含有 netstat、ifconfig、route、arp 等命令
bash-completion
bash-completion-extras
tab 补全功能工具包
vim-enhancedvim 编辑器工具包
unzip解压 zip 包的工具

6.9 设置关机时清理系统日志

/usr/local/bin 目录下创建清理系统日志的脚本 clean-log.sh,内容如下:

#!/bin/bash

rm -rf /var/log/hawkey.log-*
rm -rf /var/log/audit/audit.log.*
rm -rf /var/log/hawkey.log-*
rm -rf /var/log/sssd/sssd_kcm.log-*
rm -rf /var/log/boot.log-*
rm -rf /var/log/btmp-*
rm -rf /var/log/cron-*
rm -rf /var/log/dmesg.*
rm -rf /var/log/maillog-*
rm -rf /var/log/messages-*
rm -rf /var/log/secure-*
rm -rf /var/log/spooler-*
rm -rf /var/log/vmware-network.[0-9]*.log
rm -rf /tmp/*

说明,这里只是添加了操作系统的日志,这些日志都是会按照一定的规则滚动,删除的时候保留了最新的,后续在系统上安装的各种应用也会产生日志,后续在安装应用后,按需把应用的日志也添加到此脚本中。

增加 /usr/lib/systemd/system/my-powerdown.service 文件,内容如下:

[Unit]
Description=run my scripts while system poweroff
DefaultDependencies=no
Before=shutdown.target reboot.target halt.target

[Service]
Type=oneshot
ExecStart=/usr/local/bin/clean-log.sh

[Install]
WantedBy=halt.target reboot.target shutdown.target

启用服务:

systemctl enable my-powerdown.service --now

6.10 修改系统字符编码集

# 查看系统编码字符集
$ echo $LANG
en_US.UTF-8

# 临时修改系统字符集
$ LANG=zh_CN.UTF-8

# 永久修改系统字符集

# 方法一
# 编辑 /etc/profile 文件,添加如下内容
export LANG=zh_CN.UTF-8
# 然后 source /etc/profile 文件即可

# 方法二
# 编辑 /etc/locale.conf 文件
LANG="zh_CN.UTF-8"
# 然后 source /etc/locale.conf 文件即可

# 方法三
$ sudo localectl set-locale LANG=zh_CN.UTF-8
# 然后 source /etc/locale.conf 文件即可

6.11 远程连接优化

# 1. 修改 /etc/ssh/sshd_config 文件中的内容
# 这一行默认为 yes,改为 no
GSSAPIAuthentication no
# 这一行默认注释且值为 no,放开注释
UseDNS no

# 2. 然后确保 /etc/hosts 文件中有本机的 IP 和主机名映射
$ cat /etc/hosts
127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4
::1         localhost localhost.localdomain localhost6 localhost6.localdomain6

10.0.0.100   node01

# 3. 重启 sshd 服务
$ systemctl restart sshd

6.12 创建一个管理员用户

创建一个普通用户,并赋予 sudo 权限:

useradd hadoop # 创建 hadoop 用户
passwd hadoop # 给 hadoop 用户设置密码

给 hadoop 用户添加 sudo 权限,并且设置 hadoop 用户可以不输入密码就执行 sudo 命令,编辑 /etc/sudoers 文件:

## Allow root to run any commands anywhere 
root    ALL=(ALL)       ALL
# 这一行是新增加的
hadoop  ALL=(ALL)       NOPASSWD:ALL

6.13 开机自动同步时间

虚拟机如果长时间不开机,则系统时间与现实时间会不一致,在系统时间与现实时间相差太多的情况下,NTP 服务无法自动使用外网更正时间,需手动同步时间,所以这里设置开机后自动同步时间。

/usr/local/bin 目录下创建清理系统日志的脚本 time-sync.sh,内容如下:

#!/bin/bash

systemctl stop ntpd
# 从中国国家授时中心同步时间
ntpdate cn.pool.ntp.org
systemctl start ntpd

增加执行权限:

chmod +x /usr/local/bin/time-sync.sh

/etc/rc.d/rc.local文件增加执行权限,该文件在开机时会执行其中的命令:

chmod +x /etc/rc.d/rc.local

修改/etc/rc.d/rc.local文件,追加内容:

sh /usr/local/bin/time-sync.sh

7. 关机并保存快照

先关掉虚拟机再拍快照

59.png

8. 附录

8.1 CentOS 系统启动所需内存

系统版本安装所需内存启动所需内存
CentOS-5256M100M
CentOS-6最少512M,建议1GB+最少512M,建议1GB+
CentOS-7最少512M,建议1GB+最少512M,建议1GB+

如果安装时内存小于最低推荐内存,可能会报错,建议安装的时候内存设置的比建议值大一些,例如2GB,之后再根据本地资源使用情况再做内存的调整。

8.2 虚拟机 3 种网络类型说明

net.png

  • NAT(Network Address Translation):网络地址转换,虚拟机通过宿主机进行上网和交换数据。在 NAT 模式下,虚拟机的网卡连接到宿主机的 VMnet8 网卡上,宿主机中的 VMware NAT Service 服务充当了路由器的角色,负责将虚拟机发送到 VMnet8 的包进行地址转换之后再发送到实际的网络上,同理,将实际网络上返回的包进行地址转换后通过 VMnet8 发送给虚拟机,VMware DHCP Service 负责为虚拟机分配分配 IP 地址。NAT 网络适用于宿主机直连网线或者办公室的局域网环境,优点是不会与其他物理机的 IP 发生冲突,更换网络环境后,虚拟机的 IP 不会受到影响,推荐使用 NAT 模式;
  • Bridged(桥接模式):虚拟机可以分配于宿主机相同网段的独立 IP ,所有网络功能几乎与真实机器完全一样,虚拟机直接连接到真实网络中,适用场景:局域网环境,优点:远程机器可以通过路由器访问到虚拟机,缺点:与宿主机通信都会走真实的路由器,且可能会造成 IP 冲突,更换网络环境后,所有虚拟机的 IP 都会受影响;
  • Host-only(仅主机模式):虚拟机不能访问外网,只能与宿主机通信。

8.3 CentOS7 修改网卡命名方式为传统方式

# 1. 修改/etc/sysconfig/network-scripts/ifcfg-ens33 文件
NAME=eth0
DEVICE=eth0
# 2. 网卡设备文件重命名
mv /etc/sysconfig/network-scripts/ifcfg-ens33 /etc/sysconfig/network-scripts/ifcfg-eth0
# 3. 修改/etc/default/grub文件,添加如下内容
GRUB_CMDLINE_LINUX="biosdevname=0 net.ifnames=0 rhgb quiet"
# 4.系统重新加载grub配置文件
grub2-mkconfig -o /boot/grub2/grub.cfg

参考 https://blog.51cto.com/oldboy/1722101

8.4 CentOS7 手动安装系统组件

查看哪些系统组件已经安装,哪些还没有安装

$ yum grouplist

Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
 * base: mirror.bit.edu.cn
 * extras: mirrors.aliyun.com
 * updates: mirrors.aliyun.com
 
# 可以安装的
Available Environment Groups:
   Minimal Install
   Compute Node
   Infrastructure Server
   File and Print Server
   Basic Web Server
   Virtualization Host
   Server with GUI
   GNOME Desktop
   KDE Plasma Workspaces
   Development and Creative Workstation
# 已安装的
Installed Groups:
   Compatibility Libraries
   Development Tools
   Security Tools
   System Administration Tools
# 可以安装的
Available Groups:
   Console Internet Tools
   Graphical Administration Tools
   Legacy UNIX Compatibility
   Scientific Support
   Smart Card Support
   System Management
Done

安装:

# yum group install 包名
yum group install "Compatibility Libraries" "Development Tools"

# 查看已经安装的包:yum groupinfo [package-name]

8.5 Linux 系统分区知识简介

Linux磁盘分区知识简介:

  • 磁盘在使用之前一般要先分区(相当于买的房要分几居一样);
  • 磁盘分区有主分区、扩展分区和逻辑分区之分。一块磁盘最多可以有 4 个主分区,其中,一个主分区的位置可以用一个扩展分区来替换,在这个扩展分区内可以划分多个逻辑分区;
  • 如果规划的分区数量超过 4 个,则分区组合可为 3primary(p)+1extend(e) 或者 2p+1e 或 1p+1e;
  • 一块磁盘最多只能有一个扩展分区,扩展分区不能直接使用,必须在扩展分区上划分逻辑分区,然后格式化(创建文件系统),之后才能存取数据或者装系统。

磁盘分区命名以及编号方式:

  1. 以设备名命名

    在 Linux 系统中,磁盘设备对应于系统中的特殊文件,这些特殊的文件放在 /dev 目录中,不同的设备对应的设备名称具体如下:

    • 系统的第一块 IDE 接口的硬盘名称为 /dev/hda
    • 系统的第二块 IDE 接口的硬盘名称为 /dev/hdb
    • 系统的第一块 SCSI 接口的硬盘名称为 /dev/sda
    • 系统的第二块 SCSI 接口的硬盘名称为 /dev/sdb
  2. 使用数字编号

    为了表示不同的分区,通常会使用数字进行编号,比如:

    • 系统的第一块 IDE 接口的硬盘的第一个分区名称为 /dev/hda1
    • 系统的第一块 IDE 接口的硬盘的第五个分区名称为 /dev/hda5
    • 系统的第二块 SCSI 接口的硬盘的第一个分区名称 /dev/sdb1
    • 系统的第二块 SCSI 接口的硬盘的第五个分区名称 /dev/sdb5

对分区进行编号时,数字 1-4 只能留给主分区或者扩展分区,在安装时由系统自行完成创建。

8.6 Linux 系统分区方案

Linux系统对分区的基本要求:

  • 最好要有一个根(/)分区,用来存放系统文件及程序,大小在5GB以上;
  • 要有一个交换(swap)分区,它的作用相当于 Windows 的虚拟内存,swap 分区的大小一般为物理内存容量的 1.5 倍(内存 <8GB),当系统物理内存大于 8GB 时,swap分区配置 8-16GB 即可,太大无用,浪费磁盘空间。swap 分区不是必须的,但是大多数情况下还是设置一下比较好,个别企业的数据库应用场景不设置 swap;
  • /boot分区,这是 Linux 系统的引导分区,用于存放系统引导文件,如 Linux 内核等。对CentOS7而言,这个分区要比之前的版本大一点,可设置为 1024MB,这个分区也不是必须的。

企业生产场景中 Linux 的分区方案:

  1. 方案一:针对网站集群架构中的某个节点服务器分区,该服务器上的数据包含多份(其他节点也有)且数据不太重要,建议的分区方式如下:

    • /boot:512~1024MB
    • /swap:当物理内存小于8GB时,设置为物理内存的1.5倍,当物理内存大于等于8GB时,分配8-16GB,建议给8GB就可以了
    • /:硬盘剩余空间大小(/usr、/home、/var等分区和"/"共用一个分区,这就相当于是在Windows系统中只有一个C盘一样,所有数据和系统文件都存放在一起)
  2. 方案二:针对数据库及存储角色的服务器分区,该服务器的业务包含了大量重要的数据,建议分区方式如下:

    • /boot:512~1024MB
    • /swap:当物理内存小于8GB时,设置为物理内存的1.5倍,当物理内存大于等于8GB时,分配8-16GB,建议给8GB就可以了
    • /:大小设置为50~200GB,只存放系统相关文件,网站等的业务数据不放在这里
    • /data:剩余硬盘空间大小,存放数据库及存储服务等重要数据,当然,data这个名称可以自定义

    方案二就是将重要数据单独分区,以便于备份和管理

  3. 方案三:针对大网站或者门户级别企业的服务器进行分区

    • /boot:512~1024MB
    • /swap:当物理内存小于8GB时,设置为物理内存的1.5倍,当物理内存大于等于8GB时,分配8-16GB,建议给8GB就可以了
    • /:大小设置为50~200GB,只存放系统相关文件,网站等的业务数据不放在这里

    保留剩余的磁盘空间,不再进行分区,将来分配给不同的使用部门,由他们自己根据需求再分,此种分区方案更加灵活,比较适合也业务线比较多且需求不确定的大企业使用

  4. 不推荐的分区方案:

    手动对/usr、/home、/var等进行分区,这样分配了太多额外的分区,没有必要,导致管理麻烦,不推荐这种分区方式。

红帽官网对系统分区的说明:

redhat-6:https://access.redhat.com/documentation/zh-cn/red_hat_enterprise_linux/6/html/installation_guide/s2-diskpartrecommend-x86#doc-wrapper

redhat-7:https://access.redhat.com/documentation/zh-cn/red_hat_enterprise_linux/7/html/installation_guide/sect-recommended-partitioning-scheme-x86

redhat-8:https://access.redhat.com/documentation/zh-cn/red_hat_enterprise_linux/8/html/performing_a_standard_rhel_8_installation/manual-partitioning_graphical-installation

redhat-9:https://access.redhat.com/documentation/zh-cn/red_hat_enterprise_linux/9/html/performing_a_standard_rhel_9_installation/assembly_customizing-your-installation_installing-rhel#manual-partitioning_graphical-installation

8.7 Linux 文件系统简介

常用的文件系统类型如下:

  • xfs:一个优秀的文件系统类型,在 CentOS7 中作为默认的文件系统类型替换了 ext4;
  • ext2/ext3/ext4:一种适合于 Linux 的文件系统类型,ext3 多出了日志记录功能,因此系统恢复起来会更快速,ext4 是 ext3 的升级,效率更高,CentOS6 默认使用的是 ext4;
  • physical volume(LVM):一种弹性调整文件系统大小的机制,即可以让文件系统变大或者变小,而无须改变原有文件数据的内容,功能不错,但性能会有所下降;
  • swap:内存交换空间,由于 swap 并不会使用到目录树的挂载,所以不需要指定挂载点;
  • vfat:同时支持 Linux 和 Windows 的文件系统类型,如果主机同时存在 Windows 与 Linux 两种操作系统,存在数据交换需求,就可以使用这种文件系统类型。

8.8 系统无法联网的故障排除方法

  • 检查IP、子网掩码、网关和DNS是否设置正确

57.png

替换此文件中的某一个配置,例如将 ONBOOT=no 改为 ONBOOT=yes 的命令为:

sed -i 's#ONBOOT=no#ONBOOT=yes#g' /etc/sysconfig/network-scripts/ifcfg-eth0

查看某个配置,例如查看 ONBOOT 配置的值的命令:

grep ONBOOT /etc/sysconfig/network-scripts/ifcfg-eth0

修改之后重启网卡:

systemctl restart network
  • 查看 Windows 的 VMware NAT 服务是否开启

58.png

8.9 CentOS7 网络配置

设置静态 IP 地址

修改 /etc/sysconfig/network-scripts/ifcfg-eth0 文件,做如下修改:

# 修改的内容
BOOTPROTO=static
ONBOOT=yes

# 新增的内容:
NM_CONTROLLED=no # 不使用NetworkManager来管理网络
# 设置静态IP
IPADDR=10.0.0.100
# 设置网关IP
GATEWAY=10.0.0.2
# 设置阿里云的DNS
DNS1=223.5.5.5
# 设置子网掩码
NETMASK=255.255.255.0

# 删除的内容【可选】
# 假如你的虚拟机还要被克隆,那么删除 UUID 这个配置
UUID=XXXXXXXXXXXXXXXXXXXX

说明:如果安装系统时没有设置网卡的命名规则使用传统模式,那么 CentOS7 系统的网卡名为 ens + 数字,比如:ens33、ens32、ens160 等。对应要修改的文件是:/etc/sysconfig/network-scripts/ifcfg-网卡名

保存退出后,停止 NetworkManager 服务、禁用 NetworkManager 服务并重启网络服务:

systemctl stop NetworkManager.service
systemctl disable NetworkManager.service
systemctl restart network

配置 DNS 服务器

/etc/sysconfig/network-scripts/ifcfg-eth0 文件中已经添加了 DNS 服务地址:

DNS1=223.5.5.5

那么重启网络服务后,查看 /etc/resolv.conf 文件就可以看到增加的 DNS 服务地址:

$ sudo cat /etc/resolv.conf
# Generated by NetworkManager
nameserver 223.5.5.5

而如果没有在 /etc/sysconfig/network-scripts/ifcfg-eth0 文件中配置 DNS,那么可以直接在 /etc/resolv.conf 文件中添加,格式为 nameserver DNS地址,CentOS-7 最多支持 3 个 DNS 地址,即使配置超过 3 个,多余的也不起作用。

建议在 /etc/sysconfig/network-scripts/ifcfg-eth0 中配置 DNS 并重启网络服务来修改 DNS 的配置。

修改主机名

编辑 /etc/hostname 文件,设置主机名,例如我的主机名为 node01

$ sudo cat /etc/hostname
node01