Gentoo LinuxでDebian系ツールを使用
Portageツリーには、dpkgやdebootstrapといったDebian系ツールのパッケージがあり、.deb形式のパッケージの展開をしたり、debootstrapでDebianかUbuntuの環境を作ってchrootして作業を行ったりでき、パーティションに対するマウントポイントを指定してdebootstrapを行うことでのDebian,Ubuntuのハードディスクなどへのインストールもできる。
aptのパッケージはPortageツリーに存在しないが、Gentoo上で使うようなこともないはず。
debootstrapの例
下は、x86_64版etch環境を作成して、chrootをする例。--archは、x86では「i386」にする。
$ sudo mkdir /opt/etch $ sudo debootstrap --arch amd64 etch /opt/etch/ http://cdn.debian.or.jp/debian/ $ sudo chroot /opt/etch/ /bin/bash
この後、
etch# apt-get install locales etch# dpkg-reconfigure locales
ロケールの設定などを行い、必要に応じて/etc/以下の設定ファイルを編集。
将来インストール後の状態に戻す(また同じ環境を作り直す)可能性がある場合、この時点の環境を.tar.7zの形にして保存しておくと便利。
etch# apt-get clean etch# exit $ cd /opt/etch/ $ sudo tar cf - . | 7z a -si [保存ファイルの場所].tar.7z
debootstrap バージョン1.0.3の時点では、Ubuntu gutsy(7.10)も対応していて、
$ sudo mkdir /opt/gutsy $ sudo debootstrap --arch amd64 gutsy /opt/gutsy/ http://ubuntu.mithril-linux.org/archives/
のようにしてインストールできる。
Debianの場合も同様だが、ミラーサーバはデフォルトにせず、きちんと指定する。
dpkgの展開例
-Xオプションと展開先ディレクトリを指定して展開する。
$ dpkg -X [.debファイルの場所] [展開先]
インストールをしようとしても
$ sudo dpkg -i [.debファイルの場所] dpkg: `update-rc.d'が PATH 上に見付かりません。 dpkg: 1 個のプログラムが PATH 上に見付かりませんでした。 (注): root の PATH は普通 /usr/local/sbin と /usr/sbin と /sbin を含むはずです。
結局は止まるのだが、「このディストリには対応していない」的なメッセージでも出てくれるとありがたい気もする。
使用したバージョン:
- dpkg 1.13.11
- debootstrap 1.0.3