首页主机资讯如何用centos进行系统优化

如何用centos进行系统优化

时间2025-11-06 16:06:04发布访客分类主机资讯浏览1221
导读:一、基础准备:更新系统与清理冗余 在优化前,需确保系统及软件包为最新版本,修复已知漏洞并提升兼容性: sudo yum update -y && sudo yum clean all # 更新系统并清理yum缓存 清理无...

一、基础准备:更新系统与清理冗余 在优化前,需确保系统及软件包为最新版本,修复已知漏洞并提升兼容性:

sudo yum update -y &
    &
 sudo yum clean all  # 更新系统并清理yum缓存

清理无用软件包(自动移除不再需要的依赖):

sudo yum autoremove -y

清理旧内核(保留2个最新内核,避免占用过多磁盘空间):

sudo package-cleanup --oldkernels --count=2 -y

清理日志文件(截断超过7天的50M以上日志,删除30天以上的旧日志):

find /var/log -type f -name "*.log" -size +50M -mtime +7 -exec truncate -s 0 {
}
     \;

find /var/log -type f -mtime +30 -exec rm -f {
}
     \;
    

清理临时文件(删除/tmp和/var/tmp目录下的所有文件):

sudo rm -rf /tmp/* /var/tmp/*

二、内核参数调优:提升系统内核性能 编辑/etc/sysctl.conf文件,添加或修改以下关键参数,优化TCP连接、内存管理及网络性能:

# TCP连接复用与超时设置
net.ipv4.tcp_tw_reuse = 1          # 允许复用处于TIME_WAIT状态的连接
net.ipv4.tcp_tw_recycle = 1        # 快速回收TIME_WAIT连接(注意:在NAT环境下可能引发问题,需谨慎使用)
net.ipv4.tcp_fin_timeout = 30      # TIME_WAIT状态的超时时间为30秒
net.ipv4.tcp_keepalive_time = 1200 # TCP keepalive探测间隔为1200秒

# 端口与队列设置
net.ipv4.ip_local_port_range = "1024 65535"  # 本地端口范围扩大至1024-65535
net.ipv4.tcp_max_syn_backlog = 8192  # SYN队列最大长度为8192
net.core.somaxconn = 1024            # 监听队列最大长度为1024
net.core.netdev_max_backlog = 2000   # 网络设备接收队列最大长度为2000
net.ipv4.tcp_max_orphans = 32768     # 最大孤儿连接数为32768
net.ipv4.tcp_syncookies = 1          # 开启SYN cookies防止SYN Flood攻击

使参数立即生效:

sudo sysctl -p

三、内存管理优化:合理分配内存资源 调整Swap分区使用倾向(swappiness值越小,系统越倾向于使用物理内存):

# 查看当前swappiness值(默认60)
cat /proc/sys/vm/swappiness
# 临时设置为10(推荐值:10-30,内存充足时可设为1)
sudo sysctl vm.swappiness=10
# 永久生效:修改/etc/sysctl.conf
echo "vm.swappiness=10" | sudo tee -a /etc/sysctl.conf

# 调整脏页写入策略(减少磁盘I/O次数)
sudo sysctl vm.dirty_ratio=10          # 内存脏页占比达到10%时触发写入
sudo sysctl vm.dirty_background_ratio=5 # 后台写入线程启动阈值设为5%
# 永久生效:添加至/etc/sysctl.conf
echo "vm.dirty_ratio=10" | sudo tee -a /etc/sysctl.conf
echo "vm.dirty_background_ratio=5" | sudo tee -a /etc/sysctl.conf

四、磁盘I/O优化:提升磁盘读写性能

  1. 调整I/O调度器(根据磁盘类型选择,机械盘推荐deadline,SSD推荐noop):
# 查看当前调度器(如/dev/sda)
cat /sys/block/sda/queue/scheduler
# 临时修改为deadline(方括号内为当前值)
echo deadline | sudo tee /sys/block/sda/queue/scheduler
# 永久生效:修改GRUB配置
sudo sed -i 's/GRUB_CMDLINE_LINUX="[^"]*/&
     elevator=deadline/' /etc/default/grub
sudo grub2-mkconfig -o /boot/grub2/grub.cfg
  1. 优化文件系统挂载选项(减少磁盘I/O操作):
    编辑/etc/fstab文件,在对应分区(如/dev/sda1)的挂载选项中添加noatime,nodiratime(不记录文件访问时间):
/dev/sda1 / ext4 defaults,noatime,nodiratime 0 0
# 重新挂载分区使设置生效
sudo mount -o remount /

五、网络优化:提高网络吞吐与响应速度

  1. 调整TCP窗口大小(提升大数据量传输效率):
sudo sysctl net.ipv4.tcp_window_size=1024000  # 窗口大小设为1024000字节
# 永久生效:添加至/etc/sysctl.conf
echo "net.ipv4.tcp_window_size=1024000" | sudo tee -a /etc/sysctl.conf
  1. 启用网卡多队列(提升多核CPU的网络处理能力):
# 检查网卡是否支持多队列(如eth0)
ethtool -l eth0 | grep "supported multiqueue"
# 启用多队列(假设支持4队列)
ethtool -L eth0 combined 4
# 永久生效:将命令添加至/etc/rc.local文件(需赋予执行权限)
echo "ethtool -L eth0 combined 4" | sudo tee -a /etc/rc.local
sudo chmod +x /etc/rc.local

六、服务管理:关闭不必要的服务 通过systemctl命令停止并禁用不需要的服务(以firewalld为例,若无需防火墙可关闭):

sudo systemctl stop firewalld.service    # 停止服务
sudo systemctl disable firewalld.service # 禁止开机启动

其他常见可不需要的服务:NetworkManager(若用传统网络脚本)、avahi-daemon(零配置网络服务)、cups(打印服务)等,可根据实际需求禁用。

七、SELinux设置:减少安全策略开销 若无需SELinux的强制访问控制,可将其设置为permissive模式(仅记录违规行为,不阻止)或完全禁用:

# 修改SELinux配置文件
sudo sed -i 's/SELINUX=enforcing/SELINUX=permissive/g' /etc/selinux/config
# 立即生效(无需重启)
sudo setenforce 0

八、监控与持续优化:及时发现问题 使用以下工具定期监控系统性能,识别瓶颈:

  • 实时监控top(查看CPU、内存占用)、htop(增强版top,支持颜色和排序)、vmstat 1(查看系统整体状态,每秒刷新一次)。
  • 磁盘I/O监控iostat -x 1(查看磁盘读写延迟、利用率)。
  • 网络监控iftop(查看实时网络流量)、nload(监控带宽使用情况)。
  • 日志分析journalctl -xe(查看系统日志)、tail -f /var/log/messages(实时跟踪日志)。

声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!


若转载请注明出处: 如何用centos进行系统优化
本文地址: https://pptw.com/jishu/744072.html
centos清理系统垃圾的有效方法 怎样用centos清理系统缓存

游客 回复需填写必要信息