Чи можу я виявити апаратну інформацію про RAID зсередини Linux?


15

Коли я перебуваю в Linux, я можу отримати таку інформацію з lsblk(невідповідні диски, вилучені з виводу):

NAME  MAJ:MIN RM   SIZE RO TYPE MOUNTPOINT
sda     8:0    0   298G  0 disk 
sdb     8:16   0   2.7T  0 disk

Коли я вручну витягаю диски з сервера, я можу сказати, що фізично використовую такі диски:

0  Seagate 320GB
1  Seagate 320GB
2  Hitachi 1TB
3  Hitachi 1TB
4  Hitachi 1TB
5  Hitachi 1TB
6  [empty]
7  [empty]

Оскільки на сервері є більше фізичного сховища, ніж наявного місця в Linux, це означає, що я, очевидно, використовую певну форму RAID-системи. Маючи трохи математики, я часто можу зрозуміти, який тип RAID-системи використовується.

Чи є спосіб я визначити, чи використовую апаратний RAID зсередини Linux , і зрозуміти всю інформацію про нього (наприклад, тип RAID, доступні диски), не вимикаючи сервер, фізично витягаючи диски, і читати їх етикетки?

Чи можна цю інформацію збирати зсередини Linux або це сенс апаратного RAID зробити базову систему "невидимою" для операційної системи?


Це повністю залежить від контролера RAID, який ви використовуєте, та якою підтримкою він володіє під Linux. Якщо ви надасте інформацію про свій контролер, ви можете знайти тут допомогу. Ви також можете здійснити пошук в Інтернеті за "модель # linux-команд", якщо тут ви не отримаєте необхідну інформацію.
Гена

@Gene Це прикро. Знову я сподівався, що знайдеться рішення, яке не потребує пошуку конкретного номера моделі, але його можна використовувати незалежно від того, яке обладнання ви використовуєте.
IQAndreas

Різне обладнання обладнано RAID по-різному і має різні драйвери. У багатьох випадках вам не потрібно вимикати систему, але принаймні вам потрібно знати, який у вас контролер моделі чи чіпсет, щоб ви могли знайти команди для запиту контролера з операційної системи.
Гена

1
Зазвичай ви можете знайти інформацію про контролер або набір чіпів через dmesg, dmidecode, lspci та інші подібні утиліти. Якщо вбудований RAID на материнській платі, знаючи марку та модель материнської плати, ви отримаєте 99% шляху до неї.
Гена

1
adds an answer explaining how to figure out which RAID controller is being used from inside of Linux - @IQAndreas, але це не в питанні. Відповіді на сервері за замовчуванням повинні відповідати на запитання. Якщо у вас інше запитання, слід відредагувати своє запитання. На це питання майже напевно можна було б відповісти самостійно за кілька хвилин у Google. У будь-якому випадку відповідь на це є lshw.
Zoredache

Відповіді:


17

Як отримати інформацію про RAID, буде повністю залежати від контролера RAID, який ви використовуєте. Часто у виробників є інструменти, які можна завантажити з їх веб-сайту, які можна використовувати для запиту RAID-контролера та отримання цієї інформації.

Для того, щоб знайти, який RAID-контролер ви використовуєте, спробуйте одну з наступних команд:

lspci

# lspci -knn | grep 'RAID bus controller'
08:00.0 RAID bus controller [0104]: 3ware Inc 9690SA SAS/SATA-II RAID PCIe [13c1:1005] (rev 01)

Тут інформація, яку ми шукаємо, - це "3ware Inc 9690SA SAS / SATA-II RAID PCIe" .

lsscsi

Команда недоступна на Debian та Ubuntu, але швидка sudo apt-get install lsscsiвилучить її з репостів. Зауважте, якщо ви не використовуєте контролер RAID, тут замість цього з’явиться виробник та номер моделі вашого жорсткого диска.

# lsscsi
[2:0:0:0]    disk    AMCC     9690SA-8I  DISK  4.08  /dev/sda 
[2:0:1:0]    disk    AMCC     9690SA-8I  DISK  4.08  /dev/sdb 

