🐧 Linux 総合学習プラットフォーム

Linux コマンド一覧(274)

よく使う Linux コマンドをカテゴリ別にまとめました。各コマンドのページで書式・使用例・関連トピックを確認できます。

AIエージェント

claude
ターミナル上でAIコーディングエージェントClaude Codeを起動し、対話しながらファイル操作やコマンド実行を含む…

AI・ローカルLLM

ollama
ローカルLLMの取得・起動・管理をまとめて行うコマンド。裏側でREST APIサーバーとしても動作する。

GPIO

gpiodetect
システム上のGPIOチップ(gpiochip)を一覧する(libgpiod)。
gpioinfo
各ライン(ピン)の名前・方向・予約状況を表示する。
gpioget
指定ラインの入力値(0/1)を読み取る。
gpioset
指定ラインに出力値(0/1)を設定する。
pinctrl
新しめのRaspberry Pi環境でピンの機能・状態を確認/設定するツール。
raspi-gpio
GPIOピンの現在の状態(入出力の向きやレベル)を確認・設定する。
pinout
GPIOヘッダのピン配置を図として表示する。配線前の確認に使う。

GPU/AI

nvidia-smi
NVIDIA GPUの使用率・メモリ・温度・動作中プロセスなどの状態を表示・管理する。AI作業の状態確認の定番。

I2C

i2cdetect
I2Cバス上の機器のアドレス一覧を表示する(i2c-tools)。
i2cget
I2C機器の指定レジスタを読み取る。
i2cset
I2C機器の指定レジスタに値を書き込む。

LVM

pvcreate
ディスクやパーティションをLVMの物理ボリューム(PV)として初期化します。LVM構成の最初のステップで、ここで作った…
vgcreate
1つ以上の物理ボリューム(PV)をまとめてボリュームグループ(VG)を作成します。VGは容量プールとなり、ここから論理…
lvcreate
ボリュームグループ(VG)のプールから論理ボリューム(LV)を切り出します。作成したLVは通常のパーティションと同様に…

Raspberry Pi

nmcli
NetworkManagerをコマンドラインから操作するツール。Bookworm以降のRaspberry Pi OSで…

SELinux

getenforce
SELinux の現在のモードを表示するコマンド。Enforcing(強制)・Permissive(警告のみ)・Dis…
setenforce
SELinux のモードを一時的に切り替えるコマンド。0 で Permissive、1 で Enforcing になる…
sestatus
SELinuxの現在の状態(有効/無効、モード、ポリシー)をまとめて表示する。
restorecon
ファイルのSELinux文脈を、既定ポリシーが定める正しい値に戻す。-R で再帰。
semanage
SELinuxポリシーを恒久的に調整する。ファイル文脈の既定・許可ポート・booleanを管理する。
setsebool
SELinuxのbool(機能スイッチ)を切り替える。-P で再起動後も維持する恒久設定。
chcon
ファイルのSELinux文脈を一時的に変更する。恒久化は semanage+restorecon が正道。

SSH

ssh
リモートのサーバへ暗号化された安全な接続を行うコマンド。鍵認証またはパスワードで認証し、リモートのシェル操作やコマンド…
ssh-keygen
SSH の公開鍵認証で使う、秘密鍵と公開鍵のペアを生成するコマンド。生成した秘密鍵は手元で厳重に保管し、公開鍵だけをサ…
ssh-copy-id
手元の公開鍵をリモートサーバの authorized_keys に登録するコマンド。以降はパスワードなしで鍵認証による…

U-Boot/ストレージ

ext4load
ext4ファイルシステム上のファイルをメモリへ読み込む。MMCやUSBなどのストレージからカーネルやDTBをロードする…
fatload
FAT(VFAT)パーティション上のファイルをメモリへ読み込む。多くのボードでブート用の先頭FATパーティションからカ…
mmc
MMC/SDデバイスを操作・確認する。接続デバイスの一覧やパーティション情報を表示し、ロード元の指定に役立てる。

U-Boot/デバイスツリー

fdt
ロード済みデバイスツリー(DTB)を操作する。fdt addr で対象アドレスを登録し、fdt print で内容を確…

