パッケージを 作って行きます。
ファイルを展開します。
# tar xvzpf bind-9.4.1-P1.tar.gz 2>&1 | tee untar_bind # ls -l | sed 1d drwxrwxr-x 9 10132 wheel 4096 Jul 9 13:25 bind-9.4.1-P1/ -rw------- 1 root root 6341409 Sep 11 10:40 bind-9.4.1-P1.tar.gz -rw-r--r-- 1 root root 121726 Sep 11 10:41 untar_bind
展開で作成されたディレクトリに移動して ”configure”を行います。良く 理解していないので ”configure”の オプションは無しで進めて行きます。
# cd bind-9.4.1-P1/ # ./configure 2>&1 | tee bind_941_P ... config.status: creating config.h WARNING WARNING WARNING WARNING WARNING WARNING WARNING WARNING WARNING WARNING WARNING WARNING WARNING WARNING WARNING WARNING WARNING WARNING WARNING WARNING WARNING WARNING WARNING Your OpenSSL crypto library may be vulnerable to WARNING WARNING one or more of the the following known security WARNING WARNING flaws: WARNING WARNING WARNING WARNING CAN-2002-0659, CAN-2006-4339, CVE-2006-2937 and WARNING WARNING CVE-2006-2940. WARNING WARNING WARNING WARNING It is recommended that you upgrade to OpenSSL WARNING WARNING version 0.9.8d/0.9.7l (or greater). WARNING WARNING WARNING WARNING You can disable this warning by specifying: WARNING WARNING WARNING WARNING --disable-openssl-version-check WARNING WARNING WARNING WARNING WARNING WARNING WARNING WARNING WARNING WARNING WARNING WARNING WARNING WARNING WARNING WARNING WARNING WARNING WARNING WARNING WARNING WARNING WARNING
やり直しましょう。 ”openssl”導入時には新しく 又 やり直しましょう
# cd ../ # rm -r bind-9.4.1-P1/ # tar xvzpf bind-9.4.1-P1.tar.gz 2>&1 | tee untar_bind # cd bind-9.4.1-P1/ # ./configure --disable-openssl-version-check | tee bind_941_P-config # mv bind_941_P-config ../
make を 行います。
# make 2>&1 | tee bind_openssl_no_make ... making all in /usr/local/src/002_bind/bind-9.4.1-P1/doc/xsl make[2]: Entering directory `/usr/local/src/002_bind/bind-9.4.1-P1/doc/xsl' make[2]: Leaving directory `/usr/local/src/002_bind/bind-9.4.1-P1/doc/xsl' make[1]: Leaving directory `/usr/local/src/002_bind/bind-9.4.1-P1/doc' # mv bind_openssl_no_make ../
本題の パッケージを作成しましょう
頭となる作業ディレクトリを作成します。
# mkdir -p work/usr/local
”make install”を 作成したディレクトリを元に 実行します
# make install prefix=`pwd`/work/usr/local 2>&1 | tee bind-without-openssl-install-log ... make[1]: Leaving directory `/usr/local/src/002_bind/bind-9.4.1-P1/doc' /bin/sh ./mkinstalldirs /usr/local/src/002_bind/bind-9.4.1-P1/work/usr/local/bin \ /var/run /etc /bin/install -c isc-config.sh /usr/local/src/002_bind/bind-9.4.1-P1/work/usr/local/bin
この場合”work”ディレクトリ以降に 美味く作成しているか確認しておきま しょう 一部分ですが
# ls work/usr/local/bin/ dig* host* isc-config.sh* nslookup* nsupdate* # ls work/usr/local/sbin/ dnssec-keygen* lwresd* named-checkconf* named-compilezone@ rndc-confgen* dnssec-signzone* named* named-checkzone* rndc*
つまり ”work/usr/local/”以降に 実際にファイルが インストールされて いる事がわかります。
そこで ”work”ディレクトリに移動します
# cd work/
本来の目的のパッケージを作成します。
# makepkg bind-9.4.1-P1-without-oenssl-verch.tgz 2>&1 | tee makepkg_log_bind
パッケージにシンボリックリンクが含まれています。
このパッケージに含まれているシンボリックリンクを "install/doinst.sh" と
いうインストールスクリプト用に変換しますか? 変換する場合、いったんシンボ
リックリンクは削除されますが、パッケージの大元のディレクトリで
sh install/doinst.sh
とすれば、簡単に復旧できます。
パッケージ化する場合、シンボリックリンクはスクリプトに変換することをお勧
めします。
シンボリックリンクを変換しますか([y]es, [n]o)?
シンボリックリンクを変換しますか([y]es, [n]o)? y
シンボリックリンクを調べています...
usr/local/man/man8/named-compilezone.8 -> named-checkzone.8
usr/local/sbin/named-compilezone -> named-checkzone
インストール用スクリプトを作成しています...
( cd usr/local/man/man8 ; rm -rf named-compilezone.8 )
( cd usr/local/man/man8 ; ln -sf named-checkzone.8 named-compilezone.8 )
( cd usr/local/sbin ; rm -rf named-compilezone )
( cd usr/local/sbin ; ln -sf named-checkzone named-compilezone )
シンボリックリンクを削除しています:
./usr/local/man/man8/named-compilezone.8
./usr/local/sbin/named-compilezone
bind-9.4.1-P1-without-oenssl-verch.tgz を作成中...
# ls -l | sed 1d
-rw-r--r-- 1 root root 17952120 Sep 11 12:27 bind-9.4.1-P1-without-oenssl-verch.tgz
drwxr-xr-x 2 root root 4096 Sep 11 12:26 install/
-rw-r--r-- 1 root root 1052 Sep 11 12:27 makepkg_log_bind
drwxr-xr-x 3 root root 4096 Sep 11 12:07 usr/
# cat install/doinst.sh
( cd usr/local/man/man8 ; rm -rf named-compilezone.8 )
( cd usr/local/man/man8 ; ln -sf named-checkzone.8 named-compilezone.8 )
( cd usr/local/sbin ; rm -rf named-compilezone )
( cd usr/local/sbin ; ln -sf named-checkzone named-compilezone )
後は ”pkgtool”を 利用して ”bind-9.4.1-P1-without-oenssl-verch.tgz” を インストールすれば gnupg1.4.7 の インストールは 完了となるでしょう。
今作成したものを 別の所に 移動させておきます
# cp bind-9.4.1-P1-without-oenssl-verch.tgz /home/mm/tgz_dir/ # mv makepkg_log_bind ../../ # cd ../../../ # ls 002_bind/ # mount /dev/hda10 /mnt/ # mv 002_bind/ bind-9-4-1-P1 # mv bind-9-4-1-P1/ /mnt/ # df Filesystem 1k-blocks Used Available Use% Mounted on /dev/hda2 9617104 1879772 7240924 21% / /dev/hda10 8420132 337060 7655344 5% /mnt
にゃんたろう 拝!
2007年 9月11日 (火) 22:21:51 JST 作成