본문 바로가기
서버 개발 (AWS, Linux, DevOps)/리눅스 (Ubuntu)

리눅스 : 용량 부족할때, 커널 삭제로 용량 확보하기

by 번데기 개발자 2021. 3. 15.
반응형

Linux를 사용하다보면 가끔 용량이 부족할 때가 있습니다.

 

No space left on device (28) ...

 

용량이 없어서 오류가 날때는 보통 위와 같은 에러를 같이 보여줍니다.

 

이럴때 하드디스크나 SSD 볼륨 용량을 확장하거나, 필요없는 파일을 지우는 방법이 있지만 그전에 리눅스의 오래된 커널이 남아있을 수 있기때문에 용량부족의 원인일 수 있기 때문에 한번 확인해보시는 것이 좋습니다.

 

저의경우에 EC2리눅스를 쓰다가 용량이 부족해서 서버로 파일 업로드가 되지 않는 문제가 발생하였습니다. 그런데 해당 서버에는 볼륨의 용량을 다 쓸정도로 큰 파일이 없기 때문에 다른 이유를 찾던 도중 오래된 커널의 용량이 문제라는것을 확인할 수 있었습니다.

 

커널의 용량 확인

보통 커널들을 저장해놓는 경로는 /user/src 경로이며 ls를 이용하여 확인해보면 다음과 같은 파일들이 있는 것을 확인 할 수 있습니다.

 

용량을 확인해보면 아래와 같이 커널이 많은 용량을 차지하고 있는 것을 알 수 있습니다.

 

사용하지 않는 커널 삭제하기


결국 /usr/src 디렉토리에 있는 많은 오래된 커널 파일을 지워줘야합니다.

 

해당 디렉토리에는 'linux-aws-headers...' 와 용량을 많이 차지하고있는 커널 파일들이 있는데 해당 파일들은 대부분 우분투의 커널 파일들 입니다.

 

오래된 커널들은 아래 명령어를 이용하여 사용하고 있지 않는 커널들을 삭제할 수 있습니다.

 

sudo apt autoremove --purge

 

apt autoremove는 사용하지 않는 패키지를 삭제하는 커멘드이고 --purge는 설정파일도 함께 삭제하는 명령어입니다.

 

 

 

커널 삭제시 문제 발생 해결

 

가끔 apt autoremove 명령어 사용시에 아래와 같은 에러가 발생할때가 있습니다.

 

You might want to run ‘apt-get -f install’ to correct these…

 

위와 같은 에러가 발생한다면 위의 메세지대로 'apt-get -f install'을 사용하여 필수 패키지들을 강제로 install 해주시면 됩니다.

 

하지만 해당 패키지를 설치할 용량이 없다면 아래 커멘드로 캐시를 비워서 용량을 확보할 수도 있습니다.

 

sudo apt-get clean

 

반응형