LPIC 102 チートシート

試験前の確認事項としてまとめた内容です。

## 環境変数

|name|content|
|---|---|
|DISPLAY|リモートアクセス先のホスト|
|LANG|ロケール(全カテゴリ)|
|TZ|タイムゾーン|
|USER|ログインユーザー|
|HOSTNAME|ホスト名|
|PATH|コマンドやプログラムを検索するディレクトリの一覧|
|PWD|カレントディレクトリのパス|

ロケール

|category|content|
|---|---|
|LC_CTYPE|文字の分類、文字の種類の規定|
|LC_NUMERIC|数値の書式|
|LC_TIME|日付・時刻の書式|
|LC_MESSAGES|出力メッセージの言語|
|LC_MONETARY|通貨の書式|
|LC_NAME|名前の書式|
|LC_ADDRESS|アドレス、ロケーションの書式|
|LC_TELEPHONE|電話番号の書式|
|LC_ALL|指定した値が全カテゴリを上書き、個別設定はできない|
|LANG|デフォルト値|

## ディレクトリ・ファイル

|path|content|
|---|---|
|/proc|起動中のプロセスやカーネルが認識しているハードウェアの情報が格納されているディレクトリ|
|/proc/sys/net/ipv4/ip_forward||
|/etc|システムの設定ファイルなどが格納されているディレクトリ|
|/etc/X11/xorg.conf|X.Orgの設定ファイル|
|/etc/X11/xorg.conf.d/(~.conf)|X.Orgの設定ファイルが格納されるディレクトリ|
|/etc/X11/xdm|XDMの設定ファイルを格納するディレクトリ|
|/etc/X11/gdm|GDMの設定ファイルを格納するディレクトリ|
|/etc/X11/kdm|KDMの設定ファイルを格納するディレクトリ|
|/etc/X11/xinit/Xclients|ウィンドウマネージャの起動ファイル|
|/etc/X11/xinit/xinitrc|startxやxinitコマンドで読み込まれるスクリプト(\~/.Xresourcesファイル、\~/.Xclientsファイルが呼び出される, /etc/X11/xinit/xinitrc.d/ディレクトリ以下のファイルが呼び出される)|
|/etc/X11/xdm/Xsession|ウィンドウマネージャの起動(/etc/X11/xinit/xinitrc.d/ディレクトリ配下のファイルが呼び出される)|
|/etc/X11/xdm/Xresources|ログイン画面の表示やXクライアントの設定(xinitrc（または~/.xinitrc）やXsession（または~/xsession）で読み込まれる)|
|/etc/passwd|ユーザーアカウント情報|
|/etc/shadow|シャドウパスワード情報|
|/etc/group|グループの設定|
|/etc/crontab|システムのcrontabファイル|
|/etc/cron.*|/etc/crontabから呼び出される|
|/etc/cron.d|cronジョブを記述したファイルを格納したディレクトリ|
|/etc/cron.hourly|1時間に1度実行されるcronジョブを記述したファイルを格納するディレクトリ|
|/etc/cron.daily|1日に1度実行されるcronジョブを記述したファイルを格納するディレクトリ|
|/etc/cron.weekly|週に1度実行されるcronジョブを記述したファイルを格納するディレクトリ|
|/etc/cron.monthly|月に1度実行されるcronジョブを記述したファイルを格納するディレクトリ|
|/etc/at.allow|atコマンドのアクセスを許可するユーザーを記述するファイル|
|/etc/at.deny|atコマンドのアクセスを拒否するユーザーを記述するファイル|
|/etc/localtime|システムで利用するタイムゾーンを/usr/share/zoneinfoからコピー。バイナリファイル|
|/etc/timezone|TZの設定を全ユーザーで利用するために記述するテキストファイル|
|/etc/skel|ユーザーに新規作成時、ホームディレクトリにコピーされるファイルを格納するディレクトリ|
|/etc/ntp.conf|NTPサーバーの設定|
|/etc/ntp.drift|NTPサーバーの補正情報|
|/etc/chrony.conf|Chronyの設定ファイル|
|/etc/rsyslog.conf|rsyslogの設定ファイル|
|/etc/rsyslog.d|rsyslogの設定ファイルを格納するディレクトリ|
|/etc/systemd/journald.conf|journaldの設定ファイル|
|/etc/logrotate.conf|logrotateの設定|
|/etc/aliases|メールアドレスの別名を設定|
|/etc/cups/cupsd.conf|CUPSの設定ファイル|
|/etc/cups/printers.conf|プリンタに関する設定ファイル|
|/etc/services|ポート番号とサービスの対応を記述したファイル|
|/etc/hostname|ホスト名を記述したファイル|
|/etc/hosts|ホスト名とIPアドレスの対応を記述したファイル|
|/etc/network/interfaces|ネットワークインターフェースの設定を記述したファイル(Debian系)|
|/etc/sysconfig/network-scripts|ネットワークインターフェースの設定ファイルを配置するディレクトリ(Red Hat系)|
|/etc/resolv.conf|参照先DNSサーバの設定|
|/etc/nsswitch.conf|名前解決の順序設定|
|/etc/systemd/resolved.conf|systemd-resolvedサービスの設定ファイル|
|/etc/xinetd.conf|xinetdの設定ファイル|
|/etc/xinetd.d|xinetdの設定ファイルを格納するディレクトリ|
|/etc/hosts.allow|tcpdのアクセス許可設定|
|/etc/hosts.deny|tcpdのアクセス拒否設定|
|/etc/nologin|rootアカウントによるログイン以外を禁止|
|/etc/ssh/sshd_config|sshdの設定ファイル|
|/etc/default/useradd|useraddでオプションを指定しない場合に使用されるデフォルト値|
|/etc/sudoers|sudoの設定ファイル|
|/var||
|/var/spool/cron(/crontabs)|ユーザーのcrontabファイルを格納するディレクトリ|
|/var/spool/mail/|メールスプール(表示コマンド：mail)|
|/var/spool/mqueue/|メールキュー(表示コマンド：mailq)|
|/var/log/messages||
|/var/log/lastlog||
|/var/log/journal||
|/var/run/log/journal||
|/var/log/syslog||
|/var/log/secure|認証サービスのログファイル|
|/var/log/maillog|メールサービスに関するログの出力先となるディレクトリ|
|/var/log/wtmp|lastが参照するファイル|
|/var/log/utmp||
|/var/run/utmp|wやwhoが参照するファイル。システムにログインしているユーザー情報|
|/boot||
|/usr||
|/usr/share/zoneinfo|タイムゾーン情報を記述したバイナリファイルを格納するディレクトリ|
|~/|ホームディレクトリ|
|~/.ssh/known_hosts|サーバーの公開鍵が登録されるファイル|
|~/.ssh/authorized_keys|サーバーに登録される公開鍵情報|
|~/.xsesssion|ユーザごとのXsessionスクリプト|
|~/.Xresources|ユーザーごとのXクライアントの設定|
|~/.xinitrc|ユーザーごとのxinitrcスクリプト|
|~/.xsession-errors|X Window Systemのエラーが出力されるファイル|
|~/.gnupg|GnuPGに関連するファイルの置かれるディレクトリ|

