0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

Linucレベル1勉強メモ #23

Posted at

# 第二章 ファイル・ディレクトリの操作と管理

練習問題2.8
すべてのユーザーが利用できるユーティリティコマンドを作成しました。そのコマンドの実行ファイルを配置するのが最も適切と考えられるディレクトリを選択してください。

A. /bin

B. /sbin

C. /usr/local/bin

D. /usr/local/sbin

E. /home

(解答)C

(解説)
ディストリビューション標準ではないプログラムやおくじに作成した実行ファイルなどは/usr/localディレクトリ以下に配置するのが一般的です。/binや/sbin以下に配置するコマンドはFHSで定められています。従って、選択肢AとBは不正解です。すべてのユーザー向けの実行ファイルを/home以下に配置することはないので、選択肢Eは不正解です。

典型的なファイルとディレクトリの位置
linuxにおけるファイルシステム内のレイアウトは、FHSとして標準化が進められています。

ルートファイルシステムはlinuxのディレクトリ改装の中で最上位に位置します。ルートファイルシステムに含まれなければならないディレクトリは、/bin, /sbin, /etc, /dev, /libです。

  • /bin
    基本的なコマンドが配置されます。このディレクトリにあるコマンドは、一般ユーザーでも実行可能です。
  • /sbin
    システム管理に必須のコマンドが配置されます。このディレクトリにあるコマンドは、rootユーザーのみ実行可能です。
  • /etc
    システムやアプリケーションの設定情報、スクリプトファイルなどが配置されます。
  • /dev
    ハードディスクやDVDーROMなどのデバイスファイルが配置されます。デバイスファイルは特殊ファイルであり、デバイスに応じたデバイスファイルが必要です。
  • /lib
    共有ライブラリやカーネルモジュールが配置されます。とりわけ、/bin, /sbinにあるコマンドが必要とするライブラリはここに配置されます。
  • /media
    DVD-ROMなどのリムーバブルメディアのマウントポイントが配置されます。
  • /mnt
    一時的にマウントするファイルシステムのマウントポイントが配置されます。
  • /opt
    パッケージ管理の仕組みを使ってプログラムがインストールされるディレクトリです。ディストリビューションによって配置されません。
  • /proc
    カーネル内部の情報にアクセスするための仮想的なファイルシステムです。つまり、このディレクトリ内のファイルはファイルのように見えるだけで、実際にはディスク上に存在しません。
  • /root
    rootユーザーのホームディレクトリです。/homeファイルシステムがマウントできなくなった婆でも、システムのメンテナンスを行うことができるよう、/homeとはbつになっています。FHSではオプション扱いとなっています。
  • /boot
    軌道に必要な設定やカーネルイメージが配置されます。起動時にBIOSの制限を受けないようにするため、ルートファイルとは別に、ディスクの先頭付近に配置されることがあります。
  • /home
    ユーザーごとのホームディレクトリがおかれます。独立したファイルシステムにすることにより、クォータを設定することができたり、保守性を向上させたりできます。FHSではオプション扱いとなっています。
  • /tmp
    一時ファイルがおかれます。すべてのユーザーが読み書き可能です。
  • /var
    ログファイル、メールやプリンタのスプールなど、頻繁に書き換えられるファイルが配置されます。/varディレクトリの下はさらに細分化されており、次のようなディレクトリがあります。
  1. /var/cache
    manコマンドで表示するために整形したデータなあど、一時的なキャッシュファイルが配置されます。
  2. /var/lock
    アプリケーションが排他制御に使うためのロックファイルが配置されます。
  3. /var/log
    ログファイルが書き出されます。システムのログファイルmessages、メールシステムのログファイルmaillog(mail.log)などがあります。
  4. /var/run
    システムの状態を示すファイルが配置されます。
  5. /var/spool
    印刷待ちのデータ(/var/spool/lpd)や予約されたジョブ(/var/spool/at)など、処理待ちのデータが配置されます。
  • /usr
    コマンドやユーティリティなどが配置されます。/userディレクトリの下はさらに細分化されており、次のようなディレクトリがあります。
  1. /usr/bin
    ユーザーが一般的に使うコマンドで、緊急時のシステム保守に必須ではないコマンドはここに配置されます。
  2. /usr/sbin
    システム管理コマンドで緊急時のシステム保守に必須ではないコマンドがここに配置されます。
  3. /usr/lib
    プログラムに必要な共有ライブラリが配置されます。
  4. /usr/local
    ローカルシステムで必要とされるコマンドやライブラリ、ドキュメントなどが配置されます。このディレクトリ内は、さらにbin, sbin, libなどのディレクトリに細分化されます。
  5. /usr/share
    x86やx86-64といったシステムアーキテクチャに依存しないファイルが配置されます。例えば、/usr/share/manにはmanコマンドで使うマニュアルが配置されます。
  6. /usr/src
    linuxのカーネルソースなど、ソースコードが配置されます。

(わからない単語解説)

  • FHS
    linuxやUNIX系のオペレーティングシステムにおけるファイルシステムの階層構造の標準仕様です。FHSに準拠することで、ソフトウェアの移植性や管理の容易性が向上し、ユーザーはファイルやディレクトリの場所を予測しやすくなります。
0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?