本記事ではLPIC1(Ver4.0)101試験に合格するため『主題102:Linuxのインストールとパッケージ管理』について自分が勉強したことをまとめました。
LPIC1(Ver4.0)101試験の出題範囲はLPICのサイト(101試験範囲)に掲示されており、以下の様になっています。
目次
目次
事前準備
1.Linuxの環境を用意する
LPICを勉強する上でLinuxの環境で実際に動かしてみるとよいです。Windows上でも仮想Linux環境を構築すれば簡単にLinuxを動かすことができます。以下にWindows上でubuntuを構築する方法をまとめました。参考にしてください。
2.テキストを購入する
『Linux教科書 LPICレベル1 Version4.0対応』を参考にしながら勉強しました。このテキストにそって重要なところのみピックアップしてまとめているので大元はこちらのテキストを参照してください。
(102.1)ハードディスクのレイアウト設計
Linuxに必要なパーティション
Linuxに必ず必要なパーティションは以下の2つ
1.ルートパーティション
2.スワップ領域
スワップ領域は物理メモリの1倍から2倍とるのが一般的だが、必ずしも1倍以上必要というわけではない
代表的なパーティション
/home
一般ユーザが利用するファイルが格納される
/var
ログファイルなどの更新頻度が高いファイルが格納される
/usr
プログラムやライブラリ、ドキュメントなどが格納される
/boot
ブート用に確保するパーティション
ディスクの先頭パーティションを数100MB程度確保したほうがいい
/スワップ領域
仮想メモリ領域として利用されるパーティション
物理メモリが不足した場合などに使用させる
/(ルート)
上記以外はルートになる。できるだけ小さくするとよい
(102.2)ブートマネージャのインストール
grub-installコマンド(GRUBをインストール)
ブートローダーGRUBをインストールするコマンド
・コマンド詳細
http://itpro.nikkeibp.co.jp/article/COLUMN/20140212/536210/
GRUBの種類
GRUBは2種類ある
・GRUB Legacy
バージョン0.9x系
・GRUB2
バージョン1.9x系
GRUB LegacyとGRUB2の違い
・GRUB Legacyのバイナリ―ファイルはstage1,stage1.5,stage2のような構成
・GRUB2ではboot.img,core.imgのような構成
・GRUB Legacyでは/boot/grub/menu.lstと/boot/grub/grub.confが設置ファイル
・GRUB2では/boot/grub/grub.cfgが設定ファイル
GRUB Legacyの設定ファイルは/boot/grub/menu.lst
また、/boot/grub/grub.confも設定ファイル
・「root=***」でルートデバイスを指定
(hd1,1)=>/dev/hdb2と0スタートで指定する
・「Kernel」で設定できる項目として、ルートパーティションの指定、カーネルメッセージの抑制(quiet)を指定できる。
・起動時にカーネルに渡された引数を確認するには/proc/cmdlineファイルで確認できる
grub-mkconfigコマンド(GRUB2の設定ファイルを生成)
GRUB2の設定ファイルを生成するコマンド
/etc/default/grubで設定した値から/boot/grub/grub.cfgを生成する。
補足
・GRUB Legacyと同様に起動メニューまでのタイムアウト時間やカーネルのオプションを指定したりできる。
・update-grubコマンドで/etc/default/grubから/boot/grub/grub.cfgを更新する。
・GRUB2の設定ファイル/boot/grub/grub.cfgではデフォルトのOS(GRUB_DEFAULT)、起動するまでの待機時間(GRUB_TIMEOUT)、カーネルに渡すデフォルトオプション(GRUB_CMDLINE_LINUX_DEFAULT)などが設定できる。
ブートオプション
・起動時の画面でAキーかEキーでブートオプションを指定することができる。
・USBの使用可否、シングルユーザモードでの起動などの設定ができる。
・エラーで起動しない時などは「init=シェル名」と、シェルを変更して起動をすることができる。
(102.3)共有ライブラリの管理
静的ライブラリと共有ライブラリ
・静的ライブラリ
コンパイル時にプログラム内に組み込まれるライブラリ
・共有ライブラリ
プログラム実行中にロードされるライブラリ
検索する共有ライブラリの指定
デフォルトでは/lib,/usr/libディレクトリしか検索されない。
・検索ライブラリの追加
/etc/ld.so.confファイルに検索したいライブラリ名の絶対アドレスを記載
・検索対象のディレクトリの追加
環境変数LD_LIBRARY_PATHにディレクトリを追加
共有ライブラリが検索される順番
プログラム実行中はld.soリンカが以下の順にライブラリを検索している
1.環境変数LD_LIBRARY_PATH内のディレクトリ
2.キャッシュファイル/etc/ld.so.cashe
3./lib,/usr/lib
lddコマンド(共有ライブラリの依存関係を表示)
共有ライブラリの依存関係を表示するコマンド
(実行ファイルが必要な共有ライブラリを表示する)
・コマンド詳細
http://itpro.nikkeibp.co.jp/article/COLUMN/20140127/532486/
ldconfigコマンド(共有ライブラリの依存関係を更新)
共有ライブラリの依存関係情報を更新するコマンド
/etc/ld.so.confファイルから/etc/ld.so.cacheを再構築する
・コマンド詳細
http://itpro.nikkeibp.co.jp/article/COLUMN/20140127/532504/
(102.4)Debianパッケージ管理の使用
Debian形式のパッケージファイル名
dpkgコマンド(Debianパッケージをインストール・アンインストール)
Debianパッケージのインストール・アンインストールを行うコマンド
インストールに関するオプション
dpkgは「GEi」がポイント
コマンド詳細
http://itpro.nikkeibp.co.jp/article/COLUMN/20060227/230747/
補足
・dselectコマンド:対話的にパッケージ管理できるUIを起動
http://itpro.nikkeibp.co.jp/article/COLUMN/20140428/553545/
dpkg-reconfigureコマンド(Debianパッケージを再設定)
インストール済みDebianパッケージを再設定するコマンド
コマンド詳細
http://itpro.nikkeibp.co.jp/atcl/column/14/230520/082700008/
apt-getコマンド(パッケージのインストール/アップデート)
パッケージを取得してインストール/アップデートするコマンド
コマンド詳細
http://itpro.nikkeibp.co.jp/article/COLUMN/20060227/230709/
補足
・パッケージをアップデートする方法
1.「apt-get update」で最新のパッケージ情報を取得後
2.「apt-get upgrade」でパッケージを最新にアップデート
・「apt-get upgradeコマンド」はrootユーザしか使えない
・「apt-get upgrade –show-upgraded」はupgradeコマンドで更新されるパッケージの一覧を表示
・「apt-get remove –purge」でremoveオプションでも設定ファイルを含めたアンインストールが可能
・「apt-get upgradeコマンド」はインストールされているすべてのパッケージのアップデートをするが、アップデートに既存パッケージの削除や新規パッケージのインストールが必要なものがある場合は、パッケージのインストールを行わない。
・一方、「apt-get dist-upgradeコマンド」は可能な範囲で既存パッケージの削除や新規パッケージのインストールを行う。
apt-cacheコマンド(パッケージの問合せ)
パッケージに関して問い合せるコマンド
オプション
範囲外
コマンド詳細
http://itpro.nikkeibp.co.jp/atcl/column/14/230520/082700007/
aptitudeコマンド(パッケージのインストール/アップデート/検索)
パッケージを取得してインストール/アップデート/検索するコマンド
正規表現を使った検索をすることができる
パッケージ管理対象のサイトを登録する(/etc/apt/sources.listファイル)
apt-getコマンドでパッケージ管理をする対象のサイトを/etc/apt/sources.listファイルに登録する
(102.5)RPMおよびYUMパッケージ管理の使用
RPM形式のパッケージファイル名
RPMはRed HatやFedora、CentOS,openSUSEなどで実装されている
rpmコマンド(パッケージのインストール/アンインストール)
RPMパッケージをインストール/アンインストールするコマンド
その他のオプション
「-V(–verify)」オプション:パッケージが正しくインストールされているかをパッケージデータベースを比較して検証する。
コマンド詳細
http://itpro.nikkeibp.co.jp/article/COLUMN/20060227/230875/
補足
・rpmパッケージに関する技術ドキュメントは/etc/share/docディレクトリに格納
※ちなみに、オンラインマニュアルは/etc/share/manディレクトリ
yumコマンド(パッケージのインストール/アップデート)
パッケージを取得してインストール/アップデートをするコマンド
オプション
範囲外
コマンド詳細
http://itpro.nikkeibp.co.jp/article/COLUMN/20060228/230999/
補足
・「yumコマンド」を使ってパッケージをアップデートする方法は以下
1.「yum check-updateコマンド」でアップデートが必要なパッケージの確認
2.「yum updateコマンド」でインストール済みのパッケージをアップデート
・yumコマンドはパッケージアップデートを「update」で指定する。他のapt-getコマンドは「upgrade」、rpmコマンドは「-i」,[-U],「-F」のため注意
・「check-updateオプション」:システムの全パッケージ対象となるパッケージの情報表示
yumdownloaderコマンド(パッケージのダウンロード)
パッケージをダウンロードするコマンド
(インストールはしない)
yumに関する2つのファイル
/etc/yum.confファイル
yumの設定ファイル(ログファイルの指定など)
/etc/yum.repos.dディレクトリ
リポジトリの設定ファイル(リポジトリのURLなど)
このディレクトリの配下に?.depoというファイルができる
関連するページ
LPIC-1 試験対策のまとめページ
(次の章) 【LPIC1対策(3-1)】主題103:GNUとUnixのコマンド(103.1-103.3)
(前の章) 【LPIC1対策(1)】主題101:システムアーキテクチャ
以上!!!