Clean Disk Space in Ubuntu

Clean Disk Space in Ubuntu

Intro

实习一开始申请的Ubuntu 18,下载neovim比较麻烦,直接用了snap下载的nvim。
最近发现在ubuntu上使用nvim作为manpager报错,例如

SHELL
$ man selectcannot fstatat canonical snap directory: Permission denied/usr/bin/man: command exited with status 1: sed -e '/^[[:space:]]$/{ N; /^[[:space:]]\n[[:space:]]*$/D; }' | LESS=-ix8RmPm Manual page select(2) ?ltline %lt?L/%L.:byte %bB?s/%s..?e (END):?pB %pB%.. (press h for help or q to quit)$PM Manual page select(2) ?ltline %lt?L/%L.:byte %bB?s/%s..?e (END):?pB %pB%.. (press h for help or q to quit)$ MAN_PN=select(2) nvim +Man!

大致是man无权访问snap目录。前段时间升级了ubuntu,于是这里打算通过用apt安装nvim来解决这一问题;
不过又引出一个新问题:

SHELL
$ apt-get install neovimReading package lists... DoneBuilding dependency treeReading state information... DoneThe following NEW packages will be installed:  neovim0 upgraded, 1 newly installed, 0 to remove and 7 not upgraded.Need to get 37.4 kB of archives.After this operation, 168 kB of additional disk space will be used.E: You don't have enough free space in /var/cache/apt/archives/.

试了一下网上的方法,多数是清理/var/cache/apt/archives/目录下的文件,或者清理/var/log/下的日志文件,但都没有效果。

Solution

定位一下问题,使用df命令查看磁盘使用情况
可以判断是/dev/mapper/ubuntu--vg-ubuntu--lv分区满了,/var/cache/apt/archives/目录下的文件是存放在这个分区上的。

SHELL
$ df -hFilesystem                         Size  Used Avail Use% Mounted onudev                                16G     0   16G   0% /devtmpfs                              3.2G  307M  2.9G  10% /run/dev/mapper/ubuntu--vg-ubuntu--lv   58G   57G     0 100% /tmpfs                               16G     0   16G   0% /dev/shmtmpfs                              5.0M     0  5.0M   0% /run/locktmpfs                               16G     0   16G   0% /sys/fs/cgroup/dev/sda2                          974M  213M  694M  24% /boot.../dev/loop21                         13M   13M     0 100% /snap/kubectl/3512/dev/sdb1                          492G  4.2G  462G   1% /mnt/datatmpfs                              3.2G  8.0K  3.2G   1% /run/user/0
Caution

从路径结构上看 /mnt/data/ 下的一个子目录, 但删除 /mnt/data 中的文件后, 并不会释放/dev/mapper/ubuntu--vg-ubuntu--lv 分区的空间。

原因是/mnt/data及其子目录的内容实际上存储在设备/dev/sdb1/上,而不占用原来 / 的磁盘空间。

定位到问题后,就很容易处理了。个人通过rm -rf /root/.local/share/Trash后释放了26G的空间,成功安装了nvim。回收站路径见Where is the .Trash folder? - Ask Ubuntu

Another WorkAround

如果空间实在捉襟见肘,可以试下如下的方法

SHELL
sudo apt -o Dir::Cache::Archives="/dev/shm/" install neovim
Note

-o 选项用于临时修改 APT 的配置,这里将缓存目录设置为 /dev/shm/,基于内存的临时文件系统,这样可以避免磁盘空间不足的问题

此外禁用APT的缓存功能应该也可以,参考8. Disable the APT cache to save storage space

Screenshot

换用apt安装nvim后,就可以正常使用nvim作为manpager了,效果大概是这样的

neovim man

Clean Disk Space in Ubuntu

https://vluv.space/ubuntu_disk_clean/

作者

GnixAij

发布于

2025-06-25

更新于

2025-08-12

许可协议

评论