使用工具 | VMware 17.0 CentOS 7.0 Xshell7.0 |
---|---|
参考资料 | 无 |
-
确认是否已安装配置模板虚拟机所需的前置软件
-
是否已安装 VMware17 ? → 参考教程 : Linux环境-VMware17的安装与配置
-
是否已安装 Xshell7 和 Xftp7 ? → 参考教程 : Linux环境-Xshell与Xftp的安装与配置
-
-
从百度网盘获取 CentOS7 镜像
网盘链接:CentOS-7.5-x86_64-DVD-1804
提取码:1y57 -
在 VMware17 中新建一个虚拟机
-
虚拟机开机并完成初始化配置
知识点 : “net.ifnames=0 biosdevname=0” 的作用是什么?
●net.ifnames=0 biosdevname=0
的作用是将 centos7 系统镜像的网卡名由ens33
修改为eth0
;
● 当我们在 Linux 系统中使用net.ifnames=0
和biosdevname=0
这两个参数时,它们的作用是禁用可预测的网络
接口名称和 BIOS 提供的设备名称,使系统采用传统的网络接口命名方式(例如 eth0、eth1)。
●net.ifnames=0
表示禁用可预测的网络接口名称。当这个参数被设置为0时,系统将使用传统的命名方案 (即
CentOS6及其之前的命名规则),例如 eth0、eth1 等;
●biosdevname=0
表示禁用 BIOS 提供的设备名称。如果这个参数被设置为0,系统将不会使用 BIOS 提供的设备名称
( biosdevname 是一个安装包, 而上面的所有命名规则都依赖于这个安装包) ;
● 这两个参数通常用于在安装或启动时修改系统的默认行为。如果我们希望系统使用传统的网络接口命名方案(如 eth0、
eth1),我们就可以在启动时使用这些参数。
-
配置 VMware 网络配置使得 Xshell 可以远程连接到虚拟机
-
尝试使用 Xshell7 从本地远程连接到虚拟机
知识点 : Xshell 成功连接到虚拟机时显示的界面
-
为虚拟机添加内网网卡
知识点 : 为什么要有两个网络适配器? LAN区段的作用是什么?
● 网络适配器1 即第1块网卡eth0
用于模拟公网,地址为10.0.0.210
● 网络适配器2 即第2块网卡eth1
作为局域网, 地址为172.16.1.210
● 同一个 LAN 区段的 IP 地址会接入到同一个交换机当中 -
为虚拟机添加网卡配置文件
8.1 编写配置文件 ifcfg-eth1# 编写 ifcfg-eth1 文件 vi /etc/sysconfig/network-scripts/ifcfg-eth1 -------------------------------------------------- NAME=eth1 # 名称 DEVICE=eth1 # 网卡名称 IPADDR=172.16.1.210 # IP地址 PREFIX=24 # 子网掩码 ONBOOT=yes # 是否开机自动 BOOTROTO=static # 静态网卡 # 注意:局域网网卡内不设网关地址(gateway)和DNS地址(dns), 防止与公网网关起冲突 -------------------------------------------------- :wq
8.2 重启网络服务
systemctl restart network
8.3 查看网卡是否挂载成功
ip a
-
虚拟机系统配置与优化
9.1 关闭防火墙# 暂时关闭防火墙 systemctl stop firewalld # 永久关闭防火墙 systemctl disable firewalld # 查看防火墙当前状态 systemctl status firewalld
9.2 模板虚拟机关闭 Selinux (Selinux可以理解为手机的纯净模式)
# 临时关闭 Selinux setenforce 0 # 永久关闭 Selinux vim /etc/selinux/config -------------------------------------------------- 修改 SELINUX=enforcing 为 SELINUX=disabled -------------------------------------------------- :wq # 查看 selinux 是否关闭 (permissive或disabled表示关闭; enforcing表示开启) getenforce
9.3 模板虚拟机配置 yum 源
# 备份 yum 源配置 cp /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.bak # 修改base源为阿里云 curl -o /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-7.repo # 增加 epel 源 curl -o /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-7.repo # 查看 yum 源 yum repolist # 安装Linux常用工具 yum install -y tree vim wget bash-completion bash-completion-extras lrzsz net-tools sysstat iotop iftop htop unzip nc nmap telnet bc psmisc httpd-tools bind-utils nethogs expect ntpdate lsof nginx sl cowsay
知识点 : 通过命令查看 yum 源是否配置成功
可以通过命令cat /etc/yum.repos.d/epel.repo
查看 yum 源是否修改成功
9.4 模板虚拟机优化ssh连接速度
sed -i '/^GSSAPIAuthentication/s@^@#@g' /etc/ssh/sshd_config cat >> /etc/ssh/sshd_config<<EOF # 数字形式显示ip地址而不是默认的主机名形式 UseDNS no # 关闭 GSS 认证 GSSAPIAuthentication no EOF # 重启 sshd 服务 systemctl restart sshd # 检查 egrep '^(UseDNS|GSSAPIAuth)' /etc/ssh/sshd_config
9.5 模板虚拟机时间同步# 查看时区 time zone 部分 timedatectl status # 修改时区 timedatectl set-timezone Asia/Shanghai # 配置定时时间同步 (yum install -y ntpdate) crontab -e ------------------------------------------------------------ # [xuxouy210] in [2023-11-07] --> [每两分钟同步一次时间] */2 * * * * /sbin/ntpdate ntp1.aliyun.com &>/dev/null ------------------------------------------------------------ :wq # 查看已生成的定时任务 crontab -l
9.6 模板虚拟机修改命令行颜色vim /etc/profile ------------------------------------------------------------ export PS1='[\[\e[34;1m\]\u@\[\e[0m\]\[\e[32;1m\]\H\[\e[0m\]\[\e[31;1m\] \w\[\e[0m\]]\$ ' ------------------------------------------------------------ :wq # 对所有用户生效 source /etc/profile
9.7 模板虚拟机修改主机名hostnamectl set-hostname xuxouy210 reboot
9.8 模板虚拟机 host 解析(方便使用主机名进行互相访问)cat >> /etc/hosts <<EOF 172.16.1.5 lb01 172.16.1.6 lb02 172.16.1.7 web01 172.16.1.8 web02 172.16.1.9 web03 172.16.1.10 web04 172.16.1.31 nfs01 172.16.1.41 backup 172.16.1.51 db01 172.16.1.61 m01 EOF
9.9 模板虚拟机编写一键修改主机名和IP地址的脚本
# 创建用于存放脚本的文件夹 mkdir -p /server/scripts/ # 编写一键修改主机名和IP地址的脚本 vim /server/scripts/change.sh ------------------------------------------------------------ #!/bin/bash # author: xuxouy # desc: 一键修改主机名和IP地址 # version: centos-7.0 # note: 升级一些判断 # 判断参数格式是否为2 [ $# -ne 2 ] && { echo "脚本使用姿势不对" echo "正确姿势:$0 主机名 ip地址" exit 1 } # 获取当前主机IP地址 ip=`hostname -I | awk '{print $1}' | sed 's#.*\.##g'` # 新的IP地址 ip_new=`echo $2 | sed 's#^.*\.##g'` # 新的主机名 hostname=$1 # 修改 IP 地址 sed -i "s#10.0.0.$ip#10.0.0.$ip_new#g" /etc/sysconfig/network-scripts/ifcfg-eth0 sed -i "s#172.16.1.$ip#172.16.1.$ip_new#g" /etc/sysconfig/network-scripts/ifcfg-eth1 # 重启网卡 systemctl restart network # 修改主机名 hostnamectl set-hostname $hostname ------------------------------------------------------------ :wq # 运行脚本 sh /server/scripts/change.sh xuxouy210_new 10.0.0.210 # 重启虚拟机 reboot
9.10 模板虚拟机拍摄快照 (可选)
文章评论