कैसे पता चलेगा कि डिस्क SSD या HDD है


193

मैं जानना चाहता हूं कि डिस्क एक सॉलिड-स्टेट ड्राइव है या हार्ड डिस्क।

lshwस्थापित नहीं किया गया। मैं करता हूं yum install lshwऔर यह कहता है कि lshw नाम का कोई पैकेज नहीं है। मुझे नहीं पता कि http://pkgs.repoforge.org/lshw/ का कौन सा संस्करण मेरे CentOS के लिए उपयुक्त है।

मैं नेट खोजता हूं और ऐसा कुछ भी नहीं है जो यह बताता हो कि कैसे पता करें कि एक ड्राइव एसएसडी है या एचडीडी। क्या मुझे उन्हें पहले प्रारूपित करना चाहिए?

परिणाम fdisk -l:

Disk /dev/sda: 120.0 GB, 120034123776 bytes
255 heads, 63 sectors/track, 14593 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x00074f7d

   Device Boot      Start         End      Blocks   Id  System
/dev/sda1   *           1          14      103424   83  Linux
Partition 1 does not end on cylinder boundary.
/dev/sda2              14         536     4194304   82  Linux swap / Solaris
Partition 2 does not end on cylinder boundary.
/dev/sda3             536       14594   112921600   83  Linux

Disk /dev/sdc: 120.0 GB, 120034123776 bytes
255 heads, 63 sectors/track, 14593 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x00000000


Disk /dev/sdb: 128.0 GB, 128035676160 bytes
255 heads, 63 sectors/track, 15566 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x00000000


Disk /dev/sdd: 480.1 GB, 480103981056 bytes
255 heads, 63 sectors/track, 58369 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x00000000

1
यदि यह वास्तव में एक एसएसडी है तो आप विभाजन के साथ मिटा ब्लॉक को संरेखित करने के लिए इसे पुन: स्वरूपित करना चाह सकते हैं।
सिम्बियन

एसएटीए (सीरियल एटीए) ड्राइव के कनेक्शन प्रकार को संदर्भित करता है, और इसका मतलब यह नहीं है कि यह हार्ड डिस्क ड्राइव (एचडीआर) है। SSD एक साथ SATA हो सकते हैं, इसलिए मैं शीर्षक को संपादित करने का सुझाव दे रहा हूं।
स्पेलिंगड

जवाबों:


310

लिनक्स स्वचालित रूप से SSD का पता लगाता है, और कर्नेल संस्करण 2.6.29 के बाद से , आप इसके sdaसाथ सत्यापित कर सकते हैं :

cat /sys/block/sda/queue/rotational

आपको 1हार्ड डिस्क और 0एक एसएसडी के लिए मिलना चाहिए ।

यह संभवत: तब काम नहीं करेगा जब आपकी डिस्क हार्डवेयर (एक RAID नियंत्रक की तरह) द्वारा उत्सर्जित एक तार्किक उपकरण हो।

अधिक जानकारी के लिए यह उत्तर देखें ...


2
Stackoverflow पर किसी ने पाया यह sys-info काम नहीं करता है।
PythoNic

@ मुझे दो डिस्क मिली हैं, मैं कैसे पता लगा सकता हूं कि कौन सी एसएसडी है?
user11498

2
@ user11498 sdaद्वारा प्रतिस्थापित करें sdbऔर देखें कि कौन से SSD है ...
Totor

3
@Totor आप "हाइब्रिड" ड्राइव में सही हैं। हालाँकि, दोहरे ड्राइव संकर दो व्यक्तिगत ड्राइव के रूप में दिखाई देते हैं, जहाँ SSHD (सॉलिड-स्टेट हाइब्रिड ड्राइव) एकल ड्राइव के रूप में दिखाई देता है। तो, SSHD की 1. घूर्णी दिखाई देंगे
टेरेन्स

6
आभासी सर्वरों पर, आपको /sys/block/vda/queue/rotational
मोनो

90

साथ lsblk(का हिस्सा util-linuxपैकेज):

lsblk -d -o name, rota
NAME ROTA
sda     0
sdb     0
sdc     1

जहां का ROTAमतलब है rotational device( 1यदि सच है, 0तो गलत है)


1
लगता है कि उपयोगिता उसी सूचना को रिपोर्ट करती है /sys/block/.../rotational
dma_k

