Linux端优化工具如何操作

联启 系统优化工具 14

本文目录导读:

Linux端优化工具如何操作-第1张图片-电脑手机工具软件下载 - 免费实用工具合集 | 联启科技

  1. 临时或永久修改 /etc/fstab
  2. 在 /dev/sda1 / ext4 defaults 后加上 noatime,nodiratime
  3. 变成 /dev/sda1 / ext4 defaults,noatime,nodiratime 0 1
  4. 然后重新挂载

在Linux端进行优化操作,通常需要结合系统监控工具找到瓶颈,然后针对CPU、内存、磁盘I/O、网络以及内核参数进行调优。

以下是一份分步操作指南,涵盖常用工具和具体命令:

第一步:诊断与监控(找到瓶颈)

这是优化前最重要的一步,不要盲目优化,先用工具看清现状。

  1. 查看整体负载

    # 最常用,查看负载、CPU、内存、进程
    top
    # htop 是 top 的增强版,更直观(需安装)
    htop
  2. CPU 分析

    # 查看 CPU 使用率和每个核心的情况
    mpstat -P ALL 1
    # 找出占用 CPU 最多的进程
    ps -eo pid,ppid,%cpu,%mem,cmd --sort=-%cpu | head -10
  3. 内存分析

    # 查看内存使用总量、缓存、交换分区
    free -h
    # 查看进程级内存占用
    top 然后按 M(大写)
  4. 磁盘 I/O 分析

    # 查看磁盘读写速度、I/O 等待时间(await),这是排查磁盘瓶颈的核心工具
    iostat -x 1
    # 实时追踪哪个进程在疯狂读写磁盘
    iotop
  5. 网络分析

    # 查看实时网络流量
    nload
    # 或
    iftop
    # 查看连接数、端口状态
    ss -tuln
    # 或旧的
    netstat -tuln

第二步:常见优化操作

CPU 优化

  • 调整进程优先级:让重要的任务获得更多CPU时间。

    # 启动时指定优先级(-20最高,19最低)
    nice -n -10 ./my_important_task
    # 对已经在运行的进程调整优先级
    renice -n -10 -p <PID>
  • CPU 频率调节(在服务器上通常设为performance,笔记本可设为ondemand省电):

    # 查看当前模式
    cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor
    # 临时设置为性能模式(需要 root)
    echo performance | sudo tee /sys/devices/system/cpu/cpu*/cpufreq/scaling_governor
    # 永久设置通常需要编辑 /etc/default/cpufrequtils 或使用 tuned-adm

内存优化

  • 清理缓存:Linux会占用空闲内存做缓存,如果应用急需内存,通常会自动释放,如果你确定需要强制释放:

    # 清空 pagecache(谨慎使用)
    sudo sync && echo 1 > /proc/sys/vm/drop_caches
    # 清空 dentries 和 inodes
    sudo sync && echo 2 > /proc/sys/vm/drop_caches
    # 清空所有缓存(pagecache + dentries + inodes)
    sudo sync && echo 3 > /proc/sys/vm/drop_caches

    注意:drop_caches只释放内核缓存,不会杀死进程,但频繁操作可能导致性能下降。

  • 调整 Swap 使用倾向:降低系统使用交换分区的倾向(数值越小,越倾向于使用物理内存)。

    # 查看当前值(默认60)
    cat /proc/sys/vm/swappiness
    # 临时调低到10(对于物理内存很大的机器,可以设置为10甚至0)
    sudo sysctl vm.swappiness=10
    # 永久生效(写入 /etc/sysctl.conf)
    echo "vm.swappiness=10" | sudo tee -a /etc/sysctl.conf

磁盘 I/O 优化

  • 改变 I/O 调度算法:SSD 通常用 noopnone(NVMe),机械硬盘用 deadline

    # 查看当前调度器
    cat /sys/block/sda/queue/scheduler
    # 临时修改(将 sda 替换为你的磁盘名)
    echo 'none' | sudo tee /sys/block/sda/queue/scheduler
    # 永久修改:通过 grub 添加参数,或使用 udev 规则
  • 调整文件系统挂载参数

    • noatime:不记录文件访问时间(最常用,显著减少写操作)。
    • nodiratime:不记录目录访问时间。
      # 查看当前挂载参数
      mount | grep /dev/sda1

    临时或永久修改 /etc/fstab

    在 /dev/sda1 / ext4 defaults 后加上 noatime,nodiratime

    变成 /dev/sda1 / ext4 defaults,noatime,nodiratime 0 1

    然后重新挂载

    sudo mount -o remount /

网络优化

  • 调整 TCP 参数(改善高延迟或高并发场景):

    # 临时修改
    sudo sysctl -w net.core.somaxconn=65535
    # 永久写入 /etc/sysctl.conf
    echo "net.core.somaxconn=65535" | sudo tee -a /etc/sysctl.conf
    # 常见的网络优化集合(注意:这些值需要根据你的硬件和场景调整)
    net.ipv4.tcp_tw_reuse = 1
    net.ipv4.tcp_fin_timeout = 15
    net.core.rmem_max = 16777216
    net.core.wmem_max = 16777216

    注:tcp_tw_recycle 在 NAT 环境下已废弃且可能引起问题,不要使用。

综合/自动调优工具类

如果你不想手动调每个参数,可以使用系统级调优工具:

  • Tuned(最推荐):Red Hat/Fedora/CentOS 提供,Ubuntu也可安装。

    # 安装
    sudo apt install tuned   # Debian/Ubuntu
    sudo yum install tuned   # RHEL/CentOS
    # 启用守护进程
    sudo systemctl enable --now tuned
    # 查看推荐的配置
    sudo tuned-adm recommend
    # 应用配置(如针对吞吐量优化)
    sudo tuned-adm profile throughput-performance
    # 或针对网络延迟优化
    sudo tuned-adm profile network-latency
    # 查看当前配置
    sudo tuned-adm active
  • cpupower:电源管理。

    # 设置所有核心为性能模式
    sudo cpupower frequency-set -g performance

第三步:使优化生效

  1. 临时生效:使用 sysctl 命令或 echo ... > /proc/...,系统重启后失效。
  2. 永久生效:将参数写入 /etc/sysctl.conf 文件。
    # 修改完成后应用配置并检查
    sudo sysctl -p

重要提醒:

  1. 不要在不知道意义的情况下修改内核参数:某些参数(如 vm.overcommit_memory)会直接影响系统稳定性。
  2. 测试环境先行:在生产环境修改前,务必在测试环境验证。
  3. 监控变化:修改后使用 topiostatvmstat 观察指标是否向预期方向优化。
  4. 重启不是银弹:大多数优化是实时的或通过mount -o remount生效,重启是为了验证永久配置的正确性。

如果你能告诉我你具体想解决什么问题(网站响应慢数据库磁盘I/O高网络延迟大编译时CPU满载),我可以给出更针对性的操作步骤。

标签: Linux端优化工具

抱歉,评论功能暂时关闭!