X-Git-Url: https://git.grml.org/?p=grml-live.git;a=blobdiff_plain;f=etc%2Fgrml%2Ffai%2Fconfig%2Fhooks%2Finstsoft.GRMLBASE;h=c7873344e7fe3244e90cf35c5d298dbda0e394e7;hp=c8150bed9ecc28b90783d6999afb15cc6c7f42ce;hb=6c00c3c1fd1e3fee0d10c1f1b4f6257d21d663d9;hpb=ea8df13abc59d9a9bb36ad03e11c3467762443e3 diff --git a/etc/grml/fai/config/hooks/instsoft.GRMLBASE b/etc/grml/fai/config/hooks/instsoft.GRMLBASE index c8150be..c787334 100755 --- a/etc/grml/fai/config/hooks/instsoft.GRMLBASE +++ b/etc/grml/fai/config/hooks/instsoft.GRMLBASE @@ -21,11 +21,28 @@ if [ "$FAI_ACTION" = "softupdate" ] ; then echo "Action $FAI_ACTION of FAI (hooks/instsoft.GRMLBASE) via grml-live running" if [ -r /etc/resolv.conf ] ; then - if [ -r $target/etc/resolvconf/run/resolv.conf ] ; then + if [ -d $target/etc/resolvconf/run ] ; then # resolvconf without /run + # sanity check to avoid "input file is output file", + # see http://bts.grml.org/grml/issue984 + if ! [ -L $target/etc/resolvconf/run/resolv.conf ] ; then cat /etc/resolv.conf >> $target/etc/resolvconf/run/resolv.conf - else + else + echo "Error: /etc/resolvconf/run/resolv.conf in chroot should not be a symlink." >&2 + echo " Looks like something is wrong, please fix manually." >&2 + exit 1 + fi + elif [ -L $target/etc/resolvconf/run ] ; then # resolvconf with /run + # /etc/resolvconf/run symlinks to /run/resolvconf + mkdir -p $target/run/resolvconf + cat /etc/resolv.conf >> $target/run/resolvconf/resolv.conf + else # no resolvconf installed in chroot + if ! [ -L $target/etc/resolv.conf ] ; then cat /etc/resolv.conf >> $target/etc/resolv.conf - fi + else + echo "Error: /etc/resolv.conf in chroot should not be a symlink (resolvconf not installed)." >&2 + exit 1 + fi + fi fi if [ -r $target/etc/policy-rc.d.conf ] ; then @@ -140,4 +157,4 @@ if [ -L "$target"/usr/sbin/invoke-rc.d ] ; then fi ## END OF FILE ################################################################# -# vim:ft=sh expandtab ai tw=80 tabstop=4 shiftwidth=3 +# vim:ft=sh expandtab ai tw=80 tabstop=4 shiftwidth=2