क्या मैं लिनक्स के अंदर से हार्डवेयर RAID घुसपैठ का पता लगा सकता हूँ?


15

जब मैं लिनक्स के अंदर होता हूं, तो मैं निम्न जानकारी प्राप्त कर सकता हूं 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]

क्योंकि लिनक्स में उपलब्ध स्थान की तुलना में सर्वर में अधिक भौतिक भंडारण है, इसका मतलब यह है कि मैं स्पष्ट रूप से RAID प्रणाली के कुछ रूप का उपयोग कर रहा हूं। गणित के एक बिट के साथ, मैं अक्सर यह पता लगा सकता हूं कि किस प्रकार की RAID प्रणाली का उपयोग किया जा रहा है।

क्या मेरे लिए यह पता लगाने का कोई तरीका है कि क्या मैं लिनक्स के अंदर से हार्डवेयर RAID का उपयोग कर रहा हूं , और सर्वर को बंद किए बिना , इसके बारे में सभी जानकारी (जैसे कि RAID, उपलब्ध ड्राइव) का पता लगाकर, भौतिक रूप से ड्राइव को बाहर निकालना, और उनके लेबल पढ़ रहे हैं?

क्या यह जानकारी लिनक्स के अंदर से एकत्र की जा सकती है, या ऑपरेटिंग सिस्टम को "अदृश्य" बनाने के लिए हार्डवेयर RAID का बिंदु है?


यह पूरी तरह से आपके द्वारा उपयोग किए जा रहे RAID नियंत्रक पर निर्भर करता है और लिनक्स के नीचे इसका क्या समर्थन है। यदि आप अपने नियंत्रक के बारे में जानकारी प्रदान करते हैं तो आपको यहाँ मदद मिल सकती है। यदि आपको यहाँ पर आवश्यक जानकारी नहीं मिलती है, तो आप "मॉडल # लिनक्स कमांड" के लिए एक वेब खोज भी कर सकते हैं।
जीन

@ यह दुर्भाग्यपूर्ण है। फिर से, मैं उम्मीद कर रहा था कि एक ऐसा समाधान था जिसे विशिष्ट मॉडल संख्या को देखने की आवश्यकता नहीं है, लेकिन इसका उपयोग किया जा सकता है चाहे आप किसी भी हार्डवेयर का उपयोग कर रहे हों।
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

आदेश डेबियन और उबंटू पर उपलब्ध नहीं है, लेकिन एक त्वरित रूप 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रूट के रूप में चलाएं केवल हार्डड्राइव के बारे में विवरण प्रदर्शित करें (जिसमें RAID जानकारी शामिल है)।

RAID नियंत्रक उपकरण ढूँढना

अब जब हमारे पास निर्माता और मॉडल संख्या है, तो उनकी वेबसाइट पर उपकरण ढूंढना संभव हो सकता है, या कम से कम Google विवरण पर सक्षम होना चाहिए कि उस विशिष्ट नियंत्रक के लिए उपकरण कैसे ढूंढें और उनका उपयोग कैसे करें।

यदि निर्माता इस सूची में दिखाई देता है, तो अपने कार्ड के लिए RAID जानकारी कैसे प्राप्त करें, इस बारे में अधिक जानकारी के लिए इन उत्तरों को देखें:


5

जैसे कुछ चलाते हैं lspci -knn | grep 'RAID bus controller'

उस आउटपुट का उपयोग करके, Google (उदाहरण के लिए) LSI Logic / Symbios Logic MegaRAID SAS 2208

पता लगाएं कि यह storcliRAID नियंत्रक से पूछताछ करने के लिए उपयोगिता का उपयोग करता है ।

इसे डाउनलोड करें और इंस्टॉल करें।

storcli64 show आपको विशेष रूप से नियंत्रक का मॉडल देता है, और नियंत्रक सूचकांक, ड्राइव समूहों की संख्या, और आभासी ड्राइव।

storcli64 /c0/d0 showआपको पहला नियंत्रक, पहला ड्राइव समूह दिखाता है। आपको बताता है कि घोंसले के शिकार सहित स्तर पर छापे।

storcli64 /c0/eall/sall show all आपको सभी डिस्क पर सभी जानकारी दिखाता है।

उन आदेशों के लिए आगे संदर्भ डेटा यहां पाया जा सकता है:

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

