aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAndrew Lutomirski <luto@kernel.org>2019-08-15 12:22:47 -0700
committerGitHub <noreply@github.com>2019-08-15 12:22:47 -0700
commitda6d426f5ca8d0f0ea7450a3c7482b2342e07948 (patch)
tree1d556f0695940e8836877220f72b781dacb72d6b
parent538f1e756139a6b57a4780e7ceb3ac6bcaa4fe6f (diff)
parent14b4957d668c2840ce91584ffd5dc4cb938774f6 (diff)
downloadvirtme-da6d426f5ca8d0f0ea7450a3c7482b2342e07948.tar.gz
Merge pull request #37 from arighi/master
virtme-init: correctly initialize resolv.conf under ubuntu
-rwxr-xr-xvirtme/guest/virtme-init12
1 files changed, 10 insertions, 2 deletions
diff --git a/virtme/guest/virtme-init b/virtme/guest/virtme-init
index 91201b5..db63fcb 100755
--- a/virtme/guest/virtme-init
+++ b/virtme/guest/virtme-init
@@ -155,10 +155,18 @@ fi
ip link set dev lo up
if cat /proc/cmdline |grep -q -E '(^| )virtme.dhcp($| )'; then
- if [[ -f /etc/resolv.conf ]]; then
+ real_resolv_conf=/etc/resolv.conf
+ if [[ -L "$real_resolv_conf" ]]; then
+ real_resolv_conf="`readlink /etc/resolv.conf`"
+ if [[ ! -e $real_resolv_conf ]]; then
+ mkdir -p "`dirname $real_resolv_conf`"
+ touch $real_resolv_conf
+ fi
+ fi
+ if [[ -f "$real_resolv_conf" ]]; then
tmpfile="`mktemp --tmpdir=/tmp`"
chmod 644 "$tmpfile"
- mount --bind "$tmpfile" /etc/resolv.conf
+ mount --bind "$tmpfile" "$real_resolv_conf"
rm "$tmpfile"
fi