## 文字コード

|code|content|
|---|---|
|ASCII|7ビットの文字コード。128種類の文字(英数字、記号、制御コード)を表現|
|ISO-8859|ASCIIを8ビットに拡張したもの。256種類の文字を表現|
|Unicode|他言語を扱うために作成された文字コード|
|UTF-8|Unicodeで定義された文字を表示する符号化方式(ASCIIと互換)|
|EUC-JP|UNIX環境で標準的に利用される日本語文字コード|
|Shift_JIS|Windowsで標準的に利用される日本語文字コード|

## IPアドレスのクラス

|class|range|subnet|
|---|---|---|
|A|0.0.0.0 - 127.255.255.255|255.0.0.0|
|B|128.0.0.0 - 191.255.255.255|255.255.0.0|
|C|192.0.0.0 - 223.255.255.255|255.255.255.0|
|D|224.0.0.0 - 239.255.255.255||
|E|240.0.0.0 - 255.255.255.255||

## プライベートアドレス

|class|range|subnet|
|---|---|---|
|A|10.0.0.0 - 10.255.255.255|
|B|172.16.0.0 - 172.31.255.255|
|C|192.168.0.0 - 192.168.255.255|

## ポート

|num|TCP/UDP|content|
|---|---|---|
|143|IMAP|
|631||CUPSのWEBブラウザ設定画面|