आप सभी को करना चाहिए। बस लिनक्स में सामान्य हार्डवेयर आत्मनिरीक्षण का उपयोग करें, फिर Google, फिर उसके साथ जाने वाली उपयोगिताओं को डाउनलोड और इंस्टॉल करें।

@ जीन के सुझाव और टिप्पणियां बिल्कुल हाजिर हैं।

यह उत्तर पूरी तरह से उस आउटपुट के लिए विशिष्ट है जो आप lspciकमांड से प्राप्त करते हैं , और निर्माता को पहचानने के लिए और सही कंप्यूटर टूल को हथियाने के लिए आपकी Google खोज की क्षमता है।

लेकिन यह दिखाता है कि आप यह सब एक सर्वर से, एक कमांड लाइन पर, मशीन को बिना रुके, केस खोलकर, और ड्राइव को खींच कर प्राप्त कर सकते हैं, जो मुझे आशा है कि सहायक है।


चूँकि मेरे प्रश्न का उत्तर हार्डवेयर विशिष्ट होने जा रहा है, मैंने जो किया वह एक समुदाय विकी उत्तर जोड़ रहा था कि कैसे पता लगाया जाए कि आप RAID नियंत्रक का उपयोग कर रहे हैं । यह उत्तर फिर उन उत्तरों (आपके सहित) से जुड़ता है जो विशिष्ट नियंत्रकों या निर्माताओं के लिए विवरण प्रदान करते हैं।
IQAndreas सेप

यदि आप इसे दर्शाने के लिए अपने उत्तर के प्रारूप को अपडेट करना चाहते हैं, तो यह अच्छा होगा, लेकिन सख्ती से आवश्यक नहीं।
IQAndreas सेप

2

यह एक आकार-फिट-सभी उत्तर नहीं है और आपको आपकी ज़रूरत की सभी जानकारी नहीं देता है, लेकिन हमने जो एक एडेप्टेक हार्डवेयर RAID नियंत्रक का उपयोग किया है, उसने विशेष उपकरणों / देवों के माध्यम से खुद ड्राइव पर कुछ पहुंच दी है। / 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। यह एवागो टेक्नोलॉजीज वेबसाइट * पर पाया जा सकता है:

* चिंता मत करो, यह एक तीसरी पार्टी की वेबसाइट नहीं है; 3वेयर एएमसीसी द्वारा खरीदा गया था, और फिर बाद में एलएसआई कॉर्पोरेशन को बेच दिया गया, जो बाद में एवागो [ स्रोत ] का हिस्सा बन गया । इसे वापस करने के लिए, ध्यान दें कि 3ware.com avagotech.com पर संबंधित पेज पर रीडायरेक्ट करता है

tw_cliखोज बार में टाइप करें, फिर तब तक नेविगेट करें जब तक आपको एक डाउनलोड नाम नहीं मिलता CLI Linux - from the 10.2.2.1/9.5.5.1 code sets(नवीनतम संस्करण संख्या यहां सूचीबद्ध की गई तुलना में भिन्न हो सकती है)

ज़िप फ़ाइल को निकालें, और या तो x86या x86_64आपको वह tw_cliबाइनरी मिलेगा जिसकी आपको आवश्यकता है। इस बाइनरी को अपने सर्वर या कंप्यूटर में सेव करें।

चल रहा है tw_cli

नोट: (1) कमांड-लाइन उपयोगिता को रूट के रूप में चलाने की आवश्यकता हो सकती है। (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-> मेरे पास चार 1TB हिताची ड्राइव हैं (के p2माध्यम से p5) RAID-5 ("ड्राइव में से एक" का उपयोग करके यह सुनिश्चित करने के लिए उपयोग किया जाता है कि यदि कोई अन्य ड्राइव विफल रहता है तो डेटा संरक्षित है)। इसका मतलब है (जैसा कि हम ऊपर से देख सकते हैं) u1में 3TB (या, बल्कि, 2793.94 GB) प्रयोग करने योग्य डेटा है।

यहां तक ​​कि ड्राइव की स्थिति और स्वास्थ्य के बारे में अधिक जानकारी रनिंग द्वारा tw_cli /c2/u0 showया पाई जा सकती है tw_cli /c2/p0 show। अधिक विवरण और आदेश मैन पृष्ठों में पाए जा सकते हैं ।

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.