Disk işlemleri Debian'ı donduruyor


12

Debian testini yeni masaüstüme yeni kurdum ve performanstan çok memnun değilim - disk yoğun bir işlem gerçekleştirdiğimde, örneğin sistemdeki yükseltme paketleri, her şey donuyor gibi görünüyor, örneğin Iceweasel'deki sekmeleri değiştirmek 3 saniye sürüyor. Debian'ı 3 yaşındaki Thinkpad X60 ultra taşınabilir cihazımda çalıştırıyorum ve bu sorunlarım yok. (dizüstü bilgisayarın her bir parametresi masaüstünden çok daha kötüdür).

Varsayılan paketlenmiş çekirdek ve komut dosyalarını kullanıyorum.

koşarım

hdparm -t /dev/sda1

Ve 96GB / s civarında bir hız aldım. Daha iyi çalışmasını sağlamak için başka neler deneyebilirim?

DÜZENLE :

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 : Eşim bile "bu yeni bilgisayarda fotoğrafları kameradan kopyaladığımda hiçbir şey yapamıyorum ve eskisinden çok daha kötü" dedi. Bu yüzden ciddi olmalı.

EDIT3 : 2.6.32'ye güncellendi, ancak yine de gelişme yok

EDIT4 : Yeni disk ext4, eski ext3 olduğunu belirtmeyi unuttum.

EDIT5 : Hala çözülmedi. Bir P43 ASUS P5QL-E kartım var. Dmesg'den alakalı görünen satırlar:

