LPIC102学習メモ

学習範囲
トピック105:シェルとシェルスクリプト
トピック106:ユーザーインターフェースとデスクトップ
トピック107:管理タスク
- useraddコマンドとは?
- useraddコマンド実行後の/etc/shadowについて
- useradd -m コマンドの挙動
- /etc/passwdの第2フィールド
- グループからユーザーを削除するコマンドについて
- crontabコマンドとは?
- 対話的なログインを不可にするには?(2種類のコマンド)
トピック108:必須システムサービス
トピック109:ネットワークの基礎
トピック110:セキュリティ

このスクラップについて
2024/12/22→2025/01/09へのLPIC102合格に向けて
日々の学習記録やメモをまとめます。
(12/22は予約取れませんでした。)
利用教材
試験に合格した先輩社員より上記の教材をおすすめされたので、購入

/etc/servicesとは?
サービスとポート番号の対応を記述したファイル
tcpmux 1/tcp # TCP port service multiplexer
echo 7/tcp
echo 7/udp
discard 9/tcp sink null
discard 9/udp sink null
systat 11/tcp users

xclipコマンド
学習には関係ないけど仮想環境からファイルの内容などをホストPCへコピペする際に
利用するのはxclip
コマンド
sudo apt update
sudo apt install xclip
cat ファイル名 | xclip -selection clipboard

IPv4とIPv6のアドレス構成の違い
IPv4
- ネットワーク部 + ホスト部
- それぞれはサブネットマスクにより区分される
IPv6
- プレフィックス + インターフェースID
- それぞれ64ビットごとに分けられる

学習状況:スピードマスター
ch | 分野 | 最終演習日 | メモ |
---|---|---|---|
1 | シェル、スクリプト | 2024/12/12 | 全問正解 |
2 | X Window System | 2024/12/12 | 正答率80%程度。内容はだいぶ理解できるようになっている |
3 | ユーザアカウントの管理 | 2024/12/12 | 全問正解 |
4 | システムサービスの管理 | 2024/12/12 | スピードマスターでは最も理解が遅れている。コマンドとか動作確認しないと理解できないかも・・・ |
5 | ネットワークの基礎 | 2024/12/12 | 正答率80%程度 |
6 | セキュリティ | 2024/12/12 | 正答率80%程度 ファイルへのパスなど一部の暗記分野がいまいち |
7 | 模擬試験・問題 | 2024/12/12 | 正答率はほぼ90%。12/15までは毎日演習する予定 |

学習状況:ping-t
分野名 | 最終演習日 | メモ |
---|---|---|
シェル環境のカスタマイズと使用 | 2024/12/12 | 全問コンボ達成 |
簡単なスクリプトのカスタマイズ | 2024/12/12 | 全問コンボ達成 |
X11のインストールと設定 | 2024/12/02 | |
グラフィカルデスクトップ | 2024/12/02 | |
アクセシビリティ | 2024/12/02 | |
アカウントと関連システムファイルの管理 | 2024/12/03 | |
ジョブスケジューリングによる自動化 | 2024/12/03 | |
ローカリゼーションと国際化 | 2024/12/04 | |
システム時刻の管理 | 2024/12/05 | |
システムロギング | 2024/12/05 | |
メール転送エージェント(MTA)の基本 | 2024/12/05 | |
プリンタの管理と印刷 | 2024/12/05 | |
インターネットプロトコルの基礎 | 2024/12/06 | |
固定ネットワーク構成 | 2024/12/09 | |
基本的なネットワークのトラブルシューティング | 2024/12/08 | |
クライアント側のDNSの設定 | ||
セキュリティ管理タスクの実行 | ||
ホストのセキュリティ設定 | ||
暗号化によるデータの保護 |

useradd コマンド
ユーザーを新規登録するコマンド
# ユーザー「test1」を登録する
useradd test1
上記のコマンドを実行すると、/etc以下の各ファイルにアカウント情報が追加される
(/etc/passwdや/etc/shadowなど)

useraddコマンド実行後の/etc/shadowについて
useraddにより新規追加した直後のアカウントではパスワードが未設定のため、
/etc/shadowの2番目のフィールドが !! となる
username:!!:14798:0:99999:7:::

useradd -m コマンドの挙動
useradd -m
ではユーザーの新規追加とそのユーザーのホームディレクトリが作成される
このとき作成されるホームディレクトリは/etc/skelディレクトリをコピーして作成される
/etc/skelディレクトリ以下に/testディレクトリを追加した状態でuseradd -m
コマンドを実行する
→ /testディレクトリを含めて状態でホームディレクトリが作成される
/etc/skelディレクトリ以下に何もない状態でコマンドを実行すると空のホームディレクトリが作成される

/etc/passwdの第2フィールド
passwdの第2フィールドに記載されている内容よりそれぞれ判定が異なる
入力値 | 説明 |
---|---|
x | /etc/shadowが参照される |
##ログイン名 | /etc/shadowが参照される |
* | ログインを拒否 |
! | ログインを拒否 |
上記以外 | 暗号化パスワードとして処理する |
# test1ユーザーは/etc/shadowを参照していると判定される
test1:x:1000:1000:Full Name,Room number,Work phone,Home phone:/home/username:/bin/bash

