如何让你的 Linux 系统干净整洁

如何让你的 Linux 系统干净整洁

Linux的最大优点之一就是,使用一段时间后,它照样很稳定。Linux面临的最大挑战就是,将它安装起来,并找到并配置你完成工作所需要的软件。一旦你完成了这项任务,它几乎就会顺利运行起来。至于系统维护方面,倒没有太多的东西需要担心。另一方面,Windows是我所说的一款“肮脏”的系统,原因在于它在运行过程中,会生成大量的额外数据,留在硬盘上。众所周知,一段时间后,随着这类数据不断积累,Windows的运行速度自然会慢下来,这时Windows用户要么安装软件,清理掉所有这些垃圾数据;要么定期重装系统,好让启动速度让人觉得焕然一新。实际上,有整个产业致力于销售面向Windows的“清理工具”。其中一些软件其实就是“披着羊皮”的恶意软件,不过有许多还是相当有用。当然,关键在于弄清楚哪个才是真正优秀的工具。

如果你使用Linux,那么可能会很庆幸自己没必要处理这类烦心事,不过也别高兴得太早了。虽然Linux不像Windows那么肮脏,但它确实多少得益于偶尔进行的清理工作。Linux在运行过程中也会生成数据,具体有日志、缓存数据和临时文件。这些额外数据通常并不影响系统的性能。想要清理掉这些数据的主要原因是,收回占用的硬盘空间。如果你在运行固态硬盘(SSD),这可能是你在乎的方面,因为固态硬盘的容量往往不如我们习惯使用的传统硬盘,所以我们要密切关注占用的空间,直到大容量固态硬盘的价格降下来一点。下面不妨介绍为清理Linux系统可以采取的几个要点。

清除旧内核

警告!在清除与Linux内核有关的任何东西时,要极其小心!清除错软件包很有可能会导致你的计算机瘫痪,或者完全沦为垃圾!我们可是警告过你了!

每个Linux发行版处理内核管理的方式不一样。有些拥有出色的GUI工具,让你可以选择运行什么内核,比如OpenSUSELinux MintManjaro。而另一些发行版很少或从不更新内核,将手动更新这项任务完全交给了用户。内核相当重要,拥有经过更新的内核是你确保系统安全、远离病毒和黑客的主要手段之一。我在这里会着重介绍Ubuntu,不过鼓励你深入研究一番内核,了解你使用的那个发行版如何处理内核的更新。

Ubuntu将内核连同系统上的其他一切一块更新,并留下旧内核。内核更新偶尔会导致问题,所以最好保留旧内核。那样万一需要的话,可以恢复到旧内核。问题在于,Ubuntu完全将旧内核留在那里;一段时间后,最后你的系统上安装了一大堆旧内核。内核及相关文件占用大量空间,多达数百MB。因而,清除旧内核可以释放好多空间。

在Ubuntu下管理内核的最佳工具是新立得软件包管理器(Synaptic Package Manager)。要是它还没有安装到你的系统上,现在就安装。在你打开该管理器之前,先打开终端,执行这个命令:


  1. uname -r 

你应该会看到类似这样的输出结果:


  1. 3.16.0-38-generic 

这是目前运行的内核的版本号,需要把它记下来,因为我们想要确保没有对这个内核或随带的任何文件做任何操作。

由于我们知道了运行什么样的版本,接下来可以打开该管理器,看看有没有任何旧内核在占用空间。想找到内核,只要往搜索框中输入“linux-image”,然后按已安装版本对列表进行排序。为此,你可以点击软件包列表的标题。即使你只安装了一个版本的内核,也会看到与它一块安装的一大堆文件列了出来。你没必要将它们逐个清理掉,高亮选中主内核映像软件包,并将它标记为从右击菜单中完全清除,就可以让系统清除与之相关的一切文件。务必要反复核查版本号,确保没有清除当前版本。要是你按已安装的软件包对列表进行排序,最新的运行中内核应该会出现在列表的最上面。现在可以标记所有的旧内核,不过在你点击“应用”按钮之前,还需要寻找另一个软件包。

