Hard disk drive yang mana?

38

Saya ingin tahu hard disk mana yang sesuai dengan jalur perangkat mana. Sepele untuk mencocokkan statistik hard disk (merek, ukuran) dengan jalur dev, tapi saya ingin lebih. Saya ingin tahu drive mana yang ada di dalam case saya. Apa cara yang baik untuk mendapatkan informasi ini?

Kendala

  • Aku malas. Saya tidak ingin membongkar server saya untuk menghapus semua drive, lalu tambahkan satu per satu.
  • Reboot dapat diterima.
  • Drive tidak nyaman digulung bersama dalam kasus ini. Informasi label disembunyikan.
  • Kasing dapat dibuka. Sebagian besar disk adalah SATA, sehingga secara teoritis hot swappable. Mencabut kabel adalah permainan yang adil.

Bonus

Saya akan memberikan jawaban untuk jawaban gui atau cli terbaik / termudah, dan memberikan hadiah untuk jawaban terbaik berikutnya dari jenis lainnya. Saya lebih suka jawaban cli, tetapi pahami bahwa banyak orang lain akan menghargai metode point-and-klik yang bagus.

djeikyb
sumber

Jawaban:

26

hdparm -i /dev/sdX memberi Anda nomor seri, yang merupakan cara paling sederhana yang saya tahu untuk membedakan hard disk dengan merek dan ukuran yang sama.

Nomor seri biasanya dicetak pada label pada disk, jadi meskipun Anda perlu membuka kasing untuk menemukannya, tidak perlu membongkar komputer.

Contoh:

$ sudo hdparm -i /dev/sdb | grep -i serial
 Model=SAMSUNG HD253GJ, FwRev=1AJ10001, SerialNo=S24JJ90Z505435

Jika Anda ingin lebih banyak info lshw -c storage -c diskmemberikan output yang paling mudah dibaca. Ini data yang hampir sama dengan Disk Utility, hanya dalam format baris perintah.

Berikut adalah contoh beranotasi dari pengaturan paling kompleks yang saya miliki aksesnya, dengan empat pengontrol disk, tujuh hard disk, DVD ROM dan disk USB.

Outputnya telah dipotong untuk ukuran untuk fokus pada bagian-bagian yang menarik:

[server ~]$ sudo lshw -c storage -c disk
  *-storage   
  # a 2-port PCI-E SATA controller
       description: SATA controller
       product: 88SE9123 PCIe SATA 6.0 Gb/s controller
       vendor: Marvell Technology Group Ltd.
     *-disk
          description: ATA Disk
          product: WDC WD15EADS-00P
          vendor: Western Digital
  # 'physical id' corresponds to port number, first port is 0
          physical id: 0  
          logical name: /dev/sdg
          serial: WD-WMAVU0849124
          size: 1397GiB (1500GB)
     *-cdrom
          description: DVD reader
          product: BD-ROM BR-5100S
          vendor: Optiarc
          physical id: 1
          logical name: /dev/cdrom1
          logical name: /dev/dvd1
          logical name: /dev/scd0
          serial: [Optiarc BD-ROM BR-5100S 1.02 May20 ,2008
  *-storage
  # mobo controller for eSATA ports. Not used.
       description: SATA controller
       product: JMB362/JMB363 Serial ATA Controller
       vendor: JMicron Technology Corp.
  *-ide
  # mobo controller for IDE. Not used.
       description: IDE interface
       product: JMB362/JMB363 Serial ATA Controller
       vendor: JMicron Technology Corp.
  *-storage
  # the primary SATA controller, six ports
       description: SATA controller
       product: 82801JI (ICH10 Family) SATA AHCI Controller
       vendor: Intel Corporation
  # 'disk:0' means port 0, same as physical id
     *-disk:0
          description: ATA Disk
          product: WDC WD1600BEVS-0
          vendor: Western Digital
          physical id: 0
          logical name: /dev/sda
          serial: WD-WXEY08T58317
          size: 149GiB (160GB)
     *-disk:1
          description: ATA Disk
          product: ST32000542AS
          vendor: Seagate
          physical id: 1
          logical name: /dev/sdb
          serial: 5XW1RTDS
          size: 1863GiB (2TB)
     *-disk:2
          description: ATA Disk
          product: ST32000542AS
          vendor: Seagate
          physical id: 2
          logical name: /dev/sdc
          serial: 5XW23W0W
          size: 1863GiB (2TB)
     [...]
  *-scsi
  # the USB disk, as evidenced by the bus info 
       physical id: 1
       bus info: usb@1:1
       capabilities: emulated scsi-host
     *-disk
          description: SCSI Disk
          product: 10EAVS External
          vendor: WD
          physical id: 0.0.0
          logical name: /dev/sdh
          serial: WD-WCAU46029507
          size: 931GiB (1TB)

Saya pikir Disk Utility lebih cepat dibaca; versi baris perintah memiliki keuntungan dapat digunakan di atas ssh dan dalam skrip.

Dan saya masih berpikir nomor seri adalah solusi yang paling dapat diandalkan :)

