CentOS7 安装和配置教程
- 第一部分:安装准备
- 1. 下载CentOS 7镜像
- 2. 创建安装介质
- 第二部分:安装步骤
- 1. 在VMeare上安装CentOS-7-x86_64-Minimal
- 2. 安装配置
- 3. 安装过程
- 第三部分:初始配置
- 1. 首次启动设置
- 2. 网络配置
- 3. 防火墙配置
- 第四部分:常用软件安装
- 第五部分:系统优化
- 第六部分:常见问题解决
- 第七部分:重要目录说明
第一部分:安装准备
1. 下载CentOS 7镜像
- 访问官方镜像站点:
- 官网:https://www.centos.org/download/
- 镜像站:http://mirrors.centos.org/
- 阿里云:https://mirrors.aliyun.com/centos/7/isos/x86_64/
- 选择适合的版本:
- DVD ISO:标准安装镜像(约4GB)
- Minimal ISO:最小化安装(约900MB)
- Everything ISO:包含所有软件包(约10GB)
2. 创建安装介质
- 实体机安装:使用USB闪存盘(推荐):
# Linux下使用dd命令(替换sdX为您的USB设备)
dd if=CentOS-7-x86_64-DVD-2009.iso of=/dev/sdX bs=4M status=progress && sync# Windows下使用Rufus工具(https://rufus.ie/)
- 使用虚拟机:
- 在VMware/VirtualBox中新建虚拟机
- 选择下载的ISO文件作为安装源
第二部分:安装步骤
1. 在VMeare上安装CentOS-7-x86_64-Minimal
-
在VMware新建虚拟机,选择自定义后点击下一步:
-
选择虚拟机硬件兼容性,根据VMware版本,安装向导会自动选择
-
选择下载的ISO文件作为安装源
-
命名虚拟机及路径选择
-
处理器配置
-
虚拟内存配置
-
网络类型选择,默认选择NAT类型,也可稍后在设置中变更
-
选择I/O控制器类型(默认)
-
选择磁盘类型(默认)
-
选择磁盘
-
指定磁盘容量
若勾选立即分配所有磁盘空间的话,会马上分配磁盘空间,一般不勾选,就是自增长模式。 -
指定磁盘文件
-
列出准备创建虚拟机的设置信息,点击完成
-
启动虚拟机
-
选择安装语言(建议英文)
-
提示:请先完成带有图标标记的项目,然后再继续下一步
2. 安装配置
-
DATE & TIME,选择时区(Asia/Shanghai)
网络时间协议(NTP),如果未来是虚拟机上部署应用请务必开启网络时间协议,否则虚拟机服务器上的时间很快就不准,时间不准必然会给应用带来很大的问题。 -
KEYBOARD,键盘布局保持默认(US)
-
LANGUAGE SUPPORT,选择Englisg
-
INSTALLATION SOURCE,选择自动检测安装介质
可以 Verify 一下
-
SOFTWARE SELECTION(服务选择)
最小化安装,不多占用磁盘任何一个字节,后面需要什么再装什么。 -
NETWORK & HOSTNAME
- 设置主机名(如centos7.localdomain)
- 启用网络连接(以太网默认已启用)
- INSTALLATION DESTINATION(安装位置)
- 自动分区(推荐新手)
- 手动分区/boot:500M
- /:20-50GB
- swap:交换分区,就是虚拟内存,把磁盘当作内存用。内存大小的1-2倍(不超过8GB)
- /home:剩余空间
- /data:假如以后有很多用户数据,磁盘不够,可以用这样的目录单独挂载分区选择:I will configure partitioning,点击完成
选择:标准分区方式
点击 + 号,配置 /boot 分区
配置 / 分区
配置 /home 分区
配置 swap 交换分区,就是虚拟内存,把磁盘当作内存用。内存大小的1-2倍(不超过8GB)
除交换分区外,将其它分区的文件系统设置为ext4
点击 Done
摧毁原文件系统,即格式化,然后进行分区,选择接受这些变更
- 点击开始安装
3. 安装过程
-
开始安装
-
设置root密码(必须)
-
创建普通用户(可选但推荐)
-
等待安装完成(10-30分钟)
-
点击"Reboot"重启系统
第三部分:初始配置
1. 首次启动设置
- 接受许可证协议
- 完成初始设置(如有GUI)
2. 网络配置
想跟别人通讯,网络是首先必须要搞定的事情。
-
进入虚拟机 -> 设置 -> 网络适配器,选择网络连接模式并将已连接和启动时连接的勾打上
-
判断网卡有没有正常工作,能不能正常通讯
ip addr
- 1: IO 本地网卡,不对外
- 2: ens33,对外网卡,网卡虽然有,但ip地址没有那就不可以通信,对于服务器来说要手动分配IP地址,不要DHCP动态生成,应该使用静态的IP地址
宿主机上有一个虚拟网卡,用来和虚拟机通讯用的,ip ...1
虚拟机 ip ...129
同一个网段可直接通讯不需要网关
静态IP配置(如需):
- 编辑网络配置文件:
sudo vi /etc/sysconfig/network-scripts/ifcfg-ens33
- 主要修改以下内容:
BOOTPROTO=static
ONBOOT=yes
IPADDR=192.168.1.100
NETMASK=255.255.255.0
GATEWAY=192.168.1.1
DNS1=8.8.8.8
DNS2=8.8.4.4
- 重启网络服务:
sudo systemctl restart network
3. 防火墙配置
#查看状态
sudo systemctl status firewalld#启动防火墙
sudo systemctl start firewalld#设置开机启动
sudo systemctl enable firewalld#开放端口示例(SSH)
sudo firewall-cmd --permanent --add-service=ssh
sudo firewall-cmd --reload#关闭防火墙
~]# systemctl stop firewalld # 停止当前服务
~]# systemctl disable firewalld # 禁用服务,即开机不启动
第四部分:常用软件安装
- 基础工具
~]# yum install -y vim wget curl
~]# yum install -y epel-release
~]# yum install -y lsof
~]# yum install -y net-tools
~]# yum install -y bash-completion
- 开发环境
#开发工具组
sudo yum groupinstall -y "Development Tools"#Python3
sudo yum install -y python3 python3-pip#Java
sudo yum install -y java-1.8.0-openjdk-devel
- 服务软件
#Web服务器
sudo yum install -y httpd
sudo systemctl start httpd
sudo systemctl enable httpd#数据库(MySQL/MariaDB)
sudo yum install -y mariadb-server mariadb
sudo systemctl start mariadb
sudo systemctl enable mariadb
sudo mysql_secure_installation
第五部分:系统优化
- 关闭SELinux(可选)
#查看
~]# getenforce
Enforcing
#临时关闭
~]# setenforce 0
#修改配置文件永久关闭
~]# vi /etc/selinux/config
#修改为:SELINUX=disabled
~]# reboot
- SSH安全加固
sudo vi /etc/ssh/sshd_config
建议修改:
Port 2222 # 更改默认端口
PermitRootLogin no
PasswordAuthentication no # 使用密钥认证
重启服务:
sudo systemctl restart sshd
- 配置yum镜像源
YUM(Yellow Dog Updater,Modified),在rpm包管理之上增强的包管理器,能自动查询下载包,并自动处理依赖关系。YUM使用Python2.x编写。YUM必须配置源,要从源服务器下载包。
主配置文件:/etc/yum.conf
自定义配置文件必须扩展名为repo,并放在/etc/yum.repos.d目录下,yum会读取/etc/yum.repos.d/目录下所有.repo的文件。
连接阿里云镜像,使用网络的yum源。
curl 没有界面的浏览器
curl www.baidu.com
# CentOS 7 源
~]# mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.backup
~]# curl -o /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-7.repo# CentOS 8
~]# curl -o /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-8.repo# epel 源
~]# curl -o /etc/yum.repos.d/epel.repo https://mirrors.aliyun.com/repo/epel-7.repoyum clean all # 清理本地缓存数据库,表示打算与远程重新同步
yum makecache # 生成缓存,例如会和阿里云通讯将阿里元的数据库dump下来
yum list |grep vim # 优先用本地的,没有再用远程的
yum install vim -y # -y表示不要出现交互直接yes
yum repolist # 将仓库列出显示
yum list vim
第六部分:常见问题解决
- 网络无法连接:
○ 检查ifconfig是否安装(yum install net-tools)
○ 确认NetworkManager服务运行(systemctl start NetworkManager) - yum速度慢:
○ 更换国内镜像源(如上所述)
○ 清除缓存(yum clean all) - 时间不同步:
sudo yum install -y ntp
sudo systemctl start ntpd
sudo systemctl enable ntpd
- 磁盘空间不足:
○ 清理yum缓存(yum clean all)
○ 清理旧内核(package-cleanup --oldkernels --count=1)
第七部分:重要目录说明
目录 用途
/etc 系统配置文件
/var/log 系统日志文件
/home 用户主目录
/root root用户主目录
/opt 附加软件安装目录
/usr/local 本地安装软件