@dma_k थोड़ा आश्चर्य, यह देखते हुए कि यह एक का उपयोग करता है। इसे स्वयं आज़माएँ:strace lsblk -d -o name,rota /dev/sda 2>&1 | grep --context=3 --color rotational
एक CVn

5
वास्तव में मैं विभिन्न तरीकों से देख रहा था क्योंकि कुछ यूएसबी कंट्रोलर यह नहीं बताते हैं कि ड्राइव वास्तव में नॉन-रोटेशनल (उदाहरण के लिए, यूएसबी फ्लैश) है और लिनक्स में सच्चाई बताने का कोई तरीका नहीं है। दिन के अंत में मैंने तय किया है कि स्पष्ट नियम बनाकर /etc/udev/rules.d/90-non-rotational.rules:ACTION=="add|change", SUBSYSTEMS=="usb", ENV{ID_SERIAL}=="SanDisk_Ultra_Fit_*-0:0", ATTR{queue/rotational}="0", ATTR{queue/scheduler}="deadline"
dma_k

lsblkमेरे सभी अच्छे पुराने SATA कताई के लिए "0" की रिपोर्ट यहाँ (ASROCK mobo)। « कुछ यूएसबी नियंत्रक यह नहीं बताते हैं कि ड्राइव वास्तव में गैर-घूर्णी है (उदाहरण के लिए, यूएसबी फ्लैश) » @dma_k यह इतना सच है - और इस तरह से यूएसबी वायर्ड बाहरी कताई HDDs IMHA के लिए अन्य तरीके से बेहतर है ।
tuk0z

50

विक्रेता जानकारी प्राप्त smartctlकरने के लिए (इंस्टॉल करके इंस्टॉल smartmontools) का उपयोग करें ,

sudo smartctl -a /dev/sdb

यदि आप इस तरह से एक लाइन देखते हैं,

Rotation Rate: Solid State Device

यह एक SSD ड्राइव होगा।


5
smartctl आदेश नहीं मिला
IgorGanapolsky

7
smartctl पैकेज का एक हिस्सा है smartmontools
trr

27

मुझे VPS पर यह करने की आवश्यकता थी और मेरे द्वारा प्रदान किए गए किसी भी समाधान ने काम नहीं किया,

इस उत्तर ने चाल चली

https://serverfault.com/questions/551453/how-do-i-verify-that-my-hosting-provider-gave-me-ssds/551495#551495

इसलिए, यह ड्राइव से यादृच्छिक डेटा पढ़ने और समय का आकलन करने के बारे में है।

time for i in `seq 1 1000`; do
    dd bs=4k if=/dev/sda count=1 skip=$(( $RANDOM * 128 )) >/dev/null 2>&1;
done

यहाँ SSD के लिए मेरे परिणाम हैं

real    0m1.375s
user    0m0.285s
sys     0m0.944s

और एचडीडी

real    0m14.249s
user    0m0.752s
sys     0m6.284s

मेरे पास एक गैर-एसएसडी, RAID10 है, और मेरे परिणाम हैं: वास्तविक 0m1.351s - उपयोगकर्ता: 0m0.307s - sys: 0m0.560s
the_nuts

1
यह एक अच्छा जवाब है और यह बोर्ड भर में काम करता है। बात कुछ एचडीडी की है जो काफी तेज हैं और परिणाम एसएसडी के समान हो सकते हैं। फिर भी, यह उत्तर एक अच्छा मीट्रिक प्रदान करता है।
इटोक्टोपस

1
एसएसडी के बिना मेरे वीपीएस पर यह आपके एसएसडी उदाहरण की तरह परिणाम प्रदान करता है। मेरा मानना ​​है कि यह "हाइब्रिड" (एसएसडी कैश्ड एचडीडी) सेटअप द्वारा मूर्ख बनाया जा सकता है।
trr

मेरे लिए काम नहीं करता है। मुझे लगता है कि SSD और HDD समान परिणाम देते हैं।
क्यूकिब्रो

एक VPS हार्डवेयर के वर्चुअलाइज्ड पर। आप वास्तव में नहीं बता सकते हैं कि आपकी फाइलें एक एचडीडी, कैशेड या एसएसडी पर संग्रहीत हैं।
vidarlo

12

