lpic102 - masskaneko/todayilearned GitHub Wiki

芚えおないもの䞀芧

  • gpg -e -r [email protected] hoge ファむルは最埌。ナヌザヌの前に -r が必芁。
  • gpg --import pubkey -ではなく--
  • gpg --sign hoge -ではなく--
  • gpg --gen-key gpg-keygen ではない
  • ssh -o IdentityFile IdentifyFile ではない
  • ifconfig => ip addr
  • route => ip route
  • netstat => ss
  • whois ドメむン登録者の情報
  • host -t mx example.com
  • dig -t ns yahoo.co.jp
  • dig yahoo.co.jp ns
  • dig yahoo.co.jp any
    • a, mx, ns, any, txt, soa
  • dig @8.8.8.8 yahoo.co.jp
  • /etc/cups/cupsd.conf
  • ~/.forward 自分宛おのメヌルの転送先
  • newaliases /etc/aliases を線集した埌に反映させるコマンド
  • /var/log/journal/ systemd-journald のログを氞続的に保存させる堎所
  • journalctl --vacuum-time 指定した期間より叀いアヌカむブゞャヌナルを削陀する
  • timedatectl set-time "2019-05-01 15:30:27" set-time を抜かないように
  • hwclock --systohc -ではなく--である。--hctosysも同じ。

シェル

Q

  • profile, .bash_login, bashrc のうち、ログむンシェルにより䞀床だけ読み蟌たれるものはそうでないほうはい぀読み蟌たれる
  • profile, .bash_login, bashrc を読み蟌む順番 .
    .
    .
    .

A

  • profile, .bash_login はログむンシェルにより䞀床だけ読み蟌たれる。bashrc は非ログむンシェルの起動のたびに読み蟌たれる。
  • 順番
    • /etc/profile
    • ~/.bash_profile, ~/bash_login, ~/.profile の順に探しおいずれかを読む
    • ~/.bashrc
    • /etc/bashrc

Q

  • コマンドの実行結果をシェル倉数に入れる方法2皮類
  • 算術挔算を䜿甚する .
    .
    .
    .

A

  • $(command) たたは command シングルクォヌトでコマンドをくくる
  • $((1+2))

Q

  • 子シェルで実行する方法
  • 珟圚のシェルで実行する方法 .
    .
    .
    .

A

  • bash ./myshell.sh, ./myshell.sh
  • source ./myshell.sh, . ./myshell.sh, function を䜿う

Q

  • declare のオプション
    • -p
    • -i
    • -r
    • -f .
      .
      .
      .

A

  • declare のオプション
    • -p 倉数の属性ず䞭身を確認。-i や -r で属性を぀けおから -p で確認するず属性がわかる。
    • -i 敎数のみ入れられるようにする。文字列を入れるず0になる。
    • -r readonlyにする。代入できなくなる。
    • -f 珟圚のシェルで䜿える関数を衚瀺する

Q

  • bash の組み蟌みコマンド(䟋: declare, read, alias, cd)の䜿い方の調べ方 .
    .
    .
    .

A

  • bash -c "help コマンド名
    • bash -c help declare

Q

  • alias を蚭定する方法
  • alias を解陀する方法
  • alias を䞀時解陀する方法
  • alias を匕数なしで実行したずき .
    .
    .
    .

A

  • alias ls='ls -la --color=auto'
  • unalias ls
  • \ls
  • すべおの゚むリアスが衚瀺される

Q

  • 特殊なシェル倉数
    • シェルのPID
    • 最埌に実行したコマンドの終了倀
    • 匕数の個数
    • 区切り文字(デフォルト空癜)で区切られたすべおの匕数
    • 実行ファむル名
    • 1番目の匕数
  • 2぀の匕数を参照するスクリプト echo $1 $2 が実行されたずき
    • 匕数が1぀しか指定されなかったら
    • 匕数が3぀以䞊指定されたら
  • 10番目の匕数を衚す方法 .
    .
    .
    .

A

  • 特殊なシェル倉数
    • $$ シェルのPID
    • $? 最埌に実行したコマンドの終了倀 (正垞なら0)
    • $# 匕数の個数
    • $* 区切り文字(デフォルト空癜)で区切られたすべおの匕数
    • $0 実行ファむル名
    • $1 1番目の匕数
  • 2぀の匕数を参照するスクリプト echo $1 $2 が実行されたずき
    • $1 が衚瀺されるだけ
    • $1 $2 が衚瀺されるだけ
  • ${10}
    • $10 ず曞いたら、$1 に 0 を぀けたものず解釈される。

Q

  • if 文での条件匏の曞き方2皮類
  • パスに関する条件匏
  • ファむルの曎新日に関する条件匏
  • 文字列の長さに関する条件匏
  • 比范挔算子は敎数ず文字列で異なる。=, ==, != を䜿うのはどちらか -eq, -ne を䜿うのはどちらか .
    .
    .
    .

A

  • if test 条件匏 あるいは if [ 条件匏 ]
  • パスに関する条件匏
    • -d ディレクトリなら真
    • -e ファむルたたはディレクトリが存圚すれば真
    • -f 通垞ファむルが存圚すれば真。ブロックデバむスファむル(䟋: /dev/sda1)は通垞ファむルではない。
    • -r 読み蟌み可胜なファむルが存圚すれば真
    • -w 曞き蟌み可胜なファむルが存圚すれば真
    • -x 実行可胜なファむルが存圚すれば真
    • -L シンボリックリンクであれば真
  • ファむルの曎新日に関する条件匏
    • -nt Newer than
    • -ot Older than
  • 文字列の長さに関する条件匏
    • -n 0より倧きければ真
    • -z 0であれば真
  • 文字列では =, ==, != を䜿う。敎数では -eq, -ne を䜿う。

Q

  • seq 3
  • seq 98 100
  • seq 3 5 14 .
    .
    .
    .

A

  • seq 3
1
2
3
  • seq 98 100
98
99
100
  • seq 3 5 14
3
8
13

Q

  • set の -o, +o オプションはどちらが有効化、無効化か
  • set のオプション
    • allexport
    • emacs
    • ignoreeof
    • noclobber
    • noglob
    • noexec
    • vi
  • set -o のオプションを指定しなかった堎合 .
    .
    .
    .

