У меня установлен сервер Ubuntu 12.04 без графического интерфейса. Я хотел бы перечислить мой жесткий диск и его разделы, а также размер каждого раздела с помощью командной строки.
Вот несколько путей:
, Если у Вас есть таблица разделов MBR:
terdon@oregano ~ $ sudo fdisk -l
Disk /dev/sda: 500.1 GB, 500107862016 bytes
255 heads, 63 sectors/track, 60801 cylinders, total 976773168 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x4b66b5d5
Device Boot Start End Blocks Id System
/dev/sda1 63 80324 40131 de Dell Utility
/dev/sda2 * 81920 30801919 15360000 7 HPFS/NTFS/exFAT
/dev/sda3 30801920 194643539 81920810 7 HPFS/NTFS/exFAT
/dev/sda4 194643601 976773119 391064759+ f W95 Ext'd (LBA)
/dev/sda5 194643603 198836504 2096451 c W95 FAT32 (LBA)
/dev/sda6 342951936 960387071 308717568 83 Linux
/dev/sda7 198840320 342949887 72054784 83 Linux
/dev/sda8 960389120 976773119 8192000 82 Linux swap / Solaris
или sudo sfdidk-l
Они не дают особенно человекочитаемый вывод все же. Следующий выбор лучше.
И для GPT и для таблиц разделов MBR:
terdon@oregano ~ $ sudo parted -l
Model: ATA ST9500420AS (scsi)
Disk /dev/sda: 500GB
Sector size (logical/physical): 512B/512B
Partition Table: msdos
Number Start End Size Type File system Flags
1 32.3kB 41.1MB 41.1MB primary fat16 diag
2 41.9MB 15.8GB 15.7GB primary ntfs boot
3 15.8GB 99.7GB 83.9GB primary ntfs
4 99.7GB 500GB 400GB extended lba
5 99.7GB 102GB 2147MB logical fat32 lba
7 102GB 176GB 73.8GB logical ext4
6 176GB 492GB 316GB logical ext4
8 492GB 500GB 8389MB logical linux-swap(v1)
Model: ST950032 5AS (scsi)
Disk /dev/sdb: 500GB
Sector size (logical/physical): 512B/512B
Partition Table: msdos
Number Start End Size Type File system Flags
1 32.3kB 500GB 500GB primary ntfs
lsblk
terdon@oregano ~ $ lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 0 465.8G 0 disk
├─sda1 8:1 0 39.2M 0 part
├─sda2 8:2 0 14.7G 0 part
├─sda3 8:3 0 78.1G 0 part
├─sda4 8:4 0 1K 0 part
├─sda5 8:5 0 2G 0 part
├─sda6 8:6 0 294.4G 0 part /home
├─sda7 8:7 0 68.7G 0 part /
└─sda8 8:8 0 7.8G 0 part [SWAP]
sdb 8:16 0 465.8G 0 disk
└─sdb1 8:17 0 465.8G 0 part /test
sr0 11:0 1 1024M 0 rom
Установка inxi
тогда работает
terdon@oregano ~ $ inxi -D
Drives: HDD Total Size: 1000.2GB (70.1% used) 1: id: /dev/sda model: ST9500420AS size: 500.1GB
2: id: /dev/sdb model: 5AS size: 500.1GB
В терминале:
sudo fdisk -l
Тип Ваш пароль.
lsblk
команда:
Вот несколько других подходов:
lshw
Короткая версия lshw
удобно перечисляет размер дисков в описании
sudo lshw -short | awk '/disk|volume/'
/0/1/0.0.0 /dev/sda disk 120GB Radeon R7
/0/1/0.0.0/1 /dev/sda1 volume 111GiB EXT4 volume
/0/2/0.0.0 /dev/cdrom disk DVDRAM GT20N
И для более подробного информационного использования lshw -class volume,disk
udiscsctl
udiscsctl
имеет info
опция, который вместе с -b
(для блочного устройства) флаг, может показать подробную информацию. Используя простое для цикла и awk
, мы можем заставить его показать информацию о разделе и размере конкретно. Вот мой пример:
$ for device in /dev/sd* ; do udisksctl info -b $device | awk '/[[:blank:]]Device:/; /Size/' ;done
Device: /dev/sda
Size: 120034123776
Device: /dev/sda1
Size: 120032591872
Size: 120032591872
команда df
df
управляйте информацией о шоу обо всех в настоящее время монтируемых файловых системах. Снова, мы можем использовать эту команду непосредственно, но также и очистить выходное использование awk
df -h | awk 'NR==1 ;/\/dev\/sd*/'
Filesystem Size Used Avail Use% Mounted on
/dev/sda1 110G 68G 37G 66% /
Здесь мы просто печатаем заголовок и используем флаг-h, который заставляет размер быть распечатанным в человекочитаемом формате
/sys/class/block/sd* файлы
Внутри /sys/class/block/
папка Вы найдете файлы связанными с блочными устройствами (которые обычно относятся к устройствам физической памяти). В особенности мы хотим сфокусироваться на любом файле, который запускается с sd
буквы.
Например, у меня есть один жесткий диск только с одним разделом. Таким образом /sys/class/block/sda
относится к моему целому жесткому диску, в то время как /sys/class/block/sda1
относится к моему разделу Ubuntu.
В каждой папке для каждого устройства Вы найдете size
файл, который перечисляет, сколько блоков 512 МБ там находится на устройстве. Таким образом, истинный размер number of blocks x 521
.
Снова, с небольшим волшебством командной строки, мы добираемся:
$ for device in /sys/class/block/sd*; do printf "%s " $device; bc <<< "$(cat $device/size)*512" ; done
/sys/class/block/sda 120034123776
/sys/class/block/sda1 120032591872
Или немного короче с awk
:
$ awk '{print substr(FILENAME,18)" "$1*512}' /sys/class/block/sd*/size
sda/size 120034123776
sda1/size 120032591872
Я добрался до этого путем поиска "gpt разделов списка сервера человечности". Я искал ответ при использовании 16.04.1 LTS. Для тех из Вас, кто хочет перечислить разделы (MBR или GPT), fdisk, кажется, имеет поддержку и (и не только MBR как в более ранних версиях Ubuntu) в 16.04.1 LTS. Также parted
не установлен по умолчанию, когда "опция" утилит базовой системы выбрана во время установки. Таким образом, следующая команда - все, в чем Вы нуждаетесь на 16.04.1 LTS:
sudo fdisk -l
&&
между двумя командами для создания его остротой.
– Arronical
27 August 2015 в 02:31