Linux の標準的なディレクトリ構成
「 FHS (Filesystem Hierarchy Standard)」は、Linux(などのUNIX系OS)の標準的なディレクトリ構成を定めた標準仕様です。
- /
- /bin
- /dev
- /etc
- /lib
- /lib/modules
- /media
- /opt
- /proc
- /root
- /sbin
- /tmp
- /var
- /var/log
- /boot
- /usr
- /usr/bin
- /usr/lib
- /usr/local
- /usr/sbin
- /home
それぞれのディレクトリの内容は、以下の表の通りです。
ディレクトリ | 内容 |
---|---|
/ | ファイルシステムの頂点のディレクトリ |
/bin | 一般ユーザー、管理者が使用するコマンドの保存ディレクトリ |
/dev | デバイスファイルの保存ディレクトリ。システム起動時に接続されているのデバイスがチェックされ、自動的に作成されます |
/etc | システム管理用の設定ファイルや、各種ソフトウェアの設定ファイルの保存ディレクトリ |
/lib | /bin や /sbin に置かれたコマンドやプログラムが利用するライブラリの保存ディレクトリ |
/lib/modules | カーネルモジュールを保存 |
/media | CD/DVD のデータが配置 |
/opt | Linux インストール後、追加でインストールしたパッケージの保存ディレクトリ |
/proc | k-ネルやプロセスが保持する情報を保存。仮想ファイルシステムの為、ファイル自体は存在しない |
/root | root ユーザーのホームディレクトリ |
/sbin | 主にシステム管理者が使用するコマンドを保存 |
/tmp | アプリケーションやユーザが利用する一時ファイルの保存場所 |
/var | システム運用中にサイズが変化するファイルの保存場所 |
/var/log | システムやアプリケーションのログファイルが配置 |
/boot | システム起動時に必要なブートローダ関連のファイルや、カーネルイメージが配置 |
/usr | ユーザが共有するデータの保存場所。ユーティリティ、ライブラリ、コマンドなどを保存 |
/usr/bin | 一般ユーザ、管理者が使用するコマンドを配置 |
/usr/lib | 各種コマンドが利用するライブラリを配置 |
/usr/local | 追加でインストールしたパッケージの保存場所 |
/usr/sbin | システム管理者のみ実行できるコマンドを配置 |
/home | ユーザのホームディレクトリ |
OS のコマンド
カーネルのバージョン確認を確認するには、以下のコマンドを実行します。
uname -a
ディストリビューションのバージョン確認するには、以下のコマンドを実行します。
cat /etc/redhat-release
service と systemctl の違い
CentOS 6.x までは、サービスの起動/停止が service コマンドを使用。このコマンドの実態はシェルスクリプトで 「 /etc/init.d/ 」 内のスクリプトを実行している。 CentOS 7.x からは systemctlコマンド に切り替わり chkconfig と service で設定していたことが systemctl コマンドのみで設定可能。 systemctl は標準で enable コマンドが使えるため、systemctl コマンドを利用するほうが簡単に設定ができる。マシンスペックを確認する
CPUの情報を表示するには、以下のコマンドを実行します。
cat /proc/cpuinfo
# 以下でも確認可能
lscpu
メモリの情報を表示するには、以下のコマンドを実行します。
cat /proc/meminfo
# 詳細な情報を調べるには、以下のコマンドを実行
sudo dmidecode -t memory
マザーボードの内容を確認するには、以下のコマンドを実行します。
sudo dmidecode -t baseboard
グラフィックカードの内容を確認するには、以下のコマンドを実行します。
lspci | grep VGA
ハードディスク/ストレージの情報を確認するには、以下のコマンドを実行します。
df
# モデル名等含めてディスク単位で知りたい場合
sudo parted -l
ネットワークカードの情報を確認するには、以下のコマンドを実行します。
lspci | grep Ethernet
起動しているサービスの一覧を表示
pstree
# systemctl コマンドを使う方法
systemctl list-unit-files --type=service
# 以下でも確認可能
systemctl status
update/upgrade (dnf, apt) - RedHot系、Debian系
RedHot系、Debian系
「 Red Hat Linux 」系のLinuxディストリビューションには、「 CentOS 」、「 Fedora 」などがあります。
一方、「 Debian GNU/Linux 」(以下、Debian)は、Red Hat Linux とは全く異なる Linux ディストリビューションで、「 Ubuntu 」などがあります。
Red Hat 系と Debian 系の一番の違いは「 パッケージ管理システム 」です。
Red Hat 系が「 RPM 」というパッケージ管理システムを使っているのに対して、Debian 系が「 dpkg 」というパッケージ管理システムを採用しており、両者の間に互換性はありません。
Debian は、常に「 stable(安定版) 」、「 testing(テスト版) 」、「 unstable(不安定版) 」の3つのバージョンがリリースされています。
update/upgrade (dnf, apt) の違い
コマンド | dnf(RedHot系) | apt(Debian系) |
---|---|---|
update | 指定したパッケージがインストールされている場合、アップデートする。パッケージを指定しなかった場合はシステム全体がアップデート対象となる | インストール可能なパッケージの「一覧」を更新。パッケージ自体は更新されない。 |
upgrade | パッケージのアップデート(dnf update)+不要になったパッケージの削除 | パッケージ構成を変えない範囲でアップグレードする。不要なパッケージの削除、カーネルの更新はしない。「一覧」が古い(apt updateをしていない)と、古いパッケージを元に更新が実行される。 |
full-upgrade | なし | パッケージ構成の変更に追随してアップグレード |
ディスクのサイズを確認
ディスクのサイズを調べるには、dfコマンドを使います。dfコマンドのオプションには、以下のものがあります。
オプション | 内容 |
---|---|
h | サイズをG、M、K の単位で表示 |
a | すべてのディスクを表示 |
l | ディスク全体の合計を表示 |
以下の画像は、「 df -h 」を実行した結果です。
メモリ使用率を調べる
メモリ使用率を調べるには、「 free コマンド 」を使います。
出力結果のヘッダの意味は、以下の通りです。
項目 | 内容 |
---|---|
total | インストールされているメモリの合計 |
used | 使用済メモリ |
free | 未使用のメモリ |
shared | tmpfs に使用されているメモリ |
buff/cache | バッファとキャッシュの合計 |
available | 実質的な空きメモリ |