清空搜索栏,现在搜索一下“linux-headers”。要是它们已安装,你应该会获得一份列表,上面列出了与安装在系统上的内核有关的所有已安装的Linux标题文件。版本号伴随内核,所以务必要确保你没有清除当前版本的标题文件。实际上,标题文件对于计算机的日常操作而言并非必要,但是如果你想从源代码编译程序或驱动程序,有标题文件在是好事。它们并不占用太多的空间,所以我总是将运行中内核的标题文件留在系统上。

使用BleachBit

有一些确实很出色的Linux版程序可以自动检查系统,清除额外文件。我总是使用的一个程序就是BleachBit。它的历史并不短,几乎每一个Linux发行版上都有它。我用它来清除系统上的任何异常文件还没有遇到过任何问题。BleachBit很轻巧,却提供了一些相当强大的功能特性。我们在此只介绍很基本的功能,不过需要花点时间才能深入了解它的本领,你完全会觉得一些高级功能很有用。

一旦你安装好了BleachBit,就会在仪表板或应用程序菜单中看到与它对应的两个条目。一个让你可以以根用户来运行它,另一个以你本人来运行它。以你本人来运行会清除与你帐户有关的文件,而以根用户来运行会清除缓存软件包和系统日志之类的数据。BleachBit还让你可以清空可能安装在系统上的Web浏览器、电子邮件客户程序以及插件的缓存内容。这里选择时要小心,因为它会清除掉你的所有已保存密码和设置;如果你想清空一切,这也许没什么,但如果你使用别人的帐户来运行它,可能会让用户不高兴。我发现,保持其他设置不变,仅仅清空Web浏览器里面的缓存就能收回大量的空间。

以根用户运行BleachBit让你可以使用APT清理命令,清空你系统上的缓存软件包和更新版。你可以在终端中使用clean、auto clean和auto remove命令,不过在这里全为你做好了。说到终端,BleachBit在这里也可以使用。你可以执行“bleachbit”命令,它就会以你用GUI配置的预设值来运行。这很好,因为它意味着你可以制作一个Bash脚本,自动清理系统。

对硬盘进行碎片整理

已经说过好多次:运行Linux的优点之一就是,从来没必要对硬盘进行碎片整理。其实,并非完全如此。大多数普通用户从来没必要为文件碎片整理而操心,因为碎片现象不会严重到影响旋转硬盘性能的地步。ext4文件系统非常擅长以一种并不进行碎片整理的方式来存储文件。不像Windows上使用的NTFS文件系统,ext4将数据分散在整个硬盘上,将类似的文件归为一类,以便不用碎片整理,就为文件的增长留出了大量空间。这意味着,你在硬盘上只要有大量的闲置空间,可能根本不需要进行碎片整理。我的系统运行了两三年,检查硬盘后,发现碎片整理分数为“0”,这表明根本不需要碎片整理。

既然如此,我为何还要费心告诉各位进行碎片整理呢?在一些情况下,你可能需要考虑碎片整理,比如如果你的硬盘开始塞满。已占用空间超过80%的任何ext4旋转硬盘往往会开始对文件进行碎片整理,因为系统将文件分开来,确保空间增加会开始变得更难。引起文件碎片整理的另一种情形是,如果你有一大批非常庞大的文件。如果用户处理大量视频制作、处理大型数据库或虚拟机,最后就会面临一大堆非常庞大的文件。一段时间后,这些文件的碎片现象会变得非常严重,运行碎片整理完全会显著改善硬盘性能。

打开终端,执行这个命令,看看你的系统是否需要碎片整理:


  1. sudo e4defrag / -c 

输入密码,程序会迅速分析你的文件系统。如果你有好多文件,这个过程可能需要1分钟,所以耐心点。你应该会看到类似这样的输出结果:


  1. now/best size/ext  
  2. 1. /var/log/syslog 3/1 4 KB  
  3. 2. /var/log/samba/log.nmbd 2/1 4 KB  
  4. 3. /var/log/boot.log 2/1 4 KB  
  5. 4. /var/log/auth.log 3/1 5 KB  
  6. 5. /var/log/ConsoleKit/history 3/1 10 KB  
  7.  
  8. Total/best extents 128413/128382  
  9. Average size per extent 41 KB  
  10. Fragmentation score 0  
  11. [0-30 no problem: 31-55 a little bit fragmented: 56- needs defrag]  
  12. This directory (/) does not need defragmentation.  
  13. Done. 

