procファイルシステムの概要についてまとめました。
(1)概要
・procファイルシステムは、Linuxカーネルの現在の状況を示すファイルの階層が含まれているディレクトリ。これにより、アプリケーションとユーザーはシステムのカーネルビューを確認することができる
・procディレクトリには、システムのハードウェアおよび実行中のプロセスに関する情報が格納されている。
これらファイルのほとんどは読み取り専用だが、(主に/proc/sys内の)ファイルのなかには、ユーザーやアプリケーションが操作することで、設定変更をカーネルに伝達できるものもある。
(2)仮想ファイルシステム
1)仮想ファイル
・/proc/ディレクトリには、仮想ファイルと呼ばれる通常とは別のタイプのファイルも含まれている。
・仮想ファイルには、固有の性質がある。
大半の仮想ファイルは、サイズがゼロバイトで表示されていても表示すると大量の情報が格納されている場合がある。
又、仮想ファイルの時刻及び日付のスタンプの大半は、現在の時刻と日付を反映する。これは、常に更新されていることを示している。
・/proc/interrupts、/proc/meminfo、/proc/mounts、/proc/partitionsなどの仮想ファイルは、システムのハードウェアの最新状態のビューを提供する。
/proc/filesystemsファイルや/proc/sys/ディレクトリなど、その他の仮想ファイルはシステムの設定情報及びインターフェースを提供する。
2)仮想ファイルの表示
・/proc/ファイル内の大半のファイルは、テキストファイルと同様に機能し、システム及びハードウェアの有用なデータを人間が読み取れるテキスト形式で保管。
cat、more、lessなどを使用して内容を表示することができる。
・/proc/内のファイルの一部には、人間には読み取れない情報が含まれている。
このようなファイルから情報を取得するには、lspci、apm、free、topなどのツールを使用する。
3)仮想ファイルの変更
原則として、/proc/ディレクトリ内の仮想ファイルの大半は読み取り専用。
但し、一部はカーネルの設定を調整するのに使用することができる。これは特に/proc/sys/サブディレクトリ内のファイルに該当する。
①echoを使って仮想ファイルの値を変更
echo value > /proc/file
②sysctlコマンドを使って変更
※sysctlコマンドの詳細は以下の記事参照。
sysctlコマンドでカーネルパラメータの参照、変更
4)procファイルシステムのファイル一覧
RHEL6 導入ガイド 付録E proc ファイルシステム 関連記事の目次
-
システム管理
- CentOSのブートの流れ、ランレベルの指定
- CentOS6のrc.sysinitスクリプトの処理内容の概要
- procファイルシステムの概要
- sysctlコマンドでカーネルパラメータの参照、変更
- cron、anacronで自動定期実行
- at、batchコマンドの概要
- CentOS6のシステムログ
- rsyslogの設定方法
- システムログのローテート設定
- CentOSのハードウェア情報を表示するコマンド
- CentOSでパーティション、スワップ、ディスク情報を確認
- LinuxのLVMの概要と表示コマンド
- ボリュームグループ、論理ボリューム作成、ファイルシステム作成、マウント設定、物理ボリュームを追加
- CentOSで論理ボリューム、ext4ファイルシステムを拡張
- CentOSのLVMでボリュームグループから物理ボリュームを削除
- WindowsからCentOS6にリモートデスクトップする手順
- viエディタの使用方法
- HTMLのマニュアルをLinuxのターミナル画面上で読む
- findコマンドで直近に更新されたファイルを調べる方法
- Linuxでディスク使用量が多いディレクトリを調べる方法(1)
- Linuxでディスク使用量が多いディレクトリを調べる方法(2)
- psコマンドで全プロセスを表示する方法と表示結果の見方
- プロセス階層、プロセスグループ、セッションを確認するには?
- psコマンドでスレッドに関する情報を表示するには?
- netstat、nmapを使ってリッスンポートを確認する方法
- vmstatコマンドでシステムの状況をモニター
- シェル変数と環境変数の違い
- CentOSのユーザー環境設定ファイル(bashrc、profile)
- 日本語設定、シェル環境設定
- umaskはどこで設定されている?
- CentOS6の各種ネットワーク設定ファイルとインタフェース制御スクリプト
- CentOS6のTCPラッパーの概要と設定方法
- LinuxのNetworkManagerプロセスの概要
- CentOS6のユーザー管理の概要とコマンド操作
- ファイルのパーミッション設定、ディレクトリは要注意
- Linuxでスティッキービットが設定されているか確認する方法
- sudoで特定のコマンドのみをroot権限で実行する
- RHEL6、CentOS6の64ビットサポートとhuge pages
- RHEL6、CentOS6の64ビットサポートとNUMA
Linuxコマンド操作
シェル環境設定
ネットワーク関連
ユーザー管理、権限
64ビットサポート
-
CentOSの概要
- RHEL6、CentOS6の64ビットサポートとhuge pages
- RHEL6、CentOS6の64ビットサポートとNUMA
- CentOS6インストール手順のメモ
- CentOSのブートの流れ、ランレベルの指定
- procファイルシステムの概要
- sysctlコマンドでカーネルパラメータの参照、変更
- CentOS6の各種ネットワーク設定ファイルとインタフェース制御スクリプト
- cron、anacronで自動定期実行
- at、batchコマンドの概要
- CentOS6のシステムログ
- rsyslogの設定方法
- システムログのローテート設定の確認
- CentOSのハードウェア情報を表示するコマンド
- CentOSでパーティション、スワップ、ディスク情報を確認
- LinuxのLVMの概要と表示コマンド
- ボリュームグループ、論理ボリューム作成、ファイルシステム作成、マウント設定、物理ボリュームを追加
- CentOSで論理ボリューム、ext4ファイルシステムを拡張
- CentOSのLVMでボリュームグループから物理ボリュームを削除
- WindowsからCentOS6にリモートデスクトップする手順
- viエディタの使用方法
- HTMLのマニュアルをLinuxのターミナル画面上で読む
- findコマンドで直近に更新されたファイルを調べる方法
- Linuxでディスク使用量が多いディレクトリを調べる方法(1)
- Linuxでディスク使用量が多いディレクトリを調べる方法(2)
- ディスク使用量が多いディレクトリを抽出するbashスクリプト
- psコマンドで全プロセスを表示する方法と表示結果の見方
- プロセス階層、プロセスグループ、セッションを確認するには?
- psコマンドでスレッドに関する情報を表示するには?
- netstat、nmapを使ってリッスンポートを確認する方法
- 日本語設定、シェル環境設定
- CentOSのユーザー環境設定ファイル(bashrc、profile)
- umaskはどこで設定されている?
- シェル変数と環境変数の違い
- CentOSのネットワークフィルタリング設定を一から行う
- CentOS6のTCPラッパーの概要と設定方法
- CentOS6のユーザー管理の概要とコマンド操作
- ファイルのパーミッション設定、ディレクトリは要注意
- Linuxでスティッキービットが設定されているか確認する方法
- sudoで特定のコマンドのみをroot権限で実行する
システム管理
Linuxコマンド操作
シェル環境設定
ネットワーク関連
ユーザー管理、権限