## 変数

|command|content|
|---|---|
|env|環境変数を表示|
|printenv|環境変数を表示|
|set|シェル変数と環境変数を表示|
|unset|変数を削除|

## env

|option|content|
|---|---|
|-i|何も環境変数が設定されていない状態にする|
|-u 環境変数名|環境変数を一時的に削除|
|環境変数名=値|環境変数の値を一時的に変更|
|(オプションなし)|全ての環境変数を表示|

## set

shellのオプション

|subcommand|content|
|---|---|
|-o|オプションを有効にする/オプションの一覧を表示|
|+o|オプションを無効にする|

|option|content|
|---|---|
|-a, allexport|作成・変更した変数を自動的にエクスポートする|
|emacs|emacs風のキーバインドにする|
|ignoreeof|Ctrl+Dによってログアウトしないようにする|
|-C, noclobber|出力リダイレクトによる上書きを禁止する|
|-f, noglob|メタキャラクタを使ったファイル名展開を無効にする|
|vi|vi風のキーバインドにする|
|-n, noexec|シェルスクリプトを読み込むが、実行はせずに構文エラーのみ確認|

## エイリアス

|command|content|
|---|---|
|alias|エイリアスの設定|
|unalias|エイリアスの解除|

\\をつけるとエイリアスを使用しないで実行

## 関数

|command|content|
|---|---|
|function|関数を定義|
|declare -f|定義されている関数を表示|
|unset|関数を削除|

## bashの設定ファイル

|file|content|
|---|---|
|/etc/profile|ログイン時に実行され、全ユーザーから参照される|
|/etc/bash.bashrc|bash起動時に実行され、全ユーザーから参照される|
|/etc/bashrc|~/.bashrcから参照される|
|~/.bash_profile|ログイン時に実行される|
|~/.bash_login|~/.bash_profileがない場合、ログイン時に実行される|
|~/.profile|~/.bash_profileも~/.bash_loginもない場合、ログイン時に実行される|
|~/.bashrc|bash起動時に実行される|
|~/.bash_logout|ログアウト時に実行される|

## スクリプト

### シェル変数の特殊変数

|arg|content|
|---|---|
|$0|シェルスクリプトファイル名(フルパス)|
|$1|1番目の引数|
|$2|2番目の引数。n番目も同様|
|$#|引数の数|
|$@|すべての引数(スペース区切り)|
|$*|すべての引数(区切りは環境変数IFSで指定されたもの)|
|$$|現在のシェルのPID(プロセスID)|

### test

test 条件文
[ 条件文 ]

|condition|result|
|---|---|
|ファイル形式||
|-f|ファイルがあれば真|
|-d|ディレクトリがあれば真|
|-r|ファイルが存在し、かつ読み込み可能であれば真|
|-w|ファイルが存在し、かつ書き込み可能であれば真|
|-x|ファイルが存在し、かつ実行可能であれば真|
|-s|サイズが0より大きいファイルがあれば真|
|-L|シンボリックリンクであるファイルがあれば真|
|ファイル特性||
|-e|ファイルがあれば真|
|-nt|ファイル1がファイル2より修正時刻が新しければ真|
|-ot|ファイル1がファイル2より修正時刻が古ければ真|
|数値||
|-eq|数値1と数値2が等しければ真|
|-ge|数値1が数値2より大きい、もしくは等しければ真|
|-gt|数値1が数値2より大きければ真|
|-le|数値1が数値2より小さい、もしくは等しければ真|
|-lt|数値1が数値2未満であれば真|
|-ne|数値1と数値2が等しくなければ真|
|文字列||
|-n|文字列の長さが0より大きければ真|
|-z|文字列の長さが0であれば真|
|=|2つの文字列が等しければ真|
|!=|2つの文字列が等しくなければ真|
|論理結合||
|!|条件式が偽であれば真|
|-a|AND演算|
|-o|OR演算|

