上川
___________________________________________________________________________________________________________________________
全 体 を 見 渡 す た め に , debhelper 4.2.31 に含まれているコマンドの一覧を表にしてみます.
こ こ で イ ン ス ト ー ル と い って い る の は , フ ァイ ル を パ ッケ ー ジ ビ ル ド 用 の デ ィレ ク ト リ にコピーする, という意味です.
debian/packagename というディレクトリ以下にコピーすることにより, builddeb の際に deb ファイルに コ ピ ー さ れ , 後 に イ ン ス ト ー ル で き る よ う に な り ま す .
DEBIAN ディレクトリというのは, debian/packagename/DEBIAN のことで, 後に dpkg ファイルの control.tar.gz になる部分です.
名称 |
入力ファイル |
効能 |
builddeb |
|
.deb ファイルを作成 |
clean |
|
不要なファイルを消す debian/rules clean 用 |
compress |
package.compress スクリプト |
ドキュメントの圧縮 |
desktop |
|
.desktop ファイルの登録 |
fixperms |
|
ファイル権限の修正 |
gconf |
|
gconf schema の登録 |
gencontrol |
|
dpkg-gencontrol のラッパ. control ファイルを DEBIANデ ィレ ク ト リ に イ ン ス ト ー ル |
install |
package.install |
ファイルをインストールする |
installcatalogs |
package.sgmlcatalogs |
SGML カタログを登録 |
installchangelogs |
|
ChangeLog をインストールす る |
installcron |
package.cron.monthly, package.cron.weekly, package.cron.daily package.cron.hourly package.cron.d |
cron スクリプトをインスト ー ル |
installdeb |
|
DEBIAN ディレクトリにファイ ル を イ ン ス ト ー ル |
installdebconf |
package.config package.templates |
debconf 用のファイルをインス ト ー ル |
installdirs |
package.dirs |
ディレクトリを作成 |
installdocs |
package.docs |
ドキュメントをインストール |
installemacsen |
package.emacsen-install package.emacsen-remove package.emacsen-startup |
emacs 用スクリプトをインス ト ー ル |
installexamples |
package.examples |
example ファイルをインスト ー ル す る |
installinfo |
package.info |
info をインストールする |
installinit |
package.init package.default |
init スクリプトをインストール す る . default ファイルをイ ン ス ト ー ル す る . |
installlogcheck |
debian/package.logcheck.cracking debian/package.logcheck.violations debian/package.logcheck.violations.ignore debian/package.logcheck.ignore.workstation debian/package.logcheck.ignore.server debian/package.logcheck.ignore.paranoid |
logcheck 用のスクリプトを登 録 |
installlogrotate |
package.logrotate |
logrotate 用のスクリプトを登 録 |
installman |
package.manpages |
man をインストール |
installmanpages |
|
installman を使いましょう |
installmenu |
package.menu |
メニューを追加 |
installmime |
debian/package.mime debian/package.sharedmimeinfo |
mime 情報を追加 |
installmodules |
debian/package.modules debian/package.modprobe |
modutil で module を追加 |
installpam |
debian/package.pam |
PAM 設定ファイルのインスト ー ル |
installppp |
debian/package.ppp.ip-up debian/package.ppp.ip-down |
ppp 設定ファイルのインスト ー ル |
installwm |
|
Window manager を update-alternatives に登録 |
installxfonts |
|
X フォントの登録 |
link |
package.links |
シンボリックリンクの作成 |
listpackages |
|
処理するパッケージの一覧を出 力 す る だ け |
makeshlibs |
|
shlibs ファイルを生成する |
md5sums |
|
DEBIAN/md5sums ファイル を 生 成 す る |
movefiles |
|
install を使ってください. |
perl |
|
perl スクリプトの依存関係を 自 動 生 成 す る |
python |
|
python モジュールの依存関係 の 自 動 生 成 と , プ リ コ ン パ イルのための pre/postinstス ク リ プ ト の 自 動 生 成 |
scrollkeeper |
|
OMF ファイルの登録 |
shlibdeps |
|
共有ライブラリ依存関係情報 の 自 動 取 得 |
|
||
strip |
|
デバッグ情報の strip |
suidregister |
|
もう使わないでください |
testdir |
|
正しいディレクトリにいること を 確 認 し て く れ る |
testroot |
|
root 権限で実行されているこ と を 確 認 |
testversion |
|
debhelper のバージョンを確認 す る . 今 後 は Build-Depends で指定して く だ さ い . |
undocumented |
|
もう使わないでください |
usrlocal |
|
/usr/local 以下のディレクトリ に 関 し て ポ リ シ に 基 づ い た作成/削除を実施. |
|
||
|
||
|
debian/rules スクリプトの中で, Policy で定義されている「実行には root 権限が必要」 と なっている部分があります. 本当に root 権限で実行されているのか確認してあげる部分 です.
id -u コマンドの出力が 0 であるか, とかwhoami コマンドの出力が root であるか, とかで確認しま す . fakeroot で実行されることが多いため, fakeroot でだまし切れる内容にする必要があり ます.
今後 selinux などの広がりにより, root である, ということのチェックだけでは不十分になったばあい には debhelper 側で機能が拡張されることでしょう.
現在のディレクトリが, debian パッケージのソースディレクトリであるか, ということを確認します. こ こでは, カレントディレクトリからみて, ./debian/rules というファイルが存在するか, などということ で確認できます.
作業用に利用したファイルを消します. インストールイメージを作成するために一時的に作成する debian/パッケージ名 ディレクトリの削除はここで実行します.
東 京 エ リ ア Debian 勉強会 2005 夏_________________________________________________________