グループからユーザーを削除するコマンドについて
スピードマスター演習にてusermod -g``usermod -G
コマンドによるグループ変更方法が解説されている。
削除というより変更オプションを応用したコマンドという印象
変則な解説だと思うのメモに残す
→ gpasswd
コマンドでも同様の操作が可能とのこと

getentコマンドとは?
指定したデータベースからエントリを取得するコマンド
getent passwd
このときネームサービススイッチ(/etc/nsswitch.conf)の設定を参照する

学習記録:2024/12/11
スピードマスター:ch3_ユーザアカウントの管理
一部の問題の解説を確認(対話的なログインを不可にする設定)
スピードマスター:ch4_システムサービスの管理
スピードマスターで最も理解が遅れている
必要なら仮想環境でコマンドの動作確認も必要かも・・・
ping-tの演習と並行して、理解を深める方向で学習します。
スピードマスターの演習だけは理解しきれない
とりあえずcrontabについてはまとめてメモへ
スピードマスター:ch7_模擬演習
通期時間に演習。ほぼ内容は理解できるようになっていることを確認
12/15までは毎日模擬試験は演習するつもり
その他
Ping-tなどの簡単な演習を確認

crontabコマンドとは?
定期的に特定のコマンドを実行させるコマンド
ユーザーのcrontabファイルはどこに保存されている?
/var/spool/cron
または/var/spool/croncrontabs/
に保存されている
システム全体のcrontabファイルはどこに保存されている?
/etc/crontab
に保存されている
crontabファイルを編集するときに実行するコマンドは?
crontab -e

毎週日曜日から火曜日の16:30にcommandを実行させるcrontabは?
30 16 * * 0-2 command
crontabファイルのフィールドは6つ
上記の例を当てはめると下記
分 | 時 | 日 | 月 | 曜日 | コマンド |
---|---|---|---|---|---|
30 | 16 | * | * | 0-2 | command |
※曜日にて、日曜日は「0」 |

毎週水曜日の17:15~18:00にコマンドを5分間で定期的に実行するcrontabは?
*/5 17 * * 3 command
注目するのは「分」フィールドの「/5」
「/5」で5分間隔に実行するという設定となる

対話的なログインを不可にするには?(2種類のコマンド)
# usermodコマンドを使用
usermod -s /sbin/nologin ~
# chsh(change shell)コマンドを使用
chsh -s /bin/false ~
対話的なログインを不可にするには?
→ ログインシェルを下記へ変更することで設定可能
→ /bin/false
→ /sbin/nologin

12/13~12/15
スピードマスター演習の制覇
下記のピックアップした問題をそれぞれ確認する
- ch1:なし
- ch2:10
- ch3:なし
- ch4:4・7・14・17・20・21・23・25~35・37・38・41~44・46・48
- ch5:24・27・30・34・44
- ch6:9・17・29・30
- ch7:44・48・54・55・56
ping-tを全問コンボへ

ネットワーク経由でのXの利用
- Xクライアント → Xサーバ → リモートPC
- XクライアントからXサーバという流れなので、通常と処理が逆になる
- Xサーバにて
xhost
コマンドを実行することでアクセス制御する - リモートPCの環境変数DISPLAYにてXサーバのホスト名を設定することでリモート表示できる

NetworkManagerが表示する接続性のステータス
NetworkManager(ネットワークを管理するサブシステム)にて
ネットワークの接続状態を確認可能
nmcli networking connectivity
表示されるステータスは5つ
- none:どのネットワークにも接続されていない
- portal:キャプティブポータルにて未認証。インターネットに接続できていない
- limited:ネットワークには接続されているが、インターネットにて接続されていない
- full:ネットワークに接続され、インターネットにも接続できている
- unknown:判断不可
「ネットワーク」「インターネット」それぞれのへの接続状況でステータスが分かれる
キャプティブポータル:クライアントが認証されるまで接続不可にする機能

resolv.conf
DNSが名前解決を実行する際に参照するDNSサーバが
設定されているファイル
パラメータ | 説明 |
---|---|
nameserver | DNSサーバのIPアドレスを指定 |
domain | ローカルドメイン名を指定 |
search | 名前解決の際に自動的に付加される検索ドメイン名を指定 |

/var/log/wtmpと/var/run/utmpの違いは?
よくこの2つを混同するので認識を改めるためにメモへ
記録する内容 | データの保存期間 | |
---|---|---|
/var/log/wtmp | ログインしたユーザーの履歴や利用時間など | 長期 |
/var/run/utmp | 現在ログインしているユーザーの情報 | 短期・一時的 |
参照するデータが短期・長期で判別する

スピードマスターもch4以外は確認完了
→ 12/14・12/15で全制覇を目指します

/etc/profileとは?
適用範囲 | 読込タイミング | 設定内容 |
---|---|---|
全ユーザー | ログイン時 | 環境変数・利用環境にかかわるもの |

etc/bash.bashrc
適用範囲 | 読込タイミング | 設定内容 |
---|---|---|
全ユーザー | bash起動時 | Debian系 エイリアスなどbash起動時に実行させたい処理 |

etc/bashrc
適用範囲 | 読込タイミング | 設定内容 |
---|---|---|
全ユーザー | bash起動時 | RedHat系 エイリアスなどbash起動時に実行させたい処理 |

LPIC102に合格したのでクローズ