ubuntu

ubuntu分卷空间不足怎么解决

小樊
44
2025-09-25 00:17:09
栏目: 云计算

1. 首先检查磁盘空间使用情况

使用df -h命令查看各分区(尤其是根分区//home/boot)的使用率,定位空间不足的分区;再用du -sh * | sort -h(在根目录或目标目录下运行)找出占用空间大的文件或目录(如大型日志、下载文件、旧备份等)。

2. 清理不必要的文件释放空间

清理APT缓存与旧软件包

运行以下命令清理APT缓存(/var/cache/apt/archives)和不再需要的依赖包:

sudo apt clean          # 清理所有APT缓存文件
sudo apt autoclean      # 清理过时的缓存文件(仅保留当前可用的包)
sudo apt autoremove     # 自动移除不再需要的依赖包

这些操作可释放/var目录下的空间(通常占几GB)。

清理旧内核文件

旧内核会占用/boot分区空间(常见于Ubuntu Server或手动安装的系统)。通过以下命令清理:

dpkg -l | grep linux-image  # 列出已安装的内核版本(排除当前正在使用的)
sudo apt purge linux-image-x.x.x-x-generic  # 删除旧内核(替换x.x.x-x为具体版本号)

清理后可释放/boot分区的大量空间(通常每个旧内核占100-300MB)。

清理日志文件

系统日志(如/var/log/syslog/var/log/kern.log)可能随时间增长占用大量空间。使用以下命令清理:

sudo journalctl --vacuum-time=3d  # 删除超过3天的日志(可调整为7d/30d)
sudo rm -rf /var/log/*.gz         # 删除压缩的旧日志文件

注意:避免删除正在使用的日志文件(如syslog),以免影响系统运行。

清理缩略图缓存

缩略图缓存(位于~/.cache/thumbnails)会随着图片、视频文件的增多而增大。运行以下命令清理:

rm -rf ~/.cache/thumbnails/*  # 删除当前用户的缩略图缓存

若需清理所有用户的缓存,可使用sudo rm -rf /home/*/.cache/thumbnails/*(谨慎操作)。

清理Snap应用旧版本

Snap应用会保留旧版本(位于/var/lib/snapd/snaps),占用大量空间。使用以下脚本清理:

sudo snap list --all | awk '/disabled/{print $1, $3}' | while read snapname revision; do
    sudo snap remove "$snapname" --revision="$revision"
done

该脚本会删除所有Snap应用的旧版本,仅保留最新版。

3. 扩展现有分区空间(针对LVM逻辑卷)

若系统使用LVM(逻辑卷管理),可通过扩展逻辑卷来增加空间(适用于未分配空间充足或已添加新硬盘的情况):

步骤1:查看LVM结构

sudo fdisk -l               # 查看物理磁盘情况
sudo vgdisplay              # 查看卷组(VG)剩余空间
sudo lvdisplay              # 查看逻辑卷(LV)大小

步骤2:扩展逻辑卷

步骤3:调整文件系统大小

步骤4:验证扩展结果

df -h                     # 查看分区大小是否已扩展
sudo lvdisplay            # 确认逻辑卷大小已更新

注意:扩展逻辑卷前需确保卷组有足够空间,否则需先扩展卷组。

4. 添加新磁盘(终极解决方案)

若现有磁盘无剩余空间且无法通过LVM扩展,可添加新硬盘:

步骤1:物理安装新硬盘

将新硬盘插入计算机(台式机需打开机箱,笔记本需确认接口支持)。

步骤2:分区与格式化新硬盘

步骤3:挂载新分区

步骤4:迁移数据

将原分区中的部分数据(如/home/var)迁移到新分区,以释放原分区空间。

注意事项

0
看了该问题的人还看了