A

  • -o が有効化。+o が無効化。
  • set のオプション
    • allexport: 新芏䜜成・倉曎した倉数を自動的に環境倉数ずする
    • emacs: emacsず同じキヌバむンドにする
    • ignoreeof: Ctrl+Dを抌しおもログアりトしないようにする
    • noclobber: リダむレクトしたずきファむルを䞊曞きできないようにする
    • noglob: ワむルドカヌド *, ? など による展開を無効にする
    • noexec: シェルスクリプトを実行しようずしたずきに実行せず、構文゚ラヌをチェックするのみずする
    • vi: viず同じキヌバむンドにする
  • 各オプションの on/off が衚瀺される

Q

  • 䜕も環境倉数が蚭定されおいない状態にする方法
  • 指定した環境倉数を䞀時的に削陀する方法
  • 指定した環境倉数を削陀する方法 .
    .
    .
    .

A

  • env -i
  • env -u 環境倉数名
  • unset 環境倉数名

Q

  • case文の曞匏 .
    .
    .
    .

A

case $1 in
    1) echo "one" ;;
    2) echo "two" ;;
    3) echo "three" ;;
esac

X Window System

Q

  • X.Orgの蚭定ファむルパス
  • 蚭定ファむルの項目 .
    .
    .
    .

A

  • /etc/X11/xorg.conf, /etc/X11/xorg.conf.d/
  • 蚭定ファむルの項目
    • ServerLayout 入出力デバむスの組み合わせずスクリヌン
    • Files フォント関連のパス
    • Module Xサヌバヌが読み蟌むダむナミックモゞュヌル
    • InputDevice Xサヌバヌに察するキヌボヌドやマりスなどの入力デバむス
    • Monitor 垂盎、氎平呚波数
    • Device ビデオカヌドのドラむバ名
    • Screen 解像床ず色深床

Q

  • Xサヌバヌぞのリモヌトアクセスを制埡する方法 .
    .
    .
    .

A

  • xhost コマンド
    • +ホスト名 蚱可する
    • -ホスト名 拒吊する
    • + すべおのホストを蚱可
    • - すべおのホストを拒吊

Q

DISPLAY 倉数の曞匏 .
.
.
.

A

  • サヌバヌ名:ディスプレむ番号.スクリヌン番号
    • 䟋 localhost:0.0, localhost:0.1
    • localhostは省略できる。:0.0
    • ディスプレむ番号は、同じキヌボヌドずマりスを共有するモニタの集合に察しお぀けられる。0から始たる。倚くの堎合0しかない。
    • スクリヌン番号はモニタに぀けられる番号。0から始たる。モニタが2台あるずき、0, 1ずなる。

Q

  • ディスプレむマネヌゞャヌの起動 .
    .
    .
    .

A

  • systemd の堎合
    • systemd がシンボリックリンク display-manager.service の指すディスプレむマネヌゞャヌ起動ナニット(䟋: /usr/lib/systemd/system/kdm.service)を起動
    • 事前に systemctl enable kdm ずしお蚭定しおおく
  • SysV init の堎合
    • prefdm(preffered display manager) がディスプレむマネヌゞャヌ X Window System:xdm , GNOME:gdm, KDE:kdm or sddm, ... を起動

Q

ランレベル3から startx する凊理 .
.
.
.

A

  • startx
  • xinit
  • ~/.xinitrc なければ /etc/X11/xinit/xinitrc
  • りィンドりマネヌゞャヌ起動

Q

  • /etc/X11/xdm/ にあるファむル .
    .
    .
    .

A

  • xdm-config: 蚭定ファむル
  • Xresources: XDMログむン画面のデザむン
  • Xaccess: ホストからXDMぞのアクセス蚱可
  • Xsetup_0: ログむン画面衚瀺前に実行されるスクリプト
  • Xsession: ログむン埌に実行されるスクリプト

Q

  • Xで利甚可胜な色ずRGB倀の情報確認
  • 実行䞭のXクラむアントを衚瀺
  • ディスプレむ番号、スクリヌン番号、解像床を衚瀺 .
    .
    .
    .

A

  • showrgb: Xで利甚可胜な色ずRGB倀の情報確認
  • xlsclients: 実行䞭のXクラむアントを衚瀺
  • xdpyinfo: ディスプレむ番号、スクリヌン番号、解像床を衚瀺

Q

  • キヌボヌドアクセシビリティ
    • スティッキヌキヌ
    • スロヌキヌ
    • バりンスキヌ
    • トグルキヌ
    • マりスキヌ
    • リピヌトキヌ .
      .
      .
      .

A

  • キヌボヌドアクセシビリティ
    • スティッキヌキヌ: Ctrl, Alt, Shift などの修食キヌの埌に入力したキヌを同時抌しずみなす。2぀以䞊のキヌを同時に抌せないナヌザヌ向け。
    • スロヌキヌ: 通垞よりも長い䞀定時間キヌを抌し続けるず入力ずみなす。正確にキヌを抌すこずが難しいナヌザヌ向け。
    • バりンスキヌ: 同じキヌ入力を䞀定時間無芖する。意図せず䜕床も同じキヌを抌しおしたうナヌザヌ向け。
    • トグルキヌ: NumLock, CapsLock, ScrollLockキヌがonだず1回、offだず2回ビヌプ音が鳎る。各キヌのLEDが芋えないナヌザヌ向け。
    • マりスキヌ: マりスの代わりにテンキヌで操䜜する。マりスを䜿いづらいナヌザヌ向け。
    • リピヌトキヌ: 入力リピヌトするのに必芁な時間を通垞よりも長くする。キヌを抌した埌すぐに指を離せないナヌザヌ向け。

Q

  • オンスクリヌンキヌボヌドの䟋
  • 拡倧鏡の䟋
  • スクリヌンリヌダヌの䟋 .
    .
    .
    .

A

  • gok (GNOME2), GNOME Shell (GNOME3)
  • orca (GNOME2), GNOME Shell (GNOME3)
  • emacspeak (Emacsに読み蟌んだテキストやメヌルを音声で読み䞊げる)

管理タスク - アカりント

Q

  • /etc/passwd の曞匏

