डिस्क संचालन डेबियन को फ्रीज करता है


12

मैंने अभी-अभी अपने नए डेस्कटॉप पर डेबियन परीक्षण स्थापित किया है और मैं प्रदर्शन से बहुत खुश नहीं हूं - जब मैं डिस्क गहन संचालन करता हूं, जैसे सिस्टम में संकुल को अपग्रेड करता है, तो सब कुछ जमने लगता है, जैसे कि आइसविसेल में टैब बदलने में 3 सेकंड लगते हैं। मैं अपने 3 साल पुराने थिंकपैड X60 अल्ट्रा-पोर्टेबल पर डेबियन चलाता हूं, और मेरे पास ये मुद्दे नहीं हैं। (लैपटॉप का हर एक पैरामीटर डेस्कटॉप से ​​बहुत खराब है)।

मैं डिफ़ॉल्ट पैक किए गए कर्नेल और स्क्रिप्ट का उपयोग कर रहा हूं।

मै भागा

hdparm -t /dev/sda1

और मुझे लगभग 96GB / s मिला, जो अपेक्षित है। इसे और बेहतर बनाने के लिए मैं और क्या प्रयास कर सकता हूं?

संपादित करें :

grzes:/home/ga# hdparm -i /dev/sda

/dev/sda:

 Model=WDC WD15EARS-00Z5B1, FwRev=80.00A80, SerialNo=WD-WMAVU1362357
 Config={ HardSect NotMFM HdSw>15uSec SpinMotCtl Fixed DTR>5Mbs FmtGapReq }
 RawCHS=16383/16/63, TrkSize=0, SectSize=0, ECCbytes=50
 BuffType=unknown, BuffSize=unknown, MaxMultSect=16, MultSect=16
 CurCHS=16383/16/63, CurSects=16514064, LBA=yes, LBAsects=2930277168
 IORDY=on/off, tPIO={min:120,w/IORDY:120}, tDMA={min:120,rec:120}
 PIO modes:  pio0 pio3 pio4
 DMA modes:  mdma0 mdma1 mdma2
 UDMA modes: udma0 udma1 udma2 udma3 udma4 udma5 *udma6
 AdvancedPM=no WriteCache=enabled
 Drive conforms to: Unspecified:  ATA/ATAPI-1,2,3,4,5,6,7

 * signifies the current active mode

EDIT2 : यहां तक ​​कि मेरी पत्नी ने कहा "इस नए कंप्यूटर पर मैं कुछ भी नहीं कर सकता जब मैं कैमरे से तस्वीरें कॉपी करता हूं और पुराने पर इससे भी बदतर"। तो यह गंभीर होना चाहिए।

EDIT3 : 2.6.32 को अपडेट किया गया, लेकिन फिर भी कोई सुधार नहीं हुआ

EDIT4 : मैं यह उल्लेख करना भूल गया कि नई डिस्क ext4 है, पुरानी ext3 थी।

EDIT5 : अभी भी हल नहीं हुआ है। मेरे पास P43 ASUS P5QL-E बोर्ड है। Dmesg से लाइनें जो प्रासंगिक लगती हैं:

