本記事ではLPIC1(Ver4.0)102試験に合格するため『主題107:管理業務』について自分が勉強したことをまとめました。
LPIC1(Ver4.0)102試験の出題範囲はLPICのサイト(102試験範囲)に掲示されており、以下の様になっています。
目次
目次
- 1 目次
- 2 事前準備
- 3 (107.1)ユーザアカウント、グループアカウント、および関連するシステムファイルの管理
- 4 (107.2)ジョブスケジューリングによるシステム管理業務の自動化
- 5 (107.3)ローカライゼーションと国際化
- 6 関連するページ
事前準備
1.Linuxの環境を用意する
LPICを勉強する上でLinuxの環境で実際に動かしてみるとよいです。Windows上でも仮想Linux環境を構築すれば簡単にLinuxを動かすことができます。以下にWindows上でubuntuを構築する方法をまとめました。参考にしてください。
2.テキストを購入する
『Linux教科書 LPICレベル1 Version4.0対応』を参考にしながら勉強しました。このテキストにそって重要なところのみピックアップしてまとめているので大元はこちらのテキストを参照してください。
(107.1)ユーザアカウント、グループアカウント、および関連するシステムファイルの管理
アカウントに関するファイル
/etc/passwdファイル(ユーザアカウント情報)
補足
・/etc/passwdファイルは一般ユーザも読み取りすることができる(権限は644)
・ユーザ名は重複できない
・パスワードはシャドーパスワードを使っていると「x」と表示される
・ユーザIDは0はrootユーザ、1?99はシステム管理用、1000以降が一般ユーザ
・/etc/passwdファイルのグループID(GID)がこのユーザのプライマリーグループとなる
・権限は「rw-r–r–」
・第2フィールドのパスワードの先頭に「*」か「!」をつけると、ログインを拒否する
・パスワード部分が「x」か「## ログイン名」だと、/etc/shadowファイルが採用されるが、それ以外は/etc/passwdのパスワードが採用される
/etc/shadowファイル(シャドーパスワード情報)
補足
・/etc/shadowファイルはルートユーザのみ読み取りすることができる(権限は000)
・権限は「r——–」
/etc/groupファイル(グループ情報)
補足
・パスワードはシャドーパスワードを使っていると「x」と表示される
・グループメンバーは「,」で区切って複数指定できる
・グループメンバーでユーザに対してサブグループに指定ができる
/etc/skelディレクトリ配下のファイル(ホームディレクトリのデフォルトファイル)
補足
・ホームディレクトリが作成したいファイルは/etc/skelディレクトリ配下に格納
/etc/nologinファイル(ログインの禁止)
・このファイルを生成するとrootユーザ以外のログインを禁止
・ユーザごとにログインを禁止させてい場合は、/etc/passwdのログインシェルを「/sbin/nologin」,「/bin/false」にする
アカウント情報に関するコマンド
getentコマンド(アカウント情報の一覧表示)
コマンド詳細
https://webkaru.net/linux/getent-command/
補足
・ユーザ情報を表示したい場合は「passwd」を指定
・グループ情報を表示したい場合は「group」を指定
idコマンド(アカウント情報を表示)
コマンド詳細
http://itpro.nikkeibp.co.jp/article/COLUMN/20060227/230799/
lastコマンド(最近ログインしたユーザー表示)
最近ログインしたユーザーの情報を表示するコマンド
コマンド詳細
http://itpro.nikkeibp.co.jp/article/COLUMN/20060227/230807/?rt=nocnt
補足
・/var/log/wtmpファイルを参照
whoコマンド(現在ログイン中のユーザー表示)
コマンド詳細
http://itpro.nikkeibp.co.jp/article/COLUMN/20060228/230998/
補足
・/var/run/utmpファイルを参照
ユーザ情報に関するコマンド
useraddコマンド(ユーザーを追加)
コマンド詳細
http://itpro.nikkeibp.co.jp/article/COLUMN/20060227/230925/?rt=nocnt
補足
・オプションを省略すると、「/etc/default/useraddファイル」が参照される
・新規ユーザ設定時にパスワードは設定されていない。このときは/etc/shadowファイルの2番目(パスワード)は!!となる。このとき、/etc/passwdはxのまま
userdelコマンド(ユーザーを削除)
コマンド詳細
http://itpro.nikkeibp.co.jp/article/COLUMN/20060227/230926/
補足
・「-r」,「–remove」オプションでホームディレクトリを同時に削除する
usermodコマンド(アカウント情報を変更)
コマンド詳細
http://itpro.nikkeibp.co.jp/article/COLUMN/20060228/230982/
補足
・アカウントロックのオプションが「passwdコマンド」と「usermodコマンド」で異なるので注意
・アカウントロック:「usermod -L」,「passwd -l」
・アカウント解除:「usermod -U」,「passwd -L」
・「-fオプション」で失効日までの猶予日数の指定
・「-eオプション」で失効日を指定
※失効日はchageコマンドでは-Eオプションで大文字であることに注意
chshコマンド(シェルを変更)
コマンド詳細
http://kazmax.zpp.jp/cmd/c/chsh.1.html
補足
・-sオプションを指定しない場合は対話的に設定する
passwdコマンド(パスワードを変更)
コマンド詳細
http://itpro.nikkeibp.co.jp/article/COLUMN/20060227/230854/
補足
・アカウントロックのオプションが「passwdコマンド」と「usermodコマンド」で異なるので注意
・アカウントロック:「usermod -L」,「passwd -l」
・アカウント解除:「usermod -U」,「passwd -L」
chageコマンド(パスワードの有効期限を設定)
コマンド詳細
https://webkaru.net/linux/chage-command/
補足
・パスワードの変更はrootユーザのみ実行可能
・失効日はusermodコマンドでは-eオプションで小文字であることに注意
グループ情報に関するコマンド
groupaddコマンド(グループを作成)
コマンド詳細
http://itpro.nikkeibp.co.jp/article/COLUMN/20060227/230787/
groupdelコマンド(グループを削除)
コマンド詳細
http://itpro.nikkeibp.co.jp/article/COLUMN/20060227/230788/
groupmodコマンド(グループ情報を変更)
コマンド詳細
http://itpro.nikkeibp.co.jp/article/COLUMN/20060227/230789/
補足
・グループIDを変更するときは「-g グループID(GID)」を指定する
・「groupmodコマンド」では、ユーザのプライマリグループやセカンダリグループの設定はできない
・「groupmodコマンド」ができるのはグループIDとグループ名を変更すること
(107.2)ジョブスケジューリングによるシステム管理業務の自動化
ジョブスケジューリングに関するコマンド
crontabコマンド(ユーザ用crondの設定ファイルを編集)
コマンド詳細
http://itpro.nikkeibp.co.jp/article/COLUMN/20060227/230737/
補足
・crontabファイルは直接編集しないで、この「crontabコマンド」を使うこと
・ユーザ用の/var/spool/cron/crontabsファイルを編集するコマンドであり、システム用の/etc/crontabファイルを編集しているわけではないことに注意
atコマンド(1回実行のスケジュール指定)
コマンド詳細
https://eng-entrance.com/linux-command-at
補足
・予約中のジョブを削除するのは「atrmコマンド」でも可能
・予約中のジョブを表示するのは「atqコマンド」でも可能
・予約中のジョブの詳細な内容を表示するのは「atcコマンド」でも可能
batchコマンド(1回実行)
コマンド詳細
http://itpro.nikkeibp.co.jp/article/COLUMN/20060227/230716/
補足
・atコマンドとは異なり、システム負荷の低いときに1回実行する
ジョブスケジューリングに関するファイル
/var/spool/cron/crontabsファイル(ユーザ用のジョブスケジューリング情報)
補足
・曜日は0?7までの整数 (0,7は日曜、6は土曜) 文字列Sun,Monなどでも指定可能
・「*」ですべての値を指定可能
・複数指定は「,」で区切る
・間隔指定は「*/間隔」で指定
・範囲指定は[n-m]でnからmの範囲
/etc/crontabファイル(システム用のジョブスケジューリング情報)
補足
・ユーザ名のフィールド以外は/var/spool/cron/crontabsファイルと同じ
・このファイルから/etc/cron.*ディレクトリのファイルを呼び出す
・「/etc/cron.hourly/」は1時間に一度実行されるcronジョブを指定
・「/etc/cron.daily/」は1日に一度実行されるcronジョブを指定
・「/etc/cron.weekly/」は1週間に一度実行されるcronジョブを指定
・「/etc/cron.monthly/」は1ヶ月に一度実行されるcronジョブを指定
/etc/anacrontabファイル(ジョブスケジューリング情報)
補足
・システム停止中に経過してしまったスケジュールについても実行することができる
・日単位であることに注意
・ログのロケーションや不要ファイルの削除などシステム管理者がシステム保守のために設定する
・/etc/anacrontabファイルの設定に従い、
/etc/cron.daily、
/etc/cron.weekly、
/etc/cron.monthlyディレクトリ以下のコマンドを実行する
/etc/cron.allowファイル(cron実行ユーザの許可)
補足
・cronを利用を許可するユーザを記載
・読み取りの順番は「/etc/cron.allowファイル」⇒「/etc/cron.denyファイル」でどちらも指定がなかったら、すべてのユーザがcron実行可能
/etc/cron.denyファイル(cron実行ユーザの拒否)
補足
・cronを利用を拒否するユーザを記載
/etc/at.allowファイル(at実行ユーザの許可)
補足
・atを利用を許可するユーザを記載
・読み取りの順番は「/etc/at.allowファイル」⇒「/etc/at.denyファイル」でどちらも指定がなかったら、rootユーザのみがat実行可能
/etc/at.denyファイル(at実行ユーザの拒否)
補足
・atを利用を拒否するユーザを記載
(107.3)ローカライゼーションと国際化
ロケールに関する環境変数
ロケールはLinux利用者の地域によって言語や書式を変更する仕組み
主なロケールの種類は以下
・言語:LC_MESSAGE
・通貨:LC_MONETARY
・日時:LC_TIME
・文字の種類:LC_CTYPE
・数値の種類:LC_NUMERIC
※LC_DATEやLC_DAYTIMEなどの変数はない
以下の環境変数を使うことですべてのカテゴリを一括して変更できる
環境変数LC_ALL(ロケールの一括指定)
補足
・ロケール名を指定することですべてのカテゴリを指定することができる
環境変数LC_LANG(ロケールのデフォルト値指定)
ロケール名
環境変数LC_ALLを参照
補足
・デフォルト値のため、カテゴリごとに個別で指定することも可能
環境変数LANG(文字コードの一括指定)
補足
・「LC_*」のメッセージはすべて指定の文字コード化される
・環境変数LANGをunsetしてもデフォルトはPOSIXとなる
・コマンド前にLANGで文字コードを指定すると、そのコマンド実行時のみ文字コードを変えることができる。このとき、「;」で処理を切らないこと
ロケールに関するコマンド
localeコマンド(ロケール設定値を表示)
補足
・「-a」オプションで設定可能なロケール一覧表示
・「-m」オプションで設定可能な文字コード一覧表示
文字コードに関するコマンド
iconvコマンド(文字コードを変換)
コマンド詳細
http://itpro.nikkeibp.co.jp/article/COLUMN/20131209/523510/
補足
・「-l」オプションで利用可能な文字コードを表示する
タイムゾーンに関するディレクトリ
補足
・利用可能なタイムゾーンのバイナリファイルが格納
/etc/localtimeディレクトリ(システムで利用するタイムゾーン指定)
補足
・システムで利用するタイムゾーンを格納する
・利用方法は以下の3種類
1.「cpコマンド」で利用したいタイムゾーンのバイナリファイルを/etc/localtimeディレクトリにコピーする
2.「lnコマンド」で利用したいタイムゾーンのバイナリファイルを/etc/localtimeディレクトリにシンボリックリンクを張る
3.環境変数TZで設定
・環境変数TZは一般ユーザも利用可能
タイムゾーンに関するコマンド
tzselectコマンド(タイムゾーンを選択)
コマンド詳細
http://kazmax.zpp.jp/cmd/t/tzselect.8.html
補足
・一覧が表示されてその中からタイムゾーンを指定できる
tzconfigコマンド(タイムゾーンを設定)
補足
・/etc/localtimeと/etc/timezoneの値をまとめて変更できる
関連するページ
LPIC-1 試験対策のまとめページ
(次の章) 【LPIC1対策(8)】主題108:重要なシステムサービス
(前の章) 【LPIC1対策(6)】主題106:ユーザインターフェイスとデスクトップ
以上!!!