.
.
.
.

A

  • ログむン名
  • x たたは 暗号化パスワヌド
  • UID
  • GID (プラむマリ)
  • コメント
  • ホヌムディレクトリ
  • ログむンシェル

Q

  • /etc/group の曞匏

.
.
.
.

A

  • グルヌプ名
  • グルヌプパスワヌド
  • GID
  • 補助グルヌプずしお参加しおいるナヌザヌのリスト

Q

  • /etc/shadow の曞匏

.
.
.
.

A

  • ナヌザヌ名
  • パスワヌド
  • 日数16

Q

  • ナヌザヌのパスワヌドを倉曎するコマンド
  • パスワヌドの有効期限を倉曎するコマンド
  • ナヌザヌを新芏䜜成するコマンド
  • ナヌザヌを削陀するコマンド
  • 既存ナヌザヌの蚭定を倉曎するコマンド
  • グルヌプを新芏䜜成するコマンド
  • グルヌプを削陀するコマンド
  • 既存グルヌプの蚭定を倉曎するコマンド
  • ナヌザヌのUIDやGIDを衚瀺するコマンド
  • ナヌザヌの所属するグルヌプを衚瀺するコマンド
  • グルヌプのパスワヌドやメンバヌを蚭定するコマンド

.
.
.
.

A

  • passwd ナヌザヌのパスワヌドを倉曎するコマンド
  • chage パスワヌドの有効期限を倉曎するコマンド
  • useradd ナヌザヌを新芏䜜成するコマンド
  • userdel ナヌザヌを削陀するコマンド
  • usermod 既存ナヌザヌの蚭定を倉曎するコマンド
  • groupadd グルヌプを新芏䜜成するコマンド
  • groupdel グルヌプを削陀するコマンド
  • groupmod n既存グルヌプの蚭定を倉曎するコマンド
  • id ナヌザヌのUIDやGIDを衚瀺するコマンド
  • groups ナヌザヌの所属するグルヌプを衚瀺するコマンド
  • gpasswd グルヌプのパスワヌドやメンバヌを蚭定するコマンド

Q

  • useradd でオプションを指定しなかったずきのデフォルト倀が定められおいるファむルパス
  • useradd のオプション
    • -c
    • -d
    • -e
    • -f
    • -g
    • -G
    • -k
    • -m
    • -M
    • -s
    • -u
    • -D

.
.
.
.

A

  • /etc/default/useradd
  • useradd のオプション
    • -c コメント
    • -d ホヌムディレクトリの指定
    • -e 倱効日
    • -f 倱効䜿甚䞍胜たでの日数
    • -g 1次グルヌプ
    • -G 2次グルヌプ
    • -k skelディレクトリ
    • -m ホヌムディレクトリの䜜成
    • -M ホヌムディレクトリを䜜成しない
    • -s ログむンシェルの指定
    • -u UIDの指定
    • -D デフォルト倀の衚瀺あるいは蚭定

Q

  • usermod のオプション
    • -d
    • -g
    • -G
    • -s
    • -L
    • -U
    • -p

.
.
.
.

A

  • usermod のオプション
    • -d ホヌムディレクトリを指定
    • -g プラむマリグルヌプを指定
    • -G 補助グルヌプを指定
    • -s ログむンシェルを指定
    • -L パスワヌドをロックする
    • -U パスワヌドをアンロックする
    • -p 暗号化枈のパスワヌドを蚭定する

Q

  • userdel のオプション .
    .
    .
    .

A

  • userdel のオプション
    • -r ホヌムディレクトリも削陀
    • -f ナヌザヌがログむン䞭でも削陀

Q

  • groupmod のオプション
    • -g
    • -n

.
.
.
.

A

  • groupmod のオプション
    • -g GIDを倉曎
    • -n グルヌプ名を倉曎

Q

  • passwd のオプション
    • -l
    • -u .
      .
      .
      .

A

  • passwd のオプション
    • -l パスワヌドをロックする
    • -u パスワヌドをアンロックする

Q

  • chage の曞匏
  • chage のオプション
    • -l
    • -d
    • -m
    • -M
    • -W
    • -I
    • -E .
      .
      .
      .

A

  • chage [オプション 匕数] ナヌザヌ名
  • chage のオプション
    • -l ナヌザヌの情報
    • -d パスワヌド最終曎新日を蚭定
    • -m パスワヌド曎新間隔の最短日数
    • -M パスワヌド曎新せずに䜿甚できる最長日数
    • -W パスワヌド倉曎期限の䜕日前から譊告を出すか
    • -I パスワヌドの倉曎期限を過ぎおからアカりントが䜿甚できなくなるたでの猶予日数
    • -E アカりントの倱効日を蚭定

Q

  • id コマンドのオプション
    • -u
    • -g
    • -G .
      .
      .
      .

A

  • id コマンドのオプション
    • -u 指定ナヌザヌ名のUIDを衚瀺
    • -g 指定ナヌザヌ名のプラむマリGIDを衚瀺
    • -G 指定ナヌザヌ名の参加する党GIDを衚瀺

管理タスク - ゞョブスケゞュヌリング

Q

  • crontab を監芖するデヌモンず監芖呚期
  • crontab 蚭定ファむルの曞匏
  • crontab 蚭定ファむルの圚り凊 (システム甚、ナヌザヌ甚)
  • crontab コマンドオプション
    • 線集
    • 内容衚瀺
    • crontabファむル削陀
  • cron を利甚するナヌザヌを制限する方法 .
    .
    .
    .

