본문 바로가기

리눅스

소스 컴파일 중 "reason: No space left on device" 오류

728x90

소스 컴파일 중 "reason: No space left on device" 오류

에러 메세지

/usr/bin/ar: unable to copy file 'libsql_dd.a'; reason: No space left on device
make[2]: *** [sql/CMakeFiles/sql_dd.dir/build.make:2610: sql/libsql_dd.a] Error 1
make[2]: *** Deleting file 'sql/libsql_dd.a'
make[1]: *** [CMakeFiles/Makefile2:29026: sql/CMakeFiles/sql_dd.dir/all] Error 2
make: *** [Makefile:166: all] Error 2

"No space left on device" 오류는 파일 시스템이 가득 찼을 때 발생하는 오류이며, 컴파일 시에 필요한 디스크 공간이 부족한 경우에 발생할 수 있습니다.

디스크 공간 확인

df -h | egrep -v tmpfs
$ df -h | egrep -v tmpfs
Filesystem                         Size  Used Avail Use% Mounted on
/dev/mapper/ubuntu--vg-ubuntu--lv   12G   11G     0 100% /
/dev/sda2                          2.0G  127M  1.7G   7% /boot

/(/dev/mapper/ubuntu--vg-ubuntu--lv) 파일 시스템 사용률이 100% ㅠㅠ

디스크 공간 확보를 위한 방법

1. 불필요한 파일 삭제

불필요한 파일을 삭제하여 디스크 공간을 확보합니다.

sudo rm -rf /path/to/unneeded/files

 

2. 파일 시스템 확장

디스크 공간 부족 문제를 해결하기 위해 파일 시스템을 확장해야 할 수도 있습니다. 이 과정은 파일 시스템 종류에 따라 다를 수 있으며, 일반적으로 resize2fs나 lvextend와 같은 도구를 사용하여 수행합니다.

 

3. 임시 디렉토리 변경
빌드 중에 생성되는 임시 파일 및 디렉토리의 위치를 변경하여 디스크 공간을 확보할 수 있습니다. 예를 들어, /tmp 디렉토리가 부족한 경우 다른 디스크 공간을 사용하도록 임시 디렉토리를 설정할 수 있습니다.

 

4. 적절한 디스크 용량 할당

만약 가용한 디스크 공간이 부족하다면, 컴파일이나 빌드를 수행하기 위해 충분한 디스크 공간을 확보해야 합니다. 이를 위해 디스크 용량을 늘리거나 추가 디스크를 마운트하여 사용할 수 있습니다.

export TMPDIR=/path/to/larger/disk

 

5. 다른 프로세스 확인

가끔 다른 프로세스나 서비스가 디스크 공간을 과도하게 사용하는 경우가 있습니다. 시스템에서 어떤 프로세스가 많은 공간을 차지하고 있는지 확인하고 필요한 조치를 취합니다.

 

참고URL

- LVM으로 구성된 ROOT(vg0-lv--0) 파티션 확장 : https://scbyun.com/1334

 

728x90