こんにちは、鶴谷です。

Yoshihiro OKUMURA <[EMAIL PROTECTED]> さん>

> http://www.freebsd.org/cgi/query-pr.cgi?pr=91387
> 
> の修正がはいりましたね。
> 
> http://www.freebsd.org/cgi/cvsweb.cgi/ports/www/squid/
> 
> これで今の環境でも rcNG な rc.conf による起動の可否制御が
> 再びできるようになりました。
> 
> # そのうちまた .sh なしに変更されるんでしょうか。。

RELENG_6やHEADは見てませんでした。
お恥ずかしい限りです。

rcNGってのは、実行の可否やオプションなどをrc.confの変数で制御することと、
rcorderによる実行順の制御が目標だと思ってました。
.shまで不要にするという方針は知りませんでした。もしかして、これは
/etc/rc.d/*との起動順の統合への対応が済んでいるかどうかの印のために、
名前を変えたということでしょうか?

古い起動スクリプトでは、起動時に実行しないようにと、innd.sh.stopのように
名前を変えたりしていましたが、この手が使えなくなりそうです。
また、cups.sh.sampleのように、最後に".sample"つきでインストールされるものも、
勝手に実行されてしまうということでしょうか...と思ったら、これは起動しないように
してみるみたいですね。

まだ、6.x系に移行する余裕(と勇気)がないので、当分は5.xの予定なのですが、
5.xにはいずれサポートされなくなるのでしょうね。
portsでは、
・古いスクリプト
・rcNG化された(実行可否が制御できる).shで終わる名前のスクリプト
・きちんと依存関係などにも問題のない、.shで終わる名前ではないスクリプト
が混在し、3つ目がなかった従来よりも混乱しそうです。
各portsでも、${OSVERSION}によって挙動を変えるように書き換えないといけないとすれば、
混乱しそうです。MFCされたりしたら、この基準も変えないといけないのでしょう。

実行順については、
従来:
・/etc/rc.d/*のあと、local_startups以下の実行可能な.shファイルが、名前順に実行される。
・rcNG化されたファイルの実行の可否は、rc.confの変数で制御可能
変更後:
・/etc/rc.d/*で、最小限の環境を作る
・その他の/etc/rc.d/*とlocal_startups以下のファイルのうち、行頭に"# PROVIDE:"を
 持つ実行可能なファイルが実行される。実行の可否は、rc.confの変数で制御可能。
・local_startups以下のファイルのうち、行頭に"# PROVIDE:"を持つ、実行可能な
 *.shファイルが実行される。実行の可否は、rc.confの変数で制御可能。
のように見えます。
つまり、
・*.stopなどのファイルでも、他のファイルとの違いはない。
・行頭の"# PROVIDE:"を持たないファイルは実行されない。
・行頭に"# PROVIDE:"を持つ.shファイルは2度実行される。
のが気になります。
まあ、私が気にするまでもなく、これで問題は生じないのだとは思いますが、
portsの更新時にトラブルが生じたり、その原因を探ってsend-prしたりする時に、
「正しい方法」が分かっていないとまずそうですね。
innd.shのようなファイルが未だに残っていることからすると、期限を切って移行するという
方針でもなさそうですね。

このあたりの方針も含め、どこかにまとめられているとは思いますので、
ご存知の方があれば教えてください。
# 日本語訳があれば、なお助かります。

-- 
[EMAIL PROTECTED]
E-mail: [EMAIL PROTECTED]

メールによる返信