即使有空间,设备上也没有剩余空间


14

我通过SSH访问的笔记本电脑屏幕破损。该sudo apt-get autoremove命令给我以下错误

cp: error writing ‘/tmp/mkinitramfs_zN6ZvT//lib/x86_64-linux-gnu/libpthread.so.0’: No space left on device
cp: failed to extend ‘/tmp/mkinitramfs_zN6ZvT//lib/x86_64-linux-gnu/libpthread.so.0’: No space left on device
cp: error writing ‘/tmp/mkinitramfs_zN6ZvT//sbin/modprobe’: No space left on device
cp: failed to extend ‘/tmp/mkinitramfs_zN6ZvT//sbin/modprobe’: No space left on device
cp: error writing ‘/tmp/mkinitramfs_zN6ZvT//sbin/rmmod’: No space left on device
cp: failed to extend ‘/tmp/mkinitramfs_zN6ZvT//sbin/rmmod’: No space left on device

我从其他各种命令中也得到类似的错误,但是gparted告诉我笔记本电脑的(单个)分区上还有20GB以上的空间。这是输出df

$ df -i
Filesystem      Inodes  IUsed   IFree IUse% Mounted on
udev            502644    484  502160    1% /dev
tmpfs           505433    503  504930    1% /run
/dev/sda1      7331840 214087 7117753    3% /
none            505433      2  505431    1% /sys/fs/cgroup
none            505433      3  505430    1% /run/lock
none            505433      4  505429    1% /run/shm
none            505433     16  505417    1% /run/user
overflow        505433    401  505032    1% /tmp

和:

$ df -k
Filesystem     1K-blocks     Used Available Use% Mounted on
udev             2010576       12   2010564   1% /dev
tmpfs             404348     1284    403064   1% /run
/dev/sda1      115247656 83994028  25809372  77% /
none                   4        0         4   0% /sys/fs/cgroup
none                5120        0      5120   0% /run/lock
none             2021732      204   2021528   1% /run/shm
none              102400       16    102384   1% /run/user
overflow            1024     1024         0 100% /tmp

我跑步后开始出错sudo apt-get upgrade


请删除不必要的文件有:sudo apt autoremove重新检查你的空间
乔治Udosen

你试过了sudo apt autoclean吗?
拉韦西纳

在问题中提到自动删除给我错误。自动清理不会执行任何操作。
Reza

Answers:


6

在过去的某个时候,您的根文件系统已满,并且创建了一个小的临时/ tmp以使启动成功。这个小/ tmp从未被删除,因此,即使您在/上有足够的空间,您仍在填充小/ tmp并看到您的问题。只需卸载它:

sudo umount /tmp

当然,请尝试确保/尽可能干净。


通常,/ tmp只是根(/)文件系统的一部分,不需要单独的安装,除非有特殊情况,例如用完根文件空间(当某些守护程序创建了您看到的守护程序时),或者您有/在速度很慢的媒体(例如USB闪存棒)上,并且即使空间有限,也要在内存中使用/ tmp以获得性能。


好吧,我这样做是使用-l选项并运行了autoremove。我现在该如何安装呢?
Reza

它给了我umount: /tmp: not mounted。我该怎么办 ?
MRID

您有其他问题,因此请提出自己的问题并提供您的特定信息。
ubfan1

9

如果遇到此问题,在出现错误的情况下似乎表明磁盘未满时已发生错误,请确保还检查inode的利用率。

您可以使用df -i来快速获取每个安装点的已用/可用inode的报告。

如果看到索引节点的运行非常低或不足,那么下一步就是确定哪个文件夹承载了最多的索引节点。由于每个文件和目录都使用一个索引节点,因此您可以拥有一个包含成千上万个用尽所有索引节点的小文件或空文件的文件夹。通常的可疑对象包括:临时目录,网站缓存目录,程序包缓存目录等。

使用此命令可获取使用最多的inode的子目录的有序列表:

sudo find . -xdev -type f | cut -d "/" -f 2 | sort | uniq -c | sort -n

在您的根文件夹中运行此命令,然后向下钻取直到找到罪魁祸首。


6

我相信您有很多未使用的文件,可以通过以下方式将其删除:

sudo apt autoremove

然后使用df命令重新检查您的空间


我遇到此磁盘上无空间的问题,然后reboot从终端运行。现在系统无法启动。重新启动后,没有显示登录屏幕,而是黑屏。我该如何解决。
arilwan 8:51

-1

/ tmp目录设置为溢出,因此该目录中没有足够的磁盘空间来执行apt-get操作

您可以为终端会话更改apt-get的tmp位置,以执行该操作

mkdir -p /home/<user>/tmp
export TMPDIR=/home/<user>/tmp

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.