我们关注的主要参数是碎片整理分数。它在这里是0,所以我们没必要为硬盘碎片整理而操心。如果你的主文件夹不在其自己的分区,那么你确实应该将/换成/home,还要检查那里的碎片整理状态。如果你想运行碎片整理程序,只要执行不带-c参数的命令:


  1. sudo e4defrag / 

然后,它会检查文件系统,对需要碎片整理的文件进行碎片整理。在这个过程中,会有大量的输出结果滚动显示。要是你系统上有好多文件,这个过程很漫长,所以你可以在晚上上床前让碎片整理程序开始运行,完毕后关闭系统。为此,你可以执行类似这样的命令:


  1. sudo e4defrag / && sudo e4defrag /home && sudo shutdown -h now 

如今我通常采取的做法是,在完成安装新系统、将所有文件倒过来之后,运行碎片整理工具。之后,我会偶尔检查一下状态,我发现此后碎片整理分数基本上保持在0。

值得一提的是,你根本没必要对固态硬盘进行碎片整理。事实上,在固态硬盘上执行上述命令通常会弹出一个消息,显示不允许这种操作。只使用固态硬盘的那些人完全可以不用看这一节。

最后说一句:在Linux中对硬盘进行碎片整理后,别指望性能会有大幅提升,因为即使硬盘上有一些碎片文件,ext4也其实擅长于快速运行。切记:ext4在设计当初就考虑到了高输入/输出文件服务器,它非常高效。即使要处理笔记本电脑或台式机,它也不会“气喘吁吁”。

别过分追求干净!

一些计算机用户在确保系统干净、在最高性能下运行到了无以复加的地步。牢记一点:许多Linux系统在根本没有采取上述措施的情况下运行了好多年。Linux根本不会像Windows或Mac那样慢下来,哪怕长时间使用后也是如此。你想要清空文件的主要原因是,收回硬盘空间,或者控制完全系统备份的大小。如果你与别人一样喜欢一直试用不同的发行版,很可能最后根本不需要采取任何上述措施,就因为你在频繁地重装。不过,知道有这样一些工具总归是件好事。

本文来自合作伙伴“Linux中国”,原文发表于2013-04-02.

时间: 2024-10-02 17:32:53

如何让你的 Linux 系统干净整洁的相关文章

Linux系统下Apache服务器设置与优化

Apache服务器的设置文件位于/usr/local/apache/conf/目录下,传统上使用三个配置文件httpd.conf,access.conf和srm.conf,来配置Apache服务器的行为. httpd.conf提供了最基本的服务器配置,是对守护程序httpd如何运行的技术描述:srm.conf是服务器的资源映射文件,告诉服务器各种文件的MIME类型,以及如何支持这些文件:access.conf用于配置服务器的访问权限,控制不同用户和计算机的访问限制:这三个配置文件控制着服务器的各

在linux系统下使用C语言操作临时文件

有时程序需要存储很大量的数据,或者在几个进程间交换数据,这时您可能考虑到使用临时文件.使用临时文件要考虑几个问题: 1.保证临时文件间的文件名不互助冲突. 2.保证临时文件中内容不被其他用户或者黑客偷看.删除和修改. 所以在linux下有专门处理临时文件的函数 mkstemp函数 mkstemp函数将在系统中以独一无二的文件名创建一个文件并打开,而且只有当前用户才有访问这个临时文件的权限,当前用户对这个临时文件可以打开并进行读.写操作.mkstemp函数只有一个参数,这个参数是个以"XXXXXX

