Rainbow Engine

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

Linux

Linuxの「inode」とは?概要や確認方法をご紹介

投稿日:2021年12月26日 更新日:

 

<目次>

(1) Linuxの「inode」とは?概要や確認方法をご紹介
 (1-1) Linuxの「inode」の概要
 (1-2) 「inode」の確認方法
 (1-3) 「inode」が枯渇について

(1) Linuxの「inode」とは?概要や確認方法をご紹介

(1-1) Linuxの「inode」の概要

「inode」はLinuxOSにおけるファイルに関する各種情報(例:パーミッション、所有者、ファイルサイズ、ファイル種別など)を保持したデータ構造です。「inode」はint型の整数により表現され、ファイルの生成時に割当てられます。

(1-2) 「inode」の確認方法

「inode」は「ls」コマンドで「-il」オプションを指定して確認できます。コマンド実行時の一番左に表示される数字が「inode」になります。

(図121)
 
(例)
[root@tk2-216-17994 bin]# ls -lai
合計 502184
5898594 drwxr-xr-x  2 oracle oinstall     12288  5月  9 15:23 2020 .
5898261 drwxr-xr-x 72 oracle oinstall      4096  7月 23 17:08 2017 ..
5902796 -rwxr-xr-x  1 oracle oinstall      9060  2月 15 13:06 2008 AgentLifeCycle.pm
5902797 -rwxr-xr-x  1 oracle oinstall      2343  7月 26 14:02 2006 AgentMisc.pm
5902798 -rwxr-xr-x  1 oracle oinstall     17833  9月 13 07:03 2007 AgentStatus.pm
5902799 -rwxr-xr-x  1 oracle oinstall      3265  7月 31 15:11 2008 AgentSubAgent.pm
 
また、システム全体のinode情報を確認するには「df」コマンドの「-i」オプションを使用します。
 
(図122)
 

(1-3) 「inode」が枯渇について

●枯渇するとどうなる?

 
「inode」が枯渇すると、例えディスク上に空き領域が残っていても、(カーネルが)新しいファイルを生成出来なくなります。例えば、以下は「inode」が逼迫(使用率100%)に達している例です。
 
(図131)仮想ディスクの3つ目のパーティション「vda3」(※注1)のinodeが100%
(例)
 
$ df -i
Filesystem      Inodes   IUsed  IFree IUse% Mounted on
/dev/vda3      6414336 6414336      0  100% /
tmpfs           240224       3 240221    1% /dev/shm
/dev/vda1        64000      50  63950    1% /boot
 
(※注1)「/dev/vda3」について==========
まず頭の「/dev/」はデバイスフォルダを保持するためのディレクトリです。
 
その中でも「/dev/vda」はシステムの1つ目の準仮想化ディスクを表しており、更にその中のパーティションが順番に「/dev/vda1」「/dev/vda2」と順番に名づけられていきます。更に別の仮想ディスクがあれば、今度は3文字目を「b」にして「/dev/vdb」という名前になります。なので「/dev/vda3」は仮想ハードディスクの3つ目のパーティションという事になります。
 
他にも種類があり、「/dev/hda」はシステムの1つ目のハードディスク全体を表しています。これらも命名規則(末尾のアルファベットや番号)の付き方はvdaと同じです。
 
最後に「/dev/sda」は「スカジー」の事で、コンピューターとハードディスクを繋いで通信する際のインターフェイスです(ちょっと古めの技術)。これらも命名規則(末尾のアルファベットや番号)の付き方はvdaと同じです。
 
================================

●「inode」の上限値はどのように決まる?

では、「inode」の上限値はどのように決まるのでしょうか?これはOS(Linux)のファイルシステムを構築する段階で指定する「bytes per inode」(inode単位のバイト数)という値が重要になります。
 
つまり、「ファイルシステム全体の容量」÷「bytes per inode」した値が、ファイルシステム上で作れるinodeの数(=ファイル数)の上限値になります。そして、ひとたび「inode」が割り当てられると、ファイルシステムを作り直さない限りは、その上限値は変動しません。
 

Adsense審査用広告コード


Adsense審査用広告コード


-Linux

執筆者:


comment

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

関連記事

VNC ServerとGNOMEデスクトップの概念や基本的な仕組みについて

(0)目次&概説 (1) 記事の目的・概要 (2) アーキテクチャ  (2-1) VNC Serverとは?  (2-2) Graphical Desktop Environmentとは?  (2-3 …

Linux(CentOS7)にTomcatをインストールする手順について

(0)目次&概説 (1) 記事の目的/前提 (2) 実施手順  (2-1) Tomcat用ユーザ/グループ作成  (2-2) 資源のダウンロード  (2-3) 資源の解凍  (2-4) 資源に必要権限 …

GNOMEのランチャー設定手順をEclipseを例にご紹介

<目次> (1) GNOMEのランチャー設定手順をEclipseを例にご紹介  (1-1) EclipseのGNOME用ランチャー作成手順  (1-2) 備考:上記対応で追加されない場合 GNOMEの …

Linuxにおけるデーモンやサービスの意味や常用コマンドについて

(0)目次&概説 (1) 記事の目的  (1-1) 目的  (1-2) 前提条件 (2) デーモン/サービスとは?(CentOS6以前)  (2-1) デーモン/サービスとは?  (2-2) Syst …

Linuxで一般ユーザ(rootスイッチ権限有り)を作成する方法

Linuxでユーザを作成する方法を書きます。 (0)目次 >(1)作業の背景・目的・前提条件 >(2)ユーザの作成 >(3)ユーザの「Wheel」グループへの追加 (1)作業の背景・目的・前提条件 「 …

  • English (United States)
  • 日本語
Top