Linuxのインストールとパッケージ管理


パーティションの分割

  • Linuxに最低限必要なパーティション
    • ルートパーティション。
    • スワップ領域。

  • 一般的なパーティション構成
    • /boot
      • カーネルの起動イメージをディスク先頭から1024シリンダ以内に収まるようにする。
      • このため、ディスクの先頭パーティションとして50~100MB程度を/bootパーティションに割り当てる。
    • /home
      • 一般ユーザーの利用するファイルが格納される。
    • /var
      • ログファイルやメールスプールなどのファイルが格納される。
      • ルートシステムファイルにログファイルが大量にあふれないため、特に別パーティションにすべき。
    • /usr
      • ユーザー用のプログラムやライブラリが置かれる。
    • スワップ領域
      • 物理メモリの1~2倍程度のサイズが目安となる。
    • /
      • 上記以外はルートファイルシステムとなる。
      • サイズはできるだけ小さくした方が良い(障害時の復旧が容易になる)。
      • ルートファイルシステムに必ず必要なディレクトリは、/etc、/bin、/sbin、/dev、/lib。


ブートローダーのインストール

  • LILO
    • Linuxの標準的なブートローダー。
    • 複数のプログラムとさまざまなファイルから構成されている。

  • LILOを構成するもの
    • ブートローダー
      • コンピュータ起動時にBIOSによって実行される。
      • Linuxカーネルや他のオペレーティングシステムをメモリ上に読み込む。
      • 2段構成になっている。
    • マップインストーラ
      • ブートローダーを更新し、マップファイルを作成するプログラム。
      • 通常は、/sbin/lilo(liloコマンド)になる。
    • マップファイル
      • ディスク上の物理的なカーネルの位置を記録したファイル。
    • LILO設定ファイル
      • 通常、/etc/lilo.confに記述される。

  • 2段階構成のLILO
    • 第1段階のブートローダー
      • ブートセクターに格納されているのは第1段階(第1ステージ)のブートローダーのみ。
      • 第2段階(第2ステージ)のブートローダーをメモリに読み込む。
      • インストールできる場所は、MBR(マスターブートレコード)またはLinuxルートパーティション。
    • 第2段階のブートローダー
      • 1.ブートプロンプトを表示する。
      • 2. 読み込むカーネルを選択する。
      • 3. カーネルをメモリ上に読み込む。

  • /etc/lilo.confの設定パラメータ
パラメータ 説明
boot ブートセクターを含むデバイス名
timeout プロンプト時の入力待ちタイムアウト時間(1/10秒単位)
prompt ブート時にプロンプトを表示して入力を要求する
default デフォルトで起動するカーネルのラベル
append 起動時にカーネルに渡すパラメータ
read-only ルートファイルシステムを読み取り専用でマウントする
map マップファイルの指定(デフォルトは/boot/map)
image Linuxのカーネルイメージ
label ブートイメージのラベル
initrd 初期RAMDISKの読み込み指定
root ルートファイルシステムのデバイス名

  • liloコマンド
    • /sbin/lilo。
    • /etc/lilo.confの内容を反映させる。
    • 書式 : 「lilo [オプション]」
    • 主なオプション
オプション 説明
-C <設定ファイル> 設定ファイルを設定する(デフォルトは/etc/lilo.conf)
-R <パラメータ> 次回再起動時に適用されるコマンドラインパラメータを指定する
-V LILOのバージョン番号を表示する
-q 現在のマップファイルの内容を表示する
-t テストのみ実行する
-u LILOを削除する
-v 詳細情報を表示する

  • 多機能なブートローダーGRUB
    • GRUBの特徴
      • 多数のファイルシステムを認識可能。
      • シェル機能を搭載し、コマンドによる高度な管理が可能。
      • BIOSがLBAモードをサポートしていれば、1024シリンダ以降のパーティションでもブート可能。
    • GRUBのインストールはgrub-installコマンドを実行する。
    • 設定ファイルは/boot/grub/grub.conf
    • grub.confの設定パラメータ
パラメータ 説明
timeout メニューを表示している時間(秒)
default デフォルトで起動するエントリの番号
title メニューに表示されるエントリ名
root ルートデバイスの指定
kernel 起動するファイルの指定
makeactive ルートパーティションをアクティブ化
chainloader 指定されたセクターの読み込みと実行
hiddenmenu 起動時の選択メニューを実行しない

