/Linuxコマンド

プロセスとシステム

システムの情報

uname・free・lscpu・uptime・date・env など、OSやハードウェア、時刻、環境を調べるコマンド。

fastfetchシステムの概要をまとめて表示

Ubuntu には最初から入っていません。 で入れられます。

OS・カーネル・CPU・メモリ・シェル・端末などを、ロゴ付きで一度に表示します。

bash
$ fastfetch
$ fastfetch --logo none        # ロゴなし

unameカーネルとOSの情報

カーネルのバージョンや CPU の種類を表示します。

bash
$ uname -a                     # すべて
$ uname -r                     # カーネルのバージョン(WSLなら …-microsoft-standard-WSL2)
$ uname -m                     # CPUの種類(x86_64 / aarch64)

lsb_release / os-releaseディストリビューションのバージョン

Ubuntu などのディストリビューションのバージョンを表示します。

bash
$ lsb_release -a
$ cat /etc/os-release

hostnameホスト名

マシンの名前(ホスト名)や IP アドレスを表示します。

bash
$ hostname
$ hostname -I                  # 自分のIPアドレス
$ hostnamectl                  # ホスト名とOSの情報(systemd)

uptime起動してからの時間と負荷

起動してからの時間と、システムの負荷を表示します。

bash
$ uptime
09:30:01 up 2 days,  3:12,  1 user,  load average: 0.52, 0.40, 0.31
$ uptime -p                    # 「up 2 days, 3 hours」の形

load average は直近1分・5分・15分の平均負荷です。CPUのコア数を超えると混み合っています。

freeメモリの使用量

メモリの使用量と空きを表示します。

bash
$ free -h
total        used        free      shared  buff/cache   available
Mem:            15Gi       3.1Gi       9.8Gi       4.0Mi       2.7Gi        12Gi

空きの目安は free ではなく available を見ます(buff/cache は必要なら解放されるため)。

lscpu / nprocCPUの情報

CPU の種類やコア数を表示します。

bash
$ lscpu
$ nproc                        # 使えるCPUのコア数
$ make -j"$(nproc)"            # コア数だけ並列でビルド

lshw / dmidecodeハードウェアの詳細

ハードウェアの詳しい情報を表示します。

bash
$ sudo lshw -short
$ sudo dmidecode -t memory

date日付と時刻

今の日付と時刻を表示します。書式を指定したり、日付の計算をしたりもできます。

bash
$ date
$ date +%F                     # 2026-09-25
$ date '+%Y/%m/%d %H:%M:%S'
$ date +%s                     # UNIX時間(秒)
$ date -d @1790000000          # UNIX時間から日付へ
$ date -d "3 days ago" +%F
$ date -d "next monday"
$ TZ=UTC date                  # 別のタイムゾーンで表示
書式意味例
%Y %m %d年・月・日2026 09 25
%H %M %S時・分・秒09 30 00
%F / %T%Y-%m-%d / %H:%M:%S2026-09-25 / 09:30:00
%a曜日木
%sUNIX時間1790300000

timedatectlタイムゾーンと時刻の設定

タイムゾーンや時刻の同期を設定します。

bash
$ timedatectl
$ sudo timedatectl set-timezone Asia/Tokyo

calカレンダー

Ubuntu には最初から入っていません。 で入れられます。

カレンダーを表示します。

bash
$ cal
$ cal -3            # 先月・今月・来月
$ cal 2026

env / printenv環境変数の一覧

環境変数の一覧や値を表示します。

bash
$ env | sort
$ printenv PATH
$ env -i bash --noprofile --norc   # 環境変数なしのまっさらなシェル

locale言語と文字コードの設定

言語や文字コードの設定を表示します。

bash
$ locale
$ locale -a                 # 使えるロケールの一覧
$ LANG=C ls --help          # そのコマンドだけ英語で表示

dmesgカーネルのメッセージ

カーネルのメッセージ(ハードウェアの認識やエラーなど)を表示します。

