CPU·메모리 누수 판별 · I/O 와 그 밖 · 퀴즈
I/O 확인
문항 6개. 정답과 해설은 풀어 본 뒤에 보여 드립니다.
`df -h` 는 100% 인데 `du -sh` 합계는 훨씬 작다. 가장 유력한 원인은?
- 지워졌지만 프로세스가 아직 열고 있는 파일
- 파일시스템이 손상됐다
- 스왑이 디스크를 먹고 있다
- 하드링크가 중복 계산됐다
용량은 남았는데 파일을 만들 수 없다. 확인할 명령은?
- df -h
- df -i
- du -sh
- lsblk
파일 디스크립터 누수의 올바른 대처는?
- ulimit -n 을 올린다
- 닫지 않는 코드를 찾아 고친다
- 프로세스를 주기적으로 재시작한다
- swap 을 늘린다
logrotate 의 `copytruncate` 가 갖는 대가는?
- 디스크 용량을 두 배로 쓴다
- 프로세스가 반드시 재시작된다
- 압축을 쓸 수 없다
- 복사와 자르기 사이에 쓴 로그가 유실될 수 있다
파일 디스크립터 한도를 올려 `Too many open files` 를 넘긴 뒤에 해야 할 일은?
- 한도를 올렸으니 더 볼 것은 없다
- 프로세스를 매일 한 번씩 재시작하도록 예약한다
- 열린 개수가 시간에 따라 계속 느는지 보고 닫지 않는 코드를 찾는다
- 커널 파라미터를 기본값으로 되돌린다
logrotate 의 `create` 를 쓸 때 데몬에 SIGHUP 을 보내야 하는 이유는?
- 이름만 바뀐 옛 파일을 계속 붙잡고 있어 새 파일에 쓰지 않는다
- 새로 만든 파일의 권한이 잘못 설정되기 때문이다
- 압축이 끝날 때까지 기다려야 하기 때문이다
- 로테이션이 inode 를 하나 더 쓰기 때문이다