Time-stamp: "99/06/22 04:01:03 yasuhide"

一般 user 権限で rebuild 出来る SRPM を作るには?

  1. 仮想インストールは一般 user 権限で

仮想インストールは一般 user 権限で

%install
rm -rf $RPM_BUILD_ROOT

install -d -m 0755 $RPM_BUILD_ROOT/usr/bin
install -s -o root -g bin -m 0755 sitecopy $RPM_BUILD_ROOT/usr/bin

install -d -m 0755 $RPM_BUILD_ROOT/usr/man/man1
install -o root -g root -m 0644 sitecopy.1 $RPM_BUILD_ROOT/usr/man/man1

こういう感じで書かれている spec file は少なくないですね。 でも、ダメです。

%install は仮想インストールなのですから、一般 user 権限で 可能でなければなりません。すなわち、ファイルの owner や group を root に変えることは、%install の段階でやってはいけないのです。

ファイルの owner や group を root に変えることは、 バイナリパッケージを展開するときになされるべきなので、

%files -n sitecopy
%defattr(-, root, root)
%{prefix}/bin/sitecopy
%doc COPYING README ChangeLog
%{prefix}/man/man1/*
のように、%files の所に、%defattr(-, root, root) という風に書くのがよいやり方だと思います。 これなら、一般 user 権限で rebuild しても何の問題もありませんから。

メールは
[email protected]まで。
Hosted by www.Geocities.ws

1