bashrc profile env 차이를 모를 때 생기는 환경변수 오류

리눅스에서 개발을 하다 보면 분명히 PATH를 추가했는데 어떤 터미널에서는 잘 되고, cron이나 서비스에서는 명령을 못 찾는 경우가 자주 발생한다. 같은 서버인데 쉘에 따라, 접속 방식에 따라, 심지어 편집한 파일에 따라 동작이 달라져서 헷갈리기 쉽다. 이 문제의 출발점은 bashrc, profile, env 파일의 역할이 서로 다르다는 점을 정확히 이해하지 못한 데에 있다. 겉으로 보기에는 모두 환경변수를 설정하는 … Read more

crontab에서 실행은 되는데 로그가 안 남는 이유와 해결법

crontab으로 작업이 실행되는 것은 확인했는데 정작 로그 파일이 비어 있거나 생성조차 되지 않는 상황이 자주 나온다. 이 글에서는 크론 환경과 일반 쉘 환경의 차이, 리다이렉션 작성 실수, 권한과 경로 문제, 메일 로그까지 한 번에 정리해 왜 로그가 남지 않는지와 이를 해결하는 실전 방법을 단계별로 살펴본다

Linux 서버에서 자동으로 HTTPS 인증서 갱신 안 될 때 해결하는 방법

리눅스 서버에서 HTTPS 인증서가 자동으로 갱신되지 않으면 갑자기 사이트가 접속 불가가 되거나 브라우저 경고가 뜬다. 이 글에서는 certbot과 시스템 타이머, 포트와 권한 문제를 단계별로 점검해 자동 갱신이 왜 멈췄는지 찾고 다시 정상 상태로 돌리는 방법을 정리한다

ps aux grep 대신 pgrep pidof로 프로세스 더 정확히 찾는 법

ps aux grep 조합은 리눅스에서 프로세스를 찾을 때 가장 먼저 떠오르는 명령이지만 오탐이 많고 실수도 자주 나온다. 이 글에서는 pgrep과 pidof를 활용해 더 정확하게 프로세스를 찾는 방법과 옵션 활용법, 스크립트에서 안전하게 쓰는 패턴까지 단계별로 정리한다

logrotate 설정 오류로 100GB 로그가 생겼을 때 복구 경험 정리

logrotate 설정이 잘못돼서 애플리케이션 로그가 100GB까지 커졌을 때 어떻게 서버를 살렸는지와 함께, 비슷한 상황에서 디스크를 안전하게 비우고 logrotate를 다시 설계하는 전체 과정을 정리한다. 문제 인지부터 원인 분석과 복구, 재발 방지까지 차근차근 살펴본다.