마운트를 무시하고 디스크 사용량 분석


67

우분투는 루트 파일 시스템이 거의 가득 차 있다고 불평하지만 baobab"디스크 사용 분석기"(일명 "디스크 사용 분석기")를 사용하거나 du -h마운트 된 다른 모든 파일 시스템의 사용법을 요약합니다.

여러 하위 디렉토리에 마운트 된 다른 파일 시스템을 어떻게 제외시킬 수 있습니까?

답변:


72

baobab : baobab 을 사용하려면 루트 파일 시스템을 다른 곳에 마운트하고 분석하여 가능합니다. 이런 식으로 다른 파일 시스템은 새로운 루트 마운트에 마운트 /되지 않으며 마운트 아래에 숨겨진 파일 은 모두 분석되어 계산됩니다.

루트 파일 시스템이 켜져 있다고 가정합니다 sda1( df어떤 장치인지 알려줍니다).

mkdir root-rebound
sudo mount /dev/sda1 root-rebound
baobab root-rebound

그런 다음 완료되면 정리하십시오.

sudo umount root-rebound
rmdir root-rebound

또는 파일 시스템을 수동으로 마운트 해제 할 수 있습니다. 홈 폴더 만 검사 할 수 있습니다. 대부분의 디스크 공간 사용량 소스가 포함되어 있기 때문입니다.

du 에는 다른 파일 시스템을 계산하지 못하게하는 두 가지 옵션이 있습니다.

 -x, --one-file-system
         skip directories on different file systems
     --exclude=PATTERN
         exclude files that match PATTERN

그러므로,

du -hx

마운트 된 다른 모든 파일 시스템을 무시하거나

du -h --exclude /media

/media대부분의 파일 시스템이 마운트 된 모든 파일을 무시합니다 .

을 사용하는 경우 du목록 맨 아래에 가장 큰 항목이 표시되도록 정렬하면 출력을 해독 할 수 있습니다. 예 :

du -hx | sort -h

2
쿨, 나는 -x 옵션을 보지 못했다. 또 다른 방법을 찾았습니다. 파일 시스템을 다시 어딘가에 마운트 한 다음 du 또는 baobab을 사용하여 파일 시스템을 분석 할 수 있습니다. 또한 du -hx | sort -h바오밥 나무가 해석하기 쉽지만 , 나는 그것이 유용하다는 것을 알았습니다 .
drevicko

@ Cumulos007-당신과 함께 멋진 경우, 나는 당신의 답변에 내 솔루션과 제안을 추가하고 받아 들일 것입니다
drevicko

나 괜찮아!
Cumulus007

1
@wim 아니오, GUI 버전은 du의 -x 옵션을 사용할 수없는 것 같습니다. 다른 곳에서 루트 파일 시스템을 마운트하면 작동하지만, 요즘 내가하는 일입니다.
drevicko

1
du -kx | sort -n내 길은
Alejandro Teixeira Muñoz

6

파일 시스템 유형에 따라 아래의 마운트 지점에 루트 파일 시스템을 마운트하지 못할 수 있습니다 /. 다음과 비슷한 것을 얻을 수 있습니다.

mount: /dev/sda1 already mounted or /mnt busy
mount: according to mtab, /dev/sda1 is mounted on /

읽기 전용 ( -o ro)을 마운트 하면 도움이 될 수 있습니다. 실패하면 바인드 마운트를 사용하십시오.

mount --bind / /mnt

일단 마운트되면 디스크 사용량을 분석하는 도구를 사용하십시오. 즉 du -sh * | sort -h


3

버그 보고서는 디렉토리를 무시하도록 baobab을 구성하는 방법을 설명합니다. 불행히도 앱 자체에서 할 수는 없지만 사용 dconf-editor하고 열어야 org.gnome.baobab.preferences합니다. 여기에 아이템이 있습니다 excluded-uris. 이것을 ['file:///path/to/ignore'](작은 따옴표로 처리)로 변경하십시오.


이것은 실제로 질문에 대한 답은 아니지만 유용한 정보이며, 그러한 정보를 찾는 누군가가 여기에 올 수 있으므로
투표를

루트 파티션을 다시 마운트하지 않고 baobab에서 마운트를 무시하는 방법 (마운트 포인트 제외)에 대한 질문에 답합니다. 질문의 나머지 절반 (du)은 이미 승인 된 게시물에 답변되어 있습니다.
geira

2

Baobab 은 스캔 한 장치 / 파티션을 제어하려고합니다 Edit->Preferences. 일반적으로 Mount Point에서만 장치를 검색하려고합니다 /. 그러나 모든 유형의 링크 / 마운트 / 바인딩을 인식하지는 못 하므로 Baobab은 사소한 구성이 아닌 경우에도 여전히 혼란스러운 결과를 낳을 수 있습니다.


들어 du, 불린 다음 쉘 함수 dutop지정한 폴더의 최상위를 표시 (또는 현재 폴더). 이를 통해 한 번에 하나의 하위 폴더를 검사 할 수 있습니다.

function dutop() { du --max-depth=1 --one-file-system -h $@ |sort -h; }

에 적용하면 결과에 따라 "허가 거부 됨"오류가 발생 /하지만 다음과 같은 오류를 해결할 수 있습니다 (최근에 비밀번호를 제공하지 않은 경우).

function sudutop() { sudo du --max-depth=1 --one-file-system -h $@ |sort -h; }

큰 폴더의 경우 시간이 오래 걸릴 수 있습니다. 정렬 작업이 모든 중간 결과를 버퍼링하므로 증분 상태를보고하지 않습니다. 기다리는 데 지친다면 Ctrl-C로 중단하는 것이 좋습니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.