Linux系统的垃圾清理方法总结
2023年8月24日发(作者:你是我兄弟台词)
有晚婚晚育假吗-
Linux系统的垃圾清理⽅法总结Linux的最⼤优点之⼀就是,使⽤⼀段时间后,它照样很稳定。Linux⾯临的最⼤挑战就是,将它安装起来,并到并配置你完成⼯作所需要的软件。⼀旦你完成了这项任务,它⼏乎就会顺利运⾏起来。⾄于系统维护⽅⾯,倒没有太多的东西需要担⼼。另⼀⽅⾯,Windows是我所说的⼀款“肮脏”的系统,原因在于它在运⾏过程中,会⽣成⼤量的额外数据,留在硬盘上。众所周知,⼀段时间后,随着这类数据不断积累,Windows的运⾏速度⾃然会慢下来,这时Windows⽤户要么安装软件,清理掉所有这些垃圾数据;要么定期重装系统,好让启动速度让⼈觉得焕然⼀新。实际上,有整个产业致⼒于销售⾯向Windows的“清理⼯具”。其中⼀些软件其实就是“披着⽺⽪”的恶意软件,不过有许多还是相当有⽤。当然,关键在于弄清楚哪个才是真正优秀的⼯具。如果你使⽤Linux,那么可能会很庆幸⾃⼰没必要处理这类烦⼼事,不过也别⾼兴得太早了。虽然Linux不像Windows那么肮脏,但它确实多少得益于偶尔进⾏的清理⼯作。Linux在运⾏过程中也会⽣成数据,具体有⽇志、缓存数据和临时⽂件。这些额外数据通常并不影响系统的性能。想要清理掉这些数据的主要原因是,收回占⽤的硬盘空间。如果你在运⾏固态硬盘(SSD),这可能是你在乎的⽅⾯,因为固态硬盘的容量往往不如我们习惯使⽤的传统硬盘,所以我们要密切关注占⽤的空间,直到⼤容量固态硬盘的价格降下来⼀点。下⾯不妨介绍为清理Linux系统可以采取的⼏个要点。清除旧内核警告!在清除与Linux内核有关的任何东西时,要极其⼩⼼!清除错软件包很有可能会导致你的计算机瘫痪,或者完全沦为垃圾!我们可是警告过你了!每个Linux发⾏版处理内核管理的⽅式不⼀样。有些拥有出⾊的GUI⼯具,让你可以选择运⾏什么内核,⽐如OpenSUSE、Linux Mint和Manjaro。⽽另⼀些发⾏版很少或从不更新内核,将⼿动更新这项任务完全交给了⽤户。内核相当重要,拥有经过更新的内核是你确保系统安全、远离病毒和⿊客的主要⼿段之⼀。我在这⾥会着重介绍Ubuntu,不过⿎励你深⼊研究⼀番内核,了解你使⽤的那个发⾏版如何处理内核的更新。Ubuntu将内核连同系统上的其他⼀切⼀块更新,并留下旧内核。内核更新偶尔会导致问题,所以最好保留旧内核。那样万⼀需要的话,可以恢复到旧内核。问题在于,Ubuntu完全将旧内核留在那⾥;⼀段时间后,最后你的系统上安装了⼀⼤堆旧内核。内核及相关⽂件占⽤⼤量空间,多达数百MB。因⽽,清除旧内核可以释放好多空间。在Ubuntu下管理内核的最佳⼯具是新⽴得软件包管理器(Synaptic Package Manager)。要是它还没有安装到你的系统上,现在就安装。在你打开该管理器之前,先打开终端,执⾏这个命令:复制代码代码如下:uname -r你应该会看到类似这样的输出结果:复制代码代码如下:3.16.0-38-generic这是⽬前运⾏的内核的版本号,需要把它记下来,因为我们想要确保没有对这个内核或随带的任何⽂件做任何操作。由于我们知道了运⾏什么样的版本,接下来可以打开该管理器,看看有没有任何旧内核在占⽤空间。想到内核,只要往搜索框中输⼊“linux-image”,然后按已安装版本对列表进⾏排序。为此,你可以点击软件包列表的标题。即使你只安装了⼀个版本的内核,也会看到与它⼀块安装的⼀⼤堆⽂件列了出来。你没必要将它们逐个清理掉,⾼亮选中主内核映像软件包,并将它标记为从右击菜单中完全清除,就可以让系统清除与之相关的⼀切⽂件。务必要反复核查版本号,确保没有清除当前版本。要是你按已安装的软件包对列表进⾏排序,最新的运⾏中内核应该会出现在列表的最上⾯。现在可以标记所有的旧内核,不过在你点击“应⽤”按钮之前,还需要寻另⼀个软件包。清空搜索栏,现在搜索⼀下“linux-headers”。要是它们已安装,你应该会获得⼀份列表,上⾯列出了与安装在系统上的内核有关的所有已安装的Linux标题⽂件。版本号伴随内核,所以务必要确保你没有清除当前版本的标题⽂件。实际上,标题⽂件对于计算机的⽇常操作⽽⾔并⾮必要,但是如果你想从源代码编译程序或驱动程序,有标题⽂件在是好事。它们并不占⽤太多的空间,所以我总是将运⾏中内核的标题⽂件留在系统上。使⽤BleachBit有⼀些确实很出⾊的Linux版程序可以⾃动检查系统,清除额外⽂件。我总是使⽤的⼀个程序就是BleachBit。它的历史并不短,⼏乎每⼀个Linux发⾏版上都有它。我⽤它来清除系统上的任何异常⽂件还没有遇到过任何问题。BleachBit很轻巧,却提供了⼀些相当强⼤的功能特性。我们在此只介绍很基本的功能,不过需要花点时间才能深⼊了解它的本领,你完全会觉得⼀些⾼级功能很有⽤。⼀旦你安装好了BleachBit,就会在仪表板或应⽤程序菜单中看到与它对应的两个条⽬。⼀个让你可以以根⽤户来运⾏它,另⼀个以你本⼈来运⾏它。以你本⼈来运⾏会清除与你帐户有关的⽂件,⽽以根⽤户来运⾏会清除缓存软件包和系统⽇志之类的数据。BleachBit还让你可以清空可能安装在系统上的Web浏览器、电⼦邮件客户程序以及插件的缓存内容。这⾥选择时要⼩⼼,因为它会清除掉你的所有已保存密码和设置;如果你想清空⼀切,这也许没什么,但如果你使⽤别⼈的帐户来运⾏它,可能会让⽤户不⾼兴。我发现,保持其他设置不变,仅仅清空Web浏览器⾥⾯的缓存就能收回⼤量的空间。以根⽤户运⾏BleachBit让你可以使⽤APT清理命令,清空你系统上的缓存软件包和更新版。你可以在终端中使⽤clean、autoclean和auto remove命令,不过在这⾥全为你做好了。说到终端,BleachBit在这⾥也可以使⽤。你可以执⾏“bleachbit”命令,它就会以你⽤GUI配置的预设值来运⾏。这很好,因为它意味着你可以制作⼀个Bash脚本,⾃动清理系统。对硬盘进⾏碎⽚整理已经说过好多次:运⾏Linux的优点之⼀就是,从来没必要对硬盘进⾏碎⽚整理。其实,并⾮完全如此。⼤多数普通⽤户从来没必要为⽂件碎⽚整理⽽操⼼,因为碎⽚现象不会严重到影响旋转硬盘性能的地步。ext4⽂件系统⾮常擅长以⼀种并不进⾏碎⽚整理的⽅式来存储⽂件。不像Windows上使⽤的NTFS⽂件系统,ext4将数据分散在整个硬盘上,将类似的⽂件归为⼀类,以便不⽤碎⽚整理,就为⽂件的增长留出了⼤量空间。这意味着,你在硬盘上只要有⼤量的闲置空间,可能根本不需要进⾏碎⽚整理。我的系统运⾏了两三年,检查硬盘后,发现碎⽚整理分数为“0”,这表明根本不需要碎⽚整理。既然如此,我为何还要费⼼告诉各位进⾏碎⽚整理呢?在⼀些情况下,你可能需要考虑碎⽚整理,⽐如如果你的硬盘开始塞满。已占⽤空间超过80%的任何ext4旋转硬盘往往会开始对⽂件进⾏碎⽚整理,因为系统将⽂件分开来,确保空间增加会开始变得更难。引起⽂件碎⽚整理的另⼀种情形是,如果你有⼀⼤批⾮常庞⼤的⽂件。如果⽤户处理⼤量视频制作、处理⼤型数据库或虚拟机,最后就会⾯临⼀⼤堆⾮常庞⼤的⽂件。⼀段时间后,这些⽂件的碎⽚现象会变得⾮常严重,运⾏碎⽚整理完全会显著改善硬盘性能。打开终端,执⾏这个命令,看看你的系统是否需要碎⽚整理:复制代码代码如下:sudo e4defrag / -c输⼊密码,程序会迅速分析你的⽂件系统。如果你有好多⽂件,这个过程可能需要1分钟,所以耐⼼点。你应该会看到类似这样的输出结果:复制代码代码如下:now/best size/ext1. /var/log/syslog 3/1 4 KB
2. /var/log/samba/ 2/1 4 KB
3. /var/log/ 2/1 4 KB
4. /var/log/ 3/1 5 KB
5. /var/log/ConsoleKit/history 3/1 10 KB
Total/best extents 128413/128382
Average size per extent 41 KB
Fragmentation score 0
[0-30 no problem: 31-55 a little bit fragmented: 56- needs defrag]
This directory (/) does not need defragmentation.
Done.⼀般对磁盘的清理⽅式1.定期对重要⽂件系统扫描,并作对⽐,分析那些⽂件经常读写复制代码代码如下:#IS-IR/home>;#diff 通过分析预测空间的增长情况,同时可以考虑对不经常读写⽂件进⾏压缩,以减少占⽤空间。2.查看空间⽂件系统的inodes消耗复制代码代码如下:#df-i/home如果还有⼤量的inpde可⽤,说明⼤⽂件占⽤空间,否贼可能⼤量⼩⽂件占⽤空间。3.出占⽤空间较⼤的⽬录查看/home占⽤的空间复制代码代码如下:#du-hs/home查看/home下占⽤空间超过1000m复制代码代码如下:#du/awk'$1>;2000'4.出占⽤空间较⼤的⽂件复制代码代码如下:#find/home-size +2000K5.出最近修改或创建的⽂件先TOUCH⼀个你想要的时间的⽂件如下复制代码代码如下:#TOUCH-t 08190800 test#find/home-newer test-print删除⽇志复制代码代码如下:#rm-rf/var/log/*6.对分区做连接在有空间的分区,对没有空进分区做连接复制代码代码如下:#in-s/home/use/home7.出耗费⼤量的空间的进程根据不同的应⽤,出对应的进程,分析原因。8.检查并修复⽂件系统复制代码代码如下:#fsck-y/home9.重启机器有了以上的⼗招,应该可以解决⼤部分问题,但是关键还是安装时要规划好分区。另外发现磁盘蛮时,不能急,⼩⼼操作,认真分析原因,然后⼩⼼应对。需要注 意,以上⼗招不需要顺序执⾏,有的可能⼀招封喉,有的可能需要数招并⽤,删除操作⼀定要⼩⼼。如果还不⾏,只有采取增加硬盘,重新安装系统等“硬”办法了还可以:复制代码代码如下:cd/du-h--max-depth=q/grep M/sort-n到最⼤的那个⽬录后进⼊该⽬录再运⾏复制代码代码如下:du-h-max-depth=1/grep M /sort-n出来以后看是否有⽤的⽂件没⽤就删掉希望以上的清理⽅法步骤能够给操作linux系统的⽤户带来磁盘空间⼀定的释放。我们关注的主要参数是碎⽚整理分数。它在这⾥是0,所以我们没必要为硬盘碎⽚整理⽽操⼼。如果你的主⽂件夹不在其⾃⼰的分区,那么你确实应该将/换成/home,还要检查那⾥的碎⽚整理状态。如果你想运⾏碎⽚整理程序,只要执⾏不带-c参数的命令:复制代码代码如下:sudo e4defrag /然后,它会检查⽂件系统,对需要碎⽚整理的⽂件进⾏碎⽚整理。在这个过程中,会有⼤量的输出结果滚动显⽰。要是你系统上有好多⽂件,这个过程很漫长,所以你可以在晚上上床前让碎⽚整理程序开始运⾏,完毕后关闭系统。为此,你可以执⾏类似这样的命令:复制代码代码如下:sudo e4defrag / && sudo e4defrag /home && sudo shutdown -h now如今我通常采取的做法是,在完成安装新系统、将所有⽂件倒过来之后,运⾏碎⽚整理⼯具。之后,我会偶尔检查⼀下状态,我发现此后碎⽚整理分数基本上保持在0。值得⼀提的是,你根本没必要对固态硬盘进⾏碎⽚整理。事实上,在固态硬盘上执⾏上述命令通常会弹出⼀个消息,显⽰不允许这种操作。只使⽤固态硬盘的那些⼈完全可以不⽤看这⼀节。最后说⼀句:在Linux中对硬盘进⾏碎⽚整理后,别指望性能会有⼤幅提升,因为即使硬盘上有⼀些碎⽚⽂件,ext4也其实擅长于快速运⾏。切记:ext4在设计当初就考虑到了⾼输⼊/输出⽂件服务器,它⾮常⾼效。即使要处理笔记本电脑或台式机,它也不会“⽓喘吁吁”。别过分追求⼲净!⼀些计算机⽤户在确保系统⼲净、在最⾼性能下运⾏到了⽆以复加的地步。牢记⼀点:许多Linux系统在根本没有采取上述措施的情况下运⾏了好多年。Linux根本不会像Windows或Mac那样慢下来,哪怕长时间使⽤后也是如此。你想要清空⽂件的主要原因是,收回硬盘空间,或者控制完全系统备份的⼤⼩。如果你与别⼈⼀样喜欢⼀直试⽤不同的发⾏版,很可能最后根本不需要采取任何上述措施,就因为你在频繁地重装。不过,知道有这样⼀些⼯具总归是件好事。