プロセスとシステム
システムの情報
uname・free・lscpu・uptime・date・env など、OSやハードウェア、時刻、環境を調べるコマンド。
fastfetchシステムの概要をまとめて表示
Ubuntu には最初から入っていません。 で入れられます。
OS・カーネル・CPU・メモリ・シェル・端末などを、ロゴ付きで一度に表示します。
$ fastfetch
$ fastfetch --logo none # ロゴなしunameカーネルとOSの情報
カーネルのバージョンや CPU の種類を表示します。
$ uname -a # すべて
$ uname -r # カーネルのバージョン(WSLなら …-microsoft-standard-WSL2)
$ uname -m # CPUの種類(x86_64 / aarch64)lsb_release / os-releaseディストリビューションのバージョン
Ubuntu などのディストリビューションのバージョンを表示します。
$ lsb_release -a
$ cat /etc/os-releasehostnameホスト名
マシンの名前(ホスト名)や IP アドレスを表示します。
$ hostname
$ hostname -I # 自分のIPアドレス
$ hostnamectl # ホスト名とOSの情報(systemd)uptime起動してからの時間と負荷
起動してからの時間と、システムの負荷を表示します。
$ 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メモリの使用量
メモリの使用量と空きを表示します。
$ 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 の種類やコア数を表示します。
$ lscpu
$ nproc # 使えるCPUのコア数
$ make -j"$(nproc)" # コア数だけ並列でビルドlshw / dmidecodeハードウェアの詳細
ハードウェアの詳しい情報を表示します。
$ sudo lshw -short
$ sudo dmidecode -t memorydate日付と時刻
今の日付と時刻を表示します。書式を指定したり、日付の計算をしたりもできます。
$ 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:%S | 2026-09-25 / 09:30:00 |
%a | 曜日 | 木 |
%s | UNIX時間 | 1790300000 |
timedatectlタイムゾーンと時刻の設定
タイムゾーンや時刻の同期を設定します。
$ timedatectl
$ sudo timedatectl set-timezone Asia/Tokyocalカレンダー
Ubuntu には最初から入っていません。 で入れられます。
カレンダーを表示します。
$ cal
$ cal -3 # 先月・今月・来月
$ cal 2026env / printenv環境変数の一覧
環境変数の一覧や値を表示します。
$ env | sort
$ printenv PATH
$ env -i bash --noprofile --norc # 環境変数なしのまっさらなシェルlocale言語と文字コードの設定
言語や文字コードの設定を表示します。
$ locale
$ locale -a # 使えるロケールの一覧
$ LANG=C ls --help # そのコマンドだけ英語で表示dmesgカーネルのメッセージ
カーネルのメッセージ(ハードウェアの認識やエラーなど)を表示します。
$ sudo dmesg -T | tail # 人が読める時刻で
$ sudo dmesg -w # 追いかけるvmstatCPU・メモリ・I/Oの状態を続けて見る
数秒おきの変化を見るのに使います。WSL ではCPU温度などのセンサーは読めないので、負荷は top・uptime・vmstat で確認します。
$ vmstat 1 5 # 1秒ごとに5回、CPU・メモリ・I/Oの状態を表示shutdown / reboot / poweroff電源を切る・再起動する
電源を切ったり、再起動したりします。
$ sudo reboot
$ sudo poweroff
$ sudo shutdown -h +10 "10分後に止めます" # 予約
$ sudo shutdown -r 23:00
$ sudo shutdown -c # 予約を取り消すlsmod / modprobeカーネルモジュール
カーネルモジュール(ドライバなど)を一覧・読み込み・取り外しします。
$ lsmod | head # 読み込まれているモジュール
$ modinfo overlay # モジュールの説明
$ sudo modprobe br_netfilter # 読み込む
$ sudo modprobe -r pcspkr # 外すsysctlカーネルの設定を見る・変える
カーネルの設定値を表示・変更します。
$ 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 かどうかなど、システムの定数を表示します。
$ getconf LONG_BIT # 64 か 32
$ getconf PAGESIZE
$ getconf _NPROCESSORS_ONLNloginctlログインセッション
ログインしているセッションを管理します。
$ loginctl list-sessions
$ loginctl enable-linger $USER # ログアウト中もユーザーのサービスを動かし続けるloggerシステムログに書き込む
システムログにメッセージを書き込みます。
$ logger "バックアップが完了しました"
$ logger -t backup -p user.err "失敗しました"
$ journalctl -t backup # タグで絞って読むlogrotateログを定期的に切り替える
ログファイルが大きくなりすぎないように、定期的に切り替えて古いものを圧縮・削除します。
/var/log/myapp/*.log {
daily
rotate 14
compress
missingok
notifempty
copytruncate
}$ sudo logrotate -d /etc/logrotate.d/myapp # 試しに動かす(実際には何もしない)
$ sudo logrotate -f /etc/logrotate.d/myapp # 今すぐ切り替えるlspci / lsusbPCI・USB 機器の一覧
つながっている PCI・USB 機器を一覧します。
$ lspci | grep -i vga
$ lsusbiostat / sarディスクとCPUの統計
Ubuntu には最初から入っていません。 で入れられます。
ディスクや CPU の使用率の統計を表示します。
$ iostat -xz 1 # ディスクごとの使用率(1秒ごと)
$ sar -u 1 5 # CPU使用率を1秒ごとに5回
$ mpstat -P ALL 1 # CPUコアごとlast / lastbログインの履歴
ログインや再起動の履歴を表示します。
$ last -n 20
$ last reboot # 再起動の履歴
$ sudo lastb | head # 失敗したログイン/proc で直接見る
| ファイル | 内容 |
|---|---|
/proc/cpuinfo | CPUの詳細 |
/proc/meminfo | メモリの詳細 |
/proc/loadavg | 負荷 |
/proc/<PID>/status | プロセスの状態・メモリ |
/proc/<PID>/cmdline | 起動したときのコマンド |
/proc/<PID>/environ | 環境変数(tr '\0' '\n' < で読む) |
/proc/sys/... | カーネルの設定(sysctl と同じもの) |
$ grep -c processor /proc/cpuinfo
$ tr '\0' ' ' < /proc/1234/cmdline; echo