bash
$ sudo dmesg -T | tail       # 人が読める時刻で
$ sudo dmesg -w              # 追いかける

vmstatCPU・メモリ・I/Oの状態を続けて見る

数秒おきの変化を見るのに使います。WSL ではCPU温度などのセンサーは読めないので、負荷は top・uptime・vmstat で確認します。

bash
$ vmstat 1 5        # 1秒ごとに5回、CPU・メモリ・I/Oの状態を表示

shutdown / reboot / poweroff電源を切る・再起動する

電源を切ったり、再起動したりします。

bash
$ sudo reboot
$ sudo poweroff
$ sudo shutdown -h +10 "10分後に止めます"   # 予約
$ sudo shutdown -r 23:00
$ sudo shutdown -c                          # 予約を取り消す

lsmod / modprobeカーネルモジュール

カーネルモジュール(ドライバなど)を一覧・読み込み・取り外しします。

bash
$ lsmod | head                  # 読み込まれているモジュール
$ modinfo overlay               # モジュールの説明
$ sudo modprobe br_netfilter    # 読み込む
$ sudo modprobe -r pcspkr       # 外す

sysctlカーネルの設定を見る・変える

カーネルの設定値を表示・変更します。

bash
$ sysctl vm.swappiness
$ sudo sysctl -w net.ipv4.ip_forward=1                 # 今だけ変える
$ echo 'vm.swappiness=10' | sudo tee /etc/sysctl.d/99-local.conf
$ sudo sysctl --system                                 # 設定ファイルを読み直す
$ sysctl -a 2>/dev/null | grep inotify                 # inotify の上限など

getconfシステムの定数

64bit かどうかなど、システムの定数を表示します。

bash
$ getconf LONG_BIT          # 64 か 32
$ getconf PAGESIZE
$ getconf _NPROCESSORS_ONLN

loginctlログインセッション

ログインしているセッションを管理します。

bash
$ loginctl list-sessions
$ loginctl enable-linger $USER    # ログアウト中もユーザーのサービスを動かし続ける

loggerシステムログに書き込む

システムログにメッセージを書き込みます。

bash
$ logger "バックアップが完了しました"
$ logger -t backup -p user.err "失敗しました"
$ journalctl -t backup            # タグで絞って読む

logrotateログを定期的に切り替える

ログファイルが大きくなりすぎないように、定期的に切り替えて古いものを圧縮・削除します。

/etc/logrotate.d/myapp
/var/log/myapp/*.log {
daily
rotate 14
compress
missingok
notifempty
copytruncate
}
bash
$ sudo logrotate -d /etc/logrotate.d/myapp     # 試しに動かす(実際には何もしない)
$ sudo logrotate -f /etc/logrotate.d/myapp     # 今すぐ切り替える

lspci / lsusbPCI・USB 機器の一覧

つながっている PCI・USB 機器を一覧します。

bash
$ lspci | grep -i vga
$ lsusb

iostat / sarディスクとCPUの統計

Ubuntu には最初から入っていません。 で入れられます。

ディスクや CPU の使用率の統計を表示します。

bash
$ iostat -xz 1         # ディスクごとの使用率(1秒ごと)
$ sar -u 1 5           # CPU使用率を1秒ごとに5回
$ mpstat -P ALL 1      # CPUコアごと

last / lastbログインの履歴

ログインや再起動の履歴を表示します。

bash
$ last -n 20
$ last reboot          # 再起動の履歴
$ sudo lastb | head    # 失敗したログイン

/proc で直接見る

ファイル内容
/proc/cpuinfoCPUの詳細
/proc/meminfoメモリの詳細
/proc/loadavg負荷
/proc/<PID>/statusプロセスの状態・メモリ
/proc/<PID>/cmdline起動したときのコマンド
/proc/<PID>/environ環境変数(tr '\0' '\n' < で読む)
/proc/sys/...カーネルの設定(sysctl と同じもの)
bash
$ grep -c processor /proc/cpuinfo
$ tr '\0' ' ' < /proc/1234/cmdline; echo