## X.Orgの設定ファイル

/etc/X11/xorg.conf

|section|content|
|---|---|
|ServerLayout|入出力デバイスに関する設定|
|Files|RGBカラーデータベースの場所やフォントの格納場所に関する設定|
|Module|組み込むモジュールの設定|
|InputDevice|キーボードやマウスなどの入力デバイスの設定|
|Monitor|モニタータイプの設定|
|Device|ビデオカードの設定|
|Screen|ディスプレイの表示色数や画面サイズなどの設定|

## ディスプレイマネージャ

|name|content|
|---|---|
|XDM|X.Org標準|
|GDM|GNOMEで利用される|
|SDDM|KDE Plasmaで利用される|
|LigthDM|Ubuntu標準|

## ウィンドウマネージャ

|name|content|
|---|---|
|twm|最小限の機能を備えた基本的なウィンドウマネージャ|
|FVWM|軽快でシンプル|
|Enlightment|高度なカスタマイズが可能|
|Metacity|GNOME 2の標準|
|Mutter|GNOME 3の標準|
|Fluxbox|軽快でカスタマイズ性が高い|
|WindowMaker|簡素で軽量|
|Compiz|立体的な画面効果が華々しい|
|KWin|KDEの標準|

## リモートデスクトップ

|name|content|
|---|---|
|VNC|クロスプラットフォーム対応|
|RDP|Windows標準|
|SPICE|RDPと同様の画面転送プロトコル。オープンソース|
|XDMCP|ディスプレイマネージャをネットワーク越しに利用できるプロトコル|

## XDM設定

/etc/X11/xdm ディレクトリ内

|file|content|
|---|---|
|xdm-config|XDMの設定ファイル|
|Xresources|XDMログイン画面のデザイン設定|
|Xaccess|ホストからXDMへアクセス許可の設定|
|Xsetup_0|XDMログイン画面表示前に実行されるスクリプト|
|Xsession|XDMのログイン後に実行されるスクリプト|

## キーボードアクセシビリティ

|setting|content|
|---|---|
|ハイコントラスト|視覚障がい者のためにコントラストを強調|
|大きな文字|システムの文字を大きく表示|
|カーソルの大きさ|大きなカーソルを表示|
|ズーム|カーソル位置をズーム|
|スクリーンリーダー|フォーカスのある画面のテキストを音声で読み上げる|
|切り替えキー|CapsLockとNumLockのオン・オフが切り替わるとビープ音を鳴らす|
|視覚警告|警告音が鳴った時に、画面全体をフラッシュするなど視覚的にも警告|
|スクリーンキーボード|マウスで操作するスクリーン上のキーボード|
|リピートキー|キーを長押しすると繰り返しキー入力したことにする|
|カーソルの点滅|テキスト入力時のカーソル点滅速度を調整|
|タイピング支援(AccessX)|スティッキーキー、スローキー、バウンスキーを設定|
|マウスキー|テンキーでもマウスカーソルを動かせるようにする|
|クリック支援|主ボタンの押しっぱなしを副ボタン押下とみなす等|
|ダブルクリックと認識する間隔|ダブルクリックと認識する間隔時間を調整|
|スティッキーキー|修飾キーを押されたままの状態にする|
|スローキー|キー押下を認識する時間を調整、ビープ音を鳴らす等|
|バウンスキー|素早く何度も押したキーを認識しない|
|トグルキー|NumLock、CapsLockなどの切り替え時にビープ音を鳴らす|

## useradd

ユーザーアカウントを作成する

