2009年6月6日土曜日

sudoパッケージを作る

source debからパッケージをつくる例


/var/src/pnuts$ pnut initdeb sudo
Not found src.def.
Reading package lists... Done
Building dependency tree
Reading state information... Done
Need to get 616kB of source archives.
Get:1 http://ftp.jp.debian.org lenny/main sudo 1.6.9p17-2 (dsc) [995B]
Get:2 http://ftp.jp.debian.org lenny/main sudo 1.6.9p17-2 (tar) [594kB]
Get:3 http://ftp.jp.debian.org lenny/main sudo 1.6.9p17-2 (diff) [21.5kB]
Fetched 616kB in 0s (853kB/s)
Download complete and in download only mode
set --- src.def ---
/var/src/pnuts

source debをコンパイルする

/var/src/pnuts$ cd sudo.1_6_9p17
/var/src/pnuts/sudo.1_6_9p17$ pnut makesrc


debはsudoだけなので、そのまま、作ったdebを展開する

/var/src/pnuts/sudo.1_6_9p17$ pnut mksrctree
./
./etc/
./etc/init.d/
./etc/init.d/sudo
./etc/pam.d/
./etc/pam.d/sudo
./usr/
./usr/sbin/
./usr/sbin/visudo
./usr/bin/
./usr/bin/sudoedit
./usr/bin/sudo
./usr/share/
./usr/share/man/
./usr/share/man/man8/
./usr/share/man/man8/visudo.8.gz
./usr/share/man/man8/sudoedit.8.gz
./usr/share/man/man8/sudo.8.gz
./usr/share/man/man5/
./usr/share/man/man5/sudoers.5.gz
./usr/share/lintian/
./usr/share/lintian/overrides/
./usr/share/lintian/overrides/sudo
./usr/share/doc/
./usr/share/doc/sudo/
./usr/share/doc/sudo/copyright
./usr/share/doc/sudo/UPGRADE.gz
./usr/share/doc/sudo/HISTORY
./usr/share/doc/sudo/NEWS.Debian.gz
./usr/share/doc/sudo/changelog.Debian.gz
./usr/share/doc/sudo/PORTING.gz
./usr/share/doc/sudo/README.Debian
./usr/share/doc/sudo/examples/
./usr/share/doc/sudo/examples/sudoers
./usr/share/doc/sudo/TROUBLESHOOTING.gz
./usr/share/doc/sudo/changelog.gz
./usr/share/doc/sudo/README
./usr/share/doc/sudo/OPTIONS
./usr/share/doc/sudo/BUGS
./usr/lib/
./usr/lib/sudo/
./usr/lib/sudo/sudo_noexec.so
Search document from sudo_1.6.9p17-2_i386.src

設定ファイル,sudo.confのテンプレートをコピーする

/var/src/pnuts/sudo.1_6_9p17$ pnut cptmpl

sudo.confができるので
3行編集

pkg_configs="/etc/sudoers"
pkg_depends="libpam0g libpam-modules"
debs_copy_dirs="$deb1::usr/sbin $deb1::usr/bin $deb1::etc/pam.d $deb1::usr/lib"

次の内容で、sudo.installをつくって実行権限を与えておく

#!/bin/sh

# make sure sudoers has the correct permissions and owner/group
[ -f /etc/sudoers ] && chown root:root /etc/sudoers
[ -f /etc/sudoers ] && chmod 440 /etc/sudoers


パッケージのディレクトリツリーを作って、lrpに固める

(lenny-i386)kitakura@c2duo:/var/src/pnuts/sudo.1_6_9p17$ pnut mklrp

package: sudo
sudo: size - 284 kB
write mklrp=date to var/lib/lrpkg/sudo.info
etc/
etc/pam.d/
etc/pam.d/sudo
usr/
usr/sbin/
usr/sbin/visudo
usr/bin/
usr/bin/sudoedit
usr/bin/sudo
usr/share/
usr/share/doc/
usr/share/doc/sudo/
usr/share/doc/sudo/copyright
usr/lib/
usr/lib/sudo/
usr/lib/sudo/sudo_noexec.so
var/
var/lib/
var/lib/lrpkg/
var/lib/lrpkg/sudo.conf
var/lib/lrpkg/sudo.version
var/lib/lrpkg/sudo.info
var/lib/lrpkg/sudo.dep
var/lib/lrpkg/sudo.install
Verify etc/
Verify etc/pam.d/
Verify etc/pam.d/sudo
Verify usr/
Verify usr/sbin/
Verify usr/sbin/visudo
Verify usr/bin/
Verify usr/bin/sudoedit
Verify usr/bin/sudo
Verify usr/share/
Verify usr/share/doc/
Verify usr/share/doc/sudo/
Verify usr/share/doc/sudo/copyright
Verify usr/lib/
Verify usr/lib/sudo/
Verify usr/lib/sudo/sudo_noexec.so
Verify var/
Verify var/lib/
Verify var/lib/lrpkg/
Verify var/lib/lrpkg/sudo.conf
Verify var/lib/lrpkg/sudo.version
Verify var/lib/lrpkg/sudo.info
Verify var/lib/lrpkg/sudo.dep
Verify var/lib/lrpkg/sudo.install

Check lrpkg file: sudo.1_6_9p17-1_001-i386.lrp
package directory: sudo
Information:There is not var/lib/lrpkg/sudo.list.
CONFIG LIST:
/etc/sudoers
VERSION:
1_6_9p17-1_001-i386
Warning:There is not var/lib/lrpkg/sudo.help.
Information:There is not var/lib/lrpkg/sudo.mod.
Information:There is not var/lib/lrpkg/sudo.data.
Information:var/lib/lrpkg/sudo.info exists.
Information:var/lib/lrpkg/sudo.dep exists.
libpam0g
libpam-modules
Information:There is not var/lib/lrpkg/sudo.kdep.
Information:There is not var/lib/lrpkg/sudo.cro.
Information:There is not var/lib/lrpkg/sudo.exclude.
.//sudo.1_6_9p17-1_001-i386.lrp was made.
/var/src/work/sudo.1_6_9p17-1/pkg/sudo.1_6_9p17-1_001-i386.lrp
make /var/src/work/sudo.1_6_9p17-1/pkg/sudo.lenny for
sudo:00:sudo.1_6_9p17-1_001-i386.lrp:8efbf7871c32cad03c12b3fc55c63f83:libpam0g libpam-modules
sudo:10:sudo.1_6_9p17-1

0 件のコメント: