Linux环境缓存清理


1.删除缓存

sudo apt-get clean          #清理所有软件缓存
sudo apt-get autoclean      #清理旧版本的软件缓存
sudo apt-get autoremove     #删除系统不再使用的孤立软件
sudo apt-get remove --purge package_name    #删除软件

sudo apt-get install deborphan -y   #清除Linux下孤立的包

rm -rf ~/.cache/thumbnails/*        # 清楚缩略图缓存

2.清除交换空间

关于交换空间可以参考我之前的一篇博文。

swapoff -a && swapon -a

3.清理磁盘空间(例如/var/log)

3.1 查看磁盘占用情况

df -sh * | sort -n

也可以用df -i命令查看是否是innode满了。

可以根据实际情况手动删除一些文件,也可以使用下列命令删除30天前的文件,注意如果不是自己的机器不要这么干。

sudo find /var/log/ -type f -mtime +30 -exec rm -f {} \;

3.2 清空/var/log/journal文件的方法

(1)用echo命令,将空字符串内容重定向到指定文件中

echo "" > system.journal

此方法只会清空一次,一段时间后如果逐渐积累还要再次手动清空。

(2)直接删除该目录下指定的日志文件

rm -rf /var/log/journal/f9d400c5e1e8c3a8209e990d887d4ac1

(2)用journalctl命令自动维护文件大小

journalctl --vacuum-time=1w     # 设置只保留近一周的日志

journalctl --vacuum-size=500M   # 设置只保留500MB的日志

参考资料

[1] Linux 系统 /var/log/journal/ 垃圾日志清理 https://cloud.tencent.com/developer/article/1446278

附录

如果在Linux系统上想查看某些二进制文件内容,可以使用hexdumpxxd指令。

Most Linux distros have hexdump by default (but obviously not all).
xxd does both binary and hexadecimal.

普通的文本文件可以使用cat查看,但对于二进制文件会显示成乱码。

# 使用file指令查看文件类型,如下所示为可执行二进制文件
cv@cv ~$ file ~/Anaconda2-5.1.0-Linux-x86_64.sh
/home/cv/Anaconda2-5.1.0-Linux-x86_64.sh: POSIX shell script executable (binary data)

# 使用hexdump查看文件,只显示了十六进制的表示
cv@cv ~$ hexdump ~/Anaconda2-5.1.0-Linux-x86_64.sh | head -n 5
0000000 2123 622f 6e69 732f 0a68 0a23 2023 414e
0000010 454d 203a 4120 616e 6f63 646e 3261 230a
0000020 5620 5245 203a 2020 2e35 2e31 0a30 2023
0000030 4c50 5441 203a 6c20 6e69 7875 362d 0a34
0000040 2023 5942 4554 3a53 2020 2020 3535 3838

# 加上-C参数可以显示对应的ASCII文本内容
cv@cv ~$ hexdump -C ~/Anaconda2-5.1.0-Linux-x86_64.sh | head -n 5
00000000  23 21 2f 62 69 6e 2f 73  68 0a 23 0a 23 20 4e 41  |#!/bin/sh.#.# NA|
00000010  4d 45 3a 20 20 41 6e 61  63 6f 6e 64 61 32 0a 23  |ME:  Anaconda2.#|
00000020  20 56 45 52 3a 20 20 20  35 2e 31 2e 30 0a 23 20  | VER:   5.1.0.# |
00000030  50 4c 41 54 3a 20 20 6c  69 6e 75 78 2d 36 34 0a  |PLAT:  linux-64.|
00000040  23 20 42 59 54 45 53 3a  20 20 20 20 35 35 38 38  |# BYTES:    5588|

# 使用xxd也可以显示对应内容
cv@cv ~$ xxd ~/Anaconda2-5.1.0-Linux-x86_64.sh | head -n 5
00000000: 2321 2f62 696e 2f73 680a 230a 2320 4e41  #!/bin/sh.#.# NA
00000010: 4d45 3a20 2041 6e61 636f 6e64 6132 0a23  ME:  Anaconda2.#
00000020: 2056 4552 3a20 2020 352e 312e 300a 2320   VER:   5.1.0.# 
00000030: 504c 4154 3a20 206c 696e 7578 2d36 340a  PLAT:  linux-64.
00000040: 2320 4259 5445 533a 2020 2020 3535 3838  # BYTES:    5588

本文作者 :phillee
发表日期 :2022年03月07日
本文链接
版权声明 :自由转载-非商用-非衍生-保持署名(创意共享3.0许可协议/CC BY-NC-SA 3.0)。转载请注明出处!
限于本人水平,如果文章和代码有表述不当之处,还请不吝赐教。