A

  • crond が1分ごずに起動し、crontab を調べおゞョブを実行する
  • crontab の曞匏
    • 分 時 日 月 曜日 コマンド
      • 1行1゚ントリ
      • * 問わない堎合(䟋毎日1:00実行なら日ず月ず曜日はは * でよい)
      • 範囲指定: 15-17(15,16,17時それぞれ)、1-4(月曜から朚曜)
      • リスト指定:
      • 間隔指定: 分に 10-20/2 を指定するず 10分から20分の間で2分間隔で実行。時に1、分に */15 を指定するず、1:00, 1:15, 1:30, 1:45に実行される。
      • 曜日: 0 Sunday - 6 Saturday たたは sun,mon,tue,wed,thu,fri,sat どちらか
  • crontab の圚り凊
    • システム甚 /etc/crontab
    • ナヌザヌ甚 /var/spool/cron/ナヌザヌ名
  • crontab コマンドオプション
    • -e 線集
    • -l 内容衚瀺
    • -r crontabファむル削陀
  • cron を利甚するナヌザヌを制限する方法
    • /etc/cron.allow だけがある堎合、茉っおいるナヌザヌだけが利甚できる
    • /etc/cron.deny だけがある堎合、茉っおいないナヌザヌだけが利甚できる
    • 䞡方ない堎合、CentOSならrootだけ、Ubuntuなら党ナヌザヌが利甚できる
    • 䞡方ある堎合、/etc/cron.deny は無芖され、/etc/cron.allow に茉っおいるナヌザヌだけが利甚できる

Q

  • システム甚 crontab はナヌザヌ甚ず䜕が異なるか .
    .
    .
    .

A

  • SHELL, PATH, MAILTO, HOME が曞いおある
  • その埌にナヌザヌ甚ず同様に実行呚期を蚘述した゚ントリが続き、毎時 /etc/cron.hourly、毎日/etc/cron.daily、毎週/etc/cron.weekly、毎月/etc/cron.monthly が蚘述されおいる。
  • ナヌザヌ甚の゚ントリに加え、実行ナヌザヌが加わる。
  • サヌビス個別のゞョブ実行の定矩は /etc/cron.d/ に眮かれる

Q

  • systemd のタむマヌナニットを有効にしお開始する方法
  • 有効なタむマヌの䞀芧衚瀺方法
  • タむマヌナニットの圚り凊
  • タむマヌナニットの蚘述䟋 .
    .
    .
    .

A

  • systemctl enable my-routine.timer, systemctl start my-routine.timer
  • systemctl list-timers
  • /etc/systemd/system/my-routine.timer

monotonic timer の堎合。

[Timer]
OnActiveSec=1hour
OnUnitActiveSec=1hour
Unit=my-routine.service

OnActiveSec (タむマヌをアクティベヌトしおからの時間) 以倖に OnBootSec (マシンが起動した埌の時間) もある。

realtime timer の堎合。

[Timer]
OnCalendar=*-*-* 3:00:00
Unit=my-routine.service

OnCalendar の曞匏は、Day-of-week YYYY-MM-DD hh:mm:ss であり、曜日、幎-月-日は省略可胜。

Q

  • OnCalendar の曞匏いろいろ
  • 毎週月曜0:00
  • 毎週月曜0:00ず氎曜0:00
  • 毎日15時
  • 毎週月曜15:00 .
    .
    .
    .

A

  • Day-of-week YYYY-MM-DD hh:mm:ss
  • Mon
  • Mon,Wed
  • 15:00
  • Mon 15:00 たたは Mon *-*-* 15:00:00

管理タスク - ロケヌルずタむムゟヌン

Q

  • ロケヌルの蚭定ファむル
  • ロケヌルの環境倉数
    • LANG
    • LC_TIME
    • LC_CTYPE
    • LC_MESSAGES
    • LC_ALL .
      .
      .
      .

A

  • /etc/locale.conf
  • ロケヌルの環境倉数
    • LC_TIME 日付ず時刻の曞匏
    • LC_CTYPE 文字の皮類
    • LC_MESSAGES 出力メッセヌゞの蚀語
    • LC_ALL すべおの LC_* を䞊曞きする。非掚奚。
    • LANG: すべおの LC_* を䞊曞きするが、カテゎリ毎の蚭定が可胜。LANG=ja_JP.utf8

Q

  • 囜や地域ごずのタむムゟヌン情報がバむナリファむルずしお保存されおいるパス
  • システムのタむムゟヌンを瀺すバむナリファむル
  • システムのタむムゟヌンを瀺すテキストファむル .
    .
    .
    .

A

  • /usr/share/zoneinfo/
  • /etc/localtime
  • /etc/timezone
$ file /etc/localtime
/etc/localtime: symbolic link to /usr/share/zoneinfo/Asia/Tokyo

Q

  • tzconfig ずは
  • tzselect ずは .
    .
    .
    .

A

  • tzconfig: /etc/localtime, /etc/timezone の䞡方を蚭定するコマンド。
  • tzselect: 環境倉数TZや /etc/timezone で指定する倀を確認するためのコマンド。

必須システムサヌビス - 時刻

Q

  • date コマンドで時刻を蚭定するずきの曞匏 .
    .
    .
    .

A

  • date MMDDhhmmCCYY.ss
  • date MMDDhhmmYY .ss ず CC は省略可胜。
  • date MMDDhhmm 珟圚ず同じ幎であれば YY は省略可胜。

Q

  • timedatectl のサブコマンド
    • 珟圚の日付時刻や状態の衚瀺
    • NTPによる時刻同期の有効/無効
    • 日付や時刻の蚭定
    • タむムゟヌンの蚭定
    • タむムゟヌンの䞀芧衚瀺 .
      .
      .
      .

A

  • timedatectl のサブコマンド
    • status (デフォルト)
    • set-ntp yes | no
    • set-time CCYY-MM-DD hh:mm:ss (たたは CCYY-MM-DD のみ、たたは hh:mm:ss のみ)
    • set-timezone タむムゟヌン
    • list-timezones

Q

  • ntpq コマンドの匕数ずオプション .
    .
    .
    .

A

  • ntpq コマンドの匕数ずオプション
    • -p 匕数に指定したサヌバヌずの同期状態を衚瀺。匕数がなければ ntpd の蚭定ファむルパスにあるNTPサヌバヌ矀ずの同期状態を衚瀺。
    • -i 匕数がないず察話モヌドで起動デフォルト

Q

  • ntpd の蚭定ファむルパスは䜕か䜕が曞かれおいるか .
    .
    .
    .

A

  • /etc/ntp.conf
    • server: NTPサヌバヌの指定の曞匏で曞かれおいる
    • driftfile: 参照時刻からのずれを蚘録するファむルパス /var/lib/ntp/drift

Q

  • chrony の蚭定ファむルパスは䜕か䜕を指定できるか .
    .
    .
    .

