Ubuntu „Nici un spațiu rămas pe dispozitiv” pentru /home, df arată 100% plin, ds arată mult, mult mai puțin [duplicat] (Administrarea sistemului, Utilizarea Spațiului Pe Disc, Ubuntu 12.04, Du, Df)

Jon Cram a intrebat.

Posibil duplicat:
Linux dimensiune diferită pentru df și du pentru partiția rădăcină

Pe un server Ubuntu 12.04, utilizatorii normali nu mai pot crea sau adăuga la fișiere în /home, , întâmpinând o eroare de tipul „No space left on device”.

Site-ul /home are o capacitate de 1,7 terabytes și, din câte îmi dau seama, nu este nici pe departe plin în ceea ce privește datele reale stocate sau inodurile utilizate.

df -h arată:

Filesystem      Size  Used Avail Use% Mounted on
/dev/md2        1.0T   18G  955G   2% /
udev            7.7G  4.0K  7.7G   1% /dev
tmpfs           3.1G  320K  3.1G   1% /run
none            5.0M     0  5.0M   0% /run/lock
none            7.7G     0  7.7G   0% /run/shm
cgroup          7.7G     0  7.7G   0% /sys/fs/cgroup
/dev/md3        1.7T  1.7T     0 100% /home
/dev/md1        496M   45M  426M  10% /boot

/home într-adevăr pare destul de plin.

du -hs /home sugerează contrariul:

1.4G    /home

Se pare că nu există nicio problemă cu inode – df -i:

Filesystem        Inodes  IUsed     IFree IUse% Mounted on
/dev/md2        67108864  75334  67033530    1% /
udev             2013497    527   2012970    1% /dev
tmpfs            2015816    440   2015376    1% /run
none             2015816      2   2015814    1% /run/lock
none             2015816      1   2015815    1% /run/shm
cgroup           2015816      9   2015807    1% /sys/fs/cgroup
/dev/md3       113909760 105981 113803779    1% /home
/dev/md1          131072    239    130833    1% /boot

Am șters recent o mulțime de gigabytes de cache de aplicații și date de jurnal din /home, , însă acestea au fost de ordinul zecilor de gigabytes în cel mai bun caz și nici pe departe de capacitatea lui /home.

Actualizare 1:

du -hs --apparent-size /home
1.2G    /home
du -hs /home
1.4G    /home

Ce s-ar putea întâmpla aici?

Comentarii

  • Puteți încerca du cu --apparent-size, , te rog? Pagina de manual spune: „tipărește dimensiunile aparente, mai degrabă decât utilizarea discului; deși dimensiunea aparentă este de obicei mai mică, poate fi mai mare din cauza golurilor din fișiere („rare”), a fragmentării interne, a blocurilor indirecte și altele asemenea”. Poate că vă ajută? –  > Por Axel Knauf.
  • @AxelKnauf: mulțumesc pentru sugestie, am actualizat întrebarea cu aceste detalii –  > Por Jon Cram.
  • Uitați-vă la răspunsurile la această întrebare: serverfault.com/q/132998/37499 –  > Por mjcopple.
  • Rulați du ca root? –  > Por Shane Madden.
  • Ați încercat să faceți fsck-ing pe volum? –  > Por James Yale.
1 răspunsuri
quanta

Verificați dacă fișierele sunt încă deschise în modul de scriere:

lsof | awk '/deleted/ && $4 ~ /[0-9]+w/ { print $0 }'

veți vedea ceva de genul acesta:

ossec-mai  1111    ossecm    4w      REG                3,3     ... (deleted)

apoi găsiți procesul care încă folosește fișierul:

cd /proc/1111/fd
ls -l 4

Poți elibera spațiul fără a reporni serviciul, reducând dimensiunea la zero:

> /proc/1111/fd/4

Încercați.

Comentarii

  • Bună sugestie, eram pe cale să întreb același lucru. De asemenea, menționat în această întrebare SO. –  > Por Axel Knauf.
  • Este foarte posibil să fi fost asta. Au existat niște fișiere jurnal foarte mari legate de acest lucru. Tocmai am repornit mașina și df -h arată acum mai mult decât mă așteptam. Din moment ce lucrurile sunt acum în regulă, nu pot fi sigur de cauză. Mă aștept ca această problemă să apară din nou în câteva săptămâni. Voi marca acest răspuns ca răspuns acceptat atunci dacă aceasta este cauza. –  > Por Jon Cram.
  • În plus față de cauzele deja sugerate, ar putea fi și următoarele: * un alt disc este montat „peste” dosarul existent, care este plin de date. * du va calcula dimensiunea cheltuită a discului montat, iar df va arăta dimensiunea cheltuită cu adevărat * soluție: (când este posibil) demontați toate discurile care nu sunt rădăcină și verificați dimensiunea cu du -md 1 din nou. Rezolvați situația prin mutarea hidden în alt loc sau prin montarea pe un alt loc. –  > Por Robert Lujo.