[    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
Aynı problemim var. Ubuntu 9.10 64 bit kullanıyorum.
Abhijeet Rastogi

1
bunun için herhangi bir güncelleme var mı? hala sorunu mu yaşıyorsunuz? öyleyse, anakartın hangi yonga setini kullandığını söyleyebilir misiniz? dmesgyonga seti veya sürücü ile ilgili ilginç bir şey var mı? bir şekilde çözdüyseniz, gelecekteki okuyucuların bilmesini sağlamak için bir yazma işlemi yanıt olarak göndermeyi düşünün.
quack quixote

@ ~ quack, henüz çözülmedi, lütfen düzenlemeye bakın.
Grzenio

Yanıtlar:


4

Bölüm ofsetini kontrol edin - 4096 teknolojisine sahip oldukları için EARS için 4'e bölünebilir olması gerekir. Değilse - hizalama ve performans sorunları ortadan kaldırmak için yeniden bölümlendirin (yanlış hizalanmış EARS diskleri, op başına çok daha fazla sektör yazımı yapacak).


ooooooooo. bir şey üzerinde olabilirsiniz. dmesg çıkışı, sürücüyü 512 bayt sektör sürücüsü olarak algılayabileceğini gösterir: "[sda] 2930277168 512 bayt mantıksal bloklar" .. sürücüde bir tür uyumluluk modu ayarlayacak bir "XP atlama kablosu" var mı? burada ... bkz. "Gelişmiş Biçim" atlama teli: wdc.custhelp.com/cgi-bin/wdc.cfg/php/enduser/… .. muhtemelen işletim sistemine 512 bayt sektörleri olduğunu söyler, emin olun Ayarlamak.
quack quixote

cevap verdiğin için teşekkürler. Ofseti nasıl kontrol ettiğimi söyleyebilir misiniz? Bölümü taşıyabilir miyim yoksa yeniden mi oluşturmak zorundayım?
Grzenio

Bölümdeki ofseti kontrol etmenin bir yolu var mı? Çalıştırılabilecek bir komut?
Warren P

Bölüm ofsetlerini kontrol etmek için gdisk'i kullanabilirsiniz - rodsbooks.com/gdisk
James Sumners

4

Çok fazla disk GÇ yaparken benzer donma sorunu yaşadım. Yedekleme sırasında, masaüstü yedekleme tamamlanıncaya kadar birkaç saniye donuyordu.

Herhangi bir hizalama veya herhangi bir hdparm ayarı ile ilgili değildi (her ne kadar yardımcı olacağını kabul etsem de).

Sistem kilitlenmesine, daha etkileşimli uygulamaların (Firefox, KDE veya başka herhangi bir şey) ihtiyaç duyduğu bazı ES'leri geciktiren IO zamanlayıcı neden oldu. Hatalı IO zamanlayıcı cfg idi .

Sorunu çözmek için, son tarih IO zamanlayıcısını kullanmanız gerekir. Disk üzerinde /etc/rc.local dosyasına ekleyebileceğiniz aşağıdaki komutla etkinleştirirsiniz :

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

Daha fazla bilgi için Yoğun disk G / Ç gerçekleştirildiğinde Linux sistem kilidinin çözülmesini kontrol edin .


2

Karanlıkta bir çekim, ama bir süre önce böyle bir sorun yaşadım ve bunun nedeni çekirdeğin yonga setini tamamen desteklemediği ve DMA'nın kapatıldığı ortaya çıktı. İle kontrol et

hdparm -i /dev/sda

DMA modlarından birinin etkin olup olmadığı.

(Bu durumda çözüm daha yeni bir çekirdek elde etmekti.)


ÇIKIŞ: - DMA modları: mdma0 mdma1 mdma2 UDMA modları: udma0 udma1 udma2 udma3 udma4 udma5 * udma6 yani, sorun nedir ??
Abhijeet Rastogi

Ben aldım: 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

Hiçbir dma modu bir yıldıza sahip görünmüyor (onunla alakalı). Önemli mi? Nasıl yapılandırabilirim?
Grzenio

Ayrıca, sadece IDE cihazları ile ilgili olup olmadığından emin değilim, çünkü şunu alıyorum: hdparm -d / dev / sda / dev / sda: HDIO_GET_DMA başarısız oldu: Cihaz için uygun ioctl
Grzenio

@Grzenio: udma6 modunda bir yıldız var gibi görünüyor, bu yanlış mı? biçimlendirebilmeniz için bu bilgileri yayınınızda düzenlemek isteyebilir.
quack quixote

2

Çok sayıda fsync (2) çağrısı yapan işlemlerin büyük bir sistem yavaşlamasına neden olacağı sorunlarla karşılaştım. Benim durumumda, LUKS içinde bulunan LVM'de bulunan kök bölümümle çalışıyorum. LVM veya LUKS mu kullanıyorsunuz?

Disklerinizi özel olarak neyin çiğnediğini saptamanıza yardımcı olabilecek bir araca (yalnızca "paketleri yüklemek" yerine) denir iotop. Bu görevlerden birini yaparken çalıştırmayı öneririm ve aynı anda tetikleyen ve tüm G / Ç işleminizi emen başka bir arka plan işlemine işaret edebilir.


Merhaba, geç cevap için özür dilerim: iotop, [jbd2 / sda3-8] 'in% 80-% 99 IO kullandığını, ancak disk okuma, yazma ve takas işleminin aynı anda 0.0 olduğunu söylüyor. Herhangi bir fikir?
Grzenio

Genel olarak, aşırı fsync olup olmadığını kontrol etmek kontrol etmek için iyi bir noktadır. Bununla birlikte, bu durumda aynı yazılım diğer donanımlarda (eski T60) çok daha iyi performans gösterir, bu nedenle bu özel donanım sürücüsü kombinasyonu ile daha çok bir sorun gibi görünür. Yine de, bunu akılda tutmak güzel.
sleske

2

sudo fdisk -u / dev / sda

Bu size başlangıç ​​ofsetini vermelidir. Ben fdisk -o 64 ya da bir şey kullanarak bölüm oluşturabilirsiniz 'düşünüyorum' - Ben fdisk üzerinde googling yapmak ve bölüm ofset (varsayılan 63 yani thats hayır iyi) ayarlayacağım böylece google gerekir.

ve evet disk 512b sektörleri ile gösterecektir gibi OS - Vista / W7 gibi doğru ofset ayarlayarak bu ele, ama XP ve ben tüm linus distros dont :( el ile görünüyor gibi görünüyor (benimki sadece bir depolama sürücüsü ve win7 / ntfs içinde yaratıldı, bu yüzden benim için sorun değil)

Düzenleme: - wdc de güzel bir yazı bulundu - bu kadar zaman ve çalışan olmalıdır :)

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


Merhaba, anladım: grzes: / home / ga # fdisk -u / dev / sda Bu disk için silindir sayısı 182401 olarak ayarlanmış. Bununla ilgili bir sorun yok, ancak bu 1024'ten daha büyük ve bazı kurulumlarda olabilir ile durum probleme sebep 1) yazılım bu açılış süresi (örneğin, önyükleme ve diğer örn işletim (DOS FDISK, OS / 2 FDISK) Komutanlığı'nın yardım (m) yazılımı bölünmesi LILO eski sürümleri) 2) geçtiği:
Grzenio

Sonunda bunu başardım, ama gerçekten yardımcı olmadı :( Asıl mesele başka bir yerde olmalı.
Grzenio

1

Debian'ı kullandığınızda aptalca görünen rastgele bir çekim ... ama aynı HDD modeline sahip birine yardımcı olduğunu buldum: BIOS'unuzu güncellemeye çalıştınız mı?


Hayır. Muhtemelen denemeye değer
Grzenio

1

Genel bir kural olarak, cihazda hdparm kullanabiliyorsanız, daha eski SATA / SCSI arabirimine karşılık "eski" ATA arabirimidir. Bu durumda, sorun muhtemelen kesintiler sırasında disk op'larının varsayılan olarak etkin olmamasıdır. Bu, eski ATA arabirimini kullanan bazı makinelerde yaygın bir sorundur ve ağır G / Ç işlemleri sırasında diskin veya sistemin performansını düşürecektir.

Bunu gerçekten denemelisiniz:

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

2. zamanlama çalıştırmasında (üçüncü komut) performansta bir iyileşme görmüyorsanız, başka bir şey oluyor.

Başka bir faktör, UDMA6 modunun UDMA olmayan bir kablo üzerinde çalışmasını beklemek (bir SATA arayüzü olmadığı varsayılarak). 80 pimli ATA kablosu kullanıyorsanız, sorun yok; daha eski bir 40 pim kullanıyorsanız, her türlü keder alırsınız. Kablo eski 40 pimli ise, aktarım hızını "güvenli" olarak desteklenebilecek bir değere düşürmeniz gerekir. UYARI: IDE arabirimini ayarlamak sürücüyü ve / veya arabirimi asabilir ve sürücü kök dosya sisteminizse, tüm sistem onunla takılır!

Donanıma uyacak şekilde aktarım hızını düşürmeniz gerekirse, aşağıdakileri deneyin:

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

Yine, ikinci zamanlama (üçüncü komut verildi) bir gelişme göstermelidir.

Son olarak, sürücünün kendisi marjinal olabilir, ancak SMART raporlaması olmadan, sorunu fark edemeyebilirsiniz (çok geç olana kadar). smartmontoolsÖzellikle ara sıra biraz TLC'ye ihtiyaç duyacak daha eski bir sürücünüz varsa, size yardımcı olması için paketi yüklemenizi gerçekten tavsiye ederim .

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

Her şey başarısız olursa, /var/log/messagesdisk G / Ç hataları olup olmadığına bakın.


Güncelleme:

Görünüşe göre yalnız değilsin. Ağın her yerinde bu birimlerle her türlü gönül yarasını bildiren mesaj panoları bulunmaktadır.

Ayrıca "geleneksel" 512 bayt boyutuna karşı 4k sektör boyutu kullanan diskten de bahsediliyor. Bunun ne tür bir soruna neden olması gerektiğini hayal edebiliyorum.

Son olarak, çıktınıza tekrar baktığınızda, günlük kaydı iş parçacığının sistemi hemen hemen bağladığı görülüyor. Günlüklü olmayan bir dosya sistemi sorunu geçici olarak hafifletebilir, ancak en iyi ihtimalle profilaktiktir ve sorunu en kötü şekilde çözmez.


Merhaba, Cevabınız için teşekkürler. (1) Bu bir SATA sürücüdür ve anakart üzerindeki sata arabirimine ince bir sata kablosu kullanılarak bağlanır. (2) İlk testi denedi ve performans actaully 90.93 MB / sn'den 52.50 MB / sn'ye düştü. Ham okuma performansı sorun gibi görünmüyor (90MB bu sürücüden beklediğim şey), sadece bazı küçük işlemler sistemi donduruyor
Grzenio

İkinci test de hiçbir şeyi geliştirmedi. Hem ilk durumda hem de ikinci parametrelerin çoğu ayarlanamaz: hdparm -d 1 -X mdma2 / dev / sda / dev / sda: _dma kullanarak 1 (açık) olarak ayarlanmadı HDIO_SET_DMA başarısız oldu: 34 (çok kelimeli DMA modu2) HDIO_DRIVE_CMD (setxfermode) başarısız oldu: Geçersiz HDIO_GET_DMA değişimi başarısız oldu: Cihaz için uygun olmayan ioctl
Grzenio

Dün smartmontools'u kurdum ama nasıl kullanacağımı bilmiyorum. Biraz daha ayrıntı verebilir misiniz?
Grzenio

Ahh. Yani yeni bir sabit disk iyi bir fikir olacaktır.
Warren P

1

Bu sonunda düzeltildi! @Rachel'in belirttiği gibi, sorun gerçekten 4kb sektörlerine uyumla ilgiliydi, ancak maalesef bağlantılı makale yanlıştı :(

Bölümleri hizalamanın doğru yolu şudur: http://www.linuxconfig.org/linux-wd-ears-advanced-format

Ve bu makale, bölüm tablonuzun doğru olup olmadığını kontrol edebilmeniz için oldukça iyi bir kıyaslama sağlar: http://article.gmane.org/gmane.linux.utilities.util-linux-ng/2955

Bir yan notta, bu sürücünüz varsa ve Linux kullanıyorsanız, burada açıklandığı gibi boşta kalma zamanlayıcılarından birini de artırmalısınız: http://wdc.custhelp.com/cgi-bin/wdc.cfg/php/enduser/std_adp php? p_faqid = 5357 & p_created = 1266947046 ve p_sid = Os7DQL2k ve p_accessibility = 0 ve p_redirect = & p_srch = 1 ve p_lva = & p_sp = cF9zcmNoPTEmcF9zb3J0X2J5PSZwX2dyaWRzb3J0PSZwX3Jvd19jbnQ9NTEsNTEmcF9wcm9kcz0yMjcsMjk0JnBfY2F0cz0xMzAmcF9wdj0yLjI5NCZwX2N2PTEuMTMwJnBfcGFnZT0x & p_li = & p_topview = 1


2. bağlantı herhangi bir yedek çalışmıyor mu?
xliiv
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.