A

  • /etc/chrony.conf
    • server: NTPサヌバヌの指定
      • サヌバヌの埌に iburst を぀けるず時刻問い合わせ呚期を短くする
    • peer: 同じstratumのNTPサヌバヌを指定
    • pool: 耇数のNTPサヌバヌのアドレスを集玄した名前を指定
    • driftfile: 自身の時刻のずれを蚘録するファむルを指定
    • rtcsync: システムクロックをハヌドりェアクロックにコピヌする

Q

  • chronyc のサブコマンド
    • オンラむン/オフラむンのNTPサヌバヌ数
    • 時刻の゜ヌス
    • 時刻の゜ヌスの統蚈情報
    • 時刻同期の詳现情報 .
      .
      .
      .

A

  • chronyc のサブコマンド
    • activity
    • sources
    • sourcestats
    • tracking

必須システムサヌビス - ロギング

Q

  • syslog や systemd-journal の蚭定ファむルでファシリティずプラむオリティを指定するずきの曞匏
  • ファシリティ䞀芧
  • プラむオリティ䞀芧 .
    .
    .
    .

A

  • syslog や systemd-journal の蚭定ファむルでファシリティずプラむオリティを指定するずきの曞匏
    • ファシリティ.プラむオリティ, ファシリティずプラむオリティそれぞれがなんでもいいずきは * (䟋: *.emerg)
  • ファシリティ䞀芧
    • kern
    • user
    • mail
    • daemon
    • auth
    • syslog
    • lpr
    • news
    • uucp
    • cron
    • authpriv
    • ftp
    • local0local7
  • プラむオリティ䞀芧
    • emerg
    • alert
    • crit
    • err
    • warning
    • info
    • debug
    • none

Q

  • journalctl コマンドのオプション
    • 最新郚分たでゞャンプしお衚瀺
    • リアルタむムに衚瀺
    • 衚瀺行数を指定
    • 指定したプラむオリティのログを衚瀺
    • 逆順に衚瀺最新のものを最䞊䜍に
    • 指定日時以降を衚瀺
    • 指定日時以前を衚瀺
    • 指定期間分を残しお削陀
    • 指定サむズ分を残しお削陀 .
      .
      .
      .

A

  • journalctl コマンドのオプション
    • -e, --pager-end: 最新郚分たでゞャンプしお衚瀺
    • -f, --follow: リアルタむムに衚瀺
    • -n, --lines: 衚瀺行数を指定
    • -p, --priority: 指定したプラむオリティのログを衚瀺
    • -r, --reverse: 逆順に衚瀺最新のものを最䞊䜍に
    • --since: 指定日時以降を衚瀺
    • --until: 指定日時以前を衚瀺
    • --vacuum-time: 指定期間分を残しお削陀
    • --vacuum-size: 指定サむズ分を残しお削陀

Q

  • 任意のファシリティずプラむオリティずメッセヌゞを指定しおログに蚘録するコマンド
  • コマンドの実行結果を systemd-journal に送っおログに蚘録するコマンド .
    .
    .
    .

A

  • logger -p user.info "Message"
  • systemd-cat コマンド

必須システムサヌビス - プリンタ

Q

  • lpr
  • lprm
  • lpq
  • 䞊蚘どれかで印刷する方法
  • すべおの印刷ゞョブを削陀する方法 .
    .
    .
    .

A

  • 印刷ゞョブをプリントキュヌに登録
  • プリントキュヌにある印刷ゞョブを削陀 lprm -Pプリンタ名 ゞョブ番号
  • プリントキュヌにある印刷ゞョブを衚瀺
  • lpr -Pプリンタ名 印刷するファむル名
  • lprm -Pプリンタ名 -

Q

  • CUPS の特城
  • CUPS デヌモンの蚭定ファむル
  • CUPS におプリンタの共有蚭定をするファむル
  • 印刷ゞョブを生成しプリントキュヌに登録するコマンド
  • プリントキュヌにある印刷ゞョブを削陀するコマンド
  • プリントキュヌにある印刷ゞョブを衚瀺するコマンド .
    .
    .
    .

A

  • 印刷プロトコルがIPP(Internet Prinrint Protocol)、PPDをサポヌト、lpdず互換あり、Webブラりザから蚭定可胜(631ポヌト)
  • /etc/cups/cupsd.conf
  • /etc/cups/printers.conf
  • lp
  • cancel
  • lpstat

ネットワヌクの基瀎

Q

  • IPv4 アドレスの1バむト目が瀺すクラスの境界 .
    .
    .
    .

A

  • A: 0127
  • B: 128191
  • C: 192223
  • D: 224239
  • E: 240255

Q

  • IPv6 ナニキャストアドレス
    • グロヌバルナニキャストアドレス
    • ナニヌクロヌカルナニキャストアドレス
    • リンクロヌカルアドレス
  • IPv6 アドレス 埌ろ半分の長さず呌び名 .
    .
    .
    .

A

  • Ipv6 ナニキャストアドレス
    • グロヌバルナニキャストアドレス: 200 から始たる
    • ナニヌクロヌカルナニキャストアドレス: FC00 から始たる
    • リンクロヌカルアドレス: FE80 から始たる
  • むンタヌフェヌスIDむンタヌフェヌス識別子、64bit

Q

  • ポヌト名ずサヌビスの察応が曞かれたファむル
  • IPアドレスずホスト名の察応が曞かれたファむル
  • 名前解決やサヌビス名解決の際の問い合わせ順序を指定するファむル。およびそのファむルを参照しお問い合わせをするコマンド。
  • ドメむン名やDNSサヌバヌを指定するファむル
  • ホスト名を蚭定するファむル

.
.
.
.

A

  • /etc/services
  • /etc/hosts
  • /etc/nsswitch.conf, getent
  • /etc/resolv.conf (resolve ではないこずに泚意)
  • /etc/hostname

Q

  • netstat コマンドのオプション
    • ルヌティングテヌブルを衚瀺
    • 統蚈情報を衚瀺
    • 接続埅ち゜ケットを衚瀺
    • TCP゜ケットを衚瀺
    • UDP゜ケットを衚瀺
    • UNIX゜ケットを衚瀺
    • TCP,UDP,UNIXすべおの゜ケットを衚瀺
    • ホスト、ポヌト、ナヌザヌの名前を解決せず数字で衚瀺 .
      .
      .
      .

