명령줄에서 전체 하드 드라이브(모든 파티션)의 디스크 사용량/활용률 찾기/확인

명령줄에서 전체 하드 드라이브(모든 파티션)의 디스크 사용량/활용률 찾기/확인

전체 하드 디스크(드라이브)의 여유 공간, 사용 공간, 공간 활용률을 알려줄 수 있는 명령을 찾고 있었습니다. 불행히도 온라인에서 찾을 수 있는 대부분의 답변은 다음과 같습니다.분할, 아니요운전사.

(관련이 있는지는 확실하지 않지만 Ubuntu를 사용하고 있으며 14.04 및 18.04에서 이 명령을 사용해야 합니다.)

문제는 이것이다:

1) df -h전체 드라이브가 아닌 파티션에 대한 정보만 제공하고 메모리 내 파일 시스템을 포함합니다. tmpfs예를 들어 다음과 같습니다.

$ df -h
Filesystem      Size  Used Avail Use% Mounted on
udev            3.9G     0  3.9G   0% /dev
tmpfs           788M  2.2M  786M   1% /run
/dev/sdb6        59G   53G  3.3G  95% /
tmpfs           3.9G  183M  3.7G   5% /dev/shm
tmpfs           5.0M  8.0K  5.0M   1% /run/lock
tmpfs           3.9G     0  3.9G   0% /sys/fs/cgroup
/dev/loop0      112M  112M     0 100% /snap/dotnet-sdk/63
...
tmpfs           788M   20K  788M   1% /run/user/121
tmpfs           788M   64K  788M   1% /run/user/1000
/dev/sda1       230G  217G  1.4G 100% /media/testpart1
/dev/sda2       230G  150G   69G  69% /media/testpart2

재미삼아 for를 명시적 /dev/sda으로 지정해 보았지만 df작동하지 않습니다.

$ df -h /dev/sda
Filesystem      Size  Used Avail Use% Mounted on
udev            3.9G     0  3.9G   0% /dev

...설치 크기를 알려주기 때문입니다 udev.

2) du -hs /디렉토리에서 작동합니다. 따라서 USB 드라이브나 아래에 설치했을 수 있는 다른 드라이브도 포함됩니다./media

3) lsblk디스크 및 해당 파티션을 나열하지만 사용된 공간이나 백분율이 아닌 사용 가능한 총 크기/공간만 나열합니다(tmpfs 등도 포함되지만 매개변수에서 디스크의 장치 노드를 대상으로 지정하여 억제할 수 있음).

$ lsblk /dev/sda
NAME   MAJ:MIN RM   SIZE RO TYPE MOUNTPOINT
sda      8:0    0 465.8G  0 disk 
├─sda1   8:1    0 232.9G  0 part /media/testpart1
└─sda2   8:2    0 232.9G  0 part /media/testpart2

그래서 제 질문은 - 단일 하드 드라이브의 전체 여유 크기/공간, 사용된 크기/공간(MB, GB 등 사람이 읽을 수 있는 단위) 및 사용/사용률 %(사용 포함)를 찾는 방법입니다. ) 단일 Linux 명령줄을 사용하여 - tmpfs 또는 기타 장착 시스템(예: USB 썸 드라이브)의 간섭 없이?

관련 정보