LPIC102のコマンドまとめ+α
前回に続いて、LPIC102に出てくるコマンド(+α)を纏めました。
かなり適当ですので気を付けてください。(※あと、前回に引き続いてver4での話なので、最新のver10だと増えてたり消えてたりする可能性があります。)
・whois
ドメインの登録者や管理者、所属団体の情報を得るコマンド。whoisサーバーに問い合わせる。
・dig
DNSサーバへの登録情報を表示するコマンド。DNSサーバに問い合わせる。host -aと同じ?
/etc/resolv.confが0バイトの場合は、DNSサーバが設定されていないため使えない。
dig @XXX.XXX.XXX.XXX yahoo.co.jp (dig @DNSサーバー ホスト名 検索タイプ)
検索タイプは
a IPアドレス(デフォ)
any すべての情報
mx メールサーバの情報
ns ネームサーバの情報
・nslookup
DNSサーバーに問い合わせるコマンド。/etc/resolv.confが0バイトの場合は、DNSサーバが設定されていないため使えない。
・netstat
ローカルネットワークの情報を表示するコマンド。
※netstat -rでデフォルトゲートウェイを表示
-r ルーティングテーブルを表示する
そのまま 有効なネットワーク接続を表示する、開いているソケットの情報を表示する→ Proto Recv-Q Send-Q Local Addressみたいな感じ
-i インターフェースの統計情報を表示する
☆細かな説明
-a --all すべてのソケット情報を表示する
-c --continuous 状況を1秒ごとにリアルタイムで表示する
-i --interfaces ネットワークインターフェースの状態を表示する
-n --numeric アドレスやポートを数値で表示する
-p --program PIDとプロセス名も表示する
-r --route ルーティングテーブルを表示する
-t --tcp TCPポートのみを表示する
-u --udp UDPポートのみを表示する
・ifconfig
インターフェースの設定や表示を行うコマンド。
・ifup
インターフェースをアップ
・ifdown
インターフェースをダウン
・traceroute
リモートホストまでの経路を表示するコマンド。
ICMPプロトコルを使う。
-nで名前空間を使わないので早い。
・traceroute6
tracerouteのIPv6版
・mail
メールの送受信を行うコマンド。
・mailq
メールキューにたまった送信待ちメールを表示するコマンド。
・newaliases
/etc/aliasesに設定したファイルの内容を反映する。
※/etc/aliasesには転送先等の設定が記載してある。
・lpr
プリンターキューにジョブを登録して、印刷する。
-#n n部印刷
-Pプリンタ 『プリンタ』で印刷
※デーモンの名前はipd
・lpq
プリンターキューに登録されたジョブを表示するコマンド。
・lprm
プリントキューにある印刷ジョブを削除
・journalctl
systemdが動作するシステムで、各ユニットが出力するログを表示する。
※/var/log/journal ディレクトリが存在しないとだめ。
-a --all 画面表示できないものも表示する。
-b --boot 特定のシステム起動時のログを表示する。journalctl -b -1で前回の起動からシャットダウンのログ。→ 0が今回の起動時、-1が前回、-2が二回前、1は最古のログ、2は二番目に古いログ...
-f --follow 新規に追加されたログをリアルタイムで表示する。(tailと同じ感じ?)
-k --dmesg カーネルからのメッセージを表示する。
-l --full 画面表示可能なログを全て表示する。
-n --lines 指定行数分表示する。
--no-pager lessコマンドを使わないする。(デフォルトはlessでページングされる)
-o --output ログの出力形式を変更する。
-r --reverse 最古のログから表示する。(デフォルトは最新から表示)
--since 指定した日付以降のログを表示する。
-u --unit 特定のユニットからのログを表示する。
--until 指定した日付までのログを表示する。
・who
現在システムにログインいているユーザの情報を表示するコマンド。/var/run/utmpを参照する。
省略してwと打ってもOK。
・getent
名前解決やサービス名解決の際の問い合わせ順序を検索。
/etc/nsswitch.confに従って検索を行う。
hosts: files dns
・host
DNSサーバーに問い合わせるコマンド。/etc/resolv.confが0バイトの場合は、DNSサーバが設定されていないため使えない。
-t 問い合わせる情報の指定
a IPアドレス(digと同じ)
mx(メールサーバー)
ns(ネームサーバー)
any(すべて)
-v 詳細な出力
・hostname
一時的にホスト名を変更するコマンド。(再起動で元に戻る)
恒久的に変えたいなら、「/etc/sysconfig/network」(RedHat)、「/etc/hostname」(Debian)を変える。
・ssh
リモートマシーンにログインするコマンド。
-X 環境変数を自動で設定。
-L SSHポートトンネリング(SSH接続先のホストから接続可能なホストと通信)を設定
ssh -L [ローカルアドレス:]ローカルポート:転送先ホスト:転送先ポート SSHアクセスホスト
-l ログインユーザ名の指定
-p 接続先ポート番号
-o ssh|configで設定できるオプションの指定
・sudo
他ユーザの権限でコマンドを実行する。
-l 委譲されている権限を表示する。
※設定はvisudoで/etc/sudoersを編集する。
・visudo
/etc/sudoersを編集するコマンド。
・date
システムクロックの表示設定を行う。
date [MMDDhhmm[CC[YY]][.ss]]で変更
date 100404252020.10 → 2020年10月4日 4:25:10
システムクロック→linuxのカーネルが持つ時刻
・hwclock
ハードウェアクロックの表示設定を行う。
ハードウェアクロック→コンピュータ内蔵の時刻
-r (--show) 表示
-w (--systoch) システムクロックの時刻をハードウェアクロックに設定
-s (--hctosys) ハードウェアクロックの時刻をシステムクロックに設定
-a (--adjust) /etc/adjtimeファイルの設定をもとに、ハードウェアクロックの時刻を調節
・cal
カレンダーを表示する
・ip
ネットワークデバイスやルーティング、ポリシーなどの表示と変更を行うコマンド
ip link set インタフェース up|down インターフェースの有効無効
※オブジェクト
addr IPv6,IPv4のアドレス
link ネットワークデバイス
neighbour IPv4のARPキャッシュ、IPv6のNDキャッシュ
route ルーティングテーブル
add 追加、del 削除、show 表示
ex.ip link show→インタフェースの状況のみを確認
※ip route showでデフォルトゲートウェイ表示
192.168.3.0/26 test 192.168.2.101 dev etc0みたいな感じ。
(routeやnetstat -rはDestination,Gatewayみたいな感じ)
・route
ルーティングテーブルの設定や表示を行うコマンド。
※引数なしでデフォルトゲートウェイで表示
-F ルーティングテーブルを表示
-C ルーティングキャッシュを表示
-n 名前解決をせうにルーティングテーブルを表示(すばやく表示!)
add 追加、del 削除
-host ホストのアドレス
-net ネットワークアドレス
netmask サブネットマスク
gw ゲートウェイ
default gw デフォルトゲートウェイ
・usermod
ユーザ情報を変更するコマンド。
-d ホームディレクトリ指定
-g プライマリグループを指定
-G サブグループを指定
-s ログインシェルを指定(nologinとか指定するとログインできなくなる)
-L パスワードをロック
-U パスワードをアンロック
-p 暗号化パスワードを指定
・groupmod
グループ情報を変更するコマンド
-g グループID変更
-n グループ名変更
・id
-u ユーザIDを表示
-g プライマリグループを表示
-G 所属するすべてのグループIDを表示
・useradd
ユーザアカウント追加
・userdel
ユーザアカウント削除
-r ホームディレクトリも削除
-f 強制的に削除
・groupadd
グループアカウント追加
・groupdel
グループアカウント削除
・groups
所属グループ表示する
・gpasswd
グループのパスワードやメンバーを設定する
・crontab
/var/spool/cron/ユーザ名を編集
-e 編集
-l 表示
-r 削除
・passwd
パスワード関連のコマンド
-l パスワードをロック
-u パスワードをアンロック
・chage
パスワードの有効期限を設定したり、確認したりする。(CHange password AGEの略)
-l アカウントの期限に関する情報を表示
Last password change,Password exprises Password inactive....みたいなの
-m パスワードの変更の間隔の最短日数を指定
-M パスワードが有効な最長日数を指定
-I パスワードの有効切れ後にアカウントがロックされるまでの日数を指定
-W パスワードの有効期限前に警告を出す日数を指定
-E ユーザーアカウントの有効期限を指定
・startX
X Window System(GUI環境)が起動。
・showrgb
X上で使用できる色の対応表を表示する。
255 250 250 snow
248 248 255 ghost white
・xhost
Xサーバにアクセスを許可・不許可する。
・xdpyinfo
Xサーバに関する各種ディスプレイ情報を表示する
・xwininfo
選択したXウィンドウの情報を表示する
・nc
NetCat(TCPやUDPを使った通信を行うことのできるツール)コマンド。
-l 指定したアドレスやポート番号で接続を待ち受ける(リッスン)
-p 送信元のポート番号を指定
-u UDPで動作(デフォルトはTCP)
・env
環境変数の表示や一時的な変更を行う
-i 何も環境変数が設定していない状態にする
-u 環境変数を一時的に削除
環境変数=値 環境変数の値を一時的に変更
そのまま 環境変数の表示
・locale
オプションなしで現在のロケールを表示
-a 現在のシステムで使えるロケールを表示
・iconv
文字コードを変換するコマンド
-l 扱える文字コードを表示
-f 変換前の文字コードを指定
-t 変換後の文字コードを指定
・tracert
リモートホストまでの経路情報を表示する。
※WInのコマンド。
・set
シェル設定の変更や確認を行う
※set -o noclobberでリダイレクトによるファイルの上書きを禁止
※引数なしで、全てのシェル変数と環境変数を表示
細かな設定
set [-o][+o] hogehoge (-oで有効、+oで無効)
allexport 新規作成、変更した変数を自動的に環境変数にする
emacs emacsと同じキーバインド
ignoreeof Ctrl+Dでログアウトしない
noclobber リダイレクト演算子(>,>&,<>)で上書きしない
noglob パス名の展開(*,?)を無効にする
noexec シェルスクリプトを読み込むが実行はせず、構文の確認のみ行う
vi viと同じキーバインドにする。
※シェル関数も見れるよ!!
・printenv
指定した環境変数を表示。指定なしですべて。
・tzconfig
/etc/localtimeと/etc/timezoneの両方設定。
・tzselect
環境変数TZや/etc/timezoneファイルで指定する値を確認
・nmap
指定したホストの開いているポートを一覧表示(ポートスキャン)する事ができるコマンド。
※netstatやlsofと違って、リモートのホストも参照できる。(netstatやlsofはローカルだけ)
・ftp
ファイルの転送を行う
・ssh-keygen
公開鍵/秘密鍵のペア作成
※クライアントで鍵を作成。公開鍵「~/.ssh/id_rsa.pub」をサーバの認証鍵リスト「~/.ssh/authorized_keys」に登録する。
・lsof
システムのリソースを使用しているプロセスの情報を表示
特定のポート番号を指定する場合は「lsof -i:ポート番号」
・mount
ファイルシステムのマウントや、マウント済みのファイルシステムを表示
・fuser
システムの特定のリソースを使用中のプロセスを検索、強制終了する。
-k SIGKILL送信
-m マウントされたファイルを指定
-n 名前空間指定 file,udp,tcp
-u 検索結果にユーザ名追加
-v 詳細情報表示
※lsofでもリソースを使用中のプロセスは検索できるが、終了はできない
・at
1回限りのジョブのスケジュールを一覧で表示する
-l 予約中のジョブを表示(atqと同じ)
-d 番号 予約中ジョブを削除(atrmと同じ)
書式:at now +10min、at 00:00
hh:mm atコマンドを実行した日のhh時mm分にジョブを実行
hh:mm MMDDYYYY YYYY年MM月DD日のhh時mm分にジョブを実行
now +1min 現在時刻から1分後にジョブを実行
・source
ファイルに書かれたコマンドを現在のシェルで実行。
※シェルスクリプトに実行権が無い場合でも実行できる
・sh
コマンドを実行するために、あたかもシェルの新しいコピーが呼び出されたかのように、コマンド置換を実行。
※スクリプト内のexport等はシェル内でのみ有効
※シェルスクリプトに実行権が無い場合でも実行できる
・bash
標準入力やファイルから読み込んだコマンドを実行。
※シェルスクリプトに実行権が無い場合でも実行できる
※./hogehogeみたいなのは実行権が必要
・gpg
ファイルの暗号化や復号を行う。
--gen-key 公開鍵のペアを作成
--export 公開鍵を出力
--import 公開鍵をインポート
-e ファイル 相手側の公開鍵を使用して暗号化
-r メールアドレス 暗号化に使用する公開鍵の持ち主のメールアドレス
-o ファイル 出力ファイル名
-c 共通鍵を使って暗号化
※gpg hogehoge.txt.gpg → 「hogehoge.txt.gpg」を自分の秘密鍵を使用して復号したい。
gpg -o pubkey --export user1@nnnn.com → user1@nnnn.comを用いる公開鍵をpubkeyという名前で出力
・ping
宛先アドレスに到達可能か
-c 疎通確認用パケットの送信回数
-i 疎通確認要パケットの送信間隔
-n 結果表示時の形式をホスト名でなく、アドレスで表示
ICMPを使用。
・ping6
pingのIPv6版
・tracepath
宛先アドレスまでの経路と経路上の最大転送単位
・tracepath6
tracepathのIPv6版
・xvidtune
ディスプレイの表示位置を表示
・xwininfo
選択したXウィンドウの情報を表示
Absolute upper-left X: 25
Absolute upper-left Y: 123
・xdpyinfo
ディスプレイの各種情報を表示
name of display: :0
version number: 11.0
・exec
指定したコマンドを既存のジョブと置き換えて実行するコマンド
・declare
変数を宣言するコマンド。
-fでシェル関数の確認
・function
シェル関数を定義するコマンド
・unalias
エイリアスの削除。-aですべて。
・ulimit
ユーザやシェルが利用するリソースを制限する
-a リソースの制限値をすべて表示
-c コアファイルのサイズを制限
-f 出力ファイルのサイズを制限
-u ユーザー1人が起動できるプロセス数を制限
-v シェルが使用できる仮想メモリを制限
・xlsclients
実行中のXクライアントを表示
test.example.com ibus-x11
test.example.com gnome-shell
・last
システムにログインしたユーザ情報一覧を表示(「/var/log/wtmpに記載された情報を元に表示)
user04 pts/8 192.168.0.30 Tue Nov 28 13:38 still logged in
user01 pts/8 192.168.1.31 Tue Nov 28 13:37 - 13:37 (00:00)
・lastb
ログインの失敗の情報を表示
・telnet
他のサーバにCUIログインする
・unset
設定済みの環境変数やシェル変数の削除
・コマンド実行時のエトセトラ
・「\」バックスラッシュを入力してコマンドを実行すると、エイリアスが無効化される。
・ウェルノンポート
あらかじめ予約されているポート。0~1023番。
20 FTP ファイル転送(データ用)
21 FTP ファイル転送(制御用)
22 SSH リモートログイン(暗号化あり)
23 TELNET リモートログイン(暗号化なし) ※使用を推奨されない
25 SMTP 電子メール送信
53 DNS 名前解決
80 HTTP HTMLファイル送信(暗号化なし)
110 POP3 電子メール受信
123 NTP(時刻同期サービス)
143 IMAP 電子メール受信
161/162 SNMP(ネットワーク管理サービス)
389 LDAP(LDAPサービス)
443 HTTPS HTMLファイル転送
465 SMTPS(SMTPに、伝送路を暗号化するSSL/TLSを組み合わせたもの)
514 SYSLOG(ログサービス)
636 LDAPS(LDAPによる接続前にサーバとクライアントの間でSSLによる仮想的な通信路を形成する)
993 IMAPS(IMAPによる接続前にサーバとクライアントの間でSSLによる仮想的な通信路を形成する)
995 POP3S(POP3に、伝送路を暗号化するSSL/TLSを組み合わせたもの)
631...CUPSのポート???
・アドレス関連
IPv4のネットワークアドレスはall0、ブロードキャストアドレスはall1(サブネットマスクの0の部分が)、それ以外はホストアドレス
※IPアドレスが192.168.18.1でサブネットマスクが255.255.255.0
ネットワークアドレス:192.168.18.0、ブロードキャストアドレス:192.168.18.255
・IPアドレスのクラス
クラス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
サブネットマスク255.255.0.0の場合
・SUID
SUID...どのユーザが実行しても指定されたユーザで実行されるパーミッション。4000。
※find / -perm -4000、find / -perm -u+sで検索
SGID...2000。
※find / -perm -g+s -gid 0、find / -perm -2000 -gid 0で検索。
-gidはグループID指定。rootは0。-uidでユーザID。
・受験前に確認したいサイト
https://genchan.net/it/server/7713/
LINUX(LPIC102)の試験でとりあえずこれ覚えておこうって思うものを27の項目にまとめてみた
→今回と前回で網羅できていない部分(プロトコル名とか、ソフトウェア名とか、文字コードとか...)なんかが良い感じにまとまっている。
https://qiita.com/kyohmizu/items/d5d6fedc527efa9f649c
LPIC 102 チートシート
→このnoteいらないのでは....
・更新履歴
10/4 初版
この記事が気に入ったらサポートをしてみませんか?