我有一台 ubuntu 12.10 服务器,主要用作文件服务器 + 路由器。前段时间它开始表现得非常奇怪,例如通过 1GB/s 链接从 samba 服务器传输文件变得非常慢(低于 1MB/s)
经过一些研究和网络操作后,我发现我的 / 分区使用率已达到 100%。
Filesystem Size Used Avail Use% Mounted on
/dev/md1 3.1G 3.1G 0 100% /
/dev/sda1 105M 144k 104M 1% /boot/efi
/dev/md2 52G 1.5G 48G 3% /usr
/dev/md4 52G 13G 37G 26% /home
/dev/md5 21G 181M 20G 1% /tmp
/dev/md3 155G 824M 147G 1% /var
/dev/md6 21G 437M 20G 3% /var/log
这是个问题,我想通过将 /lib (2.3G) 文件夹移动到另一个目录并在启动时挂载它来解决它。系统安装在软件 raid0 上,因此,我认为重新分区将非常困难。
- 这是否是网络问题的根源?
如果我尝试做类似的事情,我会面临什么问题同步/lib
文件夹到/home/root/lib
?我可以合并/lib
和/home/lib
内容然后将后者安装到吗/lib
?
PS 我想知道这是怎么发生的。当我对磁盘进行分区时,我认为所有程序都将安装在 /home 或用户文件夹中,我将其设置得足够大……我在哪里可以阅读有关哪些分区用于哪些程序的信息?
編輯: 在地点我发现:
“目录 /bin、/lib 和 /etc 绝不应是单独的分区!在启动时,最初仅挂载 /。init 程序需要访问 /etc 中的文件,而启动脚本需要访问 /bin 中的命令,这些命令可能依赖于 /lib 中的文件。完成启动过程所需的内核模块也保存在 /lib 中。”
所以,我无法移动/lib
到另一个分区。我可以清除它或者做其他事情吗?
/lib/modules 包含:
3.5.0-17-generic 3.5.0-26-generic 3.5.0-30-generic 3.5.0-34-generic 3.5.0-40-generic
3.5.0-23-generic 3.5.0-27-generic 3.5.0-31-generic 3.5.0-37-generic 3.5.0-41-generic
3.5.0-25-generic 3.5.0-28-generic 3.5.0-32-generic 3.5.0-39-generic 3.5.0-42-generic
我需要所有这些文件吗?
答案1
看来您安装的 15 个内核占用了根 ( /
) 文件系统的太多空间。您可以使用该dpkg
命令删除这些内核,至少假设您可以启动并登录。使用选项-P
,如下所示:
sudo dpkg -P linux-image-3.5.0-17-generic
删除最旧的内核(除非您在使用较新的内核时遇到问题,在这种情况下您应该删除最不可靠的内核)。
您可能还想通过命令跟踪空间的使用位置du
,例如:
du -sx /* | sort -n
请注意,这将需要一段时间才能运行,但在完成之前可能会产生一些错误。忽略这些错误。该命令将根据目录占用的空间大小生成一个排序的目录列表,最大的目录位于列表底部。然后,您可以移动到这些目录中较大的一个,如下所示:
du -sx /var/* | sort -n
此示例将/var
根据使用的磁盘空间显示 的子目录。当您发现磁盘空间被消耗时,请研究有问题的目录或占用大量空间的单个文件。有些目录可能确实占用了大量空间,例如,如果计算机用作邮件服务器,则邮件假脱机。其他目录可能充满了临时文件(如 中的大多数文件/tmp
),或者可能包含变得过大的文件(如 中的臃肿日志文件/var/log
)。这些问题中的每一个都必须以自己的方式处理。
除此之外,您的分区大小也不合适。Linux 将大多数程序文件放在 中/usr
,但是这个目录/分区很少需要超过 10GB 的空间,通常只需要一半或更少。在大多数系统上,除了软件包更新或安装期间,这些文件很少更改。/
但是,根 ( ) 分区的一些其他子目录包含临时或动态文件,例如/tmp
(用于临时文件,通常很大)和 中的日志文件/var/log
。因此,在根 ( ) 分区中创建大量额外空间通常是明智之举/
。事实上,通常将其保留/usr
为根 ( ) 分区的常规子目录/
,并使后者的大小在 10-30GB 之间。
该/home
目录保存用户文件。它很少保存程序文件,除非是个别用户自己编写的软件。在大多数桌面系统上,/home
它将相对较大,因为它将保存数码照片、MP3、MPEG 或其他音频/视频文件、磁盘映像文件等。这些文件都可能非常大。不过,具体细节因计算机而异。
答案2
释放空间的最佳方法是删除不再需要的旧内核版本。为此,请按照上一个答案中提供的出色且详尽的指南进行操作(请访问并点赞):
https://askubuntu.com/a/100953/130555
这包括用于删除旧版本的 shell 方法以及图形方法。请注意建议(我同意)保留 2 或 3 个旧版本。更新经过了充分测试,但如果出现问题,您总是希望能够恢复到以前运行的版本。