Тут ми бачимо, що виробник - "AMCC", а номер моделі карти RAID "9690SA-8I" . Швидкий пошук Google показує, що ця карта також відома як "AMCC 3Ware 9690SA-8I" .

lshw

Третій метод (який дає зовсім небагато вихідних даних) - використовувати lshwкоманду. Запустити lshw -class diskяк root, щоб відобразити лише дані про жорсткі диски (що включає інформацію про RAID).

Пошук інструментів RAID-контролера

Тепер, коли у нас є виробник та номер моделі, слід було б знайти інструменти на їхньому веб-сайті або хоча б мати можливість детально ознайомитись з Google про те, як знайти та використовувати інструменти для цього конкретного контролера.

Якщо виробник відображається в цьому списку, перегляньте ці відповіді для отримання більш детальної інформації про отримання інформації про RAID для вашої картки:


5

Виконати щось на кшталт lspci -knn | grep 'RAID bus controller'.

Використовуючи цей вихід, Google (наприклад) для LSI Logic / Symbios Logic MegaRAID SAS 2208.

Знайдіть, він використовує storcliутиліту для допиту RAID-контролера.

Завантажте його та встановіть.

storcli64 show дає конкретно модель контролера та індекс контролера, кількість груп приводів та віртуальних накопичувачів.

storcli64 /c0/d0 showпоказує вам перший контролер, першу групу приводу. Повідомляє, що ви нападаєте на рівні, включаючи гніздування.

storcli64 /c0/eall/sall show all показує всю інформацію на всіх дисках.

Подальші довідкові дані для цих команд можна знайти тут:

http://mycusthelp.info/LSI/_cs/AnswerPreview.aspx?sSessionID=&inc=8275

Має бути все, що вам потрібно зробити. Просто використовуйте звичайну апаратну інтроспекцію в Linux, потім Google, а потім завантажте та встановіть утиліти, які постачаються разом із цим.

@ Пропозиції та коментарі Джина абсолютно непристойні.

Ця відповідь повністю специфічна для результатів, отриманих від lspciкоманди, та можливості вашого пошуку в Google визначити виробника та захопити правильний інструмент командного рядка.

Але це свідчить про те, що ви можете отримати все це з сервера, в командному рядку, не зупиняючи машину, відкриваючи корпус і не витягуючи диски, що, я сподіваюся, є корисним.


Оскільки відповідь на моє запитання буде специфічно апаратним, я додав відповідь у вікі спільноти про те, як дізнатися, який RAID-контролер ви використовуєте . Потім ця відповідь посилається на відповіді (включаючи ваші), що містять деталі для конкретних контролерів або виробників.
IQAndreas

Якщо ви хочете оновити формат своєї відповіді, щоб це відобразити, було б непогано, але це не обов'язково.
IQAndreas

2

Це не відповідь одного розміру і не дає всієї необхідної інформації, але на одному апаратному RAID-контролері Adaptec, який ми використовували, він давав деякий доступ до самих накопичувачів через спеціальні пристрої / dev / sg1 / dev / sg2 тощо. Ми могли б запустити smartctl -a / dev / sg1, щоб отримати багато інформації про цей фізичний привід, включаючи виробника, номер моделі, інтерфейс, серійний номер, розмір та інші дані.

Що стосується з'ясування того, який контролер використовується, я погоджуюся з коментарем Джина щодо dmidecode, dmesg та lspci - це також було б моїм спробувати спершу.


1

Для створення профілю пам’яті я б зробив наступне, перш ніж lspciщось запустити або завантажити.

# cat /etc/fstab         What partitions get mounted at boot?

# sudo pvs               Are you running LVM? List the physical volumes

# cat /proc/mdstat       List software RAID devices & status

# for D in /dev/sd?; do parted $D print; done
                         If hardware RAID is being used, the "Model" field will list
                         the Mfr. name, otherwise the hard drive Mfr.

