centos分卷如何优化空间
导读:1. 查看磁盘空间使用情况 首先通过df -h命令查看各分区的使用情况,明确需要优化的分区(如根分区/、/home或/var等);结合du -sh /path/to/directory定位占用空间大的目录,使用ncdu(交互式磁盘分析工具)...
1. 查看磁盘空间使用情况
首先通过df -h
命令查看各分区的使用情况,明确需要优化的分区(如根分区/
、/home
或/var
等);结合du -sh /path/to/directory
定位占用空间大的目录,使用ncdu
(交互式磁盘分析工具)进一步分析具体文件占用,为后续操作提供依据。
2. 动态调整逻辑卷(LVM)大小
若使用LVM管理分卷,可通过以下步骤扩展或收缩空间:
- 扩展逻辑卷:
若卷组有剩余空间,使用lvextend
命令增加逻辑卷大小(如为根分区增加10G):
lvextend -L +10G /dev/mapper/centos-root
;
若卷组无剩余空间,需先通过pvcreate
创建新物理卷(如/dev/sdb1
),再通过vgextend
将其加入卷组:
pvcreate /dev/sdb1
→vgextend centos /dev/sdb1
→ 再执行lvextend
。 - 收缩逻辑卷(需先卸载分区):
卸载目标分区(如/home
):umount /home
;
使用lvreduce
减少逻辑卷大小(如减少10G):lvreduce -L -10G /dev/mapper/centos-home
;
最后重新挂载分区:mount /home
。 - 扩展文件系统:
扩展逻辑卷后,需调整文件系统以使用新增空间:- XFS文件系统(推荐用于CentOS 7及以上):
xfs_growfs /dev/mapper/centos-root
; - ext4文件系统:
resize2fs /dev/mapper/centos-root
。
- XFS文件系统(推荐用于CentOS 7及以上):
3. 清理不必要的文件与分区
- 清理临时文件:删除
/tmp
目录下的所有临时文件:sudo rm -rf /tmp/*
; - 清理日志文件:使用
du -sh /var/log/*
查看日志文件大小,清空大日志文件(如/var/log/messages
):truncate -s 0 /var/log/messages
; - 删除不需要的软件包:通过
yum list installed
列出已安装软件,移除无用软件包:sudo yum remove package_name
; - 删除孤立数据:使用
lsof | grep deleted
查找被删除但仍被进程占用的文件,重启对应进程或直接终止进程释放空间; - 删除无用分区:若存在未使用的分区,先卸载(
umount /dev/mapper/centos-home
),再删除逻辑卷(lvremove /dev/mapper/centos-home
)、物理卷(pvremove /dev/sdXY
),最后从卷组中移除物理卷(vgreduce centos /dev/sdXY
)。
4. 优化文件系统与挂载选项
- 选择合适的文件系统:
- 普通服务器推荐使用
ext4
(稳定、兼容性好); - 处理超大文件(如数据库、视频存储)或高IO需求时,推荐使用
XFS
(高性能、支持动态扩展)。
- 普通服务器推荐使用
- 使用挂载优化选项:
在/etc/fstab
中修改挂载选项,添加noatime
(不更新文件访问时间)、nodiratime
(不更新目录访问时间),减少不必要的磁盘写操作,提升性能。例如:
/dev/mapper/centos-root / ext4 defaults,noatime 0 1
。
5. 使用VDO(虚拟数据优化器)减少实际占用
VDO是一种块虚拟化技术,可透明实现数据重复删除与压缩,减少磁盘实际使用容量。
- 安装VDO:
yum -y install vdo kmod-kvdo
; - 创建VDO设备:指定设备路径(如
/dev/sda
)和逻辑大小(如60G):vdo create --name=vdolvm --device=/dev/sda --vdoLogicalSize=60G --writePolicy=async
; - 启动VDO卷:
systemctl start vdo vdolvm
; - 查看VDO状态:
vdostats --human-readable
。
6. 调整I/O调度器与缓存
- 选择合适的I/O调度器:
根据工作负载类型选择调度器(可通过cat /sys/block/sda/queue/scheduler
查看当前调度器):- 机械硬盘(HDD):推荐
deadline
(低延迟)或bfq
(适合交互式应用); - SSD:推荐
noop
(无队列调度,发挥SSD顺序读写优势)。
修改调度器:echo deadline > /sys/block/sda/queue/scheduler
(临时生效),或写入/etc/default/grub
永久生效。
- 机械硬盘(HDD):推荐
- 使用缓存技术:
- LVM缓存:将SSD作为缓存加速HDD(如
lvcreate -L 10G -n lv_cache vg0
创建缓存卷,再通过lvconvert --type cache --cachevol vg0/lv_cache vg0/lv_root
关联逻辑卷); - Bcache:将SSD作为HDD的高速缓存(需内核支持,适合需要平衡性能与成本的场景)。
- LVM缓存:将SSD作为缓存加速HDD(如
7. 监控与持续优化
- 定期检查磁盘空间:使用
df -h
每周查看分区使用情况,设置阈值(如80%)触发告警; - 监控磁盘性能:使用
iostat
(查看磁盘IO负载)、vmstat
(查看系统整体性能)等工具,及时发现性能瓶颈(如高IO等待); - 调整内核参数:根据实际情况调整
vm.swappiness
(控制内存交换倾向,默认60,服务器可降低至10-20,减少磁盘IO)。
声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!
若转载请注明出处: centos分卷如何优化空间
本文地址: https://pptw.com/jishu/727418.html