U-Boot/ネットワーク

tftpboot
TFTPサーバ上のファイルを指定したメモリアドレスへ転送する。事前に ipaddr と serverip を設定してお…
dhcp
DHCPでIPアドレスを自動取得する。ファイル名を渡すと取得後にそのままTFTP転送まで行う。固定IPを設定しない開発…

U-Boot/メモリ

md
指定アドレスのメモリ内容をダンプ表示する。.b/.w/.l でバイト/ワード/ロング単位を選ぶ。ロード結果やレジスタ値…
mw
指定アドレスのメモリへ値を書き込む。検証用にロード先を既知の値で埋めてから上書き確認するなどに使う。

U-Boot/環境変数

printenv
U-Bootの環境変数を表示する。引数なしで全変数を一覧し、変数名を渡すとその値だけを表示する。現在の起動設定を確認す…
setenv
環境変数を作成・変更する。値を省略するとその変数を削除する。変更はRAM上のみで、電源を切ると失われるため savee…
saveenv
RAM上の環境変数を不揮発領域(環境ストレージ)へ書き戻して永続化する。setenv での変更を次回起動以降も有効にす…

U-Boot/起動

boot
環境変数 bootcmd に設定されたコマンド列を実行して起動を進める。自動起動と同じ処理を手動で開始するコマンド。
bootm
メモリ上のU-Bootヘッダ付きイメージ(uImage)からカーネルを起動する。第3引数にDTBのアドレスを渡してカー…
booti
ARM64の生カーネルイメージ(Image)をメモリから起動する。bootm と異なりU-Bootヘッダを必要としない…
bootz
圧縮済みカーネル zImage(ARM)をメモリから起動する。uImageヘッダを必要とせず、DTBアドレスを第3引数…

Webサーバ

nginx
軽量・高速なWebサーバ。リバースプロキシとしても使われる。
httpd (Apache)
Apache HTTP Server。RHEL系ではサービス名・コマンド名ともに httpd。

Yocto

bitbake-layers
Yoctoのレイヤを管理する道具。レイヤの新規作成や、ビルドへの登録・一覧表示を行う。

namespace操作

unshare
指定した種類の新しいnamespaceを作成した上で、その中でコマンドを実行する。PID/NET/MNTなど分離したい…
lsns
システム上に現在存在するnamespaceを一覧表示する。種類(TYPE)・所属プロセス数(NPROCS)・代表PID…

アカウント

passwd
ユーザのパスワードを変更するコマンド。引数なしで自分のパスワードを変更でき、管理者がユーザ名を指定すると他ユーザのパス…
chage
パスワードの有効期限や変更間隔などのエイジング情報を確認・設定するコマンド。古いパスワードが使われ続けるのを防ぎ、定期…
usermod
既存ユーザの設定を変更するコマンド。所属グループの追加やアカウントのロックなどに使う。管理操作のため通常は sudo …

イメージ

docker images
ローカルに保存されているイメージの一覧を表示する。
docker pull
レジストリからイメージを取得する。タグ省略時は latest。
docker build
Dockerfile からイメージをビルドする。-t で名前とタグを付け、最後にビルドコンテキストを渡す。
docker rmi
ローカルのイメージを削除する。

イメージ配布

docker tag
既存のイメージに新しい名前(タグ)を付ける。実体はコピーされず、同じイメージに呼び名が追加される。

エディタ

nano
初心者向けのターミナルエディタ。画面下に操作(^X=終了 など、^はCtrl)が常時出る。
vim
高機能なターミナルエディタ。モードがあり、i で入力、Esc で戻り、:wq で保存終了、:q! で破棄。

カメラ

rpicam-hello
Raspberry Pi のカメラモジュールで映像を確認・撮影するための基本コマンド。libcamera系のツール群の…
v4l2-ctl
V4L2デバイス(カメラ等)を調べ制御する道具。接続機器や対応フォーマットの確認に使う。

カーネルモジュール