[    0.370850] Block layer SCSI generic (bsg) driver version 0.4 loaded (major 253)                              
[    0.370852] io scheduler noop registered                                                                      
[    0.370853] io scheduler anticipatory registered                                                              
[    0.370854] io scheduler deadline registered                                                                  
[    0.370876] io scheduler cfq registered (default)
...
[    0.908233] ata_piix 0000:00:1f.2: version 2.13                                                               
[    0.908243] ata_piix 0000:00:1f.2: PCI INT B -> GSI 19 (level, low) -> IRQ 19                                 
[    0.908246] ata_piix 0000:00:1f.2: MAP [ P0 P2 P1 P3 ]                                                        
[    0.908275] ata_piix 0000:00:1f.2: setting latency timer to 64                                                
[    0.908316] scsi0 : ata_piix                                                                                  
[    0.908374] scsi1 : ata_piix                                                                                  
[    0.909180] ata1: SATA max UDMA/133 cmd 0xa000 ctl 0x9c00 bmdma 0x9480 irq 19                                 
[    0.909183] ata2: SATA max UDMA/133 cmd 0x9880 ctl 0x9800 bmdma 0x9488 irq 19                                 
[    0.909199] ata_piix 0000:00:1f.5: PCI INT B -> GSI 19 (level, low) -> IRQ 19                                 
[    0.909202] ata_piix 0000:00:1f.5: MAP [ P0 -- P1 -- ]                                                        
[    0.909228] ata_piix 0000:00:1f.5: setting latency timer to 64                                                
[    0.909279] scsi2 : ata_piix                                                                                  
[    0.909326] scsi3 : ata_piix                                                                                  
[    0.910021] ata3: SATA max UDMA/133 cmd 0xb000 ctl 0xac00 bmdma 0xa480 irq 19                       

1
मेरे साथ भी यही समस्या है। मैं ubuntu 9.10 64 बिट का उपयोग करता हूं।
अभिजीत रस्तोगी

1
इसके लिए कोई अपडेट? अभी भी समस्या है? यदि हां, तो क्या आप हमें बता सकते हैं कि मदरबोर्ड किस चिपसेट का उपयोग कर रहा है? dmesgचिपसेट या ड्राइव के संबंध में कुछ भी दिलचस्प है ? यदि आपने इसे किसी तरह तय किया है, तो भविष्य के पाठकों को बताने के लिए एक उत्तर के रूप में राइटअप पोस्ट करने पर विचार करें।
क्विक क्वोटोटे

@ ~ क्वैक, अभी तक हल नहीं हुआ है, कृपया संपादन देखें।
ग्रेजेनियो

जवाबों:


4

विभाजन के लिए ऑफसेट की जाँच करें - EARS के लिए 4 से विभाज्य होने की आवश्यकता है क्योंकि उनके पास 4096 तकनीक है। यदि यह नहीं है - संरेखण और प्रदर्शन के मुद्दों को दूर करने के लिए इसे पुनर्प्रतिष्ठित करना चाहिए (गलत ईएआरएस ड्राइव बहुत अधिक सेक्टर प्रति ओपी लिखते हैं)।


Ooooooooo। आप संभवतया किसी काम में लगे हो सकते हैं। dmesg आउटपुट इंगित करता है कि यह 512-बाइट सेक्टर ड्राइव के रूप में ड्राइव का पता लगा सकता है: "[sda] 2930277168 512-बाइट लॉजिकल ब्लॉक" .. क्या ड्राइव पर "XP जम्पर" है जो किसी प्रकार की संगतता मोड सेट करेगा? वहाँ है ... यहाँ "उन्नत प्रारूप" जम्पर देखें: wdc.custhelp.com/cgi-bin/wdc.cfg/php/enduser/… .. जो संभवतः ओएस को बताता है कि उसे 512-बाइट सेक्टर मिले हैं, सुनिश्चित करें कि यह नहीं है सेट।
क्वैक कोटे

आपको जवाब के लिए धन्यवाद। क्या आप बता सकते हैं कि मैं ऑफ़सेट की जाँच कैसे करूँ? क्या मैं सिर्फ विभाजन को स्थानांतरित कर सकता हूं, या क्या मुझे इसे फिर से बनाना होगा?
ग्रेजेनियो

क्या विभाजन पर ऑफसेट की जांच करने का एक तरीका है? एक कमांड जिसे चलाया जा सकता है?
वॉरेन पी

आप विभाजन ऑफसेट की जाँच करने के gdisk उपयोग कर सकते हैं - rodsbooks.com/gdisk
जेम्स Sumners

4