|option|content|
|---|---|
|-c|コメントフィールドを指定|
|-d|ホームディレクトリを指定|
|-g|プライマリグループを指定|
|-G|プライマリグループ以外に所属するグループを指定|
|-s|デフォルトシェルを指定|
|-D|デフォルトの設定値を表示・設定|
|-m|ホームディレクトリを自動的に設定|
|-p|暗号化済みのパスワードを設定|

## usermod

既存のユーザーアカウントを変更

|option|content|
|---|---|
|-c, --comment|コメントフィールドを変更|
|-d, --home|ホームディレクトリを変更|
|-g, --gid|プライマリグループを変更|
|-G, --groups|所属するグループを変更|
|-s|デフォルトシェルを変更|
|-L, --lock|パスワードをロックして一時的に無効にする|
|-U, --unlock|パスワードのロックを解除する|
|-p, --password|パスワードを変更|

## userdel

ユーザーアカウントを削除

|option|content|
|---|---|
|-r|ホームディレクトリも同時に削除|

## passwd

パスワードを変更。スーパーユーザー以外は自分のパスワードのみ変更可能

|option|content|
|---|---|
|-l|パスワードをロックして一時的に無効にする|
|-u|パスワードのロックを解除する|

## groupadd

グループを作成

## groupmod

既存のグループ情報を変更

|option|content|
|---|---|
|-g|GIDを変更|
|-n|グループ名を変更|

## groupdel

グループを削除

## chsh

ログインシェルを変更

|option|content|
|---|---|
|-s|ログインシェルを設定|

## id

ユーザー情報を表示  
`getent` はLDAPサーバーの情報を表示

## crontab

crantabファイルを編集

|option|content|
|---|---|
|-e|エディタを使って編集|
|-l|ファイルの内容を表示|
|-r|ファイルを削除|
|-i|削除時に確認する|
|-u|ユーザーを指定して編集(rootのみ)|

crontabファイルのフィールド

|field|content|
|---|---|
|分|0 ~ 59|
|時|0 ~ 23|
|日|1 ~ 31|
|月|1 ~ 12, jan ~ dec|
|曜日|0 ~ 7, Sun ~ Sat|
|コマンド|実行するコマンド|

## at

1回限りの実行スケジュール

|option|content|
|---|---|
|-d/-r|予約中のジョブをジョブ番号指定で削除(=atrm)|
|-l|予約中のジョブを表示(=atq)|
|-f|コマンドを記述したファイルを指定|

/etc/at.allow、/etc/at.denyでアクセス制御

## systemd-run

タイマーUnitのスケジューリング

## locale

現在のロケール設定を確認

|option|content|
|---|---|
|-a|設定可能なロケールを表示|
|-m|利用できる文字コード一覧|

## iconv

文字コードを変換

|option|content|
|---|---|
|-f|変換前の文字コードを指定|
|-t|変換して出力したい文字コードを指定|
|-l|扱える文字コードを表示|

## tzselect

タイムゾーンを設定

## tzconfig

/etc/localtimeと/etc/timezoneをまとめて変更

## hwclock

ハードウェアクロックを参照・設定

|option|content|
|---|---|
|-r|ハードウェアクロックを表示|
|-w(--systohc)|システムクロックの時刻をハードウェアクロックに設定|
|-s(--hctosys)|ハードウェアクロックの時刻をシステムクロックに設定|

## timedatectl

日付と時刻・タイムゾーンを管理

|subcommand|content|
|---|---|
|status|現在の時刻を表示|
|set-time|日付、時刻を設定(YYYY-MM-DD HH:MM:SS)|
|set-timezone|タイムゾーンを設定|
|list-timezones|タイムゾーンを一覧表示|
|set-ntp yes/no|NTPを使うかどうか|

## ntpdate

指定したNTPサーバーから現在時刻を取得

## ntpq

NTPサーバーの状態を照会

## chronyc

chronydを管理

|subcommand|content|
|---|---|
|activity|NTPサーバーのオンライン/オフライン数|
|sources|時刻ソースの情報を表示|
|sourcestats|時刻ソースの統計情報を表示|
|tracking|トラッキングを確認|
|quit|対話状態を終了|

