장치에 남은 공간이 없습니다

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.



답변

과거 어느 시점에서 루트 파일 시스템이 가득 차고 부팅이 성공할 수 있도록 작은 임시 / tmp가 만들어졌습니다. 이 작은 / tmp는 삭제되지 않았으므로 이제는 /에 공간이 있어도 작은 / tmp를 채우고 문제를보고 있습니다. 간단히 마운트 해제하십시오.

sudo umount /tmp

그리고 물론, 당신의 /가 가능한 한 깨끗한 지 확인하십시오.


일반적으로 / tmp는 루트 (/) 파일 시스템의 일부일뿐입니다. 루트 파일 공간 부족 (일부 데몬이 생성 한 경우)과 같은 특별한 상황이 아니면 / 매우 느린 미디어 (예 : USB 플래시 스틱)에서 공간이 제한되어 있어도 성능을 위해 램에 / tmp가 필요합니다.


답변

디스크가 가득 찼을 때 디스크가 가득 찼음을 나타내는 오류가 발생하는이 문제가 발생하면 inode 사용률도 확인하십시오.

당신이 사용할 수있는 df -i각각의 마운트 지점에 대한 사용 / 사용 가능한 아이 노드에 대한 빠른 보고서를 얻을 수 있습니다.

inode가 매우 부족하거나 부족한 경우 다음 단계는 대부분의 inode를 보유하고있는 폴더를 식별하는 것입니다. 각 파일과 디렉토리는 inode를 사용하므로 모든 inode를 사용하는 수십만 개의 작은 파일 또는 빈 파일이있는 폴더가있을 수 있습니다. 일반적인 용의자는 임시 디렉토리, 웹 사이트 캐시 디렉토리, 패키지 캐시 디렉토리 등을 포함합니다.

가장 많은 inode를 사용하는 서브 디렉토리의 정렬 된 목록을 얻으려면이 명령을 사용하십시오.

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

이것을 루트 폴더에서 실행 한 다음 범인을 찾을 때까지 드릴 다운하십시오.


답변

나는 당신이 사용하지 않는 많은 파일 을 가지고 있다고 생각합니다 .

sudo apt autoremove

그런 다음 df명령으로 공간을 다시 확인하십시오.


답변

/ tmp 디렉토리가 오버 플로우로 설정되어 있으므로 해당 디렉토리에 apt-get 조작을 수행하기에 디스크 공간이 충분하지 않습니다.

터미널 세션에서 apt-get의 tmp 위치를 변경하여 작업을 수행 할 수 있습니다

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