Como posso listar o disco rígido e todas as suas partições, incluindo o tamanho do terminal?

6

Eu tenho o servidor Ubuntu 12.04 instalado sem GUI. Eu gostaria de listar meu disco rígido e suas partições, juntamente com o tamanho de cada partição usando a linha de comando.

    
por Cam Jones 08.03.2014 / 22:53

4 respostas

11

Aqui estão algumas maneiras:

  • Se você tiver uma tabela de partições 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
    

    ou     sudo sfdidk -l

    No entanto, eles não fornecem resultados particularmente legíveis para humanos. As próximas escolhas são melhores.

  • Para as tabelas de partições GPT e 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  
    
  • Instale inxi e, em seguida, execute

    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 
    
por terdon 08.03.2014 / 23:11
1

Veja algumas outras abordagens:

lshw

A versão curta de lshw lista convenientemente o tamanho dos discos na descrição

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

E para informações mais detalhadas, use lshw -class volume,disk

udiscsctl

A opção

udiscsctl tem info , que, junto com o sinalizador -b (para dispositivo de bloco), pode mostrar informações detalhadas. Usando um loop for simples e awk , podemos mostrar informações de partição e tamanho especificamente. Aqui está o meu exemplo:

$ 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

comando df

O comando

df mostra informações sobre todos os sistemas de arquivos atualmente montados. Novamente, podemos usar este comando diretamente, mas também limpar a saída usando awk

df -h | awk 'NR==1 ;/\/dev\/sd*/'                                                                                
Filesystem      Size  Used Avail Use% Mounted on
/dev/sda1       110G   68G   37G  66% /

Aqui, apenas imprimimos o cabeçalho e usamos o sinalizador -h que faz com que o tamanho seja impresso em formato legível

/ sys / class / block / sd * arquivos

Dentro da pasta /sys/class/block/ , você encontrará arquivos relacionados a dispositivos de bloco (que geralmente se referem a dispositivos de memória física). Em particular, queremos nos concentrar em qualquer arquivo que comece com sd letras.

Por exemplo, eu tenho um disco rígido com apenas uma partição. Assim, /sys/class/block/sda refere-se ao meu disco rígido inteiro, enquanto /sys/class/block/sda1 refere-se à minha partição do Ubuntu.

Dentro de cada pasta para cada dispositivo, você encontrará o arquivo size , que lista quantos blocos de 512 MB existem no dispositivo . Portanto, o tamanho real é number of blocks x 521 .

Mais uma vez, com pouca mágica na linha de comando, obtemos:

$ 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

Ou um pouco mais curto com awk :

$ awk '{print substr(FILENAME,18)" "*512}' /sys/class/block/sd*/size                                             
sda/size 120034123776
sda1/size 120032591872
    
por Sergiy Kolodyazhnyy 01.10.2015 / 15:46
0

No terminal:

sudo fdisk -l

Digite sua senha.

comando lsblk :

    
por nux 08.03.2014 / 22:55
0

Eu cheguei a isso pesquisando "partições gpt da lista de servidores do ubuntu". Eu estava procurando por uma resposta ao usar 16.04.1 LTS. Para aqueles de vocês que querem listar partições (MBR ou GPT), o fdisk parece ter suporte para ambos (e não apenas MBR como nas versões anteriores do Ubuntu) em 16.04.1 LTS. Além disso, parted não é instalado por padrão quando a opção "utilitários básicos do sistema" é selecionada durante a instalação. Então, o seguinte comando é tudo que você precisa no 16.04.1 LTS:

sudo fdisk -l
    
por swoop81 26.11.2016 / 00:55