ファイルの配置と検索|FHSと検索コマンドを完全解説!

Linuxを使っていて最初につまずきやすいのが、「ファイルやコマンドがどこにあるのか分からない」という点です。本記事では、Linuxのファイル配置ルール(FHS)と、検索に便利なコマンド(find, locate, which など)を丁寧に解説します。


目次

✅ FHS(Filesystem Hierarchy Standard)とは?

FHSとは、Linuxにおけるディレクトリ構造の標準規格のことです。つまり「どの種類のファイルを、どこに置くべきか」を定めたルールです。

🔹 主なディレクトリとその役割

ディレクトリ用途
/ルート(最上位のディレクトリ)
/bin基本的なコマンド(ls, cp など)
/sbin管理者向けのシステムコマンド
/usrユーザー向けのプログラムやライブラリ
/usr/bin一般ユーザー向けのアプリケーション
/usr/sbinシステム管理者用のアプリ
/var変動するデータ(ログ、メールなど)
/etc設定ファイル
/home一般ユーザーのホームディレクトリ
/tmp一時ファイル
/boot起動に必要なファイル(カーネルなど)
/devデバイスファイル(ハードディスクなど)
/proc仮想的なプロセス情報
/lib, /lib64共有ライブラリ

🔍 ファイルやコマンドを見つけるためのコマンド

1. find:指定ディレクトリ以下を検索

書式: find 起点ディレクトリ -name ファイル名

例):find /etc -name "*.conf"
  • /etc 以下の .conf ファイルを検索
  • オプション例:
    • -name:名前指定(ワイルドカード可)
    • -type:ファイル種別(f=ファイル, d=ディレクトリ)

2. locateデータベースを使った高速検索

locate passwd
  • システムのデータベースから瞬時に検索
  • 注意点:updatedb で事前にデータベースを更新する必要あり

🔧 updatedbと設定ファイル /etc/updatedb.conf

  • updatedb:locateデータベースの更新コマンド
  • /etc/updatedb.conf:除外パスなどの設定ファイル

例:

sudo updatedb
locate sshd_config

3. which実行可能ファイルのパスを表示

which ls

  • 実行コマンドがどのパスにあるかを表示します。

4. whereisバイナリ、マニュアル、ソースの場所を検索

whereis bash

  • 複数の場所(実行ファイル、マニュアルなど)を一括で表示。

5. typeシェルにとってのコマンドの種類を表示

type cd

type ll

  • cd は「シェルのビルトインコマンド」であることが分かる。
  • ll は「”ls -alF”のエイリアス」であることが分かる。

※組み込みコマンド(built-in command)とは、シェルそのものが内部で直接サポートしているコマンドのことです


🌟 ファイル配置と検索の実践例

find /var/log -type f -name "*.log"

→ ログファイルの場所を探す。





which python3

→ Pythonがどこにインストールされているかを確認。


✅ まとめ

コマンド用途
find実ファイルを条件で検索
locateデータベースによる高速検索
updatedblocate用DBの更新
which実行ファイルのパスを表示
whereis実行ファイル+マニュアル等検索
typeコマンドの種類を確認

FHSと検索コマンドの基礎を押さえることで、Linuxのファイル構造を理解し、トラブルシュートや作業の効率化がぐっと上がります

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!

コメント

コメントする

目次