tar 아카이브의 압축을 풀 때 "장치에 남은 공간이 없습니다"

tar 아카이브의 압축을 풀 때 "장치에 남은 공간이 없습니다"

tar xvzf ZAP_2.7.0_Linux.tar.gz여기 파일을 사용하여 tar 파일의 압축을 풀 려고 합니다 . 무엇이 문제일까요?

-rw-r--r--  1 root root  32165888 Mar  6 12:06 ZAP_2.7.0_Linux.tar.gz
-rwxrwxrwx  1 root root         0 Mar  6 12:47 ZAP_2_7_0_unix.sh

내가 이것을 시도했을 때[root@localhost ~]# tar xvzf ZAP_2.7.0_Linux.tar.gz

다음 오류가 발생합니다.

tar: ZAP_2.7.0/plugin/diff-beta-8.zap: Cannot open: No space left on device
ZAP_2.7.0/plugin/directorylistv1-release-3.zap

gzip: stdin: unexpected end of file
tar: Unexpected EOF in archive
tar: Error is not recoverable: exiting now

디스크 공간이 충분한 것 같습니다. 내가 여기서 뭔가 잘못 읽었나요? 기본적인 질문이라면 죄송합니다. 루트에 "Use%"가 100%로 표시되는 이유는 무엇입니까?

[root@localhost ~]# df
Filesystem              1K-blocks    Used Available Use% Mounted on
/dev/mapper/centos-root   6981632 6981080       552 100% /
devtmpfs                  1426928       0   1426928   0% /dev
tmpfs                     1442256      84   1442172   1% /dev/shm
tmpfs                     1442256    8892   1433364   1% /run
tmpfs                     1442256       0   1442256   0% /sys/fs/cgroup
/dev/sda1                  508588  160004    348584  32% /boot
tmpfs                      288452      16    288436   1% /run/user/42
tmpfs                      288452       0    288452   0% /run/user/0
[root@localhost ~]#

무엇이 문제일까요?

[root@localhost ~]# df /dev/sda
Filesystem     1K-blocks  Used Available Use% Mounted on
devtmpfs         1426928     0   1426928   0% /dev

답변1

두 가지 문제가 있는 것 같습니다.

  • 파일 시스템이 꽉 찼습니다.
  • tar.gz 파일이 잘렸습니다. 즉, 오류로 인해 불완전합니다.gzip: stdin: unexpected end of file

두 번째 문제는 첫 번째 문제로 인해 발생할 수 있습니다. 다운로드할 때(또는 파일을 가져오는 다른 방법) 전체 tar.gz 파일을 저장할 공간이 없습니다.

"디스크 공간이 충분한 것 같습니다"라고 작성합니다. 같은 단락에서 "루트가 '사용%'를 100%로 표시하는 이유는 무엇입니까?"라고 쓴 것처럼 이러한 결론에 도달하게 된 이유는 파일 시스템이 가득 찼음을 의미합니다. 사용 가능한 블록이 여러 개 있지만 예를 들어 일부 데몬이 임시 파일을 삭제했기 때문일 수 있습니다.

지침 df /dev/sda에는 df지정된 파일이 저장된 파일 시스템이 표시되지만 장치에 공간이 얼마나 있는지는 표시되지 않습니다.

즉, 파일 시스템이 가득 차서 불필요한 파일을 삭제하거나 파일 시스템 크기를 늘려야 합니다.

루트 파일 시스템은 LVM(논리 볼륨 관리자)에 있습니다. 볼륨 그룹에 사용되지 않은 여유 공간이 있을 수 있습니다. 확인해보세요

# vgdisplay

한 줄이 있고 Free PE / Size0이 아닌 경우 해당 공간을 루트 파일 시스템에 할당할 수 있습니다. 사용 가능한 모든 공간을 할당하려면 다음을 사용하십시오.

# lvresize --extents +100%FREE /dev/mapper/centos-root

장치 크기가 증가하면 추가 공간을 사용하기 위해 파일 시스템 자체도 커져야 합니다. 여기서는 파일 시스템이 다음과 같다고 가정합니다 ext4. 먼저 mount나열된 유형을 확인하고 확인하세요.

# resize2fs /dev/mapper/centos-root

이렇게 하면 파일 시스템에서 사용 가능한 공간이 모두 사용됩니다.

편집/추가 정보:

무료로 표시되는 40MB는 추가하기에는 너무 작을 수 있지만 LVM은 작업을 수행하기 위해 구성을 작성해야 하고 공간이 없습니다... 따라서 먼저 어떻게든 공간을 확보해야 합니다. /var/log/이 경우 일반적으로 거기로 이동합니다. 그리고 오래된 로그 파일을 삭제하세요.

관련 정보