仮想ファイル・システムおよびシステム構成について
procfs
:/proc
にマウントされ、主にプロセスおよびハードウェアに関連するカーネル・データ構造へのインタフェースを提供します。sysfs
:/sys
にマウントされ、デバイス、カーネル・モジュール、ファイル・システムおよびその他のカーネル・コンポーネントに関する情報を提供します。
これらの仮想ファイル・システムは、オペレーティング・システムの稼働中にシステム構成を監視および調整できるように、実行中のカーネルを制御およびレポートするために使用されます。
カーネル仮想ファイル・システムの収集には含まれていませんが、/etc/sysconfig
システム構成ファイル・パスは、システムのブート時に読み取られる多くのコア・システム構成変数へのインタフェースを提供するため、重要です。
この章の説明に従ってシステム設定を構成する方法に関するハンズオン・チュートリアルについては、Oracle Linuxでのシステム設定の構成も参照してください。
/etc/sysconfigファイルについて
/etc/sysconfig
ディレクトリには、ブート後にシステムの構成を制御するいくつかのファイルが含まれています。このディレクトリの内容は、システムにインストールしたパッケージによって異なります。/etc/sysconfig
ディレクトリは、システム構成を制御するsystemdおよび関連コンポーネント(Network Managerなど)で使用される多数の構成ファイルの単一ビューを主に提供します。Oracle Linuxの新しいリリースでは、systemdおよび他の構成ユニットによって構成がより適切に処理されるため、このディレクトリ内の構成ファイルの数は減少しています。systemdの詳細は、『Oracle Linux 8: systemdでのシステムの管理』を参照してください。
/etc/sysconfig
ディレクトリには、次のようなファイルが含まれます:
-
atd
-
atd
デーモンに対して追加のコマンドライン引数を指定します。 -
autofs
-
デバイスを自動的にマウントしたり、自動マウンタの操作を制御するためのカスタム・オプションを定義します。
-
crond
-
ブート時に引数を
crond
デーモンに渡します。 -
chronyd
-
ブート時にNTPサービスに使用される
chronyd
デーモンに引数を渡します。 -
firewalld
-
起動時に引数をファイアウォール・デーモン(
firewalld
)に渡します。 -
grub
-
GRUB 2ブート・ローダーのデフォルト設定を指定します。このファイルは
/etc/default/grub
へのシンボリック・リンクです。詳細は、「GRUB 2ブート・ローダーについて」を参照してください。 -
named
-
ブート時に引数を名前サービス・デーモンに渡します。
named
デーモンは、Berkeley Internet Name Domain (BIND)ディストリビューションに含まれるドメイン・ネーム・システム(DNS)サーバーです。このサーバーは、ネットワーク上でホスト名をIPアドレスに関連付ける表を保持します。 -
samba
-
ブート時に引数を
smbd
、nmbd
およびwinbindd
デーモンに渡して、Windowsクライアントのファイル共有接続、NetBIOS-over-IPネーミング・サービス、およびドメイン・コントローラへの接続管理をサポートします。 -
selinux
-
システム上でSELinuxの状態を制御します。このファイルは
/etc/selinux/config
へのシンボリック・リンクです。詳細は、『Oracle Linux: SELinuxの管理』を参照してください。
-
snapper
-
snapper
ユーティリティによってコンテンツをスナップショットとして記録できる、btrfsファイル・システムおよびシン・プロビジョニングされたLVMボリュームのリストを定義します。詳細は、『Oracle Linux 8: ローカル・ファイル・システムの管理』 を参照してください。
-
sysstat
-
sar
など、システム・アクティビティのデータ・コレクタ・ユーティリティのロギング・パラメータを構成します。
詳細は、/usr/share/doc/initscripts*/sysconfig.txt
を参照してください。
/proc仮想ファイル・システムについて
/proc
ディレクトリ階層内のファイルには、システム・ハードウェアおよびシステムで実行中のプロセスに関する情報が含まれています。カーネルの構成を変更するには、書込み権限が設定されている特定のファイルに書き込みます。
/proc
ディレクトリの下のファイルは、基礎となるデータ構造およびシステム情報のビューを表示するために、要求に応じてカーネルによって作成される仮想ファイルです。このように、/proc
は仮想ファイル・システムの1つの例です。ほとんどの仮想ファイルはサイズが0バイトとしてリストされますが、表示すると、大量の情報が含まれています。
/proc/interrupts
、/proc/meminfo
、/proc/mounts
、/proc/partitions
などの仮想ファイルでは、システムのハードウェアのビューが提供されます。その他のファイル(/proc/filesystems
や/proc/sys
の下のファイルなど)は、システムの構成に関する情報を提供し、必要に応じて構成を変更できます。
関連トピックに関する情報が含まれるファイルは、仮想ディレクトリにグループ化されます。システムで実行されているプロセスごとに、/proc
ディレクトリに別のディレクトリが存在します。ディレクトリの名前は、数値のプロセスIDに対応します。たとえば、/proc/1
は、PIDが1のsystemd
プロセスに対応します。
仮想ファイルを調査するには、次の例に示すように、cat
、less
およびview
などのコマンドを使用します:
cat /proc/cpuinfo
processor : 0
vendor_id : GenuineIntel
cpu family : 6
model : 42
model name : Intel(R) Core(TM) i5-2520M CPU @ 2.50GHz
stepping : 7
cpu MHz : 2393.714
cache size : 6144 KB
physical id : 0
siblings : 2
core id : 0
cpu cores : 2
apicid : 0
initial apicid : 0
fpu : yes
fpu_exception : yes
cpuid level : 5
wp : yes
...
判読できないコンテンツを含むファイルには、lspci
、free
、top
およびsysctl
などのユーティリティを使用して情報にアクセスできます。たとえば、lspci
コマンドは、システム上のPCIデバイスをリストします:
sudo lspci
00:00.0 Host bridge: Intel Corporation 440FX - 82441FX PMC [Natoma] (rev 02)
00:01.0 ISA bridge: Intel Corporation 82371SB PIIX3 ISA [Natoma/Triton II]
00:01.1 IDE interface: Intel Corporation 82371AB/EB/MB PIIX4 IDE (rev 01)
00:02.0 VGA compatible controller: InnoTek Systemberatung GmbH VirtualBox Graphics Adapter
00:03.0 Ethernet controller: Intel Corporation 82540EM Gigabit Ethernet Controller (rev 02)
00:04.0 System peripheral: InnoTek Systemberatung GmbH VirtualBox Guest Service
00:05.0 Multimedia audio controller: Intel Corporation 82801AA AC'97 Audio Controller (rev 01)
00:06.0 USB controller: Apple Inc. KeyLargo/Intrepid USB
00:07.0 Bridge: Intel Corporation 82371AB/EB/MB PIIX4 ACPI (rev 08)
00:0b.0 USB controller: Intel Corporation 82801FB/FBM/FR/FW/FRW (ICH6 Family) USB2 EHCI Controller
00:0d.0 SATA controller: Intel Corporation 82801HM/HEM (ICH8M/ICH8M-E) SATA Controller [AHCI mode]
(rev 02)
...
/proc
で使用可能な様々なディレクトリの詳細は、「procfsディレクトリ・リファレンス」を参照してください。/proc/sys
でカーネル・パラメータを表示および変更してシステム・ランタイム動作を制御する方法の詳細は、「実行時のカーネル・パラメータの管理」を参照してください。
/sys仮想ファイル・システムについて
カーネルは、/proc
ファイル・システムに加えて/sys
仮想ファイル・システム(sysfs
)にも情報をエクスポートします。動的デバイス・マネージャ(udev
)などのプログラムでは、/sys
を使用してデバイスやデバイス・ドライバ情報にアクセスします。デバイス管理の詳細は、『Oracle Linux 8: udevでのシステム・デバイスの管理』を参照してください。
ノート:
/sys
ではカーネル・データ構造体と制御ポイントが公開されているので、ディレクトリが祖先ディレクトリにリンクしている状態の循環参照がディレクトリに含まれている可能性があります。したがって、/sys
で使用されるfind
コマンドは停止しない可能性があります。
/sys
にあるディレクトリの詳細は、「sysfsディレクトリ・リファレンス」を参照してください。