[debian-users 00662] Re: NFS上でのdebuildがエラーになる

河本陽一 komoto.yoichi @ kcc.co.jp
2020年 7月 17日 (金) 11:52:18 JST


河本です。

 以下のコマンドで失敗していると出ているので、NFSサーバで no_root_squash
を指定すればよいかとも思いましたが、fakerootとの組み合わせの場合の動作まではわかりませんでした。
chown -R 0:0 debian/tmux/usr/share/doc

 no_root_squash を指定する場合、セキュリティ的に気を付ける必要もありそうです。
https://access.redhat.com/documentation/ja-jp/red_hat_enterprise_linux/6/html/security_guide/sect-security_guide-securing_nfs-do_not_use_the_no_root_squash_option

 作業用のディレクトリを指定できるオプションがあったりしないですかね。

----------------------------------------------------------------------
河本陽一 <komoto.yoichi @ kcc.co.jp>

2020年7月17日(金) 11:16 Yasuhiro KIMURA <yasu @ utahime.org>:
>
> 木村と申します。
> debuildコマンドを使ったパッケージのビルドについて質問させてください。
>
> tmuxのカスタムパッケージを作ろうとしていて、その第一歩としてまずオリジ
> ナルのtmuxパッケージをビルドしてみました。「Debian パッケージングチュー
> トリアル」
> (https://www.debian.org/doc/manuals/packaging-tutorial/packaging-tutorial.ja.pdf)
> の10ページ目のdashの再構築の例を参考にして
>
> 1. sudo apt-get build-dep dash
> 2. sudo apt-get install devscripts fakeroot
> 3. mkdir -p ~/tmp/tmux
> 4. cd ~/tmp/tmux
> 5. apt-get source tmux
> 6. cd tmux*
> 7. debuild -us -uc
>
> という順番でコマンドを実行したのですが、最後のdebuildが以下のようにエ
> ラーとなってしまいました。
>
> ----------------------------------------------------------------------
> dh binary
>    dh_testroot
>    dh_prep
>    dh_installdirs
>    dh_auto_install
>         make -j4 install DESTDIR=/home/yasu/tmp/tmux/tmux-3.1b/debian/tmux AM_UPDATE_INFO_DIR=no
> make[1]: ディレクトリ '/home/yasu/tmp/tmux/tmux-3.1b' に入ります
> make[2]: ディレクトリ '/home/yasu/tmp/tmux/tmux-3.1b' に入ります
> make[2]: 'install-data-am' に対して行うべき事はありません.
>  /usr/bin/mkdir -p '/home/yasu/tmp/tmux/tmux-3.1b/debian/tmux/usr/bin'
>   /usr/bin/install -c tmux '/home/yasu/tmp/tmux/tmux-3.1b/debian/tmux/usr/bin'
> make  install-exec-hook
> make[3]: ディレクトリ '/home/yasu/tmp/tmux/tmux-3.1b' に入ります
> if test xmdoc = xmdoc; then \
>         sed -e "s|@SYSCONFDIR@|/etc|g" ./tmux.1 \
>                 >./tmux.1.mdoc; \
> else \
>         sed -e "s|@SYSCONFDIR@|/etc|g" ./tmux.1| \
>                 mawk -f ./mdoc2man.awk >./tmux.1.man; \
> fi
> /usr/bin/mkdir -p /home/yasu/tmp/tmux/tmux-3.1b/debian/tmux/usr/share/man/man1
> /usr/bin/install -c -m 644 ./tmux.1.mdoc \
>         /home/yasu/tmp/tmux/tmux-3.1b/debian/tmux/usr/share/man/man1/tmux.1
> make[3]: ディレクトリ '/home/yasu/tmp/tmux/tmux-3.1b' から出ます
> make[2]: ディレクトリ '/home/yasu/tmp/tmux/tmux-3.1b' から出ます
> make[1]: ディレクトリ '/home/yasu/tmp/tmux/tmux-3.1b' から出ます
>    dh_installdocs
> chown: 'debian/tmux/usr/share/doc/tmux/README' の所有者を変更中: 無効な引数です
> chown: 'debian/tmux/usr/share/doc/tmux/example_tmux.conf' の所有者を変更中: 無効な引数です
> chown: 'debian/tmux/usr/share/doc/tmux' の所有者を変更中: 無効な引数です
> chown: 'debian/tmux/usr/share/doc' の所有者を変更中: 無効な引数です
> dh_installdocs: error: chown -R 0:0 debian/tmux/usr/share/doc returned exit code 1
> make: *** [debian/rules:6: binary] エラー 25
> dpkg-buildpackage: error: fakeroot debian/rules binary subprocess returned exit status 2
> debuild: fatal error at line 1182:
> dpkg-buildpackage -us -uc -ui failed
> yasu @ rolling-vm-debian1[1094]%
> ----------------------------------------------------------------------
>
> 最初はUnstableで実行したので、何かバグを踏んだのかと思いStableでも試し
> てみたのですが、結果は同じでした。それでいろいろ試してみたところ、場所
> をNFS(正確にはautofs)でマウントしているホームディレクトリではなく、マ
> シンローカルのファイルシステム上のディレクトリに変更することによって、
> debuildが正常に完了するようになりました。ただ、出来ればホームディレク
> トリの下で作業ができた方が嬉しいのですが、設定等でNFSでマウントしてい
> るディレクトリでもdebuildがエラーにならないようにすることは可能でしょ
> うか。
>
> ---
> 木村 康浩
> _______________________________________________
> debian-users mailing list
> debian-users @ debian.or.jp
> https://lists.debian.or.jp/mailman/listinfo/debian-users


debian-users メーリングリストの案内