## logger

ログメッセージを生成

|option|content|
|---|---|
|-p|プライオリティを設定|

## systemd-cat

コマンドの実行結果をジャーナルに書き込む

## who

ログイン中のユーザー一覧

## w

uptime + who

## last

最近ログインしたユーザーの一覧

## lastlog

/var/log/lastlogファイルを参照し、ユーザーごとの最近のログイン一覧を表示

## journalctl

systemdのログを閲覧

|option|content|
|---|---|
|-a, --all|画面表示できない文字も含めて表示|
|-D, --directory|指定したディレクトリのログを表示|
|-f, --follow|ログの末尾を表示し続ける|
|-l, --full|画面表示可能なすべてのログを表示|
|-r, --reverse|ログを新しい順に表示|
|-n, --lines|直近のログから指定行数分を表示(デフォルトは10)|
|-e|ジャーナルの末尾(最新)を表示|
|-x|説明文付きで表示|
|-o, --output|ログの出力形式を指定|
|-k, --dmesg|カーネルメッセージのみ表示|
|-b, --boot|ブート時のメッセージを表示|
|-p|指定したプライオリティより高いメッセージを表示|
|-u, --unit|指定したUnitのログを出力|
|--full|エスケープ文字を除いてプレーテキストで出力|
|--no-pager|1ページごとに表示せず、すべてのログを出力(lessコマンドを使用しない)|
|--since|指定した日付時刻以降のログを表示|
|--unitl|指定した日付時刻までのログを表示|
|--vacuum-size=|アーカイブジャーナルの総容量が指定したサイズを下回るまで古いジャーナルを削除|
|--vacuum-time=|指定した期間より古いアーカイブジャーナルを削除|

検索条件指定

|key|content|
|---|---|
|_PID=|プロセス番号の指定|
|_UID=|ユーザーIDの指定|
|_SYSTEMD_UNIT=|Unit名の指定|

## newaliases

/etc/aliasesの設定を有効にする

## mailq

メールキューの内容を表示

## lpr

ファイルを印刷

|option|content|
|---|---|
|-#部数|印刷部数を指定|
|-P|印刷を行うプリンタを指定|

## lpq

プリントキューの内容を表示

|option|content|
|---|---|
|-P|プリンタを指定|

## lprm

プリントキューにある印刷要求を削除

|option|content|
|---|---|
|-P|プリンタを指定|
|-|自分の全印刷ジョブを削除|

## nmcli

Network Managerの管理コマンド

|object|command|content|
|---|---|---|
|general|||
||status|NetworkManagerの状態を表示|
||hostname|ホスト名を表示、指定したホスト名に変更|
|networking|||
||on/off|ネットワークを有効/無効にする|
||connectivity \[check]|ネットワークの状態を表示(checkを指定すると再確認)|
|radio|||
||wifi|Wi-Fiの状態を表示|
||wifi on/off|Wi-Fi接続を有効/無効にする|
||wwan|モバイルブロードバンドの状態を表示|
||wwan on/off|モバイルブロードバンド接続を有効/無効にする|
||all on/off|全ての無線接続を有効/無効にする|
|connection|||
||show \[--active]|接続情報を表示(--activeが指定されればアクティブな接続のみ)|
||modify|指定した接続を設定|
||up|接続を有効にする|
||down|接続を無効にする|
|device|||
||status|デバイスの状態を表示|
||show|指定したデバイスの情報を表示|
||modify|指定したデバイスを設定|
||connect|指定したデバイスを接続|
||disconnect|指定したデバイスを切断|
||delete|指定したデバイスを削除|
||monitor|指定したデバイスをモニタする|
||wifi list|Wi-Fiアクセスポイントを表示|
||wifi connect|Wi-Fiアクセスポイントに接続|
||wifi hotspot|Wi-Fiホットスポットを作成|
||wifi rescan|Wi-Fiアクセスポイントを再検索|

