私のMakefileのこの単純なインストールターゲットを考えると:
install: zrm $(CONF)
install -D -m 0755 -o mysql -g mysql conf/lvm0.conf $(DESTDIR)/$(CONFDIR)/lvm0/mysql-zrm.conf
install -D -m 0755 -o mysql -g mysql conf/inc1.conf $(DESTDIR)/$(CONFDIR)/inc1/mysql-zrm.conf
install -D -m 0755 -o mysql -g mysql conf/dump0.conf $(DESTDIR)/$(CONFDIR)/dump0/mysql-zrm.conf
install -d -m 0755 -o mysql -g mysql $(DESTDIR)/$(PLUGIN)
install -m 0755 -o mysql -g mysql post-backup-st-zrm.pl $(DESTDIR)/$(PLUGIN)
install -d -m 0755 -o root -g root $(DESTDIR)/$(BINDIR)
install -m 4755 -o root -g root zrm $(DESTDIR)/$(BINDIR)
ルートmake install
として(または使用して)簡単に実行でき、美しくインストールされます。foo(非特権)ユーザーとして、呼び出すとエラーが返されます(-oオプションにはスーパーユーザーが必要です)。sudo
make install
これを変更して、両方を実行できるようにする必要がありsudo make install
ます。make install DESTDIR=/tmp/foo
または、これを.debまたは.rpmにパッケージ化して、Makefileからインストールターゲットを呼び出すだけでもかまいません。
私にとって最良の解決策は何でしょうか?cpへのインストール呼び出しを置き換えますか?-oを削除し、chown / chmodを配置しますか?
ありがとうございました。