Büyük dosyaları USB'ye kopyalarken sistem donuyor / yanıt vermiyor / kullanılamıyor


49

Dün RAM'im 3 GB iken yavaş, 7 MB / s yazma hızına sahip bir USB'ye tek bir 8 GB dosya kopyalıyordum. Sistem kopyalanırken, imleci bile hareket ettiremediğim noktaya dondu.

Metin konsoluna giriş yapmayı başardım ve koştu iotop, adında bir işlemin kswapd0% 99,99'unu aldığını gösterdi .

Geçici çözümler var, bu nedenle büyük bir dosyayı kopyalamak sistemimi kullanılamaz hale getirmiyor mu?


11
Bu böcek çok saçma ...
king_julien

Yanıtlar:


32

Bu hata raporuna göre aşağıdaki satırları ekleyerek çözdüm

vm.dirty_background_ratio = 5
vm.dirty_ratio = 10

/etc/sysctl.conf dosyasına

ve koşma

sudo sysctl -p

12
Yukarıdaki satırların ne yaptığını açıklamak ister misiniz?
nsane

3
@ nisargshah95 üzgünüm, ama bir ipucu yok, kendin için ara ;-)
Philippe Gachoud

4
@ nisargshah95 Sorunun detayları, unix.stackexchange.com/a/107722/52205
Rmano

1
Teşekkür ederim, sadece Ubuntu 16.04'ümün bu iki satır olmadan USB'ye iki 1.4 GB dosya yazamayacağını buldum, saatlerce donmuştum, bu çözülmüş problem, ne yaptığı umurunda, bazen sadece dosyaları kopyalayıp taşımak istiyorsunuz üzerinde.
Mike,

1
Ben 5 ile 60 değerleri Bunlar kontrol vardı yüzde ederken, işlemler için kullanılan bellek dirty_background_bytesve dirty_byteskullanmak mutlak bayt değerleri. Ben ikinci cevap bu sorunu çözdüm ama yapmak kalıcı o eklemek sysctl.conf, bkz bu cevabı . Bu nedenle, yüzde değerleri kullanırken, belleği yükseltirken bunları ince ayar yapın.
PeterM

19

Benzer konuya girdim. Benimki 64 bit Ubuntu 14.04. Bu yüzden uzun bir mücadeleden sonra sorunumu çözen bir cevap buldum . Kolay kullanım için yukarıda belirtilen cevapta kullanılan komutları ekledim . Ayrıntılı açıklama için cevabı kontrol edin.

echo $((16*1024*1024)) > /proc/sys/vm/dirty_background_bytes
echo $((48*1024*1024)) > /proc/sys/vm/dirty_bytes

Yukarıdaki komutu kullandıktan sonra sistem dosya kopyalama konusunda normal çalışmaya başladı.

@Rmano'ya teşekkürler .


2
Oran ayarları 12.04 sistemimde yavaş NAS payıyla yardımcı olmadı. Ancak doğrudan burada belirtilen şekilde bayt ayarladıktan sonra NAS'a kopyalanırken sistemim tekrar kullanılabilir.
mivk

6
Bu soru 3 yaşında ve hala pendrive'a kopyalanırken kullanılamaz bir sistem elde etmemek için hala gerekli. Bazı bilgiler: Eğer pendrive ext4 gibi bir Linux kullanarak biçimlendirilmişse bu olmaz. “Kullanılamaz sistem” dediğimde, gerçekten demek istediğim, fare imleci tepkisizleşir ve ekranda dolaşmak için ısrar etmek zorunda kalırsınız, sistem ekranına bakarsınız ve herhangi bir anormal kaynak kullanımı yoktur. Çekirdeklerin tümü 6. nesil Intel CPU ve SSD sürücüleri kullanıyor mu? Test sırasında bunu nasıl farketmediler?
Hatoru Hansou,

3
@HatoruHansou Aynı hissediyorum, sadece yeni Debian Stretch yüklü ve bu hata burada da mevcut. Dağılıma bağlı olmadığını, fakat çekirdek kaynaklarına bağlı olduğunu biliyorum, ama erkekler, bu neden hala sabit değil?
Marecky

1
@Marecky Biraz okuduktan sonra, dirty_bytes'in bir usb olayı olmadığı görülüyor. Tüm G / Ç'leri etkilerler, bu nedenle yankı işini yaptıktan sonra, onları yalnız başına aldıkları için değil, sistemi global olarak değiştirirsiniz. Sadece şu anki oturum için sanırım. Yeni depolama cihazlarında çekirdeğin mevcut değerlerinin ince ayarlandığı görülmektedir. Yavaş sarkaçlar yan etki olarak acı çekerler. Üzgünüz, bağlantı yok, ancak bunun için googling yaparak bulmak kolay olmalı.
Hatoru Hansou

3
Kalıcı yapmak için bu cevabı gör
PeterM 14:17

4

Flash sürücüye kopyalarken donma sisteminde de benzer bir sorunla karşılaşıyorum. Bu konuda hata raporu bildirdi: https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1267648

Geçici çözüm bulduğum gibi, takas işleminin devre dışı bırakılması bu sorunu tamamen ortadan kaldırıyor.


1
Ne yazık ki bu benim için Ubuntu 16.04 tarihinde işe yaramadı.
Programcı

Benim için de Ubuntu 16.04.3 LTS'de çalışmadı - bu bir Alienware 17 R2 dizüstü bilgisayarda.
AnthonyK

4

Evet, gerçekte diske yazılmadan önce ne kadar veri yazıldığını belirtmek için ayarlayabileceğiniz çekirdek ayarları vardır. Bunların oldukça kapsamlı bir açıklaması için buraya bakın . Özellikle, sizin için iyi çalışan bir dirty_ratio değeri bulmak istersiniz (genellikle masaüstü / dizüstü bilgisayar için varsayılan olarak çok yüksektir, ancak herkes için işe yarayan sihirli bir sayı yoktur).


2
Hey, lütfen dizüstü bilgisayarımın özelliklerine göre hangi numaraları belirlemem gerektiğini önerebilir misiniz? bakınız askubuntu.com/questions/713723/...

1

Dosyaları bir exfatsürücüye kopyalarken de benzer sorunlar yaşadım . ext4USB sabit sürücümdeki bir dosya sistemini kullanmada daha az sorun yaşadım .


1

Fedora 27 (çekirdek 4.17.5-100) USB'ye bağlı eğirme paspasından USB'ye bağlı flaş çubuğa kopyalama. Bu ekran soluk solmaya kadar solma gibi orta gidiyor. :-( ~~~
David Tonhofer

1

USB diskten SATA diskine çok sayıda dosyayı kopyalarken ubuntu 19.10'da tam olarak aynı sorunu (2019'da) yaşadım. Her iki dosya sistemi de ext4. Değişimi kapattığımda sorun ortadan kalktı. Disk arabellekleri için bellek ayırmada bir hata var gibi görünüyor - görünüşe göre, çekirdek disk arabellekleri için mümkün olduğu kadar bellek ayırmaya çalışıyor, bu durumda mümkün değil (takas sırasında disk arabellekleri ...) sadece yanlış önbellekleme için kullanılabilecek bellek boyutunu hesaplar ...

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.