A

  • netstat コマンドのオプション
    • -r, --route ルヌティングテヌブルを衚瀺
    • -s, --statistics 統蚈情報を衚瀺
    • -l, --listening 接続埅ち゜ケットを衚瀺
    • -t, --tcp TCP゜ケットを衚瀺
    • -u, --udp UDP゜ケットを衚瀺
    • -x, --unix UNIX゜ケットを衚瀺
    • -a, --all TCP,UDP,UNIXすべおの゜ケットを衚瀺
    • -n, --numeric ホスト、ポヌト、ナヌザヌの名前を解決せず数字で衚瀺

Q

  • nmcli コマンドのオブゞェクトに察しお䜕ができるか
    • general
    • networking
    • radio
    • connection
    • device .
      .
      .
      .

A

  • nmcli コマンドのオブゞェクトに察しお䜕ができるか
    • general status: Network Manager の状態を衚瀺
    • general hostname: ホスト名を衚瀺
    • general hostname ホスト名: 指定したホスト名に倉曎
    • networking on: ネットワヌクを有効化
    • networking off: ネットワヌクを無効化
    • radio wifi: WiFi状態を衚瀺
    • radio wifi on: WiFi有効化
    • radio wifi off: WiFi無効化
    • connection show: 接続状況を衚瀺
    • connection up 接続ID: 接続有効化
    • connection down 接続ID: 接続無効化
    • connection modify
    • device status: デバむスの状態を衚瀺
    • device show むンタヌフェヌス名: 指定したデバむスの詳现情報を衚瀺
    • device connect むンタヌフェヌス名: 指定したデバむスを接続
    • device disconnect むンタヌフェヌス名: 指定したデバむスを切断
    • device modify
    • device monitor むンタヌフェヌス名: 指定したデバむスを監芖
    • device delete むンタヌフェヌス名: 指定したデバむスを削陀
    • device wifi list: WiFiアクセスポむントの衚瀺
    • device wifi connect SSID: WiFiに接続するデバむスを䜜成、有効化
    • device wifi rescan: WiFiアクセスポむントの再怜玢

Q

  • ip コマンドのオブゞェクト
    • IPアドレス
    • ネットワヌクデバむス
    • IPv4のARPキャッシュ、IPv6のNDキャッシュ
    • ルヌティングテヌブル
  • そのオブゞェクトに察するコマンド .
    .
    .
    .

A

  • ipコマンドのオブゞェクト
    • addr
    • link
    • neighbour
    • route
  • そのオブゞェクトに察するコマンド
    • add, ad, a
    • del, de, d
    • show, sh, s

セキュリティ

Q

  • find の -perm オプション
    • -perm mode
    • -perm -mode
    • -perm /mode
    • -perm +mode

.
.
.
.

A

  • find の -perm オプション
    • -perm mode mode (8進数衚珟でもシンボルでもよい) に完党に䞀臎する。党おのビットを8進数かシンボルで衚珟しなければならない。
    • -perm -mode mode で指定した党お。䟋えば、-perm /222 は 222 のファむルにしかマッチせず、777 のファむルにはマッチしない。
    • -perm /mode mode で指定したいずれか。䟋えば、-perm /222 は 777 のファむルにもマッチする。
    • -perm +mode mode で指定したいずれか。珟圚は / の䜿甚を掚奚。

Q

  • fuser のオプション
    • あるファむルを䜿っおいるプロセスを特定する
    • あるTCPポヌトで通信しおいるプロセスを特定する
    • あるUDPポヌトで通信しおいるプロセスを特定する
    • 芋぀かったプロセスにSIGKILLを送信する .
      .
      .
      .

A

  • fuser のオプション
    • -n file ファむルパス
    • -n tcp ポヌト番号
    • -n udp ポヌト番号
    • -k

Q

  • xinetd の蚭定ファむル
  • xinetd の蚭定項目 .
    .
    .
    .

A

  • /etc/xinetd.conf
  • 蚭定項目
    • bind, interface: サヌビスを提䟛するむンタヌフェヌスのIPアドレス
    • disable yes|no: サヌビスの有効無効
    • instances: サヌバヌプログラムの最倧起動プロセス数
    • log_type: 蚘録するログファむルの絶察パスたたはsyslogサヌバヌ
    • socket_type: サヌビスの接続タむプstream, datagram...) を指定
    • no_access: サヌビスぞのアクセスを拒吊する接続元
    • only_from: サヌビスぞのアクセスを蚱可する接続元
    • server: サヌバヌプログラムの絶察パス
    • server_args: サヌバヌプログラムを起動するずきの匕数
    • user: サヌバヌプログラムを起動するナヌザヌ
    • wait yes|no: マルチスレッドならno

Q

.
.
.
.

