ルートファイルシステムがいっぱいになったらどうすればいいですか?


33

/フォルダーがいっぱいになっていて、ソフトウェアを更新したり、何もできません。

ここで何が間違っているのか分かりません。

$ df -h
Results:
Filesystem            Size  Used Avail Use% Mounted on
/dev/sda1             5.7G  5.4G     0 100% /
udev                  1.9G  4.0K  1.9G   1% /dev
tmpfs                 770M  1.1M  769M   1% /run
none                  5.0M     0  5.0M   0% /run/lock
none                  1.9G  808K  1.9G   1% /run/shm
/dev/sda6             961M   18M  895M   2% /tmp
/dev/sda7             9.9G  2.9G  6.6G  31% /home
/dev/sda3             5.7G  140M  5.3G   3% /usr/local
/dev/sda4             2.9G  1.3G  1.4G  49% /var
/dev/sdb1              94G  1.3G   88G   2% /sites
/home/username/.Private  9.9G  2.9G  6.6G  31% /home/username
/dev/sdb5             282G   88G  180G  33% /mnt/multimedia


$ df -h /
Results:
Filesystem      Size  Used Avail Use% Mounted on
/dev/sda1       5.7G  5.4G     0 100% /

$ du /mnt /media
Results:
4   /mnt/multimedia
8   /mnt
4   /media

これはUbuntu 12.04の新規インストールであり、ルートシステムがこれほどフルである理由はわかりません。


ハァッ どういうわけか、それはいっぱいだと思います。質問をzwetsの推奨出力で調整しました
-Jesse

私にとっては、古いカーネルでいっぱいになっていた dpkg -l 'linux-*' | sed '/^ii/!d;/'"$(uname -r | sed "s/\(.*\)-\([^0-9]\+\)/\1/")"'/d;s/^[^ ]* [^ ]* \([^ ]*\).*/\1/;/[0-9]/!d' | xargs sudo apt-get -y purge ので、これをUbuntuコミュニティヘルプ
-RajaRaviVarma

回答:


30

オーバーフローしたルートパーティションのいくつかの可能性のある対策は(ケースに基づいて)です。

1.コアダンプがディスクをいっぱいにします。

確認する:

find / -xdev -name core -ls -o  -path "/lib*" -prune

2.スペースを埋める不要なパッケージ。

次のコマンドは、自動的にインストールされたすべてのパッケージを削除しますが、これはもう必要ありません。(過去にインストールを強制する依存関係が削除されたため。)

apt-get autoremove --purge 

3.古いカーネルパッケージ

インストールされているカーネルパッケージの数を確認し、古いカーネルバージョンを削除します。現在の状況は次の方法で調査できます。

dpkg -l "linux*{tools}*" |grep ^.i

不要になったカーネルバージョンを削除します

4.非表示のストレージ

他のマウントされたパーティションは、使用済みストレージを隠す場合があります。これを調査するには、2番目の場所に一時的にルートファイルシステムをマウントします。

mkdir /tmp/2ndRoot
mount /dev/sda1 /tmp/2ndRoot

ここで、通常は別のマウントによって隠されているすべてのディレクトリを確認します。例:

  • tmp
  • ホーム
  • 走る
  • var
  • usr / local

    あなたの場合も:

  • サイト

警告

最後に、インストールの一貫性を次のように制御することを忘れないでください。

apt-get install -f

ノート

予約済みストレージ

/dev/sda1       5.7G  5.4G     0 100% /

出力はまだスペースがあることを示していますが、ルート用に予約されているようです。良い点は、システムの機能が現在も提供されていることです。

しかし、すぐに問題を修正する必要があります。

Ubuntu 12.04のスペース消費

Ubuntuのインストールに5.7 Gbのみを使用するのは少し少なすぎるようです。不要なソフトウェアパッケージを削除する必要があります。

現在のインストールでは、ルートおよびバイナリ(別名/usr)パーティションに10〜14 Gbが使用されています。


おかげでルートパーティションにぶつかっただけで、すべてのフォルダー(おそらくローカル/ビン?)を表示するためにあなたのトリックで作業しなければならない場合、私はそれを監視し続けます。奇妙なことに、ディスクスペースアナライザーツールは、/ media /にマウントされたドライブがすべて赤でいっぱいであると信じさせられました。
ジェシー

このコマンド「apt-get autoremove --purge」によって@ H.-Dirk Schmitt 1.3 GBが削減されました。詳細をありがとう。
sugunan

