Rainbow Planet (GT×IT×SP×SA)

IT技術を分かりやすく簡潔にまとめることによる学習の効率化、また日常の気付きを記録に残すことを目指します。

01_IT技術 (Technology) 01_Linux

Linuxの”No space left on device”エラーの対処方法

投稿日:2017年5月5日 更新日:

(0)目次&概説

(1) 障害・不具合の概要
(2) 障害・不具合の原因
(3) 障害・不具合の対処

(1) 障害・不具合の概要

Linuxでファイルを作成した時などに”No space left on device error”というメッセージが出てしまい、ファイル操作全般が出来なくなっています。一例として下図は、zipを解凍の際に”No space left on device error”のエラーが出て処理できない状況です。

目次にもどる

(2) 障害・不具合の原因

この事象は”inode”の容量が限界を超えた際に発生する様です。”inode”はファイルやディレクトリの属性情報(作成者、グループ、作成日時、サイズなど)が書かれた領域のことで、この情報を用いてファイルシステムの管理を行います。つまりファイル数が肥大化して管理情報である”inode”の量が上限値に達した時に発生します。

以下コマンドでinodeの利用率を確認します。

df -i

表示結果を見ると「/」の直下が”inode”の使用率100%になっている事が分かります。

具体的にどのディレクトリがパンクしたかを調べるために、下記の様なコマンドを用いてディレクトリ毎の容量を確認します。

/* "--max-depth=1" : 集計するディレクトリの深さ(階層)を指定 */
/* "2> /dev/null" : 集計不可のディレクトリに関する結果行を排除 */
du -ah --max-depth=1 / 2> /dev/null

今回は下記ディレクトリに大量のlink-xxxファイルが生成されたため、inodeがパンクしました。

/tmp/orbit-admin

下記は生成されたソケットファイルの例です(別サーバの例)。

このlinc-xxxファイルはGNOMEのソケットファイルで、このファイルが意図せず大量に生成されるバグも2015年にRed Hat社のBugzillaにてBug1258459として報告されています。

目次にもどる

(3) 障害・不具合の対処

まずは緊急対処としてファイルを削除することを考えます。今回「/tmp/orbit-admin/」配下には不要は「linc-xxx」ファイル以外のファイルは無いため、「/tmp/orbit-admin/」配下のファイルを全て消すための下記コマンドを入力します。

/* (1)削除対象のファイルがあるディレクトリに移動 */
cd /tmp/orbit-admin
/* (2)削除コマンドの実行 */
/* xargs構文:[command#1] | xargs [command#2] */
ls ./ | xargs rm

(2)で使用している”xargs”は前半部コマンドの実行結果を引数にして、後半部コマンドを実行することが出来ます。今回の例では前半部の”ls ./”の結果が格納され、その結果を基に後半部の削除(rm)を実行しています。 “ls ./”には「/tmp/orbit-admin/」配下の全てのファイルがヒットするため、ソケットファイルが全て抽出されます。

rmコマンドは「rm [file#1] [file#2]…[file#n]」のように複数ファイルを指定できますが、数が膨大になる場合は1件ずつの記載が難しいため、xargsのように一括抽出・引数指定が必須になってきます。

また今回は手動削除での対応でしたが、理想的には自動での対処が望まれるため、今後は自動化のスクリプトを作成を検討します。

目次にもどる

Adsense審査用広告コード


Adsense審査用広告コード


-01_IT技術 (Technology), 01_Linux

執筆者:


comment

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

関連記事

Linux:サーバ死活管理スクリプト

システム構築では「運用」の中で死活監視を行いますが、その概要と簡単なLinuxでの例を紹介します。 ●死活監視とは サーバーが止まらずに動いているか?のチェックを行うことです。 最も身近な死活チェック …

ハワイで海外挙式したい人向けモアナチャペルの費用や準備スケジュールの紹介(実体験)

この記事ではハワイで海外挙式したい人に向けての参考情報として「モアナチャペル」での挙式を例に挙げて「費用」と「スケジュール」と「挙式当日の流れ」の3点に焦点を当ててご紹介します。少しでも参考になれば幸 …

Linuxサーバ(CentOS6)にEclipse(OXYGEN)をインストールする

0.目次 (1) JDKの概要  (1-1) JDKの種類  (1-2) JDKのバージョン(2018年2月時点) (2) JDKのインストール  (2-1) wget コマンドでJDK の rpm …

CentOS6にVNCServerでリモート接続して日本語入力を可能にする方法

(0)目次&概説 (1) 記事の目的 (2) 日本語化の対応手順  (2-1) ibus系のインストール  (2-2) dbusインストール+エラー回避  (2-3) mocz系パッケージのインストー …

WordPressでパーマリンク設定変更の際、新URLにリダイレクトさせる為の設定方法

表題の内容について備忘メモを書きます。 ■目次 (0)リダイレクトとは (1)旧ページのURLを控える (2)リダイレクトの設定をする(.htaccessの編集) (3)パーマリンクの変更 (4)確認 …

Top