nmcli networking connectivity

|status|content|
|---|---|
|full|インターネットにアクセス可能なネットワークに接続している|
|portal|インターネットにアクセスする前のcaptive portalの状態である|
|limited|ネットワークに接続しているが、インターネットにアクセスできない|
|none|どのネットワークにも接続していない|
|unknown|接続状態が見つからない|

## hostnamectl

ホスト名を管理

|subcommand|content|
|---|---|
|status|ホスト名と関連情報を表示|
|set-hostname|ホスト名を設定|

## ping

ICMPパケットを送信、反応を表示

|option|content|
|---|---|
|-c|指定した回数だけICMPパケットを送信|
|-i|指定した間隔(秒)ごとにパケットを送信|

IPv6では`ping6`

## traceroute

指定したホストまでパケットが伝わる経路を表示  
IPv6では`traceroute6`

## tracepath

指定したホストまでパケットが伝わる経路を表示  
IPv6では`tracepath6`

## hostname

ホスト名を表示・変更

## netstat

ネットワーク機能に関する様々な情報を表示

|option|content|
|---|---|
|-a|全てのソケット情報を表示|
|-c|状況を1秒ごとにリアルタイム表示|
|-i|ネットワークインターフェースの状態を表示|
|-n|アドレスやポートを数値で表示|
|-p|PIDとプロセス名も表示|
|-r|ルーティングテーブルを表示|
|-t|TCPポートのみ表示|
|-u|UDPポートのみ表示|

## nc

netcat

|option|content|
|---|---|
|-l|指定したポートをリッスン|
|-p|ポート番号を指定|
|-u|UDPを利用(デフォルトはTCP)|
|-o|指定したファイルに出力|

## route

ルーティングテーブルを表示・操作

|option|content|
|---|---|
|-F|カーネルのルーティングテーブルを表示|
|-C|カーネルのルーティングキャッシュを表示|

|subcommand|content|
|---|---|
|add|ルーティングテーブルに新たな経路を追加|
|del|ルーティングテーブルから経路情報を削除|

## ip

ネットワークインターフェースやルーティングテーブル、ARPテーブル等を管理

|target|content|
|---|---|
|link|データリンク層|
|addr|IPアドレス|
|route|ルーティングテーブル|

|subcommand|content|
|---|---|
|show|表示|
|add|設定|

## ifconfig

ネットワークインターフェースの状態を表示、設定

|parameter|content|
|---|---|
|IPアドレス|IPアドレスを設定|
|netmask サブネットマスク|サブネットマスクを設定|
|up|ネットワークインターフェースを有効化|
|down|ネットワークインターフェースを無効化|

`ifup`、`ifdown`

## host

DNSサーバを使ってホストやドメインに関する情報を表示

|option|content|
|---|---|
|-v|詳細情報を表示|

## dig

DNSサーバに登録されている情報を表示

|option|content|
|---|---|
|-x|IPアドレスからホスト名を検索|

|search type|content|
|---|---|
|a|IPアドレス|
|aaaa|IPv6アドレス|
|any|全ての情報|
|mx|メールサーバの情報|
|ns|ネームサーバの情報|

## ss

ソケットを調査  
`netstat`の後継

|option|content|
|---|---|
|-a|全てのソケット情報を表示|
|-n|サービス名の名前解決をしない|
|-t|TCPポートのみ表示|
|-u|UDPポートのみ表示|

## ftp

リモートホストとファイルを送受信

|subcommand|content|
|---|---|
|get|ファイルのダウンロード|
|put|ファイルのアップロード|
|bye, quit|終了|

## lsof

|option|content|
|---|---|
|-i|開いているポートの情報を表示|
|-i:ポート番号|指定したポート番号が使われている通信を表示|

## nmap

ポートスキャン

## fuser

ポートを開いているプロセスを特定

|option|content|
|---|---|
|-k|プロセスにSIGKILLを送信|
|-m|マウントされたファイルシステムを指定|
|-n|検索する領域(名前空間)を指定|
|-u|検索結果をユーザー名を追加|
|-v|詳細な情報を表示|

