web-dev-qa-db-ja.com

/ homeのUbuntu「デバイスに空き容量がありません」、dfは100%いっぱい、dsははるかに少ない

重複の可能性:
dfとLinuxでルートパーティションのサイズが異なるLinux

Ubuntu 12.04サーバーでは、通常のユーザーは/home内のファイルを作成または追加できなくなり、「デバイスに空き容量がありません」というエラーが発生します。

/homeディレクトリの容量は1.7テラバイトであり、私が知る限り、実際に保存されているデータや使用されているiノードに関しては完全ではありません。

df -hは以下を示しています:

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は確かにかなりいっぱいに見えます。

du -hs /homeは別の方法を提案します:

1.4G    /home

Iノードの問題はありません-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

最近、数ギガバイトのアプリケーションキャッシュとログデータを/homeから削除しましたが、これはせいぜい数十ギガバイトであり、/homeの空き容量に近いところはありませんでした。

更新1

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

ここで何が起こっているのでしょうか?

4
Jon Cram

ファイルがまだ書き込みモードで開かれていることを確認します。

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

次のようなものが表示されます。

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

次に、ファイルをまだ使用しているプロセスを見つけます。

cd /proc/1111/fd
ls -l 4

サイズをゼロにすることで、サービスを再起動せずにスペースを解放できます。

> /proc/1111/fd/4

試してみる。

10
quanta