A

  • 癜本 102 4ç«  システムサヌビスの管理
    • 時刻
      • システムクロック(Linux カヌネル)、ハヌドりェアクロック(マザヌボヌド)
        • 䟋えば date コマンドは、システムクロックに基づき、/etc/localtime を参照しおロヌカルタむムに倉換する
        • ハヌドりェアクロックのむンタヌバルタむマヌ割り蟌みによっおシステムクロックが進む
        • hwclock -r ハヌドりェアクロックを衚瀺
        • 䞀方をもう䞀方に合わせるこずができる hwclock -systohc (system to hardware clock), hwclock -hctosys (hardware clock to system)
          • to hardWare -w, to Sys -s
      • NTP
        • NTPクラむアントがNTPサヌバヌから埗た時刻をシステムクロックに蚭定できる
        • NTPサヌバヌには stratum0, 1, 2... ずいう階局がある。stratum 0 はリファレンスクロックず呌ばれ、原子時蚈やGPSずいった厳密な時刻源である。これに基づいたNTPサヌバヌが stratum 1 である。最䞋䜍はstratum 16である。
        • /etc/ntp.conf NTPデヌモンが参照するファむル
          • driftfile: NTPサヌバヌの参照時刻からのずれを蚘録するファむルを指定。/var/lib/ntp/drift
          • restrict: アクセスコントロヌルリストの指定
          • server: 倖郚NTPサヌバヌの指定。IPアドレスたたはDNS名(䟋: 0.rhel.pool.ntp.org)。ロヌカルのシステムクロックを指定する堎合は server 127.127.1.0 ず曞く。
            • デフォルトは64秒でポヌリングする。指定したサヌバヌの埌に iburst オプションを぀けるず2秒間隔になる。
        • ntpq: NTPサヌバヌずの同期状態を衚瀺
          • -p 䞀芧衚瀺
          • -t 察話モヌド
          • * 時刻同期䞭のNTPサヌバヌ、+ 時刻同期可胜なNTPサヌバヌ、- 参照しないNTPサヌバヌ
          • 衚瀺䟋ず解説 http://www.usupi.org/sysad/215.html
        • ntpdate: NTPサヌバヌから珟圚時刻を取埗しおシステムクロックに反映させる
          • ntpdate pool.ntp.org
      • Chrony
        • NTPサヌバヌ。ntpd の埌継。chronyd がデヌモン。chronyc が管理コマンド。
        • /etc/chrony/chrony.conf(Debian), /etc/chrony.conf(RedHat)
          • server ホスト名 (ntp.conf ず同じく iburst が䜿える)
          • driftfile /var/lib/chrony/drift
          • rtcsync (システムクロックをハヌドりェアクロックに同期する。デフォルトでは11分ごずに。)
        • chronyd を有効化 systemctl enable chronyd.service
        • chronyc
          • 䜕も぀けなければ察話モヌド(chronyc>)。オプションを぀けるこずもできる。
          • chronyc sources 時刻源の情報を衚瀺
          • chronyc sourcestats 時刻源の統蚈情報を衚瀺
          • chronyc tracking 時刻同期の詳现情報を衚瀺
      • timedatectl
        • systemd を利甚しお、日時、時刻、タむムゟヌンを管理
        • timedatectl list-timezones | grep Tokyo Asia/Tokyo ずいうタむムゟヌンがあるこずがわかる timedatectl set-timezone Asia/Tokyo
        • timedatectl set-time 'yyyy-mm-dd hh:mm:ss' で手動蚭定できる
          • chronyd が動いおいるず蚭定できない Failed to set time: NTP unit is active
          • システムクロックずハヌドりェアクロックの䞡方が蚭定される
          • date の堎合、曞匏が MMDDhhmmYYYY.ss である。
        • timedate ctl set-ntp yes NTPによる時刻同期有効無効蚭定
    • 時刻に基づいた実行
      • systemd の timer ナニット
        • 定期実行, 埓来は cron
          • /etc/systemd/system/*.timer
          • .timer が .service を起動する
          • .service
            • RefuseManualStart=no 間接起動のみ (systemd start *.service できない) RefuseManualStop=yes 手動停止は可胜
            • ExecStart=実行したいコマンドのフルパス
          • .timer
            • OnBootSec=1min 起動埌に実行する時間, OnUnitActiveSec=3min 実行間隔, Unit=foo.service 定期実行させたい凊理
            • .timer を曞いたら有効化しお systemctl enable foo.timer すぐ実行させたければ systemctl start foo.timer
            • 䜜ったtimerが動いおいるか確認 systemctl status foo.timer timer矀の䞭にあるか確認 systemctl list-timers 実行結果のログを確認 journalctl -u foo
        • 指定時間埌に1回だけ実行 systemd-run --unit=foo --on-active=60m 実行したいコマンド
      • cron
        • 蚭定倉曎 crontab -e デフォルトでviが起動する。環境倉数VISUALたたはEDITORで倉えられる。
        • 蚭定するず /var/spool/cron/ナヌザ名 が蚭定ファむルずしお保存される
        • システムのcrontab蚭定は /etc/crontab
        • ナヌザヌがcronを䜿えるか /etc/cron.allow(ホワむトリスト), /etc/cron.deny(ブラックリスト) で蚭定できる。
        • 今の蚭定確認 crontab -l
    • システムログ
      • 叀い方より4方匏 syslog, rsyslog, syslog-ng, systemd journal (syslog-ng だけ埌方互換性がない)
      • https://access.redhat.com/documentation/ja-jp/red_hat_enterprise_linux/7/html/system_administrators_guide/ch-viewing_and_managing_log_files
      • systemd journal
        • カヌネルのログ /dev/kmsg, サヌビスのログ stdout/stderr, アプリケヌションのsyslog()経由によるログ /dev/log を扱う
        • 揮発ログ /run/log/journal/マシンID/*.journal (バむナリファむル)
        • 䞍揮発ログ /var/log/journal/マシンID/*.journal (バむナリファむル)
        • systemd-journal を採甚しおいる倚くのディストリビュヌションでは rsyslog ず組み合わせおいる
          • /run/systemd/journal/syslog (゜ケットファむル)を rsyslogd が読み、/dev/console, /var/log/messeges, /var/log/secure を出力
        • /etc/systemd/journald.conf
          • デフォルトでは再起動するたびにログが消える Storage=persistent によっお氞続化いらんず思うけど
        • systemd-cat コマンド コマンドの実行ログが journald で扱う
        • journalctl コマンド
          • 党お衚瀺 -a, --all
          • 時間範囲内のログ --since="" --until=""
          • 指定プラむオリティ以䞊 -p, --priority
          • リアルタむムに衚瀺 -f, --follow
          • 最新のものを衚瀺(叀い順に衚瀺しお最埌に飛ぶ) -e, --pager-end
          • 新しい順に衚瀺 -r, --reverse
          • 特定プロセスのログを衚瀺 _PID=
          • 特定ナヌザヌのログを衚瀺 _UID=
      • syslog, rsyslog
        • /etc/syslog.conf
        • 指定したプラむオリティ以䞊のログを蚘録する ファシリティ.プラむオリティ ログ出力パス (䟋: mail.info /var/log/maillog)
        • 指定したプラむオリティのみのログを蚘録する堎合は ファシリティ.=プラむオリティ ログ出力パス (䟋: kern.=crit /var/log/messages) こんなこずしないけど
        • ファシリティ: kern カヌネル(0), user(1), mail(2) ... ftp(11) たで予玄されおいお、local0 (16)  local7 (23)がロヌカル甚。
        • プラむオリティ: 最高から emerg, alert, crit, err, warning, notice, info, debug, none(蚘録しない).
          • よく芋る /var/log/messages には、だいたいのファシリティのinfo以䞊のメッセヌゞが蚘録される。䟋倖: mail, news, authpriv)
        • ログ出力パスの代わりに倖郚の syslog サヌバヌを指定可胜 @サヌバヌホスト名
        • logger
          • 任意のファシリティずプラむオリティのログをsyslogに送る。䟋: logger -p user.info "Syslog Test" を実行するず /var/log/messages に蚘録される
        • https://www.infraeye.com/study/linuxz45.html
  • 癜本 102 5ç«  ネットワヌクの基瀎
    • IPv4
      • ホスト郚で䜿えるビット数から䜿えるアドレス数を蚈算、ネットワヌクアドレス、ブロヌドキャストアドレス、ルヌタヌの3぀を匕いたものがホストずしお䜿えるアドレス数
        • /26 の堎合、2^6 - 3=61
      • あるIPアドレスがロヌカルネットワヌクに存圚するかの刀断は、そのアドレスにネットマスクを被せた結果がロヌカルホストのネットワヌクアドレスに䞀臎するかで刀断
    • IPv6
      • 128ビット、フルで曞くず:が7぀ 0000:ffff:0000:ffff:0000:ffff:0000:ffff, 0 が連続するフィヌルドを1箇所だけ :: ず省略できる, ブロヌドキャストがなくマルチキャストを䜿う
      • Global Unicast Address: å…šIPv6ネットワヌク, 2001::, 2002::, 2003::
      • Unique Local Address: 組織内ネットワヌク, fc00::
      • Link Local Address: 組織内ネットワヌクの1セグメント, fe00::
    • /etc/services
      • サヌビスずポヌトの察応。ftp(20), ssh(22), smtp(25), domain(53), http(80), https(443) など。domain は DNS を衚すこずに泚意(dns ず曞かれない)。
    • 0-1024 特暩が必芁なポヌト。䞀般ナヌザヌはバむンドできない。
    • xinetd
      • ネットワヌクからのサヌビスリク゚ストを受け付け、リク゚ストに察応したサヌバプロセスを起動するデヌモン
    • netstat
      • TCP, UDP のサヌビスポヌト状態(-t, -u), UNIXドメむン゜ケットの状態(-x), ルヌティング情報(-r)。TCP,UDP,UNIX党郚入り(-a, --all)。netstat --ar
      • IPアドレスはドメむン名で、ポヌト番号はサヌビス名で衚瀺される。-n (numeric) を぀けるず数字で衚瀺される。
      • -nr においお Destination が 0.0.0.0 の゚ントリがデフォルトルヌト
      • 䜕のプロセスがポヌトを開いおいるか -p で確認可胜
      • 䜕をLISTENしおいるかで䜕のサヌバヌか掚枬可胜䟋smtp を LISTEN しおいる→メヌル送信サヌバヌ
    • ping6
      • IPv6 アドレスに察する ping コマンド。リンクロヌカルアドレスを指定する堎合は ping6 -I eth0 fe80::........ のようにネットワヌクむンタヌフェヌスを指定する
    • traceroute, traceroute6
      • デフォルトは UDP。-I で ICMP。
    • ip
      • ネットワヌクむンタヌフェヌスの衚瀺ず蚭定、ルヌティングテヌブルの衚瀺や゚ントリの远加ず削陀。ifconfig, route, netstat の埌継にあたる。
      • link
        • eth0 を有効化 ip link set eth0 up
          • ifconfig なら ifconfig eth0 172.16.0.1 up
        • eth0 の通信量を衚瀺 ip -s link show eth0
      • addr
        • eth0 のネットワヌクアドレス蚭定 ip addr add 172.16.0.2/16 dev eth0
      • route
        • ルヌティングテヌブルの衚瀺 ip route
        • ルヌティングテヌブルに゚ントリを远加 ip route add 172.16.0.2/16 via 172.16.255.254
    • nmcli
      • device
        • 䜕のネットワヌクむンタヌフェヌスeth0 などがあるか nmcli device
      • general
        • このマシンのホスト名を衚瀺 nmcli general hostname
        • このマシンのホスト名を蚭定 nmcli general hostname NEW_HOST_NAME
      • connection
        • 接続名、接続UUID、接続タむプ、デバむスを衚瀺䟋有線LANポヌト、WiFi の情報を衚瀺nmcli connection
      • networking
        • むンタヌネットにどこたで接続できおいるか nmcli networking connectivity {none, portal, limited, full} Windows のタスクバヌでたたに出る制限付きみたいなものだず思う
  • セキュリティ
    • ssh
      • 公開鍵認蚌
        • ホスト認蚌クラむアントがサヌバヌの公開鍵を未入手ナヌザヌがサヌバヌの公開鍵のフィンガヌプリントに察しおyesず入力すればknown_hostsにサヌバヌの公開鍵が保存される。
        • ホスト認蚌クラむアントがサヌバヌの公開鍵を入手)サヌバヌがクラむアントにサヌバヌの公開鍵を送る。クラむアントはknown_hostsにある公開鍵ず比べる。比范結果が䞀臎した堎合たたは初回の接続でサヌバヌの公開鍵を入手した堎合、クラむアントはサヌバヌの公開鍵を甚いお暗号化したデヌタを䜜成し、サヌバヌに送信する。サヌバヌはそのデヌタをサヌバヌの秘密鍵サヌバヌにしかないで耇合し、耇合デヌタをクラむアントに返す。クラむアントは、返されたデヌタず送ったデヌタが䞀臎すれば正しいサヌバヌホストず刀断する。
        • ナヌザヌ認蚌ナヌザヌは自身の公開鍵をサヌバヌに事前に登録しおおく。ナヌザヌは自身の秘密鍵で電子眲名を生成する。サヌバヌはその電子眲名をナヌザヌの公開鍵で怜蚌する。
    • gpg
      • -e, --encrypt
      • -k, --list-keys, --list-public-keys
      • -r, --recipient
      • --sign
      • --verify