본문 바로가기

서버 인프라, 백엔드/리눅스 (Ubuntu)5

리눅스 : 시스템 로그(journal) 사이즈 줄여서 용량 확보하기 EC2의 용량을 줄이려고 찾아보던 중에, 리눅스의 로그가 차지하는 용량이 대해서 알게 되었고, 리눅스의 시스템에서 발생하는 로그의 용량을 어떻게 줄일 수 있는지 한번 알아보았습니다. 로그 용량 확인하기 기본적으로 리눅스에서는 시스템/서비스를 관리하기 위한 systemd 라는 프로세스 매니저가 동작하는데요, systemd에는 전체 시스템 로깅을 담당하는 systemd journal 이라는 서비스가 돌고 있습니다. 해당 서비스에서는 시스템에서 발생한 로그데이터를 journal 이라는 바이너리 형식으로 저장하게 됩니다. 이러한 시스템에서 발생한 로그파일은 journalctl 명령어 도구를 통해 확인할 수 있습니다. journalctl 만약 journal 파일을 전체 크기를 알아보고 싶으면 아래와 같이 명령어를.. 2024. 1. 14.
리눅스 : Swap 메모리란? EC2를 이용하여 리눅스 Shell에서 개발을 진행하던 중에, 서버의 용량을 확인하다가 Swap 메모리라는 공간을 확인하였습니다. Swap 메모리는 어디서 많이 들어봤는데, 정확한 개념을 알고 싶고, 리눅스 내에서는 어떠한 역할을 하는지 알고 싶어서 한번 정리해보게 되었습니다. Swap 메모리란? 스왑 메모리란, 실제 메모리 Ram이 가득 찼지만 더 많은 메모리가 필요할때 디스크 공간을 이용하여 부족한 메모리를 대체할 수 있는 공간을 의미합니다. 실제 디스크 공간을 메모리처럼 사용하는 개념이기 때문에 가상 메모리라고 할 수 있습니다. 속도면에서는 실제 메모리가 아닌 하드디스크를 이용하는 것이기 때문에 메모리 속도면에서는 현저히 떨어진다고 할 수 있습니다. 리눅스에서의 Swap 메모리 리눅스에서의 Swap.. 2022. 5. 3.
리눅스 : find / du 명령어를 이용하여 큰 용량의 파일 찾기 (용량 부족 시) 리눅스 용량 문제 리눅스를 운용하다 보면 가끔 디스크 공간이 부족하여 DISK I/O (디스크 복사 및 출력)에서 에러가 발생할 때가 많습니다. 저도 EC2에서 적은 용량의 스토리지만 사용하여 Ubuntu를 운용하다가 디스크 공간이 부족하여 파일 복사가 되지 않거나 디렉터리 이동이 되지 않는 문제가 발생했던 적이 종종 있습니다. 이럴 때 가장 좋은 방법은 스토리지의 크기을 늘려주는 방법입니다. EC2를 쓰고 있다면 EC2에 연결된 EBS의 크기를 클릭 몇 번으로 확장할 수가 있지만, 물리 HDD를 쓰고 있을 때는 용량 확장이 까다롭습니다. 또 클라우드를 쓸 때는 비용 절감 문제로 디스크 공간 확보가 어려울 수가 있습니다. 디스크 공간을 확장하기전에 어떤 파일이 용량을 가장 크게 차지하는지, 또는 불필요하.. 2021. 10. 18.
리눅스 : 용량 부족할때, 커널 삭제로 용량 확보하기 Linux를 사용하다보면 가끔 용량이 부족할 때가 있습니다. No space left on device (28) ... 용량이 없어서 오류가 날때는 보통 위와 같은 에러를 같이 보여줍니다. 이럴때 하드디스크나 SSD 볼륨 용량을 확장하거나, 필요없는 파일을 지우는 방법이 있지만 그전에 리눅스의 오래된 커널이 남아있을 수 있기때문에 용량부족의 원인일 수 있기 때문에 한번 확인해보시는 것이 좋습니다. 저의경우에 EC2리눅스를 쓰다가 용량이 부족해서 서버로 파일 업로드가 되지 않는 문제가 발생하였습니다. 그런데 해당 서버에는 볼륨의 용량을 다 쓸정도로 큰 파일이 없기 때문에 다른 이유를 찾던 도중 오래된 커널의 용량이 문제라는것을 확인할 수 있었습니다. 커널의 용량 확인 보통 커널들을 저장해놓는 경로는 /us.. 2021. 3. 15.
리눅스 : 메모리 확인 / 캐시 삭제 리눅스의 캐시와 메모리 리눅스에서 free 명령어를 사용하다 보면 buffer/cache라는 것이 존재합니다. 이 부분은 직접 사용하고 있는 메모리가 아닌 버퍼와 캐시에 사용된 메모리를 말합니다. 버퍼와 캐시에 저장된 메모리 말고 Swap 메모리도 있는데 해당 메모리는 메모리의 사용량이 늘어남에 따라서 디스크의 일부를 Ram처럼 사용할 수 있게 해주는 영영을 의미합니다. (커널에서 실제 메모리에 올라와 있지 않는 블록중 쓰이지 않는 것을 디스크에 저장하여 사용 가능한 메모리 영역을 늘림) 여기서는 버퍼와, 캐시에 사용된 메모리를 해제하는 법에 대해 알아보겠습니다. 버퍼와 캐시에 사용된 메모리를 지워줘야 하는 이유 일반적으로 캐시는 느린 장치의 데이터를 빠른 장치에 임시로 보관해두고 사용하여 성능을 올리는.. 2021. 2. 21.