"ID Fisik" dari setiap drive sesuai dengan di mana ia terhubung ke motherboard. dan dimulai dengan 0. sehingga ID fisik 2 akan berarti bahwa drive terpasang ke port sata ke-3 dari mobo Anda atau perangkat lain yang berlaku.

jg-faustus
sumber
Menarik. Serial / labelnya bagus untuk dimiliki, tetapi dalam skenario saya, disk-disknya dijejali dudukan yang menghalangi stiker dari pandangan. Yang terbaik yang bisa saya lakukan adalah melacak kabel. Saya tidak melihat sesuatu dengan hdparm -isegera berguna, tetapi saya harus membaca halaman manual untuk melihat apakah saya tidak bisa mendapatkan lebih banyak info darinya.
djeikyb
Haha, serial ini memang paling dapat diandalkan, tetapi ini memberikan peta yang berguna untuk pengenalan perangkat linux -> koneksi fisik ... melalui antarmuka baris perintah. Terima kasih!
djeikyb
34

Utilitas Disk

Ini adalah aplikasi GUI yang akan memberi Anda informasi tentang model, ukuran, nomor seri, dan lintasan perangkat drive Anda. Ini diinstal secara default di Desktop Ubuntu. Anda dapat menekan tombol Dash Ubuntu dan mencari "utilitas disk" untuk menemukannya, atau menjalankannya di terminal dengan palimpsest.

Utilitas Disk

Allan
sumber
4
dan Anda hanya perlu menggunakan satu tangan dan jari itulah yang saya sebut konservasi energi "selamatkan planet menggunakan utilitas disk"
Allan
4
Saya pikir ini akan menjadi jawabannya, dengan "Lokasi: Port X dari SATA Host Adapter" menjadi fitur mematikan. Saya ingin melihat beberapa jawaban Cli juga. Octavian & faustus memiliki solusi menarik di sepanjang garis
djeikyb
18

Buka kasing dan dengarkan drive dengan salinan "The Linux Journal". Kemudian jalankan dd pada setiap drive secara bergantian untuk menghasilkan beberapa noise disk.

Catatan: ini tidak akan berfungsi pada SSD!

jjg
sumber
2
Stethoscope ftw
Jeremy
1
Sukai jawaban ini. Saya lebih suka output teknis dari palimpsestdan lshw, tapi ini hampir sepertiga.
djeikyb
SSD tidak menghasilkan noise. Selain itu, solusinya tidak akan berfungsi jika Anda memiliki lebih dari satu drive dan ada proses lain yang membaca dari dua drive secara bersamaan.
Sergiy Kolodyazhnyy
Juga, ini tidak akan membantu jika Anda bekerja dengan server jarak jauh via sshatau RDP
Sergiy Kolodyazhnyy
2
Apa yang terdengar seperti suara "whooshing" itu?
jjg
10

Anda dapat memperoleh informasi itu dari / sys (atau / dev, dalam hal ini):

anthony@Zia:~$ ls -l /sys/block/ | grep sd.
lrwxrwxrwx 1 root root 0 Feb 25 13:30 sda -> ../devices/pci0000:00/0000:00:1f.2/host2/target2:0:0/2:0:0:0/block/sda
lrwxrwxrwx 1 root root 0 Feb 25 13:30 sdb -> ../devices/pci0000:00/0000:00:1f.2/host3/target3:0:0/3:0:0:0/block/sdb
lrwxrwxrwx 1 root root 0 Feb 25 13:30 sdc -> ../devices/pci0000:00/0000:00:1f.2/host4/target4:0:0/4:0:0:0/block/sdc
lrwxrwxrwx 1 root root 0 Feb 25 13:30 sdd -> ../devices/pci0000:00/0000:00:1f.2/host5/target5:0:0/5:0:0:0/block/sdd

