GNU/Linux >> LINUX-Kenntnisse >  >> Linux

Wie erhalte ich die Anzahl der physischen Festplatten in Linux?

sudo fdisk -l listet Ihre Festplatten und eine Reihe von Statistiken darüber auf, einschließlich der Partitionen. Die Datenträger haben im Allgemeinen die Form /dev/sdx und Partitionen /dev/sdxn , wobei x ist ein Buchstabe und n ist eine Zahl (also ist sda die erste physische Festplatte und sda1 die erste Partition auf dieser Festplatte).

sudo df -h gibt Ihnen die Größen- und Nutzungsstatistiken pro Partition. Lassen Sie die -h fallen und Sie erhalten die Nutzung in Blöcken, damit ist sie für Menschen lesbar.

Ich habe die sudos dort eingefügt, weil ich keine Ausgabe von fdisk und nur eine teilweise Ausgabe von df erhalten habe, als ich die Befehle als normaler Benutzer ausgeführt habe, ich nehme an, weil die Befehle von irgendwo lesen, was für Nicht-Administratoren verboten ist.


Wenn Sie wirklich nur die Hardware anzeigen möchten und keine RAID-Volumes und -Partitionen, die vom Betriebssystem möglicherweise als physische Laufwerke angesehen werden. Vielleicht möchten Sie lshw ausprobieren

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

Oder ein bisschen viel wortreich

lshw -class disk
  *-cdrom                 
   description: DVD-RAM writer
   product: DVD-RAM GSA-H55N
   vendor: HL-DT-ST
   physical id: 0.0.0
   bus info: [email protected]: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: [email protected]: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: [email protected]: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

Ich denke, der einfachste Weg (zumindest in Bezug auf den Parsing-Aufwand) bei einer aktuellen Linux-Installation wäre

$ lsblk -S

was so etwas ausgibt:

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:~# 

Linux
  1. Wie kann ich den Tastaturstatus unter Linux abrufen?

  2. Wie erhalte ich programmgesteuert den freien Speicherplatz für ein Verzeichnis in Linux

  3. Wie bekomme ich den Benutzernamen in C/C++ unter Linux?

  4. Wie man nur die Anzahl der Zeilen einer Datei erhält

  5. Wie erhalte ich die Anzahl der Frames in einem Video auf der Linux-Befehlszeile?

So erhalten Sie die Größe eines Verzeichnisses in Linux

So erhalten Sie die Größe eines Verzeichnisses in Linux

So klonen Sie Festplatten mit dem Linux-Befehl dd

So finden Sie die Portnummer eines Dienstes in Linux

So erhalten Sie den Dateinamen aus dem vollständigen Pfad in Linux

So erhalten Sie die Anzahl der Prozessoren / Kerne in Linux