<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>로그정리 보관 - 하우인포-IT·테크</title>
	<atom:link href="https://howinfo.kr/tag/%eb%a1%9c%ea%b7%b8%ec%a0%95%eb%a6%ac/feed/" rel="self" type="application/rss+xml" />
	<link>https://howinfo.kr/tag/로그정리/</link>
	<description>IT·AI 자동화 &#38; 인프라 전문 블로그 (하우인포)</description>
	<lastBuildDate>Sat, 21 Feb 2026 02:00:10 +0000</lastBuildDate>
	<language>ko-KR</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=6.9.4</generator>

<image>
	<url>https://howinfo.kr/wp-content/uploads/2026/02/cropped-ChatGPT-Image-2026년-2월-12일-오후-05_39_40-32x32.png</url>
	<title>로그정리 보관 - 하우인포-IT·테크</title>
	<link>https://howinfo.kr/tag/로그정리/</link>
	<width>32</width>
	<height>32</height>
</image> 
	<item>
		<title>서버 “용량 부족” 알림 + 자동 정리까지 한 번에 구축하기</title>
		<link>https://howinfo.kr/%eb%94%94%ec%8a%a4%ed%81%ac-%ec%9a%a9%eb%9f%89-%ec%9e%90%eb%8f%99-%ec%a0%95%eb%a6%ac-%ec%8a%a4%ed%81%ac%eb%a6%bd%ed%8a%b8-%eb%a7%8c%eb%93%a4%ea%b8%b0/</link>
					<comments>https://howinfo.kr/%eb%94%94%ec%8a%a4%ed%81%ac-%ec%9a%a9%eb%9f%89-%ec%9e%90%eb%8f%99-%ec%a0%95%eb%a6%ac-%ec%8a%a4%ed%81%ac%eb%a6%bd%ed%8a%b8-%eb%a7%8c%eb%93%a4%ea%b8%b0/#respond</comments>
		
		<dc:creator><![CDATA[hong]]></dc:creator>
		<pubDate>Sun, 15 Feb 2026 16:17:44 +0000</pubDate>
				<category><![CDATA[서버·인프라]]></category>
		<category><![CDATA[crontab 자동화]]></category>
		<category><![CDATA[it자동화]]></category>
		<category><![CDATA[nas운영]]></category>
		<category><![CDATA[디스크용량부족]]></category>
		<category><![CDATA[로그정리]]></category>
		<category><![CDATA[리눅스자동정리]]></category>
		<category><![CDATA[서버운영]]></category>
		<guid isPermaLink="false">https://howinfo.kr/?p=1697</guid>

					<description><![CDATA[<p>0️⃣ 상단 요약 5줄 1️⃣ 문제 상황 (실제 운영에서 가장 흔한 케이스) 디스크가 100% 가까워지면 이런 일이 벌어집니다. 특히 무서운...</p>
<p>게시물 <a href="https://howinfo.kr/%eb%94%94%ec%8a%a4%ed%81%ac-%ec%9a%a9%eb%9f%89-%ec%9e%90%eb%8f%99-%ec%a0%95%eb%a6%ac-%ec%8a%a4%ed%81%ac%eb%a6%bd%ed%8a%b8-%eb%a7%8c%eb%93%a4%ea%b8%b0/">서버 “용량 부족” 알림 + 자동 정리까지 한 번에 구축하기</a>이 <a href="https://howinfo.kr">하우인포-IT·테크</a>에 처음 등장했습니다.</p>
]]></description>
										<content:encoded><![CDATA[
<h2 class="wp-block-heading">0️⃣ 상단 요약 5줄</h2>



<ul class="wp-block-list">
<li>서버 장애의 은근한 1순위는 디스크 용량 부족입니다.</li>



<li>로그, 캐시, 오래된 백업, Docker 잔여 데이터가 단골 원인입니다.</li>



<li>임계치 초과 시 자동 정리 + 로그 기록 구조가 안전합니다.</li>



<li>삭제 전/후 용량 비교를 반드시 남겨야 합니다.</li>



<li>필요하면 시놀로지 챗/슬랙 알림까지 확장 가능합니다.</li>
</ul>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<h2 class="wp-block-heading">1️⃣ 문제 상황 (실제 운영에서 가장 흔한 케이스)</h2>



<p>디스크가 100% 가까워지면 이런 일이 벌어집니다.</p>



<ul class="wp-block-list">
<li>워드프레스 업로드 실패</li>



<li>DB 쓰기 오류 → 서비스 중단</li>



<li>로그 기록 중단 → 원인 추적 불가</li>



<li>Docker 컨테이너 갑자기 종료</li>



<li>MySQL InnoDB write error</li>
</ul>



<p>특히 무서운 건:</p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow">
<p>디스크 95% → 느려짐<br>100% → 바로 장애</p>
</blockquote>



<p>CPU 문제보다 더 갑작스럽습니다.</p>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<h2 class="wp-block-heading">2️⃣ 내 환경 (예시)</h2>



<ul class="wp-block-list">
<li>Ubuntu 22.04</li>



<li>Docker 사용</li>



<li>워드프레스 + MariaDB</li>



<li>/ 파티션 단일 구조</li>



<li>정기 백업 폴더 존재</li>
</ul>



<p>※ 파티션이 분리되어 있으면 TARGET_MOUNT를 조정해야 합니다.</p>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<h2 class="wp-block-heading">3️⃣ 1차 가설</h2>



<p>느려질 때 CPU를 의심하지만,<br>top을 보면 CPU는 널널하고 wa(iowait)가 증가하는 경우가 많습니다.</p>



<p>확인 루틴:</p>



<pre class="wp-block-preformatted">df -h</pre>



<p>90% 이상이면 거의 확실히 원인 후보입니다.</p>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<h2 class="wp-block-heading">4️⃣ 자동 정리 전략 (안전하게)</h2>



<p>❌ 무조건 삭제<br>❌ rm -rf 기반 강제 정리</p>



<p>실무에서 안전한 방식은 다음과 같습니다.</p>



<ol class="wp-block-list">
<li>디스크 사용량 확인</li>



<li>임계치(예: 80%) 초과 시에만 실행</li>



<li>삭제 목록 로그 기록</li>



<li>정리 후 사용량 재확인</li>



<li>로그 파일 유지</li>
</ol>



<p>핵심은:</p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow">
<p>“정리했더니 얼마나 줄었는지” 기록하는 것</p>
</blockquote>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<h2 class="wp-block-heading">5️⃣ 자동 정리 스크립트</h2>



<p>파일 생성:</p>



<pre class="wp-block-preformatted">sudo nano /usr/local/bin/disk_cleanup.sh</pre>



<p>아래 내용 붙여넣기:</p>



<pre class="wp-block-preformatted">#!/bin/bash<br>set -eTARGET_MOUNT="/"<br>THRESHOLD=80LOG_DIR="/var/log/howinfo"<br>LOG_FILE="${LOG_DIR}/disk_cleanup.log"DAYS_LOG=14<br>DAYS_TMP=7<br>DAYS_BACKUP=30BACKUP_DIR="/backup/daily"mkdir -p "$LOG_DIR"log() {<br>  echo "[$(date '+%Y-%m-%d %H:%M:%S')] $1" | tee -a "$LOG_FILE"<br>}usage_percent() {<br>  df -P "$TARGET_MOUNT" | awk 'NR==2 {gsub("%","",$5); print $5}'<br>}log "=== 디스크 정리 시작 ==="<br>BEFORE=$(usage_percent)<br>log "정리 전 사용량: ${BEFORE}% (기준: ${THRESHOLD}%)"if [ "$BEFORE" -lt "$THRESHOLD" ]; then<br>  log "임계치 미만 → 정리하지 않음"<br>  log "=== 종료 ==="<br>  exit 0<br>filog "임계치 초과 → 정리 실행"if command -v apt-get &gt;/dev/null 2&gt;&amp;1; then<br>  apt-get -y autoclean || true<br>  apt-get -y clean || true<br>fiif command -v journalctl &gt;/dev/null 2&gt;&amp;1; then<br>  journalctl --vacuum-time=7d || true<br>fifind /var/log -type f -name "*.gz" -mtime +"$DAYS_LOG" -print -delete | tee -a "$LOG_FILE" || true<br>find /tmp -type f -mtime +"$DAYS_TMP" -print -delete | tee -a "$LOG_FILE" || trueif command -v docker &gt;/dev/null 2&gt;&amp;1; then<br>  docker system prune -f || true<br>  docker volume prune -f || true<br>fiif [ -d "$BACKUP_DIR" ]; then<br>  find "$BACKUP_DIR" -type f -mtime +"$DAYS_BACKUP" -print -delete | tee -a "$LOG_FILE" || true<br>fiAFTER=$(usage_percent)<br>log "정리 후 사용량: ${AFTER}%"<br>log "=== 디스크 정리 완료 ==="</pre>



<p>권한 부여:</p>



<pre class="wp-block-preformatted">sudo chmod +x /usr/local/bin/disk_cleanup.sh</pre>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<h2 class="wp-block-heading">6️⃣ 수동 테스트 (반드시 먼저)</h2>



<pre class="wp-block-preformatted">sudo /usr/local/bin/disk_cleanup.sh</pre>



<p>로그 확인:</p>



<pre class="wp-block-preformatted">tail -n 50 /var/log/howinfo/disk_cleanup.log</pre>



<p>삭제 내역과 전/후 % 확인이 핵심입니다.</p>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<h2 class="wp-block-heading">7️⃣ 자동 실행 (crontab)</h2>



<pre class="wp-block-preformatted">sudo crontab -e</pre>



<p>추가:</p>



<pre class="wp-block-preformatted">0 3 * * * /usr/local/bin/disk_cleanup.sh</pre>



<p>→ 매일 새벽 3시 검사</p>



<p>임계치 미만이면 아무 작업도 하지 않습니다.</p>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<h2 class="wp-block-heading">8️⃣ 더 안전하게 쓰는 방법</h2>



<h3 class="wp-block-heading">1️⃣ 드라이런 모드</h3>



<p>삭제 대신 목록만 보기:</p>



<pre class="wp-block-preformatted">find /var/log -type f -name "*.gz" -mtime +14 -print</pre>



<h3 class="wp-block-heading">2️⃣ 임계치 조정</h3>



<pre class="wp-block-preformatted">THRESHOLD=90</pre>



<p>너무 자주 돌면 올려도 됩니다.</p>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<h2 class="wp-block-heading">9️⃣ 재발 방지 구조 (진짜 중요)</h2>



<p>자동 정리만으로 끝나면 안 됩니다.</p>



<p>✔ 디스크 80% 이상 알림 설정<br>✔ Docker 로그 max-size 설정<br>✔ 백업 보관 정책 명확화<br>✔ 업로드 디렉토리 주기 점검<br>✔ DB 용량 성장 추적</p>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<h2 class="wp-block-heading">🔟 장애 사례에서 배운 교훈</h2>



<ul class="wp-block-list">
<li>디스크는 95%부터 체감 저하 시작</li>



<li>100% 되면 장애가 아니라 “즉시 중단”</li>



<li>자동 정리는 “응급조치”</li>



<li>근본 원인은 로그 폭증/백업 정책 부재</li>
</ul>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<h2 class="wp-block-heading">체크리스트</h2>



<ul class="wp-block-list">
<li>수동 실행 테스트 완료</li>



<li>로그 생성 확인</li>



<li>임계치 설정 확인</li>



<li>crontab 등록 완료</li>



<li>다음날 자동 실행 로그 확인</li>
</ul>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<h2 class="wp-block-heading">확장 (선택)</h2>



<p>원하면 아래도 추가 가능합니다.</p>



<ul class="wp-block-list">
<li>사용량 85% 이상 시 시놀로지 챗 알림</li>



<li>Slack Webhook 연동</li>



<li>n8n으로 모니터링 + 자동 조치</li>



<li>특정 파티션 개별 감시</li>
</ul>



<p></p>
<p>게시물 <a href="https://howinfo.kr/%eb%94%94%ec%8a%a4%ed%81%ac-%ec%9a%a9%eb%9f%89-%ec%9e%90%eb%8f%99-%ec%a0%95%eb%a6%ac-%ec%8a%a4%ed%81%ac%eb%a6%bd%ed%8a%b8-%eb%a7%8c%eb%93%a4%ea%b8%b0/">서버 “용량 부족” 알림 + 자동 정리까지 한 번에 구축하기</a>이 <a href="https://howinfo.kr">하우인포-IT·테크</a>에 처음 등장했습니다.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://howinfo.kr/%eb%94%94%ec%8a%a4%ed%81%ac-%ec%9a%a9%eb%9f%89-%ec%9e%90%eb%8f%99-%ec%a0%95%eb%a6%ac-%ec%8a%a4%ed%81%ac%eb%a6%bd%ed%8a%b8-%eb%a7%8c%eb%93%a4%ea%b8%b0/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
	</channel>
</rss>
