欢迎您访问 最编程 本站为您分享编程语言代码,编程技术文章!
您现在的位置是: 首页

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

最编程 2024-07-02 19:47:44
...

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

对这些软件的说明:

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