/tmpは一時領域として当たり前のように使ってるけど、/varや/usr、/etcなど。
どういった用途で使い分けたらいいのか、改めて確認してみたくなりました。
- 目次 -
- 1 主要なディレクトリと用途 一覧
- 2 それぞれの用途
- 2.1 . / (ルート)
- 2.2 /bin (Binary)
- 2.3 /sbin (System Binary)
- 2.4 /boot (Boot)
- 2.5 /dev (Device)
- 2.6 /etc (Etc: 設定ファイル)
- 2.7 /home (Home)
- 2.8 /lib, /lib64 (Library)
- 2.9 /media (Media)
- 2.10 /mnt (Mount)
- 2.11 /opt (Optional)
- 2.12 /proc (Process)
- 2.13 /root (Root user)
- 2.14 /run
- 2.15 /srv (Service)
- 2.16 /sys (System)
- 2.17 /tmp (Temporary)
- 2.18 /usr(Unix System Resources)
- 2.19 /var(Variable)
- 3 補足
主要なディレクトリと用途 一覧
| ディレクトリ | 用途 |
|---|---|
/ (ルート) | ファイルシステムの最上位ディレクトリ。すべてのディレクトリはここから始まる。 |
/bin | 基本的なコマンド(ls, cp, mv, rm など)が含まれる。 |
/boot | ブートローダー(GRUB など)やカーネル (vmlinuz) のファイルが格納される。 |
/dev | デバイスファイル(/dev/sda, /dev/null, /dev/random など)が置かれる。 |
/etc | システム全体の設定ファイル (/etc/passwd, /etc/fstab など) を格納する。 |
/home | ユーザーのホームディレクトリ(/home/user)が格納される。 |
/lib | 重要な共有ライブラリ (*.so ファイル) やカーネルモジュールが含まれる。 |
/media | CD/DVD や USB メモリなどの外部メディアが自動マウントされる。 |
/mnt | 一時的なマウントポイント(管理者が手動でマウントするための場所)。 |
/opt | 追加のソフトウェアパッケージ(/opt/google/chrome など)がインストールされる。 |
/proc | カーネルやプロセス情報を提供する仮想ファイルシステム(/proc/cpuinfo など)。 |
/root | root ユーザーのホームディレクトリ(通常 /home には置かれない)。 |
/run | システムの一時情報(プロセス ID やソケットファイル)が置かれる。 |
/sbin | システム管理用のコマンド(fsck, reboot, mount など)が格納される。 |
/srv | サーバー関連のデータ(/srv/http など)を配置するためのディレクトリ。 |
/sys | ハードウェア情報やカーネル情報を提供する仮想ファイルシステム。 |
/tmp | 一時ファイルを保存する(再起動すると削除される)。 |
/usr | システムのプログラムやライブラリが含まれる。 |
/var | 変動するデータ(ログ、キャッシュ、スプールデータなど)が格納される。 |
それぞれの用途
. / (ルート)
システム全体の最上位ディレクトリで、すべてのディレクトリやファイルはここから派生する。
/bin (Binary)
システムの基本的なコマンドを格納。
- 一般ユーザーが使用する基本的なコマンド
ls(リスト表示)cp(コピー)mv(移動)rm(削除)cat(ファイル表示)echo(文字列出力)chmod,chown(権限変更)sh,bash(シェル)
- システムがシングルユーザーモードで必要とする最低限のツール
/sbin (System Binary)
システム管理用のコマンドを格納。
- システム管理者向けのツール
reboot(再起動)shutdown(シャットダウン)fsck(ファイルシステムチェック)mount,umount(マウント)iptables(ファイアウォール設定)fdisk,mkfs(ディスク管理)
- 通常のユーザーにはPATHが通っていない
/boot (Boot)
システムのブートに必要なファイルを格納。
- ブートローダー (GRUB) の設定ファイル
/boot/grub/grub.cfg
- Linux カーネルイメージ
vmlinuz-5.10.x
- initramfs (カーネル起動時に使用する RAM ディスク)
initrd.img-5.10.x
- EFIブートローダー (UEFI システムの場合)
/boot/efi/EFI/
/dev (Device)
デバイスファイル(ハードウェアを操作する仮想ファイル)を格納。
- ストレージデバイス
/dev/sda(HDD/SSD の1つ目)/dev/sda1(パーティション)
- 仮想デバイス
/dev/null(データを捨てる)/dev/random(乱数生成)/dev/zero(ゼロを出力)
- 入力デバイス
/dev/input/mice(マウス入力)/dev/tty(仮想端末)
/etc (Etc: 設定ファイル)
システム全体の設定ファイルを格納。
- ユーザー管理
/etc/passwd(ユーザー情報)/etc/shadow(パスワード)/etc/group(グループ情報)
- ネットワーク設定
/etc/hosts(ホスト名解決)/etc/resolv.conf(DNS)/etc/hostname(マシン名)
- システム管理
/etc/fstab(マウント設定)/etc/crontab(定期実行)
/home (Home)
ユーザーごとのデータを格納。
- 個々のユーザーディレクトリ
/home/user1/home/user2
- ユーザー設定ファイル(ドットファイル)
~/.bashrc(シェル設定)~/.ssh/(SSHキー)~/.config/(アプリ設定)
/lib, /lib64 (Library)
プログラムが使用する共有ライブラリ (*.so ファイル) を格納。
- 32bit システムでは
/lib - 64bit システムでは
/lib64 - 重要なライブラリ
libc.so(C言語標準ライブラリ)libm.so(数学ライブラリ)libpthread.so(スレッド管理)
/media (Media)
リムーバブルメディア (USB, CD/DVD) のマウントポイント。
/mnt (Mount)
管理者が手動でマウントするためのディレクトリ。
- 一時的なマウントポイント
- ネットワークマウント
/opt (Optional)
追加のソフトウェアがインストールされる。
- 商用ソフトウェアや手動インストール
/opt/google/(Google Chrome)/opt/zoom/(Zoom)
/proc (Process)
カーネルやプロセス情報を提供する仮想ファイルシステム。
- システム情報
/proc/cpuinfo(CPU 情報)/proc/meminfo(メモリ情報)/proc/uptime(起動時間)
- プロセス情報
/proc/[PID]/(プロセスIDごとの情報)
/root (Root user)
root ユーザー専用のホームディレクトリ。通常のユーザとは異なり/homeには格納されない。
/run
一時的なシステム情報(PID, ソケット, ロックファイル)を格納。
- プロセスID (PID)
/run/nginx.pid
- ソケットファイル
/run/docker.sock
/srv (Service)
サーバー関連のデータを格納。
- Web サーバー
/srv/http/
- FTP サーバー
/srv/ftp/
/sys (System)
カーネルとハードウェア情報を提供する仮想ファイルシステム。
- デバイス情報
/sys/block/
- 電源管理
/sys/power/
- CPU情報
/sys/devices/system/cpu/
/tmp (Temporary)
一時ファイルを格納する。
- 再起動すると消えるものもある(ディストリビューションやバージョンによる)
- 一時データの保存
/usr(Unix System Resources)
システム全体で利用可能なプログラムやライブラリを格納する。
/usr/bin– 一般ユーザーが利用できるコマンド (ls,grep,awkなど)。/usr/sbin– システム管理者向けのコマンド (apachectl,iptablesなど)。/usr/lib–/usr/binのプログラムが使用するライブラリ。/usr/local– ユーザーが手動でインストールしたソフトウェアを格納する。
/var(Variable)
ログや一時データなど、頻繁に変更されるファイルを保存する。
/var/log– システムログ (/var/log/syslog,/var/log/auth.logなど)。/var/tmp– 一時ファイル(再起動後も削除されない)。/var/lib– プログラムが実行時に保存するデータベースやキャッシュ(/var/lib/mysql,/var/lib/dpkgなど)。/var/spool– メールキューやプリントキュー (/var/spool/mail,/var/spool/cupsなど)。
補足
/binや/sbinは最小限のシステムでも利用可能な基本ツールを含む。/usrはシステムが起動した後に使用されるプログラムが多く、ネットワークマウントする場合もある。/varはログやキャッシュが溜まるため、ディスク管理に注意が必要。



コメント