LoginSignup
49
44

More than 5 years have passed since last update.

Linuxでディスク容量が足りない時のアプローチ

Last updated at Posted at 2014-12-04

Linuxでディスクフルの時に即対出来るようにメモ

ほとんど下記のブログの通りですが自分用に再加工
http://d.hatena.ne.jp/rx7/20130729/p1

現状確認

だいたいアラートや周囲のざわつきでしる。。。
やばいディスクフルだ。。

# df -h
Filesystem            Size  Used Avail Use% マウント位置
/dev/sda1              15G   15G     0 100% /
tmpfs                 1.9G     0  1.9G   0% /dev/shm

全体でどこがでかいか確認

サーバへの負荷を考慮して、niceコマンドで優先度さげて実行

#値が低い程優先度高い
# nice -n [-20から19]
#rootでない場合は、sudoする
# nice -n 19 du -h --max-depth=1 /
4.0K    /cgroup
156K    /dev
16K     /lost+found
11G     /opt
44M     /boot
2.3G    /usr
0       /misc
295M    /var
8.0K    /mnt
27M     /etc
219M    /tmp
0       /net
7.5M    /bin
30M     /root
29M     /lib64
4.0K    /srv
12M     /sbin
0       /sys
238M    /lib
0       /proc
38M     /home
4.0K    /selinux
4.0K    /media
14G     /

ディレクトリの目処つけたら

# nice -n 19 find /opt -size +100M -exec ls -lh {} \; 
-rw-rw-r-- 1 ikyuadm ikyuadm 225M 12月  4 11:51 2014 /opt/monaco/var/log/archive/aaa.tar.gz

ちなみに、findの-execオプションについても調べてみた

普段は、findコマンドは-printコマンドが省略されてるから標準出力される
今回調査した、-execを使うとコマンドに対してfindの結果を渡せるので、下記のようなケースで便利という話。

コマンド 意味
-exec command{} \; findの結果を1行ずつ処理
-exec command{} + findの結果をまとめて処理
#1行ずつ出力
$ find aaa -exec echo {} \;
aaa
aaa/aa.txt
aaa/bb.txt
#まとめて1行で出力
$ find aaa -exec echo {} +
aaa aaa/aa.txt aaa/bb.txt

findのオプションに関してはこれがわかりやすい
http://h50146.www5.hp.com/products/software/oe/hpux/developer/column/unixtext_app02/02.html

あとは見つけた不要ファイルを削除なりアーカイブなりしていき終了

49
44
2

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
49
44