बहुत सारे डिस्क IOs करते समय मेरे पास समान फ्रीज मुद्दा था। बैकअप के दौरान डेस्कटॉप कुछ सेकंड के लिए बार-बार बैकअप समाप्त होने तक फ्रीज़ कर देता था।

यह किसी भी संरेखण से संबंधित नहीं था और न ही कोई hdparm ट्यूनिंग (हालांकि मैं मानता हूं कि यह मदद करेगा)।

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

समस्या को हल करने के लिए, आपको समय सीमा IO अनुसूचक का उपयोग करना होगा। आप इसे निम्नलिखित कमांड के साथ डिस्क पर सक्रिय करते हैं जिसे आप /etc/rc.local में जोड़ सकते हैं :

echo deadline >  /sys/block/sda/queue/scheduler

जब अधिक जानकारी के लिए गहन डिस्क I / O का प्रदर्शन किया जाता है , तो लिनक्स सिस्टम लॉक को चेक करें ।


2

यह अंधेरे में एक शॉट है, लेकिन मुझे थोड़ी देर पहले इस तरह की समस्या हुई है, और इसका कारण यह निकला कि कर्नेल ने चिपसेट का पूरी तरह से समर्थन नहीं किया और डीएमए को बंद कर दिया गया। इससे जाँच करें

hdparm -i /dev/sda

डीएमए मोड में से एक सक्षम है या नहीं।

(उस मामले में समाधान एक नया कर्नेल प्राप्त करना था।)


OUTPUT: - DMA मोड: mdma0 mdma1 mdma2 UDMA मोड: udma0 udma1 udma2 udma3 udma4 udma5 * udma6 तो, क्या समस्या है ??
अभिजीत रस्तोगी

मुझे मिल गया: Model=WDC, FwRev=80.00A80, SerialNo=WD-WMAVU1362357 Config={ HardSect NotMFM HdSw>15uSec SpinMotCtl Fixed DTR>5Mbs FmtGapReq } RawCHS=16383/16/63, TrkSize=0, SectSize=0, ECCbytes=50 BuffType=unknown, BuffSize=0kB, MaxMultSect=16, MultSect=16 CurCHS=16383/16/63, CurSects=16514064, LBA=yes, LBAsects=2930277168 IORDY=on/off, tPIO={min:120,w/IORDY:120}, tDMA={min:120,rec:120} PIO modes: pio0 pio3 pio4 DMA modes: mdma0 mdma1 mdma2 UDMA modes: udma0 udma1 udma2 udma3 udma4 udma5 *udma6 AdvancedPM=no WriteCache=enabled Drive conforms to: Unspecified: ATA/ATAPI-1,2,3,4,5,6,7
Grzenio

किसी भी dma मोड में कोई तारा नहीं है (यह इसके प्रासंगिक है)। फर्क पड़ता है क्या? मैं इसे कैसे कॉन्फ़िगर कर सकता हूं?
ग्रेजेनियो

इसके अलावा, मुझे यकीन नहीं है कि अगर यह केवल आईडीई उपकरणों के लिए प्रासंगिक नहीं है, क्योंकि मुझे मिलता है: hdparm -d / dev / sda / dev / sda: HDIO_GET_DMA विफल: डिवाइस के लिए अनुचित ioctl
ग्रामियो

@Grzenio: udma6 मोड में एक तारा है, क्या यह गलत है? आप इस जानकारी को अपनी पोस्ट में संपादित करना चाहते हैं ताकि आप इसे प्रारूपित कर सकें।
क्वैककोट

2

मैंने उन समस्याओं में भाग लिया है जहाँ ऑपरेशन जो बहुत सारे fsync (2) कॉल करते हैं, एक बड़ी प्रणाली की मंदी का कारण बनेंगे। मेरे मामले में, मैं अपने रूट विभाजन के साथ चल रहा हूं, एलवीएम में निहित एलयूकेएस में निहित है। क्या आप LVM या LUKS का उपयोग कर रहे हैं?