Jadi, Anda dapat melihat empat disk saya ada di port (host / target) 2 hingga 5.

Anda juga dapat melakukan ls-l /dev/disk/by-pathdan melihatnya di sana.

derobert
sumber
2
+1 untuk mengakses info dasar dari / sys dan / dev. Saya masih lebih suka info agregat dari solusi yang diterima, tetapi mengetahui cara mendapatkan dan membaca info dasar sangat berharga. Ini adalah bagian yang hilang dari jawaban yang lebih besar yang diberikan @ jg-faustus dan @Allan
djeikyb
Bahkan, jika Anda menjalankan strace -e trace=open lsblkdan strace -e trace=open lsblk, itulah data yang sedang dibaca. Jawaban ini layak mendapat lebih banyak upvotes.
Sergiy Kolodyazhnyy
8

Saya merekomendasikan hwinfo --disk.

Ini akan mencantumkan semua informasi yang relevan untuk hard disk Anda. Jika Anda memerlukan informasi lebih lanjut tentang partisi Anda, Anda dapat menggunakan hwinfo --partition.

Anda dapat menggabungkan kedua hal di atas dengan --shortopsi untuk mendapatkan representasi yang lebih pendek.

Oktavianus A. Damiean
sumber
Ini terlihat paling menjanjikan, terutama baris SysFS dan Device Files, tapi saya tidak yakin bagaimana menerjemahkannya ke dalam bahasa Inggris.
djeikyb
5

Hardinfo adalah GUI yang akan memungkinkan Anda untuk mengumpulkan Informasi sistem Anda, yang mungkin termasuk, tetapi tidak terbatas pada, Perangkat Penyimpanan yang terhubung secara fisik dan Sistem File, seperti yang ditunjukkan pada tangkapan layar berikutnya:

masukkan deskripsi gambar di sini

masukkan deskripsi gambar di sini

Situs web Hardinfo: http://hardinfo.berlios.de/HomePage

Geppettvs D'Constanzo
sumber
4
  • cat /proc/partitions menunjukkan partisi / disk yang terdeteksi oleh kernel, Anda dapat mengetahui ukurannya

masukkan deskripsi gambar di sini

  • smartctl -i /dev/sda

masukkan deskripsi gambar di sini

jet
sumber
3

Cara tercepat dan termudah

1. Buka Gnome-Terminal

2. Masuk sudo blkid

3. Masukkan Kata Sandi

4. Ini akan memberi tahu Anda drive mana yang dalam format yang mudah dibaca

era878
sumber
2

Jika Anda menginginkan cara tanpa dapat melihat label, yang sejauh yang saya tahu tidak ada tanggapan lainnya. Saya akan melepas semua drive (Jika mungkin, Anda mungkin harus boot dari live cd untuk melakukan ini). Semua drive sekarang harus berputar ke bawah. Anda kemudian dapat secara progresif me-mount masing-masing dan mendengarkan atau merasakan mana yang berputar. Dengan cara ini Anda hanya perlu tutup dari kasing Anda tetapi Anda tidak perlu melihat label yang bagus jika mereka semua kusut.

Sederhana

Slipstream
sumber
1

Pertanyaan inti:

Saya ingin tahu hard disk mana yang sesuai dengan jalur perangkat mana.

