title: 07.CentOS配置优化 CreateTime: 2019-07-11 00:00:07 UpdateTime: 2025-08-01 13:22:09 CategoryName: Web --- ## CentOS7 网卡配置 ```vi /etc/sysconfig/network-scripts/ifcfg-eth0``` 【设置服务器IP信息】 ``` DEVICE="eth0" BOOTPROTO="static" IPADDR="192.168.254.130" NETMASK="255.255.255.0" GATEWAY="192.168.254.2" NM_CONTROLLED="no" ONBOOT="yes" TYPE="Ethernet" ARPCHECK=no ``` 测试: ```service network restart``` ## CentOS 8 网卡配置 ```vi /etc/NetworkManager/system-connections/enp1s0f0.nmconnection``` ``` [connection] id=enp1s0f0 uuid=xxx-xxx type=ethernet autoconnect-priority=-999 interface-name=enp1s0f0 timestamp=1745407363 [ethernet] [ipv4] method=manual address1=192.168.1.8/24,192.168.1.1 [ipv6] addr-gen-mode=eui64 method=auto [proxy] ``` ```shell nmcli connection reload # 重新加载配置 nmcli connection up enp1s0f0 # 激活网卡不用重启服务 systemctl restart NetworkManager ## 重启网卡 ``` ## 设置服务器的DNS 修改 /etc/NetworkManager/NetworkManager.conf 文件,在[main]下添加 dns=none ```shell systemctl restart NetworkManager vi /etc/resolv.conf nameserver 8.8.8.8 ``` 测试:```ping www.baidu.com``` 搭建好环境之后,可执行下面脚本,设置下服务器一些参数,更加安全: ## 性能优化 ```shell ### 需要修改操作系统的 ulimit 为 1024000 ### ### /etc/security/limits.conf 中增加### * soft nofile 1024000 * hard nofile 1024000 ###sysctl -p 立即生效### ###修改 操作系统网络参数 ### ### /etc/sysctl.conf #### vm.overcommit_memory=1 vm.max_map_count=1024000 vm.swappiness = 0 fs.file-max = 1024000 net.ipv4.tcp_syncookies = 1 net.ipv4.tcp_tw_reuse = 1 net.ipv4.tcp_tw_recycle = 0 net.ipv4.tcp_timestamps = 1 net.ipv4.tcp_fin_timeout = 30 net.ipv4.ip_local_port_range = 10000 65000 net.ipv4.tcp_mem = 786432 2097152 3145728 net.ipv4.tcp_rmem = 4096 4096 16777216 net.ipv4.tcp_wmem = 4096 4096 16777216 net.bridge.bridge-nf-call-ip6tables = 1 net.bridge.bridge-nf-call-iptables = 1 net.ipv4.ip_forward=1 net.ipv4.neigh.default.gc_stale_time = 120 net.ipv4.conf.all.rp_filter = 0 net.ipv4.conf.default.rp_filter = 0 net.ipv4.conf.default.arp_announce = 2 net.ipv4.conf.lo.arp_announce = 2 net.ipv4.conf.all.arp_announce = 2 net.ipv4.tcp_max_tw_buckets = 5000 net.ipv4.tcp_syncookies = 1 net.ipv4.tcp_max_syn_backlog = 1024 net.ipv4.tcp_synack_retries = 2 net.ipv6.conf.all.disable_ipv6 = 1 net.ipv6.conf.default.disable_ipv6 = 1 net.ipv6.conf.lo.disable_ipv6 = 1 kernel.sysrq = 1 ###systemctl restart network 重启网络生效### ###sysctl -p 立即生效### ``` ## 关闭SELinux ```shell #vi /etc/selinux/config SELINUX=disabled ###关闭防火墙### systemctl stop firewalld systemctl disable firewalld ``` ## 修改YUM源 ```shell wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo yum makecache ``` ## 修改主机名 ```shell hostnamectl set-hostname admin-node ``` ## NTP设置 ```shell ###设置时区### timedatectl set-timezone Asia/Shanghai ###安装ntp服务### yum install ntp -y ###修改 /etc/ntp.conf 文件 ### ###开机启动### systemctl disable chronyd systemctl enable ntpd timedatectl set-ntp yes ##启动NTP服务器: systemctl start ntpd ###加入防火墙### firewall-cmd --permanent --add-service=ntp firewall-cmd --reload ###查看ntp连接状态如果没有问题,将正确时间写入硬件:### ss -tlunp | grep ntp ntpstat hwclock -w ###客户端### #以服务进程方式实时同步(需安装NTP): # vim /etc/ntp.conf ###内网的NTP服务器IP,建议使用公网的NTP服务器### #server 10.0.67.15 ###重要:修改任意节点服务器的NTP配置文件都需要重起ntpd服务:### systemctl restart ntpd ``` ## 增加字体 有些程序会出现中文乱码的情况,是因为CentOS没有中文字体,把最常见的宋体拷贝到CentOS. 从Windows ```C:\Windows\Fonts\```拷贝宋体文件 ```simsun.ttc``` 到 ```/usr/share/fonts```目录下 ```shell ##安装字体管理器 yum install -y fontconfig mkfontscale ##查看系统中已经安装的字体 fc-list ##建立字体索引信息,更新字体缓存 cd /usr/share/fonts/ mkfontscale mkfontdir fc-cache ##查看是否安装成功 fc-list :lang=zh ``` ## 防火墙 ```shell ##放行 TCP 端口 8080 firewall-cmd --zone=public --add-port=8080/tcp --permanent ##删除 TCP 端口 8080 firewall-cmd --zone=public --remove-port=8080/tcp --permanent ##加载防火墙配置 firewall-cmd --reload ##查看当前开放的端口 firewall-cmd --list-ports ##检查特定端口状态(返回 yes/no) firewall-cmd --query-port=8080/tcp ``` ## 下载CentOS镜像 无法联网服务器,需挂载ISO镜像做为Yum源 最小镜像minimal.iso作为安装系统盘,DVD1.iso挂载作为yum源. 下载CentOS 7 作为安装版本,下载地址:https://mirrors.huaweicloud.com/centos/7/isos/x86_64/CentOS-7-x86_64-Minimal-1804.iso https://mirrors.huaweicloud.com/centos/7/isos/x86_64/CentOS-7-x86_64-DVD-1804.iso ![](/public/07/image3.jpeg) ## 安装系统 把下载好的CentOS-7-x86_64-Minimal-1804.iso 制作成U盘启动安装. 把CentOS-7-x86_64-DVD-1804.iso复制到U盘根目录下,系统安装完成后,把DVD.iso拷贝到服务器硬盘. 通过U盘重新安装操作系统.光盘安装步骤类似. 选择默认安装(或者根据实际情况自定义分区),网络配置待系统安装完毕进行设置. ## 配置YUM源 ### 把DVD.iso 拷贝到 /usr/local/src/ 也可以自定义拷贝路径 ### 创建挂载点 mkdir /media/CentOS 也可以自定义挂载点 ### 挂载ISO文件 ```shell mount -o loop /usr/local/src/CentOS-7-x86_64-DVD-1804.iso /media/CentOS ###查看挂载是否成功: ll /media/CentOS ### 设置开机启动挂载 echo "mount -o loop /usr/local/src/CentOS-7-x86_64-DVD-1804.iso /media/CentOS" >> /etc/rc.local ``` ### 修改本地源 修改本地源,/etc/yum.repos.d/目录下只保留CentOS-Media.repo进行修改,其他文件名增加后缀.bak进行备份 [root@test yum.repos.d]# vi CentOS-Media.repo name=CentOS baseurl=file:///media/CentOS #注:这里的baseurl就是你挂载的目录,在这里是/media/CentOS gpgcheck=0 enabled=1 #注:这里的值enabled一定要为1 gpgkey=file:///media/CentOS/RPM-GPG-KEY-CentOS-7 [root@test yum.repos.d]# yum clean all #yum测试成功. [root@test yum.repos.d]# yum install zip unzip #yum测试成功. ## 内核版本升级 ### 小版本升级 ```shell yum list kernel ##查看内核列表 yum update kernel ##更新内核 ``` ### 大版本升级 ```shell #### 载入公钥 rpm --import https://www.elrepo.org/RPM-GPG-KEY-elrepo.org #### 安装ELRepo rpm -Uvh http://www.elrepo.org/elrepo-release-7.0-5.el7.elrepo.noarch.rpm #### 查看可用的内核包 yum --disablerepo="*" --enablerepo="elrepo-kernel" list available #### 删除旧版本工具包 yum remove kernel-tools-libs.x86_64 kernel-tools.x86_64 #### 安装最新版本的kernel yum --enablerepo=elrepo-kernel install kernel-ml kernel-ml-tools #查看系统可以用的内核 awk -F\' '$1=="menuentry " {print i++ " : " $2}' /etc/grub2.cfg #### 设置 grub2 grub2-set-default 0 #### 生成 grub 配置文件并重启 grub2-mkconfig -o /boot/grub2/grub.cfg grub2-set-default 0 uname -sr #查看内核版本 init 6 ``` 注意:高版本降级,需要先卸载高版本,手动rpm安装低版本 yum不更新kernel内核 vi /etc/yum.conf 在[main]的最后添加 exclude=kernel*