Linuxコマンドリファレンス

ファイルシステム管理とパッケージ管理

 サーバ運用の基礎は、ストレージを正しく扱うファイルシステム管理と、ソフトウェアを安全に保つパッケージ管理です。前者では「ディスクを区切る → ファイルシステムを作る → マウントして使う → 監視・修復・拡張」という流れを理解します。後者では「検索 → 情報確認 → インストール/更新/削除 → 監査」という一連の操作を身につけます。

ファイルシステム管理(基本)

コマンド説明
lsblkブロックデバイス/パーティション構成を一覧表示
lsblk -fデバイスのファイルシステム種別・UUID を表示
blkidデバイスの UUID/FS タイプを表示
fdisk デバイスファイル名MBR/GPT のパーティション操作(対話式)
parted デバイスファイル名GPT/大容量向けのパーティション操作
mkfs -t タイプ デバイス汎用のファイルシステム作成(例: mkfs.ext4, mkfs.xfs)
mkswap デバイススワップ領域を作成
swapon デバイス / swapoff デバイススワップを有効化/無効化
mount デバイス マウントポイントファイルシステムをマウント
umount マウントポイントマウント解除
mount -a/etc/fstab に基づき一括マウント
findmntマウント情報をツリー表示
df -h各ファイルシステムの使用量を表示
du -sh パスそのパスの合計サイズを表示
fsck デバイスファイルシステムの整合性チェック(ext系など)
xfs_repair デバイスXFS の修復
resize2fs デバイスext系のオンライン/オフライン拡張(縮小は要注意)
xfs_growfs マウントポイントXFS のオンライン拡張
growpart デバイス パート番号既存パーティションを拡張(cloud-utils-growpart)
tune2fs デバイスext系の各種チューニング(マウント回数制限等)

参考ファイルと役割(覚えておくと運用が安定します)

ファイル役割
/etc/fstab永続マウントの定義(UUID 指定推奨)
/proc/partitions, /proc/mountsカーネルが把握するパーティション/マウント情報
/etc/mtab互換のマウント情報(環境による)

LVM(必要に応じて)

コマンド説明
pvcreate デバイス物理ボリューム(PV)作成
vgcreate VG名 デバイスボリュームグループ(VG)作成
lvcreate -n LV名 -L サイズ VG名論理ボリューム(LV)作成
lvs / vgs / pvsLVM 構成の一覧
lvextend -L +サイズ /dev/VG/LVLV を拡張(後続で resize2fs または xfs_growfs)

パッケージ管理(RHEL系:dnf/yum と rpm)

日々の運用では dnf(または互換の yum)を使い、低レベル情報の照会やローカル rpm 操作は rpm を使います。

コマンド説明
dnf install パッケージ名 / yum install パッケージ名パッケージをインストール
dnf remove パッケージ名 / yum remove パッケージ名パッケージを削除
dnf update / yum updateシステム全体を更新
dnf update パッケージ名指定パッケージを更新
dnf search キーワードパッケージを検索
dnf info パッケージ名詳細情報を表示
dnf provides ファイル名やコマンドそのファイル/コマンドを提供するパッケージを検索
dnf list installedインストール済みパッケージ一覧
dnf history / dnf history info更新履歴の確認/詳細
dnf clean allキャッシュクリア
rpm -qaインストール済み rpm を一覧表示
rpm -qi パッケージ名パッケージの詳細情報
rpm -ql パッケージ名パッケージが提供するファイル一覧
rpm -qf ファイルパスそのファイルを提供するパッケージを逆引き
rpm -ivh パッケージ.rpmローカル rpm をインストール
rpm -Uvh パッケージ.rpmアップグレード
rpm -e パッケージ名アンインストール

(参考)Debian/Ubuntu 系では apt install/remove/update/upgrade#、apt search、apt show、dpkg -i、dpkg -L、dpkg -S などを使用します。

目的別レシピ(そのまま使える手順)

1.新規ディスク /dev/sdb に ext4 を作成し、/data に永続マウント

fdisk /dev/sdb          # 新規パーティション作成(例: /dev/sdb1)
partprobe               # カーネルへ再読込(必要に応じて)#
mkfs.ext4 /dev/sdb1     # ファイルシステム作成#
mkdir -p /data          # マウントポイント作成#
blkid /dev/sdb1         # UUID を確認#
echo "UUID=xxxxxxxx  /data  ext4  defaults  0  2" >> /etc/fstab  # 追記#
mount -a                # 設定の検証(エラーが出ないこと)#

2.逼迫した /var を拡張(LVM + XFS の例)

lvextend -L +10G /dev/vg0/var   # LV を 10G 伸長#
xfs_growfs /var                 # マウント中にオンライン拡張#

3.どのパッケージがコマンドを提供しているか調べてインストール(RHEL系)

dnf provides */sshd          # sshd を含むパッケージを検索
dnf info openssh-server
dnf install openssh-server   # 必要なら導入#

4.不要パッケージの削除と履歴確認

dnf remove httpd#      # 削除
dnf history            # いつ誰が何を更新/削除したか確認

運用ヒント

  • /etc/fstab では UUID 指定が推奨。デバイス名の入れ替わりに強い。
  • XFS は縮小不可。将来の増設を見込んで設計し、拡張は xfs_growfs。ext4 縮小は要オフラインで慎重に。
  • fsck はマウント中の実行に注意(基本はアンマウント状態で)。XFS は xfs_repair を使用。
  • dnf update はメンテナンス時間帯に計画的に。カーネル更新後は再起動計画も忘れずに。
  • どのファイルがどのパッケージ由来かは rpm -qf ファイルパス が即答してくれるため、設定ドリフトの調査に有効。