lsmod
現在カーネルに組み込まれているモジュールの一覧を表示する。/proc/modules を整形して見せる。
modinfo
モジュールの詳細情報(パス・ライセンス・作者・依存・パラメータ等)を表示する。
insmod
.ko ファイルを直接指定してモジュールを組み込む。依存関係は解決しないため学習・検証向け。
rmmod
組み込まれているモジュールを取り外す。使用中(Used by が0以外)のものは外せない。
modprobe
依存関係を自動解決してモジュールを組み込む/外す。/lib/modules 配下から名前で探す。実務の基本。
depmod
モジュール間の依存関係一覧(modules.dep)を作成・更新する。modprobe はこの情報を使う。

カーネルログ

dmesg
カーネルのリングバッファに記録された起動時およびハードウェア関連のメッセージを表示する。デバイス認識やドライバの問題を…

クロスビルド

arm-linux-gnueabihf-gcc
Arm(32bit hard-float)向けのクロスコンパイラ。オプションはネイティブgccと同じ。
./configure
Autotoolsの構成スクリプト。--hostにターゲットのトリプレットを渡すとクロス用にMakefileを生成する。

コンテナ

docker run
イメージからコンテナを起動する。-d でバックグラウンド、-p でポート公開、-v でボリューム、-it で対話実行。
docker ps
稼働中のコンテナを一覧する。-a を付けると停止済みも表示する。
docker exec
稼働中のコンテナ内でコマンドを実行する。-it でシェルを対話的に開ける。
docker logs
コンテナが標準出力に書いたログを表示する。-f で追記を追従する。
docker stop
稼働中のコンテナを停止する(正常終了を試みる)。
docker rm
停止済みのコンテナを削除する。-f で稼働中でも強制削除する。
podman
Docker互換のコンテナ管理ツール。デーモン不要で rootless 実行に向く。サブコマンドは docker とほ…

サーバ構築

named-checkconf
BIND(named)の設定ファイル named.conf の構文をチェックする。問題なければ無出力。
named-checkzone
DNSゾーンファイルの内容と構文を検査する。起動前の必須チェック。
smbpasswd
Samba用のユーザ・パスワードを登録/変更する。Linuxのログインパスワードとは別管理。
testparm
Sambaの設定 smb.conf の文法を検査し、有効な設定を表示する。
openssl
暗号・証明書のための万能ツール。鍵生成・自己署名証明書作成・証明書の確認などに使う。
certbot
Let's Encrypt の証明書を無料で自動取得・自動更新するツール。公開サイトのHTTPS化の定番。

サーバ設定

hostnamectl
サーバのホスト名を表示・変更する。

サービス管理

systemctl
systemd の中心的な操作コマンド。サービス(unit)の状態確認・起動・停止・再起動・自動起動の有効化、既定 t…

シェル