ソースからのソフトウェアインストール

  • アーカイブ
    • ソフトウェアは、一般ときに複数のファイルをtarコマンドによりアーカイブとしてまとめた形で配布される。
    • アーカイブはgzipもしくはbzip2を使って圧縮されている。
    • gzipの場合は「tar.gz」「tgz」、bzip2の場合は「tar.bz2」という拡張子がつく。
    • このような圧縮ファイルをtarボールという。

  • tarボールの解凍
    • gzipコマンドgunzipコマンドで解凍する。(参考参考
    • 書式 : 「lilo/gunzip [オプション]」
    • gzip/bzip2コマンドの主なオプション
オプション 説明
-d 圧縮ファイルを展開する
-c 圧縮ファイルを標準出力へ展開する

  • インストールの流れ
    • 1.configureスクリプトを実行してMakefileを生成する。
    • 2.makeコマンドにより、Makefileに基づいてソースをコンパイル、リンクしていく。
    • 3.make installにより、インストールを行う。
      • installは、makeコマンドのターゲットという(その他のターゲットにcleanなどがある)。

  • 共有ライブラリの確認
    • 実行ファイルが必要な共有ライブラリをlddコマンドにより確認できる。
    • /etc/ld.so.conf
      • /lib、/usr/libディレクトリ以外のライブラリも検索する場合は、そのリストを記述する。
      • 実際には/etc/ld.so.cacheが参照される。
      • ldconfigコマンドにより、/etc/ld.so.confから/etc/ld.so.cacheを再構築する。
    • そのほかのディレクトリも検索対象に加えたい場合、環境変数LD_LIBRALY_PATHにリストを記述する。


Debianのパッケージ管理

  • dpkgコマンド
    • dpkgコマンドで扱うパッケージ情報は/var/lib/dpkdディレクトリ以下のファイルに格納される。
    • 書式 : 「dpkg [オプション] アクション」
    • コマンド
オプション
-E すでに同バージョンがインストールされていればインストールしない
-G すでに新バージョンがインストールされていればインストールしない
-R
(--recursive)
ディレクトリ内を再帰的に処理する
アクション
-i <パッケージファイル名>
(--install)
パッケージをインストールする
-r <パッケージ名>
(--remove)
設定ファイルを残してパッケージをアンインストールする
-P <パッケージ名>
(--purge)
設定ファイルも含め完全にパッケージをアンインストールする
-l <検索パターン>
(--list)
インストール済みパッケージを検索して実行する
-S <ファイル名検索パターン>
(--search)
指定したファイルがどのパッケージからインストールされたかを表示する(パターンにはワイルドカードが使える)
-L <パッケージ名>
(--listfiles)
指定パッケージからインストールされたファイルを一覧表示する
-s <パッケージ名>
(--status)
パッケージの情報を表示する
--configure <パッケージ名> 展開されたパッケージを構成する
--unpack <パッケージ名> パッケージを展開する(インストールはしない)

  • dselect
    • dpkgコマンドのフロントエンドツールとして使われるユーティリティ。
    • インストールやアンインストールを行うパッケージをメニューから選択するツール。

  • apt-getコマンド

  • apt-cacheコマンド

  • alienコマンド
    • Debianパッケージ、RPMパッケージ、tgz(tar+gz)パッケージを相互に変換するコマンド。
    • 書式 : 「alien [オプション] パッケージファイル名」
    • alienコマンドの主なオプション
オプション 説明
-d
(--to-deb)
Debianパッケージを作成する
-r
(--to-rpm)
RPMパッケージを作成する
-t
(--to-tgz)
tgzパッケージを作成する
-i
(--install)
パッケージをインストールする

Red Hatのパッケージ管理

  • rpmコマンド
    • 書式 : 「rpm [オプション]」
    • コマンド
インストール/アップグレードモード
-i <パッケージファイル名>
--install <パッケージファイル名>
パッケージをインストールする
-U <パッケージファイル名>
--updage <パッケージファイル名>
パッケージをアップグレードする(なければインストールする)
-F <パッケージファイル名>
--freshen <パッケージファイル名>
パッケージがインストールされていればアップグレードする
併用オプション -v 詳細な情報を表示する
-h
--hash
進行状況を「#」で表示する
--nodeps 依存関係を無視してインストールする
--force 既存のファイルを新しいものに置き換える
(強制的に上書きでインストール)
--test 実際にはインストールせずテストを実施する
アンインストールモード
-e <パッケージ名>
--erase <パッケージ名>
パッケージをアンインストールする
併用オプション --nodeps 依存関係を無視してアンインストールする
照会モード
-q <パッケージ名> 指定したパッケージがインストールされているか照会する
併用オプション -a
--all
インストール済みのすべてのパッケージを表示する
-f <ファイル名> 指定したファイルを含むパッケージ名を表示する
-p <パッケージファイル名> 対象としてパッケージファイルを指定する
-c
--configfiles
設定ファイルのみを表示する
-d
--docfiles
ドキュメントのみを表示する
-i
--info
インストール済みパッケージ情報を表示する
-l
--list
指定したパッケージに含まれるファイルを表示する
-R
--require
指定したパッケージが依存しているパッケージを表示する
--changelog 変更履歴を表示する
最終更新:2009年06月27日 08:51