1. 硬件升级:使用SSD替代HDD
固态硬盘(SSD)的读写速度远高于传统机械硬盘(HDD),是提升存储性能最直接的方式。将系统或关键数据(如/home、/var)迁移至SSD,可显著减少文件读写延迟。若使用HDD,建议选择7200转以上的高速硬盘,并确保SATA接口为3.0及以上版本。
2. 优化文件系统选择与配置
/etc/fstab中添加优化参数,如noatime(避免每次读取文件时更新访问时间,减少写操作)、discard(启用TRIM支持,优化SSD寿命,适用于Ext4/XFS)、data=writeback(适用于Ext4,减少写入日志的开销)。例如:/dev/sda1 / ext4 defaults,noatime,discard 0 1fsck检查并修复文件系统错误,使用tune2fs调整Ext4参数(如-O has_journal关闭日志以延长SSD寿命,但需权衡数据安全性)。3. 调整内核参数优化内存与交换空间
vm.swappiness控制系统使用交换分区的倾向,默认值为60(较高),建议设置为10-30(减少交换分区使用,提升内存利用率)。临时调整:sudo sysctl -w vm.swappiness=10;永久生效:编辑/etc/sysctl.conf添加vm.swappiness=10。dirty_ratio(脏块占内存的比例,触发刷新的阈值)和dirty_background_ratio(后台刷新的脏块比例),减少磁盘I/O压力。例如,将dirty_ratio从20%调整为10%,dirty_background_ratio从10%调整为5%:sudo sysctl -w vm.dirty_ratio=10sudo sysctl -w vm.dirty_background_ratio=5zram-config创建压缩的内存交换空间,避免物理swap分区对SSD的写入损耗。安装并配置:sudo apt install zram-config。4. 优化磁盘I/O调度器
Linux内核提供多种I/O调度器,需根据硬件选择:
noop(无调度,依赖SSD自身的并行处理能力)或deadline(保证I/O请求的延迟)。deadline(减少寻道时间)或cfq(公平队列,适合多任务)。cat /sys/block/sda/queue/scheduler,临时切换(如切换至noop):echo noop | sudo tee /sys/block/sda/queue/scheduler;永久生效:在/etc/default/grub中修改GRUB_CMDLINE_LINUX参数,添加elevator=noop,然后更新grub:sudo update-grub。5. 利用LVM与缓存加速
sudo vgcreate myvg /dev/sda1;创建逻辑卷:sudo lvcreate -L 50G -n mylv myvg;格式化并挂载。sudo lvcreate -L 1G -n cache_pool myvg;创建缓存卷:sudo lvcreate -L 50G -n my_cache_lv myvg --cache my_cache_pool;挂载缓存卷。6. 清理系统垃圾与无用文件
定期清理以下内容,释放磁盘空间并减少I/O负载:
sudo apt clean(清理下载的软件包)、sudo apt autoremove(移除不再需要的依赖)。sudo rm -rf /tmp/*(清理/tmp目录下的临时文件)、sudo journalctl --vacuum-size=100M(限制系统日志大小为100MB)。Ubuntu Software Center或apt卸载不常用的软件。7. 监控与分析存储性能
使用工具定位性能瓶颈:
sudo apt install sysstat;使用:iostat -mx 1(每秒刷新一次)。sudo apt install iotop;使用:sudo iotop -o(仅显示正在执行I/O的进程)。sudo apt install smartmontools;使用:sudo smartctl -a /dev/sda(查看磁盘SMART信息)。8. 调整应用程序与系统配置
innodb_buffer_pool_size设置为物理内存的50%-70%)、优化查询语句(减少全表扫描)、减少不必要的日志写入。systemctl禁用不需要的开机服务(如bluetooth、cups),减少系统负载:sudo systemctl disable bluetooth。preload是一个后台守护进程,分析用户行为,提前加载常用应用的二进制库,加速应用启动。安装:sudo apt install preload(默认开启)。