Date: Sat, 03 Sep 2016 00:25:35 +0200 From: Alexander Leidinger <Alexander@leidinger.net> To: current@freebsd.org Subject: Installworld fails when /usr/bin and /usr/sbin are different FS / how to use symlinks in installworld? Message-ID: <20160903002535.Horde.n5qG88hbIXXvxY8xCMGjSbZ@webmail.leidinger.net>
next in thread | raw e-mail | index | archive | help
[-- Attachment #1 --] Hi, background info: - iocage (jail management) uses official release tarballs - I want to install a jail from a specific src I compiled withour creating release tarballs (-> faster time to market), so I want to convince iocage to use what I provide via installworld - jails of type "basejail" (jails read-only-share the base system) in iocage are handled via seperate zfs datasets for each directory - as such /usr/bin and /usr/sbin are different datasets I got this error in installworld: ---snip--- ===> usr.sbin/chkgrp (install) install -s -o root -g wheel -m 555 chkgrp /iocage/base/12.0-r305149M/root/usr/sbin/chkgrp install -o root -g wheel -m 444 chkgrp.debug /iocage/base/12.0-r305149M/root/usr/lib/debug/usr/sbin/chkgrp.debug install -o root -g wheel -m 444 chkgrp.8.gz /iocage/base/12.0-r305149M/root/usr/share/man/man8/ ===> usr.sbin/chown (install) install -s -o root -g wheel -m 555 chown /iocage/base/12.0-r305149M/root/usr/sbin/chown install -o root -g wheel -m 444 chown.debug /iocage/base/12.0-r305149M/root/usr/lib/debug/usr/sbin/chown.debug install -o root -g wheel -m 444 chgrp.1.gz /iocage/base/12.0-r305149M/root/usr/share/man/man1/ install -o root -g wheel -m 444 chown.8.gz /iocage/base/12.0-r305149M/root/usr/share/man/man8/ ===> usr.sbin/chown/tests (install) install -o root -g wheel -m 555 chown-f_test /iocage/base/12.0-r305149M/root/usr/tests/usr.sbin/chown/chown-f_test install -o root -g wheel -m 444 Kyuafile /iocage/base/12.0-r305149M/root/usr/tests/usr.sbin/chown/Kyuafile /usr/bin/chgrp -> /usr/sbin/chown install: link /iocage/base/12.0-r305149M/root/usr/sbin/chown -> /iocage/base/12.0-r305149M/root/usr/bin/chgrp: Cross-device link *** Error code 71 Stop. make[5]: stopped in /usr/src/usr.sbin/chown *** Error code 1 Stop. ---snip--- The error message is obvious, it tries to create a hardlink which is off course not possible when src and dest of the link are on different FS. My goal of an easy procedure (installworld into target datasets) doesn't work like this off course. Do we have an easy way of telling installworld to create symlinks instead of hardlinks, or alternatively a way to tell to copy instead of doing a hardlink if the install hits the cross-device case? Bye, Alexander. -- http://www.Leidinger.net Alexander@Leidinger.net: PGP 0x8F31830F9F2772BF http://www.FreeBSD.org netchild@FreeBSD.org : PGP 0x8F31830F9F2772BF [-- Attachment #2 --] -----BEGIN PGP SIGNATURE----- Version: GnuPG v1 iQIcBAABAgAGBQJXyfxfAAoJEKrxQhqFIICEQ1YQAJfbtNNe8TvF+M+9XVRqYsZ9 sNFNXT7I7f7vSPvLrTvNU6V3sKwfAoxmFfHLU18zNBhEPEbeMwkbZnCLlpt2Xpba bu++ubNZ7U6MCanQYC/X6rR0SzmBefJqXlfW3+RAgO5iBdRnYWYeQ+qB5zPdeaIQ v9zSSL3n6vR+vOy+tdC39qmK2Q47ZDW5pQ58/p8LegrGk0QTMsyV6X//NXRxZs+Q sCe7YsgH8JPQmjW+yBDh6egBOlbNMw6SsP/Mi9xOxUe1CIsr7LxaHrw8JlgT/caR crOgIBppdHx/jw+z3rAIPkhKnGTjoNkpmQ4aYFl5sXLUidBZha9KZtBP1a9d/qf3 mebbUSGTvJNLudoGRd1LC+CrIpu/NgvpTqRHzotJuy0nJdf7LNXJoFbufZ+7Wkl+ ArFwAEYGdVJxggwMr5RI0A8okcr1XEzQd/71WJHj2fkLm0fGMcTMm680c7JrZDzR uRN+oVJA5TufNdLYwl1l+NqAFw37u1n+UYIDQmBAmrs9lehoaDsK+P5qPAR3Rc2H nGYfCEwXWz1uBkZ9JDE446A0Msaw50PiaKJ63BLUOt2MZfffSLmJ4A5SAj4NIv0Q abozIv0iMv9pCOF/fgG3I1zkdwWxkQ+BOMcFzSofecuHcAyawBgtFoayjCdGcCjO ifn/bOQJ1XN7K2Rg6aSU =Ho+9 -----END PGP SIGNATURE-----
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20160903002535.Horde.n5qG88hbIXXvxY8xCMGjSbZ>
