xvda1% 100 dolu, Nedir? nasıl düzeltilir?


41

EC2'de bir Linux örneği çalıştırıyorum (MongoDB ve node.js yüklü) ve bu hatayı alıyorum:

Cannot write: No space left on device

Sanırım bu dosyaya kadar izledim, işte df çıktı

Filesystem           1K-blocks      Used Available Use% Mounted on
/dev/xvda1             1032088   1032088         0 100% /

Sorun, bu dosyanın ne olduğunu bilmiyorum ve bu dosyanın sorun olup olmadığını da bilmiyorum.

Öyleyse sorum şu: "Aygıtta yer kalmadı" hatasını nasıl düzeltirim?

Yanıtlar:


65

Bu dosya /sizin kök dizininiz. Gördüğünüz tek dosya sistemi buysa df, o zaman her şeydir. 1GB dosya sisteminiz var ve% 100 dolu. Bunun nasıl kullanıldığını anlamaya başlayabilirsiniz:

sudo du -x / | sort -n | tail -40

Daha sonra /en fazla alan kaplayan yollarla değiştirebilirsiniz . (Sonunda olacaklar, teşekkürler sort. Komut bir süre alabilir.)


19
Çıktıyı insan tarafından okunabilir bir formatta almak için kullanabilirsiniz sudo du -x -h / | sort -h | tail -40( bu cevaptan ).
mkobit

Mikro AWS AMI örneklerinde olanlar için bu işlemin çalışması bir dakika kadar sürebilir. Sabırlı ol!
Dr Rob Lang

bununla ne yapmalı:sort: write failed: /tmp/sortGmL8oF: No space left on device
dOM

1
@dOM Ouch. Üzerindeki boşluğu temizlemeye çalışın /tmp. Veya gerekirse, komutları gibi komutlarla adım adım daraltın du -xhs /*.
David Schwartz

du -x -h / | sort -h | tail -40 | sort -h -rinsan tarafından okunabilir çıktı kullanırken azalan sıralamada kullanılabilir.
Vigs

14

Neredeyse 5 yıl sonra bu konuya cevap verdiğimi biliyorum ama birilerine yardımcı olabilir, aynı problemi yaşadım, m4.xlarge örneğini kullandım df -h / dev / xvda1'in dolu olduğunu söyledi - -% 100

Filesystem      Size  Used Avail Use% Mounted on
udev            7.9G     0  7.9G   0% /dev
tmpfs           1.6G  177M  1.4G  12% /run
/dev/xvda1      7.7G  7.7G     0 100% /
tmpfs           7.9G     0  7.9G   0% /dev/shm
tmpfs           5.0M     0  5.0M   0% /run/lock
tmpfs           7.9G     0  7.9G   0% /sys/fs/cgroup
tmpfs           1.6G     0  1.6G   0% /run/user/1000

burada çözmeye çalıştım adımlar

sudo find / -type f -printf '%12s %p\n' 2>/dev/null|awk '{if($1>999999999)print $0;}'

Tüm alanımı konuşan docker konteyner olduğunu bilmeme yardımcı oldu, bu yüzden tüm konteynerimi docker kayıt defterime zorladım sonra sudo rm -rf / var / lib / docker / yerimi temizledi :) birine yardımcı olur umarım :)


8

Bir EBS önyükleme örneği çalıştırıyorsanız (önerilir), o zaman bu makalede açıklanan prosedürü kullanarak kök (/) biriminin boyutunu artırabilirsiniz:

Çalışan EBS Boot EC2 Eşgörünümünde Kök Diski Yeniden Boyutlandırma
http://alestic.com/2010/02/ec2-resize-running-ebs-root

Örnek saklama örneği çalıştırıyorsanız (önerilmez), kök diskin boyutunu değiştiremezsiniz. Dosyaları silmeniz veya dosyaları geçici depolamaya (örneğin, / mnt) taşımanız veya EBS birimlerini eklemeniz ve dosyaları buraya taşımanız gerekir.

İşte bir MySQL veritabanının kök diskten EBS birimine nasıl taşınacağını açıklayan bir makale:

EBS ile Amazon EC2 üzerinde MySQL Koşu
http://aws.amazon.com/articles/1663

... ve EBS önyükleme örneklerine geçmeyi düşünün. Kendine daha sonra teşekkür etmenin birçok nedeni var.


EBS ile çalışıyorum, kök diski genişletmek oldukça ucuz mu? Neyse ki MySQL ile uğraşmak zorunda değilim, Projelerim şu anda Mongo / Redis. Burada bazı harika malzemeler. +1

2

Son zamanlarda Amazon Linux'ta bu sorunla karşılaştım. Benim crontab giden e-posta /var/spool/clientmqueuekuyruğum 4.5GB idi.

Bunu çözdüm:

  1. Büyük dosyaları bulma: sudo find / -type f -size +10M -exec ls -lh {} \;
  2. Büyük dosyaların silinmesi: /bin/rm -f <path-to-large-file>
  3. Sunucu örneğini yeniden başlat

Sorun çözüldü!


1

Ben sadece bu komutu çalıştırarak bu sorunu çözdüm:

sudo apt autoremove

ve çok sayıda eski paket çıkarıldı, 5 gigabayttan kurtuldu, örneğin "linux-aws-headers-4.4.0-1028" gibi birçok paket vardı.


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.