Pendekatan garis perintah

  1. Pendekatan dasar dan lebih praktis adalah melalui memeriksa /dev/sistem file. Ada beberapa direktori di /dev/disk/mana berisi symlink ke file perangkat, dan direktori tersebut diatur pada UUID, id, path dalam /syssistem file, dan label (jika perangkat / partisi memiliki satu). Misalnya, mengetahui UUID drive yang ingin saya temukan, saya bisa melakukan sesuatu seperti ini:

    $ find /dev/disk/by-uuid/ -mindepth 1 -printf "%p >>> %l\n"
    /dev/disk/by-uuid/8e344ab1-5eb5-4e20-becd-4147fffd439f >>> ../../sdb6
    /dev/disk/by-uuid/483CDA9D3CDA84FA >>> ../../sdb5
    /dev/disk/by-uuid/32AE5766AE5721A1 >>> ../../sdb4
    /dev/disk/by-uuid/7852-5217 >>> ../../sdb2
    /dev/disk/by-uuid/D668510B6850EC2D >>> ../../sdb1
    /dev/disk/by-uuid/B8E453D4E453940A >>> ../../sdb3
    /dev/disk/by-uuid/86df21bf-d95f-435c-9292-273bdbcba056 >>> ../../sda1
    
  2. Ubuntu secara default dilengkapi dengan UDisksmanajer disk. Ini memiliki beberapa utilitas yang dapat digunakan. Informasi dari metode # 1 sudah diuraikan untuk kenyamanan pengguna. Misalnya, untuk sekadar menemukan perangkat mana yang sesuai dengan model hard drive mana, kita bisa melakukan ini:

    $ udisksctl  status
    MODEL                     REVISION  SERIAL               DEVICE
    --------------------------------------------------------------------------
    Radeon R7                 1.01      A22MD061520000172    sda     
    TOSHIBA MQ01ABF050        AM0P3M    Z4GRCSXAT            sdb     
    

    Info lanjutan dapat diperoleh via udisksctl info -b /dev/sda1untuk perangkat tertentu atau udisksctl dumpuntuk semua perangkat. udisksctl monitordapat digunakan dengan menghubungkan / melepaskan drive secara fisik.

Khususnya, jika Anda ingin mencocokkan UUID dengan drive tertentu, Anda dapat memfilter udisksctl infodengan grep:

    $ udisksctl info -b /dev/sda1 | grep 'IdUUID:\|Id:'                                                   
    Id:                         by-id-ata-Radeon_R7_A22MD061520000172-part1
    IdUUID:                     86df21bf-d95f-435c-9292-273bdbcba056

Pendekatan GUI:

Menggunakan informasi yang UDisksmenempatkan ke dalam bus komunikasi antar-proses yang dikenal sebagai dbus, saya telah menulis indikator untuk Ubuntu dengan desktop Unity (meskipun dapat digunakan pada orang lain juga). Awalnya ditulis untuk Indikator Penggunaan Sistem File (lihat tautan untuk instruksi instalasi). Ini memungkinkan menampilkan informasi untuk semua drive yang terpasang dengan mudah dan beberapa fitur lainnya, seperti mengklik partisi / perangkat dan membuka direktori yang sesuai dalam file manager.

masukkan deskripsi gambar di sini

Sergiy Kolodyazhnyy
sumber
Ada banyak info bagus di sini. Tapi saran dev / sys fs Anda menimbulkan pertanyaan: "bagaimana saya tahu disk fisik mana yang memiliki partisi dengan uuid ini". Itulah yang saya tanyakan sejak awal.
djeikyb
@djeikyb Sebenarnya itu adalah salah satu hal yang saya selesaikan saat mengerjakan indikator yang saya sebutkan, dan udisksctlmungkin pendekatan yang paling sederhana - Anda dapat memfilternya dengan grep untuk perangkat + garis UUID. Saya akan mengeditnya dalam pertanyaan saya. Adapun solusi kustom, yang tentu saja dapat dituliskan dengan perl atau python atau bahkan shell script, di mana Anda melintasi /dev/disk/by-iddan mencocokkannya dengan symlink di /dev/disk/by-uuid.
Sergiy Kolodyazhnyy
@djeikyb Jadi, Anda pada dasarnya ingin tahu konektor mana yang digunakan oleh drive mana, bukan? dan tanpa mengetahui model atau hard drive?
Sergiy Kolodyazhnyy
@djeikyb Saya pernah baca itu, dan mereka fokus pada nomor seri setiap disk. . .yang sebagian juga saya berikan udisksctl status.
Sergiy Kolodyazhnyy
@djeikyb Menarik. Utilitas Disk Default palimpset,, tampaknya telah diubah namanya menjadi gnome-disks-utility, tetapi tidak memiliki "Lokasi" lagi. Setidaknya tidak dalam 16,04 yang saya jalankan
Sergiy Kolodyazhnyy