第一部分 概述
1. CentOS 7 新特性
一如每个主要版本的首个发行本,多数组件都已作出改动及更新至较新版本。列出所有改动是本文档的范围以外的事情。最重大的改动计有:
- 内核更新至 3.10.0
- 支持 Linux 容器
- Open VMware Tools 及 3D 图像能即装即用
- OpenJDK-7 作为缺省 JDK
- 原地升级 6.5 至 7.0
- ext4 及 XFS 的 LVM 快照
- 转用 systemd、firewalld 及 GRUB2
- XFS 作为缺省文件系统 (sysin)
- 内核空间内的 iSCSI 及 FCoE
- 支持 PTPv2
- 支持 40G 以太网络卡
- 在兼容硬件上支持以 UEFI 安全引导模式进行安装
2. CentOS 7 版本历史
CentOS Linux 7 | |
---|---|
Release (YYMM) | Based on RHEL Source (Version) |
7 (2009) | 7.9 |
7 (2003) | 7.8 |
7 (1908) | 7.7 |
7 (1810) | 7.6 |
7 (1804) | 7.5 |
7 (1708) | 7.4 |
7 (1611) | 7.3 |
7 (1511) | 7.2 |
7 (1503) | 7.1 |
7 (1406) | 7.0 |
3. 下载 CentOS 7
下载 ISO 镜像:https://sysin.org/blog/centos-7-ovf/
官网下载:https://wiki.centos.org/Download
下载 OVF:https://sysin.org/blog/centos-7-ovf/
4. 安装摘要
语言选择:尽量选择 English,English (United States)
推荐使用 Minimal 安装介质。
先配置网络,否则某些项目无法配置。
-
Network & Hostname:点击 OFF 按钮为 ON,点击 Configure… 按钮,General 页面注意勾选 “Connect automatically with priority”,根据需要手动配置 IP 地址和 DNS。
-
Keyboard:默认 English (US)。
-
Language Support:下拉到最下面 “中文”,勾选 “简体中文” 和两个 “繁体中文”。
-
Time & Date:点选 Asia/Shanghai,Network Time 自动 ON(前面先配置了网络)。
-
Installation Source:如果是 Minimal 或者 DVD 介质,默认是 Local media。
-
Software Selection:Minimal Install,请勿勾选 “Development Tools”(实际上安装的组件有限,需要手动安装),虚机勾选 “Guest Agent”。
-
Installation Destination:创建分区,可选两种参考方案 (sysin)。
-
默认分区方案:点选 Custom,默认使用 LVM,点击 “Click here to create them automatically” 自动创建,手动调整:删除 /home,将 SWAP 修改为整数 4 GiB,/boot 默认 1024 MiB,剩余分配给 /。
-
在 VM 环境中,简化分区方便调整大小:
-
新建虚机,默认磁盘可以根据需要调整大小,比如 00G,这个直接用于 / 目录(可以合并 /boot),本例创建独立
/boot
(容量 2G,默认 1G)。 -
新增一块磁盘用作 SWAP,比如默认 4G。或者不创建 swap 分区,进入系统后创建文件如
/swap.img
作为 swap 分区。这样扩容就非常方便,虚机环境可能用不上 LVM 的便利。
-
-
-
KDUMP:默认启用。
-
Security Policy:暂无,忽略。
-
Root Password:创建 root 账号密码。
-
User Creation:新建额外的(管理员账号)账号,可选。
第二部分 配置
1. 格式化网卡命名
即禁用 consistent interface device naming
(1) 编辑 grub 配置文件
1 | sed -i 's/rhgb/net.ifnames=0 biosdevname=0 rhgb/' /etc/default/grub |
(2) 运行如下命令重建 grub.cfg 文件
1 | legacy boot mode: |
(3) 重命名网卡配置文件
1 | mv /etc/sysconfig/network-scripts/ifcfg-ens160 /etc/sysconfig/network-scripts/ifcfg-eth0 |
(4) 重启生效
1 | shutdown -r now |
2. 配置网络
配置文件示例如下:
1 | cat /etc/sysconfig/network-scripts/ifcfg-eth0 |
修改后重启网络服务使配置生效:
1 | systemctl restart network |
3. 关闭 SELinux
SELinux 是 Linux 中最古老的一种 MAC(强制访问控制,Mandatory Access Control)模型,它是美国国家安全局的产品。除了在一些对安全有强制的要求的行业,SELinux 更多的以难以管理和排错而 “闻名”,通常认为其 “弊大于利”,许多应用安装文档中都要求关闭 SELinux。
编辑配置文件 /etc/selinux/config
:
1 | vi /etc/selinux/config |
使配置生效:
1 | setenforce 0 #0=permissive, SELinux prints warnings instead of enforcing. |
4. 防火墙配置
在旧版本的 CentOS 中,是使用 iptables 命令来设置防火墙的。但是,从 CentOS 7 开始,默认就没有安装 iptables,而是改用 firewall 来配置防火墙。
本次模板仅仅禁用了 firewalld,暂未安装 iptables。
1 | 关闭 firewall: |
5. 安装 EPEL
EPEL = Extra Packages for Enterprise Linux
1 | yum -y install epel-release |
6. 排除内核或特定软件包更新
修改配置文件:
1 | echo 'exclude=kernel* centos-release' >> /etc/yum.conf |
排除了 centos-release,更新后版本也保持在原有版本。
7. 更换国内镜像 yum 源
使用阿里云镜像(模板配置):
阿里云镜像速度一般比较快(Ping 延迟低),但出现过一些问题,比如安装 Oracle 无法检测到依赖包。
1 | yum install wget #CentOS 默认不自带 |
8. 软件更新
1 | 清理 |
9. 安装一些必备工具
1 | 一些基本工具最小化安装可能没有 (经测 wget 等没有安装) |
fd 命令(fd-find,强烈推荐)
1 | - 下载(二选一): |
10. 安装配置 SNMP
1 | yum -y install net-snmp net-snmp-devel net-snmp-libs net-snmp-perl net-snmp-utils |
11. 网络时间同步 NTP
CentOS 7 开始默认使用 chrony 进行网络时间同步。
1 | CentOS 7 开始默认使用 chrony,模板使用系统自带 chrony,默认配置如下 |
查看时间同步状态:
1 | chronyc sources -v |
12. 虚机安装 VM-tools
1 | yum -y install open-vm-tools |
13. 安装图形界面
基于特定场景要求,一般不用安装。
1 | 安装 GNOME 图形界面: |
14. Shell 配置
Zsh
这里是针对当前用户配置。全局配置请参看其他文章,这里直接使用全局配置文件即可。
1 | Zsh |
16. 清理并制作镜像模板
清理 yum 缓存
1 | yum autoremove |
清理临时文件夹
1 | rm -rf /tmp/* #清空临时文件夹 |
清空历史记录
至此,基本配置已经完成,可以制作模板了。
第三部分 下载 OVF
CentOS 7 x86_64 OVF (sysin) - VMware 虚拟机模板下载仅供下载体验和测试学习,不得商用和正当使用。
下载体验