Я ищу инструмент, который просканирует мой сервер без графического интерфейса пользователя и создаст простой для восприятия приблизительный обзор всех блочных устройств и их взаимосвязей (разделы диска, устройства mdadm, LVM PV и LV и т. Д.) В каком-то богатом визуальном формате ( html, pdf, svg, png ...).
Вот простой пример визуализации:
+--------+---------------------+ +-------------------+
| sda1 | | | sdc1 |
+--------+---------------------+ +-------------------+
+ + +
+--------+---------------------+ +-------------------+
| sdb1 | | | sdd1 |
+--------+---------------------+ +-------------------+
| | |
v v v
+---+---+ +---------+----------+ +--------+----------+
| md0 | | md1 | | md2 |
+-------+ +---------+----------+ +--------+----------+
| /boot | \ /
ext4 \ /
\ /
+
|
v
+------------------------------------------+
| vgmain |
+------+-----------------+-----------------+
|/root | /home | /var |
ext4 btrfs ext4
Мне не нужны подробности (я могу получить это с помощью таких инструментов CLI, как lsbls
, fdisk
, mdadm
, pvdisplay
, lvdisplay
, df
)
Ваш лучший друг здесь простой lsblk
команда. Это даст вам результат, подобный этому:
[root@somehost ~]# lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
vda 252:0 0 7.8G 0 disk
├─vda1 252:1 0 6.9G 0 part /
└─vda2 252:2 0 999M 0 part [SWAP]
Для получения дополнительной информации прочтите его отличная страница руководства
Возможно, вы уже использовали его, но du
команда может использоваться с --max-depth=1
параметр, чтобы понять, как используемое пространство распределяется в дереве файловой системы, например:
root@server:/# du --max-depth=1 -h .|sort -h
0 ./dev
0 ./proc
0 ./sys
4.0K ./boot
4.0K ./lib64
4.0K ./media
4.0K ./srv
28K ./tmp
5.0M ./etc
5.1M ./sbin
9.9M ./bin
30M ./home
33M ./run
44M ./lib
1.2G ./var
1.4G ./opt
2.1G ./usr
3.9G ./root
8.6G .
Таким образом вы можете визуально распознать, где находится большая часть данных, перейти в этот каталог и рекурсивно повторно использовать du
команда, чтобы найти, где вы можете освободить некоторые данные.