[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[debian-users:27643] Re: 起動スクリプトの変更



In Tue, 27 Mar 2001 09:40:19 +0900 mizotec cum veritate scripsit :

上川です.

> ちょとしつこいですが。(若干繰り返しになっている気がします)
> #ポリシーに関することなので、:-)

そうですね.大切な事のような気がして来たので,きちんと調べてみました.


>  私は、/etc/rcn.d/へのリンクを設定ファイル(configuration files)
> と思っています。そういう観点で、Debian ポリシーマニュアルと
> Debian Packaging Manualを読んでみました。
>   /etc/rcn.d/は、postinst スクリプト中でスクラッチから構築する方法の
> 設定ファイルと思います。この場合、postinstスクリプトで、ユーザに問合
> せて上書きする必要があります。postinstで無条件に書換えているのであれ
> ば、バグぽい気がします。
> #/etc/rcn.d/のリンクは設定ファイルではないという記述は見つけていません。

まず,ポリシーは現状を追認するという立場にあることを確認して,
さらに,

policy (3.5.2.0)の 10.3.3に
                      update-rc.d <package> defaults >/dev/null

というのをpostinstにつっこめ,と書いてあるところを鑑み,
手元にあるスクリプトを全部調べたところ,
32 (grep update-rc.d *postinst| cut -d: -f1 | uniq -c | wc -l )
個あったうちの内訳は:

postinst の "$1"="configure"の場合だけupdate-rc.dを呼ぶ : 
 acct apmd exim isapnptools libc6 netbase sysklogd
postinst で 無条件にupdate-rc.dを呼ぶ : 
 alsa-base apache at canna cron devfsd fetchmail gdm
 gpm ifupdown kbd login lpr makedev nfs-user-server portmap ppp pppconfig
 procps setserial ssh util-linux xfs-xtt
postinstで無条件にLinkを自前で設定する: sysvinit

で,どれもすでに設定されている状況をチェックすると言うような事はやっていないように
見受けられます.update-rc.d defaultsを呼んでいます. 


dh_installinitはどうやら,無条件でpostinstでupdate-rc.dを呼ぶようになっているようです.
ということで,postinstが実行される時には,リンクはほぼ確実に破壊されるということに
なると思います.
それはつまるところ,アップグレードするたびにリンクをはりなおすはめになるということ
なので,/etc/init.d以下のスクリプトをいじりましょう,ということが結論として
導きだされるようです.


いかがでしょうか.

-- 
dancer@debian.org : Junichi Uekawa   http://www.netfort.gr.jp/~dancer
GPG Fingerprint : 17D6 120E 4455 1832 9423  7447 3059 BF92 CD37 56F4