[Synology, Linux] 시놀로지, 리눅스에서 용량을 차지하는 폴더 확인하기

시놀로지의 경우 리눅스 기반이지만, 실 사용자들은 리눅스에 익숙하지 않은 분들이 더 많습니다.

알 수 없는 사용량..

커뮤니티에서 퍼왔습니다(…)

시놀로지의 사용량 세부 정보를 보면, 뭔지 잘 모르는 파일이 있는 경우가 있죠.

공식 문서는 아래와 같이 말합니다.

시놀로지 공식 문서에 따르면..

  1. 버전 관리 수 감소 또는 버전 제어 비활성화
  2. 휴지통 비우기
  3. 자주 엑세스하지 않는 파일 또는 폴더 삭제 또는 비활성화
  4. 공유 폴더를 저장소 공간이 더 많은 볼륨으로 이동
  5. Synology Drive Server 제거

입니다. 이중 1과 5는 비슷한 내용인데, Synology Drive의 경우 버저닝 기능이 있으므로 파일을 삭제하였더라도 이전 파일이 있을 수 있습니다.

그런데.. 이거 다 해도 안보일 때가 있곤 합니다 ㅡ.ㅡ;;;
직접 찾아보자구요.

du 명령을 사용합니다.

시놀로지 SSH 접속을 하시고, 원하는 볼륨에 아래 명령을 입력합니다.

sudo du -h --max-depth=1 /volume1 | sort -hr

/volume1 부분을 원하는 경로로 지정하면 됩니다.

du 의 주요 옵션은 아래와 같습니다.

  • -a 전체 파일 크기 출력
  • -h 파일 크기를 사람이 보기 편하게 출력(MB, GB 등)
  • -s 디렉토리의 전체 사용량만 표시
  • --max-depth-N N번째 하위디렉토리까지 표시
  • --apparent-size 실제 파일의 용량 표시
  • -b 바이트 단위 실제 용량 표시

위 명령은 /volume1의 첫번째 디렉토리들의 용량을 큰 순서대로 표시합니다.

일부만 보고싶은 경우 명령 맨 뒤에 | head -N 을 넣고 N 위치에 원하는 숫자를 넣어주세요.

큰 순서대로 나옵니다.

최상위의 61T 부분은 스냅샷 용량으로 보입니다. 실제 용량이 61T나 될 수가 없어요 ㄷㄷ
시놀로지에서 @가 붙은 폴더는 시스템 폴더입니다. 함부로 지우면 문제가 생길 수 있습니다.

그러면.. @가 들어간 폴더를 빼면 되겠죠?
아래와 같이 작성합니다.
grep -v는 해당 문자가 들어간 열을 빼고 출력해줍니다.

sudo du -h --max-depth=1 /volume1 | grep -v '@'| sort -hr | head -5

volume1의 첫번째 하위폴더까지 용량을 표시하되, @가 들어간 열은 빼고 용량 내림차순으로 정렬하여 상위 5개를 출력하라는 명령입니다.
grep의 위치가 중요한데, 앞에서부터 실행하므로 grep가 뒤로 가게 되면 @를 제거하기 전에 상위 5개 중 @가 제거된 부분을 표시합니다.

grep 위치에 따른 결과

이 나스의 경우 시스템 백업 폴더(누군가 날려먹음을 대비하기 위한 폴더)를 제거하면 200GB 정도의 용량 확보가 가능하겠습니다.

{{#is "post"}} {{/is}}