M's Diary -- 2002年8月下旬 --

Last-modified: Wed, 09 Nov 2005 04:08:34 JST
powered by tds-1.7.4 [static,cache:off]
前月 2002/8 翌月
1 2 3
4 5 6 7 8 9 10
11 12 13 14 15 16 17
18 19 20 21 22 23 24
25 26 27 28 29 30 31

2002年 8月 20日 (火)

最近のこと

_ 補完

8/10 の日記 (NEWS-9)を補完。

_ 昨日

近所の本屋にて


2002年 8月 26日 (月)

FreeBSD

_ port install

こちらの話。私のところでは

あと、依存ports の make install で root権限が必要となり Stop する件は未解決。

は「依存がちゃんとうまくいくように順番に make」しています。そのために、 自分のマシンにインストールする ports は

devel/libtool
devel/gmake
print/freetype2
devel/imake-4
x11/XFree86-4-libraries
x11/XFree86-4-clients
x11-servers/XFree86-4-Server
x11-fonts/XFree86-4-fontEncodings

のように依存関係の順番に列挙したリストを作ってあります。

このようにしている理由は、「依存関係くらい自分で把握するのは当然」だと 思っているからですね。 FreeBSD の committer でも依存関係の把握をきちんと していない人がたまにいて、依存関係が循環 *1した状態にして ports tree を壊すことがあります。

_ ports tree

私の場合、 /usr/ports では

% cd /usr
% cvs -R -d /home/ncvs checkout ports/Mk ports/japanese/Makefile.inc
% foreach i (`cat /hoge/list`)
foreach? cvs -R -d /home/ncvs checkout ports/$i
foreach? end

のように使うものだけ *2展開してあります。 master/slave port などで「インストールしないけれど 展開しておく必要があるもの」 *3があるのにも注意が必要です。


*1: A を入れるのに B が必要だけど、 B を入れるのには A が必要、という状態。
*2:ports/Mk と ports/japanese/Makefile.inc は必須。 korean や chinese ものを 使うときは ports/korean/Makefile.inc なども必要。
*3:例えば japanese/xchat をインストールするには master port である irc/xchat を展開しておく必要がある。


2002年 8月 28日 (水)

Web 日記から

_ NIS

こちらの話題。

/etc/master.passwd や /etc/group で同じ user や group が複数存在する場合、 最初にマッチしたエントリが使われるのが基本です。 NIS の + で始まるエントリより wheel の行が先にあれば、 NIS のエントリは使われません。 login(1) が passwd を調べたり su(1) が /etc/group から gid 0 なユーザを調べる時には この規則が使われます。

ログインする際にどのグループの権限が設定されるかですが、 login(1) は setusercontext(3) 経由で initgroups(3) を呼びます。 su(1) で別のユーザになる時や ssh でログインする時は initgroups(3) が 直接呼ばれます。 initgroups(3) は getgrouplist(3) を呼んでどのグループの 権限を設定するのか調べますが、 getgrouplist(3) では「同一 group 名が 複数存在する時は最初のエントリが使われる」という処理は行われません。

このように initgroups(3) の処理が他と異なるのが原因です。 /etc/group が

wheel:0:root
wheel:0:foo

となっていた場合、ユーザ foo は su(1) では蹴られますが wheel 権限を持つ という (片山さんが経験したのと同じ) 不思議な状態になります。


2002年 8月 30日 (金)

NetBSD

_ XCAST

某氏からリクエストがあったので NetBSD i386 1.5.4_ALPHA-20020830-xcast-0.1.1 snapshotを作成してみる。

というもの。


以上、4日分です。