こんにちは、インフラ系エンジニア専門の転職エージェントの中の人です。
Linuxを学び始めたばかりの人や、仕事で少しずつ触れ始めた人にとって、「どのコマンドを覚えればよいかわからない」、「コマンドがごちゃごちゃになってきた」と感じることは多いのではないでしょうか。
特に、オプションの大文字・小文字の違いや、-(ハイフン)の有無などは、ごちゃごちゃになりやすい所です。しっかり整理しないと、ミスにつながってしまうこともあるでしょう。
ここでは、膨大なLinuxコマンドの中から、「LPIC level1」の試験範囲の中で頻出する、必要なコマンドを、一覧にして厳選しながら整理し、わかりやすく解説していきます。
本記事で記載しているコマンドを学べば、現在の試験バージョンである「LPIC level1 Version 5.0」におけるコマンドは十分と言えます。
LPIC level1を受験前の最終確認をしたい人から、Linuxコマンドを網羅的に学びたい人、復習したい人は、ぜひ参考にしてください。また、この記事を見返したい人は、ページをブックマークしてください。
未経験からインフラエンジニアを目指すなら「無料で学べる、インフラエンジニア研修・転職サービス」
【Linuxコマンド一覧】LPIC 101試験範囲
課題101:システムアーキテクチャ
システムアーキテクチャ関連のコマンドは、CPUやメモリ、カーネルなどの情報確認に役立つコマンドであり、サーバー管理に必要となります。
Linuxコマンド一覧(システムアーキテクチャ)
カテゴリ | コマンド | 説明 | 主なオプション・サブコマンド・使用例 |
---|---|---|---|
カーネルモジュール管理 | modprobe | カーネルモジュールの追加・削除を行う(依存関係も自動解決) | modprobe snd_hda_intel |
lsmod | 現在ロードされているカーネルモジュールを一覧表示 | lsmod | |
ハードウェア情報の確認 | lspci | PCIバスに接続されたデバイスの一覧を表示(グラボ、NICなど) | lspci |
lsusb | USBデバイスの一覧を表示 | lsusb | |
システムログの確認 | dmesg | カーネルログを表示(起動直後の情報やドライバ初期化の記録など) | dmesg |
journalctl | systemdベースのログ管理ツール。すべてのログを確認できる | journalctl -k: カーネルのバッファを表示 | |
サービス・システム管理 | shutdown | システムをシャットダウン、または再起動する | -h: シャットダウンする -r: 再起動する |
systemctl | systemdサービスの制御・管理を行う | enable: 自動起動を有効にするdisable: 自動起動を無効にする start: サービスを開始する restart: サービスを再起動する stop: サービスを停止する | |
ユーザー通知 | wall | ログイン中のすべてのユーザーにメッセージを一斉送信 | wall |
課題102:Linuxのインストールとパッケージ管理
Linuxコマンド一覧(パッケージ管理)
パッケージ管理コマンドは、ソフトウェアのインストール・更新・削除に必要です。Debian系では、aptやdpkg、Red Hat系ではyumやrpmが使われます。
特にDebian系とRed Hat系の違いが、ごちゃこちゃになりやすい所ですので、しっかり整理しましょう。
カテゴリ | コマンド | 説明 | 主なオプション・サブコマンド |
---|---|---|---|
共有ライブラリの確認 | ldd | 実行ファイルが依存している共有ライブラリ(.so)を表示 | |
パッケージ操作(Debian系) | dpkg | Debian系パッケージ(.deb)の操作(インストール/削除/情報) | -i: インストールする -r: 設定ファイルを残してアンインストール -P: 設定ファイルも含めてアンインストール |
apt | パッケージ管理 | update: パッケージリスト更新 upgrade: アップグレードする install: インストールする remove: 設定ファイルを残して削除する purge: 設定ファイルも含めて削除する depends: 依存関係を表示する | |
apt-get | パッケージのインストール/更新/削除 | install: インストールする update: データベースを更新 upgrade: アップグレードする dist-upgrade: システムを最新にする remove: 削除する | |
apt-cache | パッケージの情報を検索・表示(依存関係の確認など) | search キーワード: パッケージを検索する show パッケージ名: パッケージの情報表示 depends パッケージ名: 依存関係を表示する | |
パッケージ操作(RedHat系) | rpm | RedHat系パッケージ(.rpm)の操作(インストール/照会) アンインストールは、-eに注意 | -i: インストールする -U: アップグレードする(なければインストール) -F: アップグレードする -e: アンインストールする |
yum | RedHat系のパッケージ管理コマンド(依存関係も解決) | install: インストールする remove: アンインストールする check-update: アップデート対象のリストを表示する update: アップデートする | |
パッケージ操作 (SUSE系) | zypper | SUSE系のパッケージ管理コマンド | install: インストールする remove: アンインストールする update: アップデートする dist-upgrade ディストリビューションをアップグレードする |
課題103:GNUとUnixコマンド
ここでは、テキスト処理や、ファイル・ディレクトリの操作、プロセスの管理などを実行するコマンドです。シンプルで覚えやすいコマンドが多いですが、覚える量は多いとも言えます。
Linuxコマンド一覧(テキスト出力・システム情報・圧縮・解凍)
Linuxには、テキストの出力やファイルの表示、システム情報の確認、ファイルの圧縮・解凍に利用するコマンドも数多くあります。
カテゴリ | コマンド | 説明 |
---|---|---|
テキスト出力・環境変数 | echo | 文字列を標準出力に表示する |
env | 現在の環境変数を表示する | |
export | 環境変数を設定して子プロセスに引き継ぐ | |
set | シェル変数や関数を設定・表示する | |
unset | 環境変数や関数を削除する | |
pwd | 現在の作業ディレクトリを表示する | |
type | コマンドの種類(組込み、関数、ファイル)を表示 | |
which | コマンドのパスを表示する | |
ヘルプ・システム情報 | man | コマンドのマニュアルページを表示する(-k:キーワードに一部一致のマニュアル表示、-f:キーワードに完全一致のマニュアル表示) ※セクション番号 5:設定ファイル、8:システム管理コマンド |
apropos | manページの内容を検索する | |
uname | システム情報を表示する | |
history | コマンド履歴を表示する | |
圧縮・解凍 | zcat | gzip圧縮ファイルを標準出力に展開 |
bzcat | bzip2圧縮ファイルを標準出力に展開 | |
xzcat | xz圧縮ファイルを標準出力に展開 | |
gzip | ファイルをgzip形式で圧縮(-d:ファイルを展開する) | |
gunzip | gzipファイルを展開 | |
bzip2 | ファイルをbzip2形式で圧縮(-d:ファイルを展開する) | |
bunzip2 | bzip2ファイルを展開 | |
xz | ファイルをxz形式で圧縮(-d:ファイルを展開する) | |
unxz | xzファイルを展開 |
Linuxコマンド一覧(テキスト処理)
テキスト処理のコマンドは、データ加工やログ解析、スクリプト処理など、幅広い用途で利用されます。日常的なシステム管理などに欠かせない存在と言えるでしょう。
カテゴリ | コマンド | 説明 |
---|---|---|
テキスト処理 | cat | ファイル内容を表示・連結する |
cut | ファイルの特定の列や文字を抽出する(-d 区切り文字:区切り文字を指定、-f:抽出するフィールドを指定) | |
head | ファイルの先頭部分を表示する | |
less | 長いファイルをページ単位で閲覧する | |
md5sum | MD5ハッシュを計算する | |
sha256sum | SHA-256ハッシュを計算する | |
sha512sum | SHA-512ハッシュを計算する | |
nl | 行番号付きでファイル内容を表示する | |
od | バイナリを8進数や16進数で表示する(-o:8進数で表示、-x:16進数で表示) | |
paste | ファイルを列単位で結合する | |
sed | テキストの置換・抽出・加工を行う(d:削除、s:置換、y:文字を変換、gスイッチ:すべて置換) | |
sort | テキストを並び替える | |
split | ファイルを分割する | |
tail | ファイルの末尾を表示する(tail -f:リアルタイム表示) | |
tr | 文字の置換・削除を行う | |
uniq | 重複行を削除・カウントする | |
wc | 行数・単語数・バイト数をカウントする | |
tee | 標準出力とファイルに同時に出力する | |
xargs | 標準入力をコマンド引数に変換して渡す | |
grep | 正規表現でパターン検索を行う(-i:大文字小文字を区別せず検索、-v:マッチしない行を表示、-E:拡張正規表現で検索、-F:文字列で検索) | |
egrep | 拡張正規表現で検索する(grep -Eと同じ) | |
fgrep | 固定文字列で検索する(grep -Fと同じ) |
Linuxコマンド一覧(ファイル・ディレクトリの操作)
ファイルやディレクトリの操作は、Linux作業の基本とも言えます。Linuxの基礎として、確実に習得しておきたい分野です。
カテゴリ | コマンド | 説明 | 主なオプション・フラグ |
---|---|---|---|
ファイルの操作 | cp | ファイルやディレクトリをコピーする | -r(-R): ディレクトリをコピー -f: 上書きする -i: 上書きしてよいか確認 |
find | ファイルやディレクトリを検索する | -name ファイル名: ファイル名で検索 -atime 日時: 最終アクセス日時で検索 -mtime 日時: 最終更新時刻で検索 -perm アクセス権: アクセス権で検索 -user ユーザー名: ユーザー名で検索 -type ファイルの種類: ファイルの種類で検索する (f:ファイル、l:シンボリックリンク、d:ディレクトリ) | |
mkdir | 新しいディレクトリを作成する | -p: 親ディレクトリも作成 -m: アクセス権を指定してディレクトリ作成 | |
mv | ファイルを移動、ファイル名を変更する | -f: 上書きする -i: 上書きしてよいか確認 | |
ls | ファイル・ディレクトリ一覧を表示する | -l: 詳細情報を表示 | |
rm | ファイルを削除する | -r(-R): ディレクトリごと削除 -f: 削除する -i: 削除してよいか確認 | |
rmdir | 空のディレクトリを削除する | -p: 親ディレクトリから削除 | |
touch | 空ファイルの作成やタイムスタンプ更新 | -t: タイムスタンプを変更 -a: アクセス時刻を変更 -m: 修正時刻を変更 | |
tar | アーカイブ作成・展開を行う | -c: アーカイブを作成する -x: ファイルを展開する -t: 内容を確認する -z: gzipによる圧縮・展開 -j: bzip2による圧縮・展開 -J: xzによる圧縮・展開 -v: 詳細情報を表示 | |
cpio | ファイルのアーカイブ作成・展開 | -i: アーカイブからファイルを展開(コピーイン) -o: アーカイブを作成する(コピーアウト) | |
dd | ブロック単位でデータをコピー | if=入力ファイル: 入力ファイルを指定する of=出力ファイル: 出力ファイルを指定する |
カテゴリ別 Linuxコマンド一覧(プロセス管理)
プロセス管理では、システム上で実行中のプログラムを、監視や制御するコマンドが多くあります。プロセス管理のコマンドを使いこなすことで、安定した運用作業の役に立つでしょう。
また、psコマンドのオプションは、-(ハイフン)有と、-(ハイフン)無しがありますので、こちらもごちゃこちゃにならないように気を付けましょう。
カテゴリ | コマンド | 説明 | 主なオプション・シグナル |
---|---|---|---|
プロセス管理 | bg | ジョブをバックグラウンドで再開する | |
fg | ジョブをフォアグラウンドで再開する | ||
jobs | 現在のジョブを一覧表示する | ||
kill | プロセスにシグナルを送って終了させる | HUP(1):ハングアップ INT(2):割り込み KILL(9):強制終了 TERM(15)終了(デフォルト) | |
nohup | ログアウト後もプロセスを継続させる | ||
ps | 現在のプロセス一覧を表示する(-有と、-無のオプションがあることに注意) | a: 他のユーザープロセスも表示 f: 親子関係をツリー状に表示 u: ユーザー名も表示 x: 制御端末のないデーモンなどのプロセスも表示 -e: すべてのプロセスを表示 -l: 詳細な情報を表示 -p PID: 特定のPIDのプロセス情報のみ表示 | |
top | リアルタイムでプロセス状況を監視する | ||
pgrep | 名前でプロセスIDを検索する | ||
pkill | 名前でプロセスを終了させる | ||
killall | 指定名のプロセスをすべて終了する | ||
watch | コマンドを定期的に実行して表示 | ||
nice | 実行時に優先度を設定する | ||
renice | 実行中プロセスの優先度を変更する |
課題104:デバイス、Linuxファイルシステム、ファイルシステム階層標準
Linuxでは、デバイス管理やファイルシステムの操作から、階層構造を理解することも重要です。これらのコマンドと構造の理解は、安定したLinux運用を行うベースになっていきます。
Linuxコマンド一覧(ディスク・パーティション・ファイルシステム)
カテゴリ | コマンド | 説明 |
---|---|---|
パーティション管理 | fdisk | MBR形式のディスクにパーティションを作成・削除・表示する |
gdisk | GPT形式のディスクに対応したパーティション編集ツール(fdiskのGPT版) | |
ファイルシステム作成 | mkfs | 指定されたファイルシステムを作成する(ext4など) |
スワップ領域の作成 | mkswap | 指定したパーティションやファイルに、スワップ領域を作成する |
Linuxコマンド一覧(ファイルシステム管理・確認・修復)
Linuxのファイルシステム管理では、作成や状況確認、修復などの重要な操作ができます。これらのコマンドを使いこなすことで、システム障害時の対応や保守といった作業のベースになるでしょう。
また、duコマンドとdfコマンドも、ごちゃごちゃにならないよう、違いを整理しましょう。
カテゴリ | コマンド | 説明 | 主なオプション |
---|---|---|---|
ディスク使用量の確認 | du | 指定したディレクトリやファイルのディスク使用量を表示 | -a: ディレクトリ以外のファイルについても表示 -c: 全ての容量の合計を表示 -k: 容量をKBで表示 -m: 容量をMBで表示 -s: 指定したファイルやディレクトリの合計を表示 -S: サブディレクトリを含めずに集計 |
df | 各ファイルシステムのディスク使用状況(空き容量など)を表示 | -k: 容量をKBで表示 -m: 容量をMBで表示-i: iノードの使用状況表示 | |
ファイルシステムのチェック | fsck | 汎用ファイルシステムの整合性チェックツール。自動で、e2fsckや、xfs_repairなどを呼び出す | -t: ファイルシステムの種類指定 -a: 自動的にファイルを修復 -r: 対話的にファイルを修復 |
ext系のfs作成 | mke2fs | ext2/ext3/ext4ファイルシステムを新たに作成する | -t: ファイルシステムの種類指定 -j: ext3ファイルシステム作成 -c: 不良ブロック検査 |
ext系のfsチェック | e2fsck | ext2/ext3/ext4ファイルシステムの整合性を確認・修復 | -p: 全ての不良ブロックを修復 -y: 問い合わせに「Yes」で回答 -n: 問い合わせに「No」で回答 |
ext系のチューニング | tune2fs | ext系ファイルシステムの設定(マウント間隔・チェック周期など)を変更 | -c 回数: チェックなしマウントの最大回数を指定 -i 時間: チェックする最大の時間間隔を指定 -j: ext2を、ext3ファイルシステムに変換 |
Btrfs | mkfs.btrfs | Btrfsファイルシステムの作成 | |
XFS修復 | xfs_repair | XFSファイルシステムのチェック・修復 | |
XFS最適化 | xfs_fsr | XFSファイルシステムの断片化を最適化(デフラグ) | |
XFSデバッグ | xfs_db | XFSファイルシステムの構造を詳細に調査・編集できるデバッグツール |
Linuxコマンド一覧(マウント・デバイス情報)
カテゴリ | コマンド | 説明 | 主なオプション |
---|---|---|---|
マウント操作 | mount | デバイスやファイルシステムを指定のディレクトリにマウントする | -a: /etc/fstab記述のファイルシステムを全てマウント -t ファイルシステム名: ファイルシステム種類を指定 -o: マウントオプションを指定 |
umount | マウントされたファイルシステムをアンマウントする | -a: /etc/mtab記述のファイルシステムを全てアンマウント -t: 指定した種類のファイルシステムだけをアンマウント | |
デバイス情報の確認 | blkid | ブロックデバイスのUUIDやファイルシステムタイプなどを表示 | |
lsblk | ブロックデバイスとマウントポイントの構造をツリー表示する |
Linuxコマンド一覧(パーミッション・所有者・リンク管理)
カテゴリ | コマンド | 説明 | 備考 |
---|---|---|---|
パーミッション設定 | chmod | ファイルやディレクトリのアクセス権限(モード)を変更する | chmod 755 file.txtや chmod u+x script.shなどで使用 |
デフォルト権限設定 | umask | 新規作成ファイル・ディレクトリのデフォルト権限を制御する | umask 022 → デフォルトで755(dir)や644(file)になる |
所有者の変更 | chown | ファイルやディレクトリの所有者・所有グループを変更する | |
グループの変更 | chgrp | 所属グループのみを変更する(所有者はそのまま) | |
リンク作成 | ln | ファイルやディレクトリにリンク(ハード/シンボリック)を作成する | ln file1 file2(ハードリンク) ln -s dir linkdir(シンボリックリンク) |
パーミッション確認 | ls | ファイルの詳細情報(所有者・パーミッション)を確認できる | ls -lで確認 例:-rwxr-xr– 形式の出力 |
Linuxコマンド一覧(ファイル・コマンド検索)
カテゴリ | コマンド | 説明 |
---|---|---|
ファイル検索(実体スキャン) | find | ファイル名・属性・更新日時などの条件でファイルをリアルタイムに検索する |
ファイル検索(データベース) | locate | あらかじめ作られたデータベースから高速にファイル名を検索する |
データベース更新 | updatedb | locateコマンド用のファイル名データベースを更新する |
コマンド検索 | which | 実行ファイルのパスを表示(環境変数 $PATHにあるもの) |
type | コマンドの種類(組込みか、関数か、実行ファイルか)を表示 | |
whereis | 実行ファイル・ソース・マニュアルの場所をまとめて表示 |
ここまでが、LPIC 101試験の試験範囲です。101試験に合格できれば、LPIC level1の勉強は、半分を超えているでしょう。
また、未経験からインフラエンジニアを目指したい方などは、体系的にLinuxスキルを学べる、無料オンラインスクールもご検討ください。
転職支援つきで、IT業界のキャリアチェンジや、キャリアアップをサポートしています。興味がある方は、以下リンクから相談会に申し込みください。
【Linuxコマンド一覧】LPIC 102試験範囲
課題105:シェル、スクリプト
Linuxでは、シェルとスクリプトに関連するコマンドを利用することで、自動化や効率化が可能になります。シェル環境のカスタマイズや、簡単なスクリプトのカスタマイズを学んでいきます。
Linuxコマンド一覧(シェル環境・変数・関数・エイリアス)
カテゴリ | コマンド | 説明 |
---|---|---|
スクリプト読み込み | source | 指定したファイルを現在のシェル環境に読み込んで実行する |
環境変数表示 | env | 現在の環境変数を一覧表示する |
環境変数の設定 | export | 変数を環境変数として定義し、子プロセスでも有効にする |
シェル変数・関数の設定 | set | シェル変数やシェルの動作オプションを表示・設定する |
シェル変数・関数の削除 | unset | 指定したシェル変数や関数を削除する |
関数の定義 | function | シェル関数を定義するためのキーワード |
エイリアスの設定 | alias | コマンドに別名を付けて登録する |
Linuxコマンド一覧(シェルスクリプト:条件分岐・ループ・制御構文)
カテゴリ | コマンド/構文 | 説明 | 使用例・備考 |
---|---|---|---|
ループ制御(繰り返し) | for | リスト・配列などを対象に繰り返し処理を行う構文 | for 変数名 in 値リスト do 実行文 done |
ループ制御(条件式) | while | 条件が真の間繰り返すループ構文 | while 条件文 do 実行文 done |
条件判定 | test | 条件式を評価するコマンド(test 条件 で利用するが、[条件]でも利用可) | -f: ファイルがあれば真 -d: ディレクトリがあれば真 -nt : 時刻が新しいと真 -ot : 時刻が古いと真 -eq: 数値が同じなら真 -ge: 数値が大きいか、同じなら真 -gt: 数値が大きければ真 -le: 数値が小さいか、同じなら真 -lt: 数値が小さいと真 -ne: 数値が同じでなければ真 |
条件分岐 | if | 条件式の結果に応じて、処理を分岐する | if 条件式 then 実行文1 else 実行文2 fi |
条件分岐 | case | 条件式の結果に応じて、処理を分岐する(複数に分岐する時用) | case 式 in 値1) 実行文1;; 値2) 実行文2;; esac |
入力受け取り | read | ユーザー入力や標準入力を受け取って変数に代入 | |
連続数値表示 | seq | 指定された範囲の連続した数値列を出力する |
課題106:ユーザーインターフェースとデスクトップ
Linuxのユーザーインターフェースとデスクトップでは、GUI操作やアクセス制御を学びます。覚えるコマンドは多くはありません。その分、LPIC-1試験では、X11の理解などが重要と言えるでしょう。
Linuxコマンド一覧(X Window System のアクセス制御)
カテゴリ | コマンド | 説明 | 主なオプション |
---|---|---|---|
Xサーバーのアクセス制御 | xhost | Xサーバーへの接続を許可・拒否するホストを設定する | +ホスト名: 指定したホストを、Xサーバー接続許可 -ホスト名: 指定したホストを、Xサーバー接続非許可 |
X認証管理 | xauth | Xサーバーの接続に必要な認証情報を管理する |
課題107:管理タスク
管理タスクでは、ユーザー、グループアカウント管理から、ジョブスケジューリング、ローカリゼーション関連のコマンドを学んでいきます。
Linuxコマンドカテゴリ別一覧(ユーザー・グループ・パスワード管理)
パスワードロック、アンロックもごちゃごちゃになりやすい所です。passwdコマンドと、usermodコマンドでパスワードロック・アンロックができますが、オプションが大文字と小文字で異なるため、注意しましょう。
カテゴリ | コマンド | 説明 | 主なオプション |
---|---|---|---|
パスワード管理 | passwd | ユーザーのパスワードを設定・変更する | -l: パスワードをロックする -u: パスワードロックを解除する |
アカウント有効期限管理 | chage | ユーザーアカウントのパスワード有効期限や、警告日数を設定・確認する | -l: パスワード、アカウントの有効期限を表示 -m 最低日数: パスワード変更間隔の最低日数を設定 -M 最大日数: パスワードの最大有効期限日数を設定 -W 日数: パスワード有効期限切れの警告を、何日前に始めるか設定 -l 日数: パスワードの有効期限後から、アカウントロックまでの日数を設定 |
ユーザー追加 | useradd | 新しいユーザーアカウントを作成する | -d パス: ホームディレクトリを指定 -g グループ名: プライマリグループを指定 -G グループ名: プライマリグループ以外のグループを指定 -s パス: デフォルトシェルを指定 |
ユーザー削除 | userdel | 既存のユーザーアカウントを削除する | -r: ホームディレクトリも削除する |
ユーザー情報変更 | usermod | 既存ユーザーの属性(グループ・ホームなど)を変更する | -L: パスワードをロックする -U: パスワードロックを解除する |
グループ追加 | groupadd | 新しいグループを作成する | |
グループ削除 | groupdel | 既存のグループを削除する | |
グループ情報変更 | groupmod | グループ名の変更や、GIDの変更を行う | |
ユーザー・グループ情報参照 | getent | /etc/passwdや、/etc/group などのデータベース情報を取得する |
Linuxコマンド一覧(ジョブスケジューラ・サービス管理)
カテゴリ | コマンド | 説明 | 主なオプション |
---|---|---|---|
定期的なジョブのスケジュール | crontab | ユーザーごとに設定できる、定期的な処理実行スケジュールの管理ツール | -e: crontabファイルを編集する |
一時的なジョブの登録 | at | 指定した1回限りの時刻にコマンドを実行 | -dジョブ(-rジョブ): ジョブを削除する -l: 予約中のジョブを表示する |
atジョブの確認 | atq | 登録済みの atジョブ一覧を表示 | at -lと同じ |
atジョブの削除 | atrm | atで登録したジョブを、ジョブIDで削除する | at -dと同じ |
サービス管理(systemd) | systemctl | systemdベースのサービスや、ユニットの起動・停止・状態確認を行う | |
一時的なサービス実行 | systemd-run | 一時的なコマンドを、systemdユニットとして実行 |
Linuxコマンドカテゴリ別一覧(日付・時刻・タイムゾーン・文字コード)
カテゴリ | コマンド | 説明 | 主なオプション |
---|---|---|---|
タイムゾーン選択 | tzselect | 対話形式でシステムのタイムゾーン設定を、確認・変更候補を表示 | |
時刻管理 | timedatectl | systemdベースでの時刻・タイムゾーン設定・NTP設定を管理する | |
日時の表示 | date | 現在の日時を表示、または指定形式で日時を表示・設定する | |
ロケール確認 | locale | 現在のロケール設定を確認する | -a: 設定可能なロケールを表示 |
文字コード変換 | iconv | テキストファイルの文字コードを変換(例:UTF-8 ↔ Shift_JIS) | -f: 変換前の文字コードを指定 -t: 変換後の文字コードを指定 -l: 文字コードを表示 |
課題108:必須システムサービス
必須システムサービス分野においては、主に時刻の管理やログ、メール・プリンタ関連を学んでいきます。必須システムサービスは、とてもシンプルですので、覚えやすいでしょう。
Linuxコマンド一覧(時刻・NTP・ハードウェアクロック)
カテゴリ | コマンド | 説明 | 主なオプション |
---|---|---|---|
システム時刻管理 | timedatectl | systemd環境でのシステム時刻・タイムゾーン・NTP設定の管理 | |
システム時刻確認・設定 | date | 現在の日時を表示・設定する | |
ハードウェアクロック管理 | hwclock | ハードウェアクロックの確認・設定 | -r: ハードウェアクロックを表示 -w: システムクロックをハードウェアクロックに設定 -s: ハードウェアクロックをシステムクロックに設定 |
NTP操作・管理 | ntpd | NTPデーモン(Network Time Protocol) | |
ntpdate | 指定したNTPサーバと即時に時刻同期する | ||
chronyc | chronyd用のNTP同期状態の確認・操作コマンド |
Linuxコマンド一覧(ログ記録・管理・systemdログ操作)
カテゴリ | コマンド | 説明 | 主なオプション |
---|---|---|---|
ログ管理 | logger | システムログに記録する | |
logrotate | ログファイルを 、日付・サイズ・回数などでローテーション(分割保存)する | ||
ログ管理(systemd) | journalctl | systemd-journaldに記録されたログを、時系列・フィルタ付きで表示 | -f: ログの末尾を表示 -k: カーネルメッセージを表示 |
systemd-cat | systemdのログ(journal)に送信する |
Linuxコマンド一覧(メール送信・エイリアス・キュー管理)
カテゴリ | コマンド | 説明 |
---|---|---|
エイリアス更新 | newaliases | /etc/aliasesファイルに設定された メールエイリアスをデータベースに反映 |
メール送信・確認 | CLIから メールを送信・受信・閲覧 するためのコマンド | |
メールキュー確認 | mailq | 送信待ちのメールキュー(PostfixやSendmailのキュー)を表示する |
Linuxコマンド一覧(印刷管理)
カテゴリ | コマンド | 説明 | 主なオプション |
---|---|---|---|
印刷ジョブの送信 | lpr | 指定したファイルを印刷キューに送る(印刷指示を出す) | -#部数: 印刷部数を指定 -Pプリンタ名: プリンタを指定 |
印刷ジョブの削除 | lprm | 印刷待ちのジョブをキャンセルする | -Pプリンタ名: プリンタを指定 |
印刷ジョブの確認 | lpq | プリンタのキューにあるジョブの一覧を表示する | -Pプリンタ名: プリンタを指定 |
課題109:ネットワークの基礎
ネットワークの基礎では、インターネットプロトコルの基礎から、ネットワーク構成、トラブルシューティング、DNS関連を学んでいきます。
ネットワークはコマンドも大事ですが、ネットワークの概念を理解することがもっとも大事です。OSI参照モデルやTCP/IP、IPアドレスなどから、代表的なポート番号まで、ネットワークの基本を理解していきましょう。
Linuxコマンド一覧(ネットワーク・ホスト名管理)
カテゴリ | コマンド | 説明 |
---|---|---|
ネットワーク管理 | nmcli | NetworkManagerの CLIツール。インタフェースの制御や接続設定が可能 |
ホスト名管理 | hostnamectl | systemd環境でのホスト名の確認・設定 |
ネットワーク制御 | ifup | インタフェースを有効化 |
ifdown | インタフェースを無効化 |
Linuxコマンド一覧(ネットワーク設定・調査・接続確認)
カテゴリ | コマンド | 説明 | 主なオプション・サブコマンド |
---|---|---|---|
ネットワーク設定・確認 | ip | インタフェース・ルーティング・アドレスなどを設定・表示(操作対象は、link:データリンク層、addr:IPアドレス、route;ルーティングテーブルで指定) | show: 表示する add: 設定する |
ifconfig | ipコマンドの旧版。インタフェース確認・設定 | ||
ルーティング設定 | route | ルーティング確認・追加・削除 | |
ホスト名確認・変更 | hostname | システムの現在のホスト名を表示・一時変更 | |
ポート・ソケット確認(旧) | netstat | コンピュータの通信状況を確認。ssの旧版 | -a: すべてのソケット情報を表示 -p: PIDとプロセス名を表示 -r: ルーティングテーブルを表示 -t: TCPポートを表示 -u: UDPポートを表示 |
ポート・ソケット確認(新) | ss | netstatの後継。TCP/UDPの接続状況を高速に確認 | |
疎通確認(IPv4) | ping | 対象ホストにICMPパケットを送り、ネットワークの疎通確認 | -c: パケットの送信回数 -i: パケットの送信間隔 |
疎通確認(IPv6) | ping6 | pingのIPv6版 | -c: パケットの送信回数 -i: パケットの送信間隔 |
経路追跡(IPv4) | traceroute | パケットが目的地までに通過するルーターを確認 | |
経路追跡(IPv6) | traceroute6 | IPv6用の traceroute | |
経路追跡(IPv4) | tracepath | 権限不要で経路追跡できる、traceroute の簡易版 | |
経路追跡(IPv6) | tracepath6 | tracepathのIPv6版 | |
ポート接続テスト | netcat(nc) | 任意のポートへのTCP/UDP接続テスト、データ送受信、リッスンも可能 | -l: ポートをリッスンする -p ポート: ポート番号を指定する -u: UDPを利用する |
Linuxコマンド一覧(DNS)
カテゴリ | コマンド | 説明 |
---|---|---|
DNS名前解決 | host | ホスト名 ⇔ IPアドレスの簡易DNS問い合わせ(逆引き・正引き両対応) |
dig | DNS問い合わせを詳細に解析可能なツール(複数レコードやTTL確認も可能) | |
名前サービス問い合わせ | getent | /etc/nsswitch.confに従い、ローカル or ネットワーク経由で情報取得 |
課題110:セキュリティ
セキュリティ分野では、セキュリティ管理タスクやホストのセキュリティ、暗号化関連を学んでいきます。
Linuxコマンド一覧(ユーザー・プロセス・ネットワーク・権限など)
カテゴリ | コマンド | 説明 |
---|---|---|
ユーザー管理 | passwd | パスワード変更。root権限で他ユーザーのパスワード変更も可能 |
chage | ユーザーのパスワード有効期限・変更期限などを管理 | |
usermod | ユーザーの情報(所属グループ・シェルなど)を変更 | |
権限管理 | sudo | 一時的に管理者権限でコマンドを実行、/etc/sudoersに設定が必要 |
su | 他のユーザーにスイッチする | |
ユーザー情報確認 | who | ログイン中のユーザーを表示 |
w | ログイン中のユーザー + 実行中のコマンドやCPU使用率を表示 | |
ログイン履歴 | last | 過去のログイン履歴を表示 |
プロセスとリソース | ulimit | プロセスごとのファイル数・メモリ等の制限を確認・設定 |
ファイル検索 | find | ディレクトリを再帰的に探索し、条件に合うファイルを検索 |
ファイル使用者確認 | fuser | ファイルやポートを使用中のプロセスを表示 |
lsof | ファイルを開いているプロセス一覧を表示 | |
ネットワーク調査 | netstat | 接続・ポート・ルーティング情報を確認(旧方式) |
nmap | 外部ホストに対するポートスキャンツール(セキュリティ診断用) |
Linuxコマンド一覧(SSH接続・鍵管理・暗号化)
カテゴリ | コマンド | 説明 |
---|---|---|
SSH接続(リモート操作) | ssh | SSHプロトコルを使ってリモートマシンへ接続 |
SSH鍵ペア作成 | ssh-keygen | SSHで使用する公開鍵・秘密鍵のペアを作成 |
SSHエージェント起動 | ssh-agent | SSH鍵を一時的に記憶する「エージェント(デーモン)」を起動 |
SSH鍵の登録 | ssh-add | SSH秘密鍵を ssh-agentに登録してパスワード入力を省略 |
暗号化・署名(GPG) | gpg | ファイルの暗号化・復号、署名・検証を行うPGP互換のコマンド |
よくある質問
ここでは、Linuxコマンドを学ぶ人、またはLPIC level1試験を学習中の人に、よくある質問を説明していきます。
LPIC level1の出題範囲のコマンドは、これだけで十分ですか?
この記事で紹介しているコマンドのみで十分です。しかし、コマンドに紐づくオプションは、頻出項目を中心に、厳選して選んでいるため、試験前にはもう少し広くオプションを覚えるとより安心です。
また、それぞれのオプションや、ファイルのパスも覚えながら、パイプやリダイレクト、viエディタ、正規表現、ネットワークやセキュリティの理解などがあれば、LPIC level1は十分にカバーできます。
もし不安になるようであれば、LPIの公式サイトの出題範囲である「LPIC-1 Exam 101 and 102 Objectives」をあわせてお読みください。
■関連記事;【独学でも合格!】LPIC level1の効率的な勉強方法、参考書、勉強時間などを説明
LinuC レベル1の学習にも使えますか?
LinuC レベル1の学習にも使えます。LPIC-1とLinuC-1は、どちらもLinuxの基礎知識を問う資格であるため、試験範囲の大部分が共通しています。
しかし、LinuC-1では、LPIC-1試験範囲外のコマンド(virsh、docker、iptablesなど)もあるため、LinuC-1の学習では、完全に十分とは言えません。LinuC-1の勉強に使う場合は、少し追加で学ぶ必要があります。
ただし、LPIC-1とLinuC-1の試験において、理解を求められるコマンドは、9割方かぶっています。LinuC-1の学習においても、決してムダにはなりません。基礎固めに有効と言えます。
■関連記事:【独学でも合格!】LinuC レベル1の効率的な勉強方法を徹底解説
コマンドを効率的に覚える方法はありますか?
もっとも効果的な覚え方は「実際に手を動かして学ぶこと」です。仮想環境などで実際にコマンドを入力し、思い通りの結果になるのか、などを確認することを繰り返しましょう。
また、コマンドや、オプションをしっかり調べたい場合は、manコマンドで調べると、更に効率よく学ぶことができます。少しずつ触れていく習慣を作ることができれば、尚よいでしょう。
■関連記事:【未経験者のLPIC-1対策】Linuxの実機環境を作って学ぶ勉強方法
オプションを効率的に覚える方法はありますか?
各コマンドに紐づくオプションを効率的に覚えるには、「コマンドの意味」を理解した上で、「なぜこのオプションがあるのか、使うのか」、「どのような効果があるのか」を理解して実践することがおすすめです。
また、manコマンドを使って、コマンドを調べると、オプションの略語を調べることもできます。
例として、コピーをする「cpコマンド」であれば、「-f(force:強制上書き)」、「-i(interactive:相互に対話で、上書きしてよいか問い合わせる)」などです。
オプションを英語で覚えていくと、定着度が高くなります。また、自分で調べていくと、さらに知識が定着するでしょう。
実際のLinux環境でコマンドを試すには、どうすればよいですか?
「仮想環境(VirtualBox+Ubuntuなど)」、「クラウドサービス(AWSなど)」、「エミュレータ」のいずれかを利用することがおすすめです。
仮想環境では、VirtualBoxやVMwareなどの仮想化ソフトウェアを使って、UbuntuなどのLinuxディストリビューションをインストールするのが一般的です。
クラウドサービスでは、AWSの無料枠を使って、EC2を利用してLinuxサーバーを立てることもできます。「仮想環境」もしくは「クラウドサービス」がもっともおすすめです。
しかし、仮想環境やクラウドを使って、自分でLinux環境を構築するのが難しいようであれば、ブラウザ上でLinuxコマンドを試せる、エミュレータでも最初は問題ありません。
Linuxコマンドを試せるエミュレータは、JSLinuxが簡単に試せることができ、おすすめです。
さいごに
ここでは、LPIC level1の試験で出題される、主要なLinuxコマンドを網羅的に説明してきましたが、これらのコマンドは、試験合格のみでなく、実際のLinux環境を操作する上で役立つ基礎知識にもなります。
また、「コマンドを覚える」だけでなく、「理解して使える」ことが大事です。
今回紹介したコマンドを、実際にLinux環境(仮想環境でも可)で試しながら、頻出コマンド(ls、cp、chmod、grepなど)から手を動かして覚えていくとよいでしょう。
■転職相談のお申込みはこちら

■CCNA・LPICの無料資格取得支援、転職支援サービスを希望の方はお申込みはこちら