एक उपकरण जो पिनपाइंट की मदद कर सकता है जो विशेष रूप से आपके डिस्क को चबा रहा है (केवल "स्थापित पैकेज" के बजाय) कहा जाता है iotop। जब आप इन कार्यों में से एक करते हैं, तो मैं इसे चलाने का सुझाव दूंगा, और यह कुछ अन्य पृष्ठभूमि प्रक्रिया को इंगित कर सकता है जो एक ही समय में ट्रिगर हो सकता है और आपके सभी I / O थ्रूपुट को चूस सकता है।


हाय, देर से जवाब के लिए खेद है: iotop का कहना है कि [jbd2 / sda3-8] 80% -99% IO का उपयोग करता है, लेकिन डिस्क रीड, राइट और स्वैपिन 0.0 एक ही समय में हैं। कोई विचार?
ग्रेजेनियो

सामान्य तौर पर, अत्यधिक fsync के लिए जाँच करना जाँच करने के लिए एक अच्छा बिंदु है। हालाँकि इस मामले में एक ही सॉफ्टवेयर अन्य हार्डवेयर (पुराने T60) पर बेहतर प्रदर्शन करता है, इसलिए यह इस विशेष हार्डवेयर-चालक संयोजन के साथ एक समस्या की तरह दिखता है। फिर भी, इसे ध्यान में रखना अच्छा है।
सालेके

2

सूद fdisk -u / dev / sda

कि आपको शुरुआती ऑफसेट देना चाहिए। मुझे लगता है कि आप fdisk -o 64 या कुछ का उपयोग करके विभाजन बना सकते हैं - मुझे इसे Google को करना होगा ताकि बीमार आपको fdisk पर googling करें और मैन्युअल रूप से विभाजन ऑफ़सेट की स्थापना करें (डिफ़ॉल्ट 63 है इसलिए कोई अच्छा नहीं है)।

और हाँ डिस्क 512b सेक्टरों के साथ दिखाई देगी क्योंकि यह OS की तरह होने का दिखावा करता है - Vista / W7 इसे सही ऑफसेट सेट करके संभालता है, लेकिन XP और मुझे लगता है कि सभी लाइनस डिस्ट्रोस के पास नहीं है :( मैन्युअल रूप से यह ऐसा ही लगता है (मेरा सिर्फ एक स्टोरेज ड्राइव है और win7 / ntfs में बनाया गया है, इसलिए यह मेरे लिए कोई समस्या नहीं है)

संपादित करें: - wdc पर एक अच्छा पोस्ट मिला - यह आपके पास होना चाहिए और कुछ ही समय में चल रहा है :)

http://community.wdc.com/t5/Desktop/Problem-with-WD-Advanced-Format-drive-in-LINUX-WD15EARS/mp/10920#M631


नमस्ते, मुझे मिल गया: पुरस्कार: / घर / गा # fdisk -u / dev / sda इस डिस्क के लिए सिलेंडरों की संख्या 182401 पर सेट है। इसमें कुछ भी गलत नहीं है, लेकिन यह 1024 से बड़ा है, और कुछ निश्चित प्रमाणों में हो सकता है साथ कारण समस्याओं: 1) सॉफ्टवेयर है कि बूट समय (जैसे, लिलो के पुराने संस्करण) 2) बूट और अन्य OS (जैसे, डॉस FDISK, ओएस / 2 FDISK) कमान (मदद के लिए मीटर) से सॉफ्टवेयर विभाजन पर रन:
Grzenio