Linux系统的垃圾清理方法总结

  Linux的最大优点之一就是,使用一段时间后,它照样很稳定.Linux面临的最大挑战就是,将它安装起来,并找到并配置你完成工作所需要的软件.一旦你完成了这项任务,它几乎就会顺利运行起来.至于系统维护方面,倒没有太多的东西需要担心.另一方面,Windows是我所说的一款"肮脏"的系统,原因在于它在运行过程中,会生成大量的额外数据,留在硬盘上.众所周知,一段时间后,随着这类数据不断积累,Windows的运行速度自然会慢下来,这时Windows用户要么安装软件,清理掉所有这些垃圾数据;要

通过Linux系统将Windows系统迁移到到新的磁盘上

  1. 概述 这篇文章将告诉你如何再 linux 系统下,将 安装好的windows版本 复制到新的磁盘上(新的磁盘大于等于window镜像大小) 2. 使用到的工具 livecd 工具,可以是CD 也可以是USB启动的 ,需要有的工具 dd, fdisk, and ntfsresize. 此例子中,使用如下假设: /dev/sdc (新硬盘) /dev/sdb (老硬盘,安装好的window版本数据在 /dev/sdb1 分区中) = 格式化新盘(/dev/sdc) = 使用root 用户,

Linux 系统裁剪笔记 软盘2

第一步:裁减内核打开终端,输入:cd /usr/src/linux2.4,然后输入make xconfig.现在编译内核正式开始了1.1 "code maturity level options"选项,代表代码的成熟等级,因为这是一个试验的部分,我们不需要,所以关闭它.1.2 "Loadable module support"可加载模块支持可加载模块是指内核代码(kernel code)的一些片断,比如驱动程序,当编译内核的时候它们也被单独编译.因此,这些代码不是内

文件下载-同一个文件在Linux系统中下载,文件比较小

问题描述 同一个文件在Linux系统中下载,文件比较小 在www.samba.org下载Samba源码samba-latest.tar.gz,在Linux系统下下载大小只有19.4M,而在win7系统下载大小确是97.1M,解压后里面内容一样(其实就是同一个下载路径https://download.samba.org/pub/samba/samba-latest.tar.gz),,,为什么大小不同 19.4M的是从Linux系统中拖出来的 win7用的是360浏览器,Linux用的是Firefo

在linux系统中安装MySQL

1.安装Linux系统中自带的MySQL安装包 在现在常用的发行版本里都集中了MySQL安装包 CentOS系统中的YUM中包含了MySQL安装包,版本是MySQL5,rpm软件包的名称是mysql-server yum list | grep mysql:这条命令是将YUM仓库里包含MySQL的软件包都列出来. 在执行上面命令后所列出的软件包中mysql.i686是一个MySQL的客户端,而mysql-server是MySQL的服务端:一般情况下,会把MySQL服务端,客户端都装上,也可以把开

Linux 系统成长之路:试用 1993-2003 年Linux 老版本系统

让我们一起来回顾 Linux 早期版本的美好时光 开源软件最具独特性的一点就是它永远不会真正的走到 EOL(生命的终点).它们的磁盘镜像文件大都可以一直在网上找到,并且它们的许可证也不会过期,因此,我们可以返回去找到那些老版本的 Linux 系统,并在虚拟机中安装它们,这都是很容易做到的.通过回顾那些珍贵的系统画面,让我们来回顾 Linux 系统这么多年来所发生的翻天覆地的变化. 我们从 Slackware 1.01 版本来开始这段旅程,在二十多年前它就发布在 comp.os.linux.ann

Linux系统“死机”时解决方法_unix linux

如果问题能够再现,那么问题已经解决 80% 了.对于操作系统核心而言,如果有问题的再现方法,那么可以说是已经解决 99% 了.经常遇到的问题是系统可以正常运行一段时间,然后死机.如果不好再现问题,那么只有根据死机现场遗留的东西来进行分析了.  如果系统没有死干净,比如磁盘中断和文件系统是好的,那么也许能有日志信息保留在文件中,不过这样的好运气我是从来没有遇到过的.如果键盘中断还能响应 (按下Num Lock,可以看见键盘小灯亮灭),那么运气就算是足够好了,这时可以祭出 sysrq 大法,同时按下