14 votes

Comment obtenir le nombre de disques physiques sous Linux ?

Quelle est la commande en ligne permettant d'obtenir le nombre de disques physiques dans un serveur Linux et l'espace utilisé sur chacun d'eux ?

11voto

ChimneyImp Points 1380

sudo fdisk -l listera vos disques et un tas de statistiques les concernant, y compris les partitions. Les disques sont généralement sous la forme de /dev/sdx et les partitions /dev/sdxn , donde x est une lettre et n est un nombre (ainsi sda est le premier disque physique et sda1 est la première partition sur ce disque).

sudo df -h vous donne la taille et les statistiques d'utilisation par partition. Laissez tomber le -h et vous obtenez l'usage en blocs, avec ça c'est lisible par l'homme.

J'ai mis le sudos là parce que je n'ai obtenu aucune sortie de fdisk et seulement une sortie partielle de df lorsque j'ai exécuté les commandes en tant qu'utilisateur normal, je suppose que c'est parce que les commandes sont lues depuis un endroit inaccessible aux non-administrateurs.

7voto

Buzut Points 163

Si vous voulez vraiment afficher uniquement le matériel, et non les volumes RAID et les partitions qui pourraient être vus par le système d'exploitation comme des disques physiques. Vous pouvez essayer lshw

lshw -class disk -short
H/W path        Device      Class       Description
===================================================
/0/1/0.0.0      /dev/cdrom  disk        DVD-RAM GSA-H55N
/0/1/0.1.0      /dev/sda    disk        160GB ST3160021A
/0/2/0.0.0      /dev/sdb    disk        160GB ST3160815AS

Ou un peu trop verbeux

lshw -class disk
  *-cdrom                 
   description: DVD-RAM writer
   product: DVD-RAM GSA-H55N
   vendor: HL-DT-ST
   physical id: 0.0.0
   bus info: scsi@0:0.0.0
   logical name: /dev/cdrom
   logical name: /dev/sr0
   version: 1.04
   serial: [
   capabilities: removable audio cd-r cd-rw dvd dvd-r dvd-ram
   configuration: ansiversion=5 status=nodisc
  *-disk
   description: ATA Disk
   product: ST3160021A
   vendor: Seagate
   physical id: 0.1.0
   bus info: scsi@0:0.1.0
   logical name: /dev/sda
   version: 8.01
   serial: 5JS97CFY
   size: 149GiB (160GB)
   capabilities: partitioned partitioned:dos
   configuration: ansiversion=5 sectorsize=512 signature=000f3a2f
  *-disk
   description: ATA Disk
   product: ST3160815AS
   vendor: Seagate
   physical id: 0.0.0
   bus info: scsi@2:0.0.0
   logical name: /dev/sdb
   version: 3.AA
   serial: 9RX7AK36
   size: 149GiB (160GB)
   capabilities: partitioned partitioned:dos
   configuration: ansiversion=5 sectorsize=512 signature=000b6d91

5voto

Andreas Wiese Points 2011

Je pense que la méthode la plus simple (du moins en ce qui concerne l'effort d'analyse) sur une installation récente de Linux serait la suivante

$ lsblk -S

ce qui donne quelque chose comme ceci :

tremendous:~# lsblk -S
NAME HCTL       TYPE VENDOR   MODEL             REV TRAN
sda  0:0:0:0    disk ATA      WDC WD5000AUDX-6 01.0 sata
sdb  1:0:0:0    disk ATA      WDC WD5000AUDX-6 01.0 sata
tremendous:~#

3voto

Chin Seran Points 31

En fonction de votre distribution (dans ce cas Centos 7) lsblk -d vous montrera (par exemple) trois disques physiques.

NAME MAJ:MIN RM   SIZE RO TYPE MOUNTPOINT
sr0   11:0    1  1024M  0 rom  
sr1   11:1    1  1024M  0 rom  
sdf    8:80   0 372.6G  0 disk 
sde    8:64   0 372.6G  0 disk 
sdg    8:96   0   1.8T  0 disk 

iostat donnera également des résultats similaires (ignorez le dm car ils font partie de LVM )

Device:            tps   Blk_read/s   Blk_wrtn/s   Blk_read   Blk_wrtn
sdf               1.85        41.74        53.80   68524791   88335482
sde               0.00         0.01         0.00      20219          0
dm-0              7.75        40.17        52.24   65945186   85767784
dm-1              0.31         0.94         1.56    1543416    2567312
sdg               0.86         1.89       171.04    3096240  280813864

2voto

Amelia Points 1

On pourrait penser qu'il existe une réponse simple à cette question, mais cela dépend en fait de ce que vous entendez par "disque physique". Les volumes iSCSI et les périphériques RAID (par exemple) apparaissent comme des disques physiques, mais les outils utilisés pour les examiner diffèrent.

Si vous voulez simplement parler d'un lecteur SATA ou SCSI ordinaire relié directement à un contrôleur hôte sur la carte mère du serveur, vous recherchez les périphériques activement utilisés situés dans /dev/sdN, vous pouvez donc les rechercher dans votre dmesg (dmesg | grep sd) ou dans /dev/disk/by-id ou encore dans /proc/diskstats.

Une fois que vous avez identifié l'entrée /dev/ pour les périphériques présents, vous pouvez utiliser l'outil approprié pour vérifier l'espace libre. Cela dépend à nouveau d'autres informations, comme la façon dont ils ont été partitionnés, s'ils utilisent le lvm, etc.

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X