मैं अंत में इसे पूरा करने में कामयाब रहा, लेकिन इससे वास्तव में मदद नहीं मिली :( असली मुद्दा कहीं और होना चाहिए।
ग्राज़ियो

1

बस एक यादृच्छिक शॉट, जो बेवकूफ लगता है कि आप डेबियन का उपयोग करते हैं ... लेकिन मैंने पाया कि यह उसी एचडीडी मॉडल के साथ किसी की मदद करता है: क्या आपने अपने BIOS को अपडेट करने की कोशिश की है?


नहीं, मैंने नहीं। हालांकि शायद कोशिश कर रहा है
ग्रेंजियो

1

अंगूठे के एक सामान्य नियम के रूप में, यदि आप डिवाइस पर HDparm का उपयोग कर सकते हैं, तो यह "पुराना" ATA इंटरफ़ेस, बनाम नया SATA / SCSI इंटरफ़ेस है। यदि ऐसा है, तो समस्या यह है कि डिस्क के दौरान डिस्क ऑप्स डिफ़ॉल्ट रूप से सक्षम नहीं हैं। पुराने एटीए इंटरफेस का उपयोग करते हुए कुछ मशीनों पर यह एक सामान्य मुद्दा है और भारी आई / ओ संचालन के दौरान डिस्क या सिस्टम के प्रदर्शन को नीचा दिखाएगा।

आपको वास्तव में यह कोशिश करनी चाहिए:

sudo hdparm -t -T /dev/sda
sudo hdparm -a8 -c3 -u1 /dev/sda
sudo hdparm -t -T /dev/sda

यदि आपको 2 वीं टाइम रन (तीसरी कमांड) पर प्रदर्शन में सुधार नहीं दिखता है, तो कुछ और चल रहा है।

एक अन्य कारक गैर-यूडीएमए केबल पर काम करने के लिए यूडीएमए 6 मोड की उम्मीद कर रहा है (यह मानते हुए कि यह एसएटीए इंटरफ़ेस नहीं है)। यदि आप 80-पिन एटीए केबल का उपयोग कर रहे हैं, तो आप ठीक हैं; यदि आप एक पुराने 40-पिन का उपयोग कर रहे हैं, तो आपको सभी प्रकार के दुःख होंगे। यदि केबल पुराना 40-पिन है, तो आपको स्थानांतरण दर को कुछ इस तरह से नीचे ले जाना होगा, जिसे "सुरक्षित रूप से" का समर्थन किया जा सके। चेतावनी: आईडीई इंटरफ़ेस को समायोजित करने से ड्राइव और / या इंटरफ़ेस लटका हो सकता है, और यदि ड्राइव आपका रूट फाइल सिस्टम है, तो पूरा सिस्टम इसके साथ लटका रहेगा!

क्या आपको हार्डवेयर से मिलान करने के लिए स्थानांतरण दर को कम करने की आवश्यकता है, निम्न प्रयास करें:

sudo hdparm -t -T /dev/sda
sudo sync; sleep 3 ; sync    
sudo hdparm -d 1 -X mdma2 /dev/sda
sudo hdparm -t -T /dev/sda

फिर से, दूसरी टाइमिंग (जारी की गई तीसरी कमांड) में सुधार दिखाना चाहिए।

अंत में, ड्राइव स्वयं ही सीमांत हो सकती है, लेकिन स्मार्ट रिपोर्टिंग के बिना, आप इस मुद्दे को नोटिस नहीं कर सकते हैं (जब तक कि बहुत देर हो चुकी है)। मैं वास्तव में smartmontoolsआपकी सहायता के लिए पैकेज को स्थापित करने की सलाह दूंगा, खासकर यदि आपके पास एक पुरानी ड्राइव है जिसे अभी और फिर थोड़ा टीएलसी की आवश्यकता होगी।

sudo apt-get update && apt-get install smartmontools

यदि अन्य सभी विफल रहता है, तो /var/log/messagesडिस्क I / O त्रुटियों के लिए देखें।


अपडेट करें:

ऐसा प्रतीत होता है कि आप अकेले नहीं हैं। इन इकाइयों के साथ सभी तरह के दिल के दर्द की 'नेट रिपोर्टिंग' के संदेश बोर्ड हैं।

4k सेक्टर आकार बनाम "पारंपरिक" 512 बाइट आकार का उपयोग करके ड्राइव का भी उल्लेख है। मैं केवल कल्पना कर सकता हूं कि यह किस तरह की परेशानी पैदा कर रहा है।

अंत में, अपने आउटपुट को फिर से देखते हुए, ऐसा प्रतीत होता है कि जर्नलिंग थ्रेड बहुत अधिक सिस्टम को बांध रहा है। एक गैर-जर्नल फ़ाइल सिस्टम अस्थायी रूप से समस्या को कम कर सकता है, लेकिन यह सबसे अच्छा में रोगनिरोधी है, और सबसे खराब समस्या को ठीक नहीं करता है।


आपके जवाब के लिए धन्यवाद। (1) यह एक SATA ड्राइव है और इसका मुख्य फलक पर sata इंटरफ़ेस में एक पतली sata केबल का उपयोग करके जुड़ा हुआ है। (2) पहला परीक्षण करने की कोशिश की, और प्रदर्शन actaully 90.93 एमबी / सेकंड से घटकर 52.50 एमबी / सेकंड हो गया। कच्ची पठन प्रदर्शन समस्या नहीं लगती है (90MB मैं इस ड्राइव से क्या उम्मीद करता हूं), इसके बस कुछ छोटे ऑपरेशन सिस्टम को फ्रीज करते हैं
ग्रेजेनियो

दूसरे परीक्षण में वास्तव में कुछ भी सुधार नहीं हुआ। पहले मामले में और दूसरा अधिकांश पैरामीटर सेट करने में विफल होते हैं: एचडीपीआर -d 1 -X mdma2 / dev / sda / dev / sda: सेटिंग सेटिंग_dma to 1 (on) HDIO_SET_DMA विफल: डिवाइस सेटिंग xfermode के लिए अनुचित ioctl 34 (बहुशब्द डीएमए मोड 2) HDIO_DRIVE_CMD (setxfermode) विफल: अमान्य एक्सचेंज HDIO_GET_DMA विफल: डिवाइस के लिए अनुपयुक्त ioctl
ग्रंजियो

मैंने कल स्मार्टमोनोल स्थापित किए, लेकिन मुझे नहीं पता कि उनका उपयोग कैसे करना है। क्या आप थोड़ा और विस्तार दे सकते हैं?
ग्रेजेनियो

आउच। इसलिए एक नया हार्ड ड्राइव एक अच्छा विचार होगा।
वॉरेन पी।

1

यह अंत में तय हो गया है! जैसा @Rachel ने बताया, समस्या वास्तव में 4kb सेक्टर के साथ संरेखण के साथ थी, लेकिन दुर्भाग्य से जुड़ा लेख गलत था :(

विभाजन को संरेखित करने का सही तरीका यहां है: http://www.linuxconfig.org/linux-wd-ears-advanced-format

और यह लेख एक बहुत अच्छा बेंचमार्क देता है ताकि आप जांच सकें कि क्या आपकी विभाजन तालिका सही है: http://article.gmane.org/gmane.linux.utilities.util-linux-ng/2955

एक साइड नोट पर, यदि आपके पास यह ड्राइव है और लिनक्स का उपयोग करते हैं, तो आप यहाँ वर्णित के रूप में बेकार टाइमर्स में से एक को भी बढ़ा सकते हैं: http://wdc.custhelp.com/cgi-bin/wdc.cfg/php/suser/std_adp .php? p_faqid = 5357 & p_created = १२६६९४७०४६ और p_sid = Os7DQL2k और p_accessibility = 0 और p_redirect = & p_srch = 1 & p_lva = & p_sp = cF9zcmNoPTEmcF9zb3J0X2J5PSZwX2dyaWRzb3J0PSZwX3Jvd19jbnQ9NTEsNTEmcF9wcm9kcz0yMjcsMjk0JnBfY2F0cz0xMzAmcF9wdj0yLjI5NCZwX2N2PTEuMTMwJnBfcGFnZT0x और p_li = & p_topview = 1


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