bash
GNU Bash シェル。対話的に使うほか、スクリプトファイルを実行できる。
sh
POSIX標準シェル。多くの環境で bash や dash への別名になっている。
echo
引数の文字列や変数の値を標準出力へ表示する。
read
標準入力から1行読み取り、変数に代入する。対話入力やループでの行処理に使う。
test / [
条件式を評価し、真なら終了ステータス0、偽なら1を返す。if 文と組み合わせて使う。
export
変数を環境変数にし、そのシェルから起動する子プロセスへ引き継げるようにする。
source / .
別ファイルを現在のシェルの中で読み込み実行する。設定の再読み込みや関数・変数の取り込みに使う。
exit
シェルやスクリプトを終了し、終了ステータス N(省略時は直前の値)を返す。
printf
書式を指定して文字列を出力する。echo より整形の自由度が高く、移植性も高い。
true / false
それぞれ常に成功(0)・失敗(1)の終了ステータスを返すだけのコマンド。無限ループや初期値に使う。
set
シェルの動作オプションを変更する。スクリプト先頭で堅牢化のために使うことが多い。
shift
位置パラメータを N 個(既定1)前へずらす。引数を順番に処理するループで使う。
seq
連番を1行ずつ出力する。ループやテストデータ作りに使う。
basename
パスから末尾のファイル名だけを取り出す。スクリプトで名前を扱うときに便利。
dirname
パスからディレクトリ部分だけを取り出す(ファイル名を除いた親)。
trap
シグナル受信時や終了時に実行する後片付けを登録する。EXIT で終了時に必ず走らせられる。

システム

reboot
ラズパイを安全に再起動する。設定変更後に必要なことがある。
shutdown
ラズパイを安全に停止する。電源を抜く前に実行してSDカードの破損を防ぐ。

システム情報

uname
動作中のカーネルやシステムの情報を表示する。-r でカーネルのリリース番号、-a でホスト名やアーキテクチャを含む全情…
lsb_release
使用中のディストリビューションの名前やバージョン、コードネームといった情報を表示するコマンド。

システム設定

timedatectl
システムの日時・タイムゾーンに関する設定を確認・変更する。引数なしで実行すると現在の設定を表示し、set-timezo…

シリアル

picocom
軽量なシリアル端末。指定デバイスへ指定ボーレートで接続し、基板の出力表示やログインができる。

ストレージ

docker volume
永続化に使うボリュームを作成・一覧・削除する。
lsblk
接続されているブロックデバイス(ディスク・パーティション・LVMなど)をツリー形式で一覧します。容量やマウント先も併せ…
df
マウントされている各ファイルシステムの容量・使用量・空き・使用率を一覧します。容量不足の調査でまず確認するコマンドです。
du
指定したディレクトリやファイルが消費している容量を集計します。どこが容量を食っているかを掘り下げて調べるのに使います。
mount
ファイルシステムをディレクトリツリーに接続します。引数なしで実行すると現在のマウント状況を一覧します。fstab と組…
umount
マウント済みのファイルシステムを切り離します。書き込みバッファを確実に反映するため、デバイスを取り外す前に実行します。…
mkfs
パーティションにファイルシステムを作成(フォーマット)します。mkfs.ext4 のように種別ごとのコマンドがあります…
fdisk
パーティションテーブルを表示・編集する対話型ツールです。-l を付ければ情報表示だけで済みます。編集操作はディスク構成…
parted
パーティションを操作するツールで、2TiBを超える大容量ディスク向けのGPTにも対応します。print で構成確認、m…
blkid
ブロックデバイスのUUIDやファイルシステム種別を表示します。fstab を UUID で記述する際の値を調べるのに使…

テキスト加工

sed
1行ずつ読み込んで置換や削除を行うストリームエディタ。
awk
行を列に分けて処理する。列抽出・条件抽出・集計が得意。
tr
文字単位で置換・削除・圧縮を行う。標準入力から読む。
cut
各行から指定した列や文字位置を切り出す。
sort
行を並べ替える。既定は辞書順、数値順や逆順も指定できる。
uniq
隣り合う重複行をまとめる。先に sort するのが定番。
wc
行数・単語数・バイト数を数える。

テキスト検索

grep
パターンに一致する行を検索して表示する。正規表現が使える。
egrep
拡張正規表現で検索する grep -E の別名(現在は grep -E が推奨)。

ディスク

dd
入力を出力へブロック単位で丸ごとコピーする。イメージのmicroSD書き込みに使うが、出力先の指定ミスは致命的。

ディスク診断

smartctl
ディスクが記録しているS.M.A.R.T.情報を読み出し、健康状態や自己診断結果を表示・実行するコマンド。
fsck
ファイルシステムの整合性を検査し、矛盾が見つかった場合は可能な範囲で修復するコマンド。対象はアンマウントしてから実行す…

デバイスドライバ

cat /proc/devices
現在カーネルに登録されているキャラクタ型・ブロック型デバイスのメジャー番号と名前の一覧を表示する。自作ドライバに動的割…

デバイスファイル

ls
ファイル一覧を表示する。デバイスでは -l で種別(先頭 c/b)とメジャー・マイナー番号を確認できる。
mknod
メジャー・マイナー番号を指定してデバイスファイルを手動作成する。c=キャラクタ型、b=ブロック型。

デバッグ

gdb
GNUデバッガ。実行を止めて変数や流れを調べる。-g付きビルドが前提。

ドキュメント

man 2 open
セクション2(システムコール)のマニュアルを表示する。概要・引数・戻り値・errno 一覧を確認できる。
man 3 printf
セクション3(ライブラリ関数)のマニュアルを表示する。libc の関数仕様を調べる。
man man
マニュアルを表示する。セクション番号を付けると目的のページを正確に開ける。man man で番号の意味を確認できる。
apropos
マニュアルの見出しをキーワードで横断検索する。目的のシステムコール名が分からないときに使う。
perror (C関数)
直近の errno に対応するエラーメッセージを標準エラー出力へ表示するC関数。man 3 perror で詳細を確認…
errno
errno の仕組みとエラー番号の一覧(ENOENT, EACCES など)を説明するマニュアル。失敗原因を調べる起点…

ナビゲーション

pwd
現在いるディレクトリの絶対パスを表示する。
cd
カレントディレクトリを移動する。

ネットワーク

docker network
コンテナ用の仮想ネットワークを作成・一覧表示・詳細確認するコマンド群。
ip addr
ネットワークインターフェースとIPアドレスの割り当てを表示する。
ip route
ルーティングテーブル(経路情報)を表示・操作する。
ping
指定ホストへパケットを送り、到達性と応答時間を確認する。
traceroute
宛先までに経由するルータを順番に表示し、経路を調べる。
dig
DNSへ問い合わせ、名前解決の結果を詳しく表示する。
nslookup
ドメイン名からIPアドレスを手軽に引く名前解決ツール。
hostname
自機のホスト名を表示する。-I で割り当てIPアドレスを表示。
scp
SSHの上を通る安全なファイルコピー。ローカル⇄リモート双方向。-r でフォルダごと。
wget
URLからファイルをダウンロードする。-c で中断再開、-r で再帰取得。

ネットワーク確認

ss
ソケットや待ち受けポートの状態を表示する(netstat の後継)。

ハードウェア確認

lspci
PCIバスに接続された機器を一覧する。-k で各機器を扱っているカーネルドライバ名も表示する。
lsusb
USBバスに接続された機器を一覧する。挿抜の確認や認識確認に使う。

バックアップ

rsync
送り元と送り先を比較し、変更があった部分だけを転送する高速コピー・同期ツール。ローカルだけでなくssh経由のリモート転…

パッケージ

apt
Debian/Ubuntu系のパッケージ管理。
dnf
RHEL/MiracleLinux系のパッケージ管理。サーバソフトの導入に使う。
apt update
インストール可能なパッケージの一覧(台帳)を最新化する。実際の更新はまだ行わない。
apt full-upgrade
インストール済みパッケージを更新する。依存関係の都合で必要なら不要パッケージの入れ替えも行う。ラズパイで推奨。

ビルド

gcc
Cソースをコンパイルして実行ファイルを作る。出力名を省くと a.out になる。
./a.out
gccで出力名を指定しなかった場合の既定の実行ファイル名。カレントのパスを付けて実行する。
make
Makefile に従ってビルドを実行する。カーネルモジュールはカーネルのビルド環境を使い .ko を生成する。
ar
複数のオブジェクトファイルをまとめて静的ライブラリ(.a)を作る。
cmake
CMakeLists.txtの記述をもとに、環境に応じたMakefile等のビルドファイルを生成し、実際のビルドも呼び…
pkg-config
インストール済みライブラリのコンパイルオプションやリンクオプションを、.pc設定ファイルをもとに表示するコマンド。

ビルド設定

make menuconfig
KconfigベースのテキストUIで設定を編集するMakeターゲット。BuildrootやLinuxカーネルのソースル…
make (Buildroot)
Buildrootのソースルートで引数なしに実行すると、現在の .config に従ってクロスツールチェーンの構築から…
make <board>_defconfig
Buildrootで、configs/ に用意されたボード向け既定設定を読み込んで .config を生成するMake…
bitbake
Yoctoのビルドエンジン。指定したターゲットのレシピを解析し、依存関係を解いてタスクを実行する。ターゲットには co…
source oe-init-build-env
Yoctoのビルドに必要な環境変数を現在のシェルに設定し、buildディレクトリへ移動する初期化スクリプト。pokyの…

ファイアウォール

firewall-cmd
firewalld を操作するコマンド。サービスやポートの許可・拒否、設定の確認・反映を行う。--permanent …
ufw
Uncomplicated Firewall の略で、Ubuntu系で使われる簡易ファイアウォール管理ツール。fire…

ファイル操作

mkdir
新しいディレクトリを作成する。
touch
空ファイルを作成する(既存なら更新日時を変更)。
cp
ファイルやディレクトリを複製する。
mv
移動、または名前を変更する。
rm
ファイルやディレクトリを削除する。確認なしで消える点に注意。
ln
別名(リンク)を作る。-s でシンボリックリンク(ショートカット)を作成する。

ファイル監視

inotifywait
inotify を使い、指定したファイルやフォルダの変化を待ち受けて報告する。inotify-tools に含まれる。

ブランチ

git branch
ブランチの一覧表示や新規作成を行う。
git switch
作業対象のブランチを切り替える(新しめの書き方)。
git checkout
ブランチ切り替えなどに使う従来からのコマンド。switch / restore に役割が分かれた。
git merge
指定したブランチの変更を、いまのブランチに統合する。

ブート設定

grub2-mkconfig
GRUBの設定ファイル grub.cfg を、/etc/default/grub などの設定から再生成する。grub.…

プロセス

ps
実行中のプロセスを一覧表示する。
top
CPU・メモリ使用状況をリアルタイムに表示する。q で終了。

プロセス・ジョブ

kill
プロセスやジョブに終了などのシグナルを送る。PID かジョブ番号(% 付き)で対象を指定する。既定は終了要求(15)。
jobs
現在のシェルが抱えるジョブ(バックグラウンド実行中や一時停止中の処理)を、ジョブ番号と状態つきで一覧する。
fg
バックグラウンドや一時停止中のジョブをフォアグラウンド(手前)に呼び戻す。番号は jobs で確認する。
bg
一時停止中のジョブをバックグラウンド(裏)で再開させる。Ctrl+Z で止めた処理を裏に流すときに使う。

ヘルプ・情報

which
そのコマンドの実体がPATH上のどこにあるかを表示する。呼べているか確認に使う。

メモリ管理

swapon
指定したファイルやパーティションをスワップ領域として有効化する。--showを付けると現在有効なスワップの一覧を表示す…

ユーザ・権限

su
別のユーザに切り替える。su - で環境ごと root になる(sudo が主流の今は使用は限定的)。
whoami
いま自分がどのユーザとして操作しているかを表示する。
id
ユーザID(uid)・グループID(gid)・所属グループを表示する。権限を調べる起点。
useradd
新しいユーザを作成する。ホームディレクトリが用意されるが、パスワードは passwd で別途設定する。管理者権限が要る。
groupadd
新しいグループを作成する。複数ユーザに同じ権限をまとめて与えるための入れ物を用意する。管理者権限が要る。

ユーザー管理

adduser
対話形式で新しいユーザーアカウントを作成する。パスワードや氏名などを質問形式で入力しながら、ホームディレクトリの作成ま…

リポジトリ

git init
カレント(または指定)ディレクトリを新しいGitリポジトリとして初期化する。
git clone
既存のリポジトリを履歴ごと手元に複製する。複製元は origin として自動登録される。

リモート

git remote
リモートリポジトリの一覧表示や登録を行う。
git push
手元のコミットをリモートへ送り出す。
git pull
リモートの変更を取得し、いまのブランチに取り込む。

リモート連携

git fetch
リモートの最新情報を手元に取得するが、作業ブランチへの反映(merge)は行わない。pullより慎重に進めたいときに使…

リリース管理

git tag
特定のコミットに、バージョン番号などの読みやすい名札(タグ)を付ける。リリース地点の目印として使う。

ログ監査

last
ログインに成功した履歴を新しい順に表示する。失敗履歴を見るlastbと対になるコマンド。

ログ管理

logrotate
設定に従いログファイルを区切り・圧縮・世代管理して古いものを削除する。多くの環境では自動で定期起動される。

ログ閲覧

journalctl
systemd のジャーナル(統合ログ)を閲覧する。-b で今回の起動以降のログ、-u で特定サービスのログ、-k で…

作業の退避

git stash
コミットしていない作業ツリーの変更を一時的な退避スタックへ積み、あとで呼び戻せるようにする。

動作確認

curl
URLへアクセスして応答を取得する。Webサーバの疎通確認に使う。

単発予約

at
指定した時刻にコマンドを一度だけ実行するよう予約します。実行すると専用プロンプトが開き、入力したコマンドが予約されます…
atq
at で予約済みのジョブの一覧を表示します。各行に予約番号・実行予定時刻・キューが並びます。取り消したい場合は、ここで…

取り消し

git restore
作業ツリーの変更を元に戻したり、ステージから変更を下ろしたりする。
git reset
ブランチの先頭を別のコミットに戻す。--hard は変更も破棄するため慎重に扱う。

圧縮・アーカイブ

tar
複数ファイルを1つのアーカイブに束ねる。c=作成 x=展開 t=一覧 z=gzip圧縮 f=ファイル名 v=経過表示。
gzip
単一ファイルを圧縮して .gz にする。-d または gunzip で解凍する。
zip
Windowsとやり取りしやすい .zip 形式で圧縮する。-r でフォルダごと。
unzip
.zip アーカイブを展開する。

定期実行

crontab
ユーザごとの cron 予定表を編集・表示・削除します。-e で編集、-l で一覧表示、-r で全削除です。1行が1つ…
systemctl list-timers
systemd の timer ユニットの一覧と、それぞれの次回起動予定・前回起動時刻を表示します。--all を付け…
systemd-run
コマンドを一時的なユニットとして即座に、または指定した遅延後に実行します。--on-active=30min で30分…

実行

./a.out
カレントディレクトリにある実行ファイルを起動する。PATHに含まれない場所の実行ファイルは ./ を付けて指定する。

履歴の整理

git commit --amend
直前のコミットの内容やメッセージを書き換える。新しいコミットは作らない。未pushのコミット限定で使う。
git rebase
今のブランチの変更を、指定したブランチの最新コミットの上に積み直し、履歴を一直線に整える。

暗号・検証

sha256sum
指定したファイルのSHA-256ハッシュ値を計算して表示する。ダウンロードファイルの改ざん・破損チェックに使う。
gpg
GnuPGによる暗号化・復号・署名を行うツール。共通鍵方式(-c)と公開鍵方式の両方を扱える。

検索

find
ディレクトリを再帰的にたどり、名前・種類・サイズ・日時などの条件でファイルを探す。
locate
事前に作られた索引データベースからファイルを高速に探す。updatedb で索引を更新する。
xargs
前段の出力を引数に変換して次のコマンドへ渡す。find の結果へまとめて処理を流すのに使う。

検証

sha256sum
指定したファイルの内容からSHA-256方式のハッシュ値を計算して表示する。ダウンロードしたファイルが壊れていないか、…

構成管理

ansible
Ansible の ad-hoc コマンドで、1回限りの操作を対象ホスト群へ SSH 経由で実行します。-m でモジュ…
ansible-playbook
YAML で書いた playbook を読み込み、記述した手順を対象ホストへ順に適用します。各タスクは冪等に設計されて…

権限

chmod
ファイルのパーミッションを変更する。
chown
ファイルの所有者・グループを変更する。
sudo
許可された一般ユーザが、コマンドを管理者(root)などの権限で実行するためのコマンド。root に直接ログインせず、…
visudo
/etc/sudoers を安全に編集するための専用コマンド。保存時に文法チェックを行い、誤りがあれば警告して破損を防…

権限管理

visudo
/etc/sudoers(または-fで指定したファイル)を専用の文法チェック付きで編集する。エラーがあると保存できず、…

状態確認

vcgencmd
ラズパイ固有のコマンドで、CPU温度や電源状態などを取得する。

環境・シェル

env
現在の環境変数(export済みの変数)を一覧表示する。printenv とほぼ同じ用途で使える。
printenv
環境変数を表示する。引数なしで全一覧、変数名を指定するとその値だけを出す。set と違いシェル変数は含めない。

環境構築

wsl
Windows側から、WSL(Windowsの中で動くLinux環境)のインストールや管理、起動を行うコマンド。Win…

疑似FS閲覧

cat /proc/*
cat で /proc 以下の疑似ファイルを読み、カーネルが保持するシステム情報を観察する。専用ツールがなくてもCPU…
cat /sys/*
cat で /sys 以下の属性ファイルを読み、カーネルが認識しているデバイスやドライバの状態を確認する。ハードウェア…

監視

docker stats
稼働中コンテナのCPU使用率・メモリ使用量・ネットワーク送受信量をリアルタイムで表示する。
uptime
稼働時間とロードアベレージ(1/5/15分)を1行で表示する。
htop
topの高機能版。色付きでCPU/メモリを可視化し、並べ替えや操作がしやすい。
free
メモリとスワップの使用量・空き容量を表示する。
vmstat
CPU待ち・I/O待ち・スワップなどを時系列で表示する。
iostat
デバイスごとのディスクI/O負荷を表示する(sysstat)。
iotop
プロセスごとのディスク読み書き速度をリアルタイムに表示する、topに似た対話ツール。
sar
CPU・メモリ・ディスクI/O・ネットワークなどシステムの活動状況を記録・報告する(sysstat付属)。

確認

ls (生成物確認)
ビルド成果物の出力先を一覧して、生成されたイメージやアーカイブのサイズを確かめる。Buildrootは output/…
tar (rootfs確認)
ルートファイルシステムのtarアーカイブを展開せずに中身だけ一覧して、目的のコマンドやライブラリが含まれているかを確認…
file
ファイルの種別を内容から判定して表示する。生成したカーネルイメージやrootfsイメージが、想定どおりの形式・アーキテ…
git status
変更・ステージの状況や現在のブランチを表示する。作業中に最もよく使う。
git log
コミット履歴を新しい順に表示する。

補助

date
現在の日付と時刻を表示します。cron 式を組むときの曜日番号や時刻の確認、スクリプト内でログにタイムスタンプを付ける…
chmod +x
ファイルに実行権を付与します。シェルスクリプトを cron や timer から直接呼び出すには、まず実行権が必要です…

複数コンテナ管理

docker compose
compose.yamlに定義した複数コンテナをまとめて起動・停止・確認するコマンド群。

観察

strace
コマンドが呼び出すシステムコールと、その引数・戻り値・errno を順に表示する。低レイヤの挙動調査や障害解析に使う。
ltrace
プログラムが呼ぶライブラリ関数(libc の printf など)を表示する。strace と対にして層の違いを確認で…

解析

ldd
実行ファイルが依存する共有ライブラリと解決先を一覧する。
nm
オブジェクトファイルや実行ファイルのシンボル(関数・変数)を一覧する。
readelf
ELFファイルのヘッダやセクション情報を表示する。アーキ確認に使う。
objdump
オブジェクト/実行ファイルを逆アセンブルしたり、ヘッダ情報を表示する。

記録

git add
変更をステージング(インデックス)に載せ、コミット対象に含める。
git commit
ステージ上の変更を、メッセージ付きで1つの履歴として確定する。

設定

raspi-config
ラズパイの初期設定をメニュー形式で行う公式ツール。ローカライズやインターフェース有効化、ホスト名変更などをまとめて設定…

調査

git diff
作業ツリー・ステージ・直前コミットの間の差分を表示する。オプションによって比較対象の組み合わせが変わる。
git blame
指定したファイルの各行を最後に変更したコミット・作成者・日付を一覧表示し、変更の経緯を追いやすくする。
lsof
開いているファイルやソケットと、それを開いているプロセスを一覧する。

起動分析

systemd-analyze
システムの起動にかかった時間を分析する。引数なしで段階ごとの要約、blame で遅いサービスを降順に、critical…

閲覧

cat
ファイルの内容を連結して表示する。
less
長いファイルをスクロールしながら閲覧する。q で終了。
head
ファイルや入力の先頭部分を表示する(既定10行)。パイプ確認に便利。
tail
ファイルの末尾部分を表示する。-f で追記を追従。