28

すべてのディスク容量がどこに行くかを知るために魔法のコマンドを共有するだけです:

sudo du -hsx /* | sort -rh | head -n 40

次のような非常に簡潔なレポートになります。

16G     /home
5.3G    /var
2.6G    /usr
840M    /run
277M    /root
171M    /lib
59M     /tmp
25M     /sbin
19M     /boot
16M     /bin
9.6M    /etc
136K    /ngx_pagespeed-latest-stable.zip
24K     /DEBIAN
16K     /lost+found
8.0K    /media
4.0K    /srv
4.0K    /opt
4.0K    /mnt
4.0K    /lib64

その後、別のフォルダーから再度開始できます。

sudo du -hsx /home/* | sort -rh | head -n 35

必要のないものを削除すれば大丈夫です。私のLinux チートシートの一部です


ニースのポストと持っている便利なツール...
ジョージUdosen

3
隠しフォルダーはどうですか?ドットで始まるもの。
ジョンレッド

@JohnRedホームディレクトリなど:du -hsx $(ls -A ~/) | sort -rh
ritiek

4

別の解決策はncdu、例えばを使用することです:

sudo ncdu -x /

/は確認したいパーティション/ドライブです。私の例では、結果は

    4,0GiB [##########] /usr
  579,3MiB [#         ] /root
  487,4MiB [#         ] /opt
   41,7MiB [          ] /lib
   22,7MiB [          ] /sbin
   21,2MiB [          ] /boot
   18,6MiB [          ] /etc
    9,1MiB [          ] /bin
    3,6MiB [          ]  core
  260,0KiB [          ] /build
   88,0KiB [          ] /tmp
e  16,0KiB [          ] /lost+found
    8,0KiB [          ] /media
    4,0KiB [          ] /lib64
e   4,0KiB [          ] /srv
e   4,0KiB [          ] /mnt
>   0,0  B [          ] /var
>   0,0  B [          ] /sys
>   0,0  B [          ] /run
>   0,0  B [          ] /proc
>   0,0  B [          ] /ovhbackup
>   0,0  B [          ] /home
>   0,0  B [          ] /dev

次に、キーボードの矢印を使用してフォルダ間を移動し、Dキーを押すだけでフォルダ/ファイルを削除できます。

ncduaptDebianベースのシステムのパッケージツールからインストールできます。

sudo apt install ncdu

0

「du」コマンドで「/home/yourname/.local/share/Trash」フォルダーを確認します(上記を参照)。

私はこれと同じ問題を抱えていて、上記のトリックmickaelを使用して、ディスク使用量を簡潔に出力しました。ウィンドウマネージャーを使用して物を削除し、その時点で十分なアクセス許可がない場合、削除したと思われるファイル(両方とも「rm」と「apt autoremove --purge」を使用してコマンドラインで、ゴミ箱を空にすることで)ルートパーティションの「.local / share / ____」で終わる可能性があります。

ウィンドウマネージャーの左ペインの「ファイルシステム」は、Ubuntu / Mintのインストールファイル用に確保した50 GBのほぼいっぱいを言っていました。このパーティションに誤ってコピーした講義は、最初にコピーするつもりだったパーティションに移動しても削除されなかったことがわかりました。現在は36 GBの空き容量があり、これがより理にかなっています(主に大きなパーティションの画像をすばやくプレビューするためにこのパーティションにHDグラフィックスを保持しているため、私は大きいです)。

ファイルを削除/管理する前に、アクセス許可について十分に理解してください。または、SSDを圧迫して、削除されたと思われるものがあるかもしれません。

サイドノートとして、私の16GBのRAMはブート時に92%でロードされていましたが、ルートパーティションは削除されたファイルを格納しており、この同じ問題のために着実にそこにとどまりました。ramは、Linuxのパフォーマンスを大幅に向上させるためにディスク上のアイテムをキャッシュするために使用されます。オペレーティングシステムは、インストールパーティションを正しく使用していると仮定します(この場合は私には当てはまりませんでした)。システムの応答性を高めるためにできることをキャッシュします。ディスクキャッシュはメモリ内のスペースを予約しないため、これは注意点です。それは、要求されたときにそれを必要とする他のプログラムに使用されたRAMスペースをもたらします(それがディスクキャッシュの仕組みです)が、それは私が起動するたびに14.5GBの削除されたファイルをRAMにロードするリソースの不必要な使用です

それが役に立てば幸い!上記の回答に感謝します。


弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.