## chage

パスワードに有効期限を設定

|option|content|
|---|---|
|-l|パスワードもしくはアカウントの有効期限を表示|
|-m|パスワード変更間隔の最低日数を設定|
|-M|パスワードの最大有効期限日数を設定|
|-d|パスワードの最終更新日を設定|
|-W|パスワードの有効期限切れの警告が何日前から始まるか設定|
|-I|パスワードの有効期限後にアカウントがロックされるまでの日数|
|-E|ユーザーアカウントが無効になる日付を設定|

## su

一時的に別ユーザーになる

## sudo

root権限で実行

|option|content|
|---|---|
|-l|許可されているコマンドを表示|
|-i|変更先ユーザーでシェルを起動(ログイン時の処理を行う)|
|-s|変更先ユーザーでシェルを起動|
|-u|rootではなく指定したユーザーでコマンドを実行|

## visudo

`sudo`の利用設定

## ulimit

ユーザーが利用できるリソースを制限

|option|content|
|---|---|
|-a|制限の設定値をすべて表示|
|-c|生成されるコアファイルのサイズを指定|
|-f|シェルが生成できるファイルの最大サイズをブロック単位で指定|
|-n|同時に開くことのできるファイルの最大数|
|-u|1人のユーザーが利用できる最大プロセス数を指定|
|-v|シェルとその子プロセスが利用できる最大仮想メモリサイズ|

## ssh

|option|content|
|---|---|
|-p|ポート番号を指定|
|-l|接続するユーザーを指定|
|-i|秘密鍵ファイルを指定|
|-o|ssh_configで設定できるオプションの指定|

## ssh-keygen

公開鍵と秘密鍵の鍵ペアを作成

|option|content|
|---|---|
|-t|暗号化タイプを指定|
|-p|パスフレーズを変更|
|-f|鍵ファイルを指定|
|-R|指定されたホストの鍵をknown_hostsファイルから削除|
|-b|鍵の長さをビット長で指定|

## scp

SSHの仕組みを使い、ホスト間で安全にファイルをコピー

|option|content|
|---|---|
|-p|パーミッションなどを保持したままコピー|
|-r|ディレクトリ内を再帰的にコピー|
|-P|ポート番号を指定|

## ssh-agent

クライアント側で稼働するsshエージェント

## ssh-add

秘密鍵を登録。パスフレーズを入力

## gpg

GnuPGを管理

|option|content|
|---|---|
|--full-generate-key|鍵ペアを作成|
|--list-keys|鍵ペアを一覧表示|
|-o 失効証明書 --gen-revoke メールアドレス|失効証明書を作成|
|--import 失効証明書|鍵を無効化|
|-c|共通鍵を使用して暗号化|
|--decrypt|共通鍵を使用して複合化|
|-o 出力ファイル名 -a --export　メールアドレス|公開鍵をエクスポート|
|--import 公開鍵|公開鍵をインポート|
|--sign-key|受け取った公開鍵に署名|
|-e -a -r 宛先メールアドレス 暗号化するファイル|ファイルを暗号化|
|-o 署名ファイル --sign 対象ファイル|ファイルに署名|
|--verify|ファイルの署名を検証|

## xinetd

スーパーサーバ

|setting item|content|
|---|---|
|bind/interface|サービスを提供するインターフェースのIPアドレス|
|disable|サービスを無効化するかの設定(yes/no)|
|instances|サーバプログラムの最大起動プロセス数|
|log_type|ログの記録先指定(syslogや記録するログファイルの絶対パス)|
|no_access|サービスへのアクセスを拒否する接続元|
|only_from|サービスへのアクセスを許可する接続元|
|server|サーバプログラムの絶対パス|
|server_args|サーバプログラム起動時に指定する引数|
|socket_type|ストリーム型、データグラム型といったサービスの接続タイプ|
|user|サーバプログラムを起動するユーザー|
|wait|サーバプログラムへの接続処理を待ち合わせるかの設定|