今天在操作服务器的时候,一不小心点了个把某文件目录添加到压缩包的命令。然后由于这个文件夹很大,所以压缩包占了很大的空间。我心急,直接把压缩文件删了,没想到,cpu还在持续占用,用top命令发现,zip进程还在运行,这个时候磁盘已经快满了。那怎么办呢?
我就kill掉了zip进程,没想到磁盘空间还是被占用了,因此我就采取了清理缓存的办法。
切换到root用户下,根据需要,执行下面三个命令之一,就可以清除缓存。
To free pagecache://释放页缓存
echo 1 > /proc/sys/vm/drop_caches
To free reclaimable slab objects (includes dentries and inodes)://释放inode和目录树缓存
echo 2 > /proc/sys/vm/drop_caches
To free slab objects and pagecache://包括1和2,即释放所有缓存
echo 3 > /proc/sys/vm/drop_caches
得出结论,一定要先kill进程,再删文件,不然,文件句柄没有被释放,进程还会疯狂占疯狂占用空间!