Я просматриваю различные утилиты *fdisk и *parted, а также несколько других. Я ищу утилиту (или набор утилит), которая выведет список размеров в байтах всех дисков и разделов на машине. Бонусные баллы за любую дополнительную информацию о диске или разделе, такую как марка/модель/метка/файловая система. Она также должна сообщать размер дисков без установленной таблицы разделов
- простой fdisk
- ✗ Нет поддержки таблицы разделов GUID
- ✗ Не в байтах, нет флагов, позволяющих это сделать
- sfdisk
- ✗ Нет поддержки таблицы разделов GUID
- ✓ Флаг поддержки Мегабайт (закрыть)
- расстались
- ✓ Поддерживает GPT
- ! Возможность управления устройством работает только на одном диске одновременно
- ✗ Округляет до максимально возможной единицы
- лшв
- ✗ Не показывает информацию о разделах
- ✗ Округление до наибольшей единицы
- ✗ Нет возможности управлять блоками
- pvdisplay / pvs
- ✗ Работает только на дисках, входящих в массив LVM2
- ✗ Не отображает информацию о диске, если раздел — это том, используемый в массиве
- ✓ Имеет флаги для установки единиц измерения в байты
решение1
parted
имеет команду для управления используемыми блоками, и она называется ... unit
:
$ sudo parted /dev/sda unit B p
Model: ATA ST500DM002-1BD14 (scsi)
Disk /dev/sda: 500107862016B
Sector size (logical/physical): 512B/4096B
Partition Table: msdos
Number Start End Size Type File system
lags
1 1048576B 105906175B 104857600B primary ntfs
oot
2 105906176B 62914559999B 62808653824B primary ntfs
3 62914560000B 95126814719B 32212254720B primary ext4
4 95127862272B 500107837439B 404979975168B extended
5 95127863296B 127340118015B 32212254720B logical btrfs
От man parted
:
единица единица Наборединицакак единица измерения, используемая при отображении местоположений и размеров, а также для интерпретации данных пользователем, когда не имеет суффикса, указывающего на определенную единицу. единицаможет быть одним из "s" (сектора), "B" (байты), "kB", "MB", "GB", "TB", "%" (процент от размера устройства), "cyl" (цилиндры), "chs" (цилиндры, головки, сектора) или «компактные» (мегабайты для входные данные и удобная для человека форма для выходных данных).
parted
, хотя и является прекрасным инструментом для изменения чего-либо, несколько несовершенен, когда дело касается представления. lsblk
гораздо лучше в этом отношении, он показывает взаимосвязь между дисками, разделами и конструкциями на дисках (например, томами RAID или LVM).
По умолчанию он не отображает метки и выводит большую часть данных без необходимости sudo
; однако метки требуют sudo
. Чтобы отобразить информацию о диске в байтах, можно использовать опцию -b
:
sudo lsblk -ba -o NAME,TYPE,LABEL,SIZE,MOUNTPOINT