0

3ware

Це було перевірено на наступних контролерах RAID: 9690SA-8I

Будь ласка, повідомте мене у коментарях, чи працював він для вашого конкретного контролера чи необхідні оновлення інструкцій для вашої моделі.

Завантаження

Спочатку потрібно завантажити інструмент tw_cli. Це можна знайти на веб-сайті Avago Technologies *:

* Не хвилюйтеся, це не сторонній веб-сайт; 3ware було придбано AMCC, а потім продано корпорації LSI, яка згодом стала частиною Avago [ джерело ]. Щоб підтвердити це, зауважте, що 3ware.com переспрямовує на відповідну сторінку avagotech.com .

Введіть tw_cliу рядок пошуку, а потім перейдіть до тих пір, поки не знайдете назву для завантаження CLI Linux - from the 10.2.2.1/9.5.5.1 code sets(номер останньої версії може відрізнятися від зазначеного тут)

Витягніть zip-файл, і в тому, x86або x86_64ви знайдете потрібний вам tw_cliдвійковий файл. Збережіть цей двійковий файл на своєму сервері чи на комп’ютері.

Запуск tw_cli

ПРИМІТКА: (1) Утиліта командного рядка може запускатися як root. (2) Запустіть його, як і будь-який інший бінарний файл, додавши його до шляху, або запустивши його безпосередньо з поточного каталогу ./tw_cli.

Спочатку запустіть, tw_cli showщоб перелічити, які контролери RAID доступні у вашій системі:

# tw_cli show
Ctl   Model        (V)Ports  Drives   Units   NotOpt  RRate   VRate  BBU
------------------------------------------------------------------------
c2    9690SA-8I    6         6        2       0       1       1      Charging 

Тут ми можемо побачити один приєднаний контролер з ідентифікатором c2(пам’ятайте цей ідентифікатор!), На якому встановлено 6 фізичних дисків. Щоб отримати докладніші відомості про те, які накопичувачі приєднані до пристрою, запустіть tw_cli /c2 show(замінивши /c2ідентифікатор вашого контролера):

# tw_cli /c2 show
Unit  UnitType  Status         %RCmpl  %V/I/M  Stripe  Size(GB)  Cache  AVrfy
------------------------------------------------------------------------------
u0    RAID-1    OK             -       -       -       298.013   Ri     ON     
u1    RAID-5    OK             -       -       64K     2793.94   Ri     ON     

VPort Status         Unit Size      Type  Phy Encl-Slot    Model
------------------------------------------------------------------------------
p0    OK             u0   298.09 GB SATA  0   -            ST3320613AS         
p1    OK             u0   298.09 GB SATA  1   -            ST3320613AS         
p2    OK             u1   931.51 GB SATA  2   -            Hitachi HDS721010CL 
p3    OK             u1   931.51 GB SATA  3   -            Hitachi HDS721010CL 
p4    OK             u1   931.51 GB SATA  4   -            Hitachi HDS721010CL 
p5    OK             u1   931.51 GB SATA  5   -            Hitachi HDS721010CL 

Перша група показує використовувані установки RAID. Друга група показує, які диски в даний час фізично прикріплені до сервера.

У цьому конкретному випадку у мене є дві конфігурації RAID:

  • u0-> Диски p0та p1обидва накопичувачі об'ємом 300 Гб того ж виробника, створені для використання RAID-1 (точні дзеркала один одного)
  • u1-> У мене є чотири диски Hitachi ( p2через p5) ТБ, встановлені за допомогою RAID-5 ("один з накопичувачів" використовується для забезпечення збереження даних, якщо будь-який з інших дисків виходить з ладу). Це означає (як ми бачимо згори), u1має 3 ТБ (або, вірніше, 2793.94 GB) корисних даних.

Ще більше інформації про стан та стан накопичувачів можна отримати, запустивши tw_cli /c2/u0 showабо tw_cli /c2/p0 show. Більш детальну інформацію та команди можна знайти на сторінках man .

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.