अन्य उत्तर पहले से ही आपको बता देते हैं कि कैसे इस जानकारी को कई तरीकों से प्राप्त करना है, जिसमें शामिल हैं /proc। लेकिन आपको इन सभी तंत्रों के झूठ बोलने की उम्मीद करनी चाहिए अगर रास्ते में कोई वर्चुअलाइजेशन है, जैसे कि एक हाइब्रिड सैन ऐरे जिसमें कई टियर हैं, या यदि लिनक्स मशीन एक वर्चुअल मशीन है (जहां लिनक्स संभवतः डिस्क को मूल SCSI घूर्णन डिस्क के रूप में रिपोर्ट करेगा। भले ही हार्डवेयर वास्तव में क्या है)


यह अधिक महत्वपूर्ण प्रतिक्रियाओं में से एक हो सकता है ... और BIOS के भीतर भी, या ईएफआई / यूईएफआई एक को एएचसीआई को एसएटीए नियंत्रक मोड सेट करने की आवश्यकता हो सकती है और फिर बायोस के भीतर प्रत्येक डिस्क को एसएसडी के रूप में चिह्नित कर सकते हैं। होम पीसी पर मेरा एस्कॉर्ट बोर्ड इस तरह है, याद नहीं रह सकता है कि सर्वर बोर्ड (सुपरमाइक्रो) पर कोई काम की चीज थी या नहीं, लेकिन मैं काम में एसएसडी का उपयोग नहीं करता।
रॉन

@ क्रोन - AHCI को SATA कंट्रोलर मोड सेट करने से आपका क्या मतलब है? डिवाइस एसएसडी है या नहीं, इसकी सटीक रिपोर्ट करने की क्षमता को कैसे प्रभावित करता है?
प्रेरित

AHCI बनाम IDE देखें, पहली वेब खोज से शब्दांकन: IDE को औसत कंप्यूटर उपयोगकर्ता के लिए पर्याप्त माना जाता है, और यह अन्य प्रौद्योगिकी, विशेष रूप से पुराने उपकरणों के साथ सबसे अधिक संगत है। हालाँकि, इसमें नई तकनीकों के लिए समर्थन का अभाव है ... AHCI एक मानक प्रणाली प्रदान करता है जो डिजाइनरों और डेवलपर्स SATA / AHCI एडेप्टर को कॉन्फ़िगर करने, पता लगाने या प्रोग्राम करने के लिए उपयोग कर सकते हैं। *
ron

यह BIOS में एक बुनियादी सेटिंग है, कहीं भंडारण के तहत, विकल्प IDE, AHCI हैं, और मदरबोर्ड के मेक / मॉडल / वर्ष के आधार पर भी RAID की पेशकश कर सकते हैं। SSD आईडीई के लंबे समय के बाद मूल रूप से अप्रचलित हो गया और मानक AHCI बन गया, उदाहरण के लिए आज एक कंप्यूटर पर Windows95 स्थापित करने से यह किसी भी हार्डवेयर को नहीं पहचान सकेगा ... IDE मोड में होने से निश्चित रूप से SSD के साथ संचार में मदद नहीं मिलेगी, लेकिन इतनी सटीकता नहीं है एक SATA नियंत्रक के साथ संवाद करने में सक्षम होने के नाते जो AHCI प्रोटोकॉल पर आधारित है।
रॉन

9

जाँच करें cat /proc/scsi/scsi। वहां आपको अपनी डिस्क का सटीक मॉडल देखना चाहिए। तो आप बस इसके बारे में जानकारी खोजने के लिए मॉडल को गूगल करें।


1
dmesgएक ही जानकारी होगी। dmesg | grep -i -e scsi -e ata
मैट

3

यह एक पुरानी पोस्ट है लेकिन मैं इसे करने के लिए एक और तरीका साझा करना चाहता था जो मुझे दुर्घटना से पता चला:

sg_vpd --page=bdc /dev/sda

यह ब्लॉक डिवाइस विशेषताओं के लिए वाइटल प्रोडक्ट डेटा को कमांड करता है। एक घूर्णन सिर डिस्क के लिए, आउटपुट में शामिल होगा: नाममात्र रोटेशन दर: 7200 rpm एक SSD के लिए, इसमें शामिल होंगे: गैर-घूर्णन माध्यम (जैसे ठोस राज्य)


+1। अच्छा है, लेकिन मेरे (उम्र बढ़ने और जल्द ही प्रतिस्थापित किया जा रहा है) पर WD ग्रीन्स कहते हैं Medium rotation rate is not reportedhdparmऔर smartmonctlऐसा ही कहो। मुझे लगता है कि WD बताना नहीं चाहता।
कैस

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