磁盘命令参考本博客linux磁盘空间满了怎么办.
问题: 磁盘空间被盗
今天瞄了一下我的Ubuntu系统盘,
nftdigger@nftdigger-Ubuntu:~$ df -h
文件系统        容量  已用  可用 已用% 挂载点
udev             16G     0   16G    0% /dev
tmpfs           3.2G  1.9M  3.2G    1% /run
/dev/nvme1n1p2  916G  841G   29G   97% /
tmpfs            16G     0   16G    0% /dev/shm
tmpfs           5.0M  4.0K  5.0M    1% /run/lock
tmpfs            16G     0   16G    0% /sys/fs/cgroup
好家伙,我的1T系统盘快满了。查了一下文件主要在哪里增加的
nftdigger@nftdigger-Ubuntu:~$ du -h -d1
...
488G	./.cache
...
820G	.
.cache 占了大部分空间
 切入.cache目录,一看,好家伙,tracker目录下的meta.db-wal占用了488G。
原因
谷歌了下meta.db-wal,有人在说安装了gnome桌面之后磁盘和CPU占用巨大。我查看了正在跑的程序,果然有个tracker-miner-f的程序在不亦乐乎地瞎跑。
$top进程号 USER      PR  NI    VIRT    RES    SHR    %CPU  %MEM     TIME+ COMMAND                                                                                                                 971168 nftdigg+  39  19  444248  70340  68208 D  52.5   0.2   0:25.76 tracker-miner-f  
继续搜谷歌,说tracker-miner-fs 是 GNOME 桌面环境中的一个组件,它的主要功能是索引你的文件系统以便快速搜索。
 我的确尝试安装了gnome桌面系统,不过基本没用。决定停止这个索引服务。
tracker-miner-fs是 GNOME 桌面环境中的一个组件,它的主要功能是索引你的文件系统以便快速搜索。然而,在某些情况下,它可能会占用大量的 CPU 或者内存资源。如果你不需要文件搜索功能,或者你愿意为了减少系统负载而牺牲这个功能,你可以选择关闭它。
解决: 关闭 tracker-miner-fs服务
 
1. 停止正在运行的 tracker-miner-fs 进程:
 
    tracker reset --hard
这将停止所有的 Tracker 进程,并删除所有已经收集的数据。
2. 禁用 tracker-miner-fs 服务,避免下一次开机时自动运行。
 
需要编辑 ~/.config/autostart/tracker-store.desktop 文件。如果文件不存在,需要先创建这个文件。并添加以下内容:
    [Desktop Entry]Type=ApplicationName=Tracker metadata database storeExec=tracker storeNoDisplay=trueX-GNOME-Autostart-Delay=30X-GNOME-UsesNotifications=falseX-Ubuntu-Gettext-Domain=tracker
然后,在文件的最后,添加一行 X-GNOME-Autostart-enabled=false,这将禁用 tracker-miner-fs 服务。
    X-GNOME-Autostart-enabled=false
最后,保存并关闭文件。
这样,tracker-miner-fs 应该不会在系统启动时运行。如果之后需要启用它,只需要在 ~/.config/autostart/tracker-store.desktop 文件中将 X-GNOME-Autostart-enabled 设置为 true,然后重启系统即可。
附上最后的检查结果,直接腾出488G空间,完美:
 