mocksetup: /unsafe+/hdd -> /quad
[nethome.git] / bin / mocksetup
index da4800c..4db3250 100755 (executable)
@@ -82,7 +82,8 @@ for r in $l;do
     echo $c; $c
   fi
 
-  cp -p /etc/resolv.conf $rpath/etc/resolv.conf
+  cmp -s   /etc/resolv.conf $rpath/etc/resolv.conf \
+  || cp -p /etc/resolv.conf $rpath/etc/resolv.conf
 
   dir="/dev/pts"
   c="umount $rpath$dir"
@@ -96,11 +97,11 @@ for r in $l;do
     echo $c
   fi
 
-  test -e $rpath/dev/pts && rmdir $rpath/dev/pts
+  test -e $rpath/dev/pts && (rmdir $rpath/dev/pts || :)
   if ! $u;then
     mkdir -p $rpath/dev/pts
   fi
-  test -e $rpath/dev/shm && rmdir $rpath/dev/shm
+  test -e $rpath/dev/shm && (rmdir $rpath/dev/shm || :)
   if ! $u;then
     mkdir -p $rpath/dev/shm
   fi
@@ -153,10 +154,25 @@ for r in $l;do
     ln -s /proc/self/fd $rpath/dev/fd
   fi
 
-  mkdir -p $rpath/unsafe
-  for dir in /home /usr/local/bin /proc /sys /root /unsafe;do
+  # Must be before umount of /quad
+  c="umount $rpath/var/cache/yum"
+  if $c 2>&1|grep -v ': not \(mounted\|found\)$';then
+    echo $c
+  fi
+  if ! $u;then
+    if [ -d /var/cache/mock/$r/yum_cache ];then
+      cr=$r
+    else
+      cr=`echo $r|sed 's/-[^-]*$//'`
+    fi
+    c="mount --bind /var/cache/mock/$cr/yum_cache $rpath/var/cache/yum"
+    echo $c; $c
+  fi
+
+  mkdir -p $rpath/quad
+  for dir in /home /usr/local/bin /proc /sys /root /quad;do
     c="umount $rpath$dir"
-    if $c 2>&1|grep -v ': not mounted$';then
+    if $c 2>&1|grep -v ': not \(mounted\|found\)$';then
       echo $c
     fi
     if ! $u;then
@@ -172,20 +188,6 @@ for r in $l;do
     echo $c; $c
   fi
 
-  c="umount $rpath/var/cache/yum"
-  if $c 2>&1|grep -v ': not mounted$';then
-    echo $c
-  fi
-  if ! $u;then
-    if [ -d /var/cache/mock/$r/yum_cache ];then
-      cr=$r
-    else
-      cr=`echo $r|sed 's/-[^-]*$//'`
-    fi
-    c="mount --bind /var/cache/mock/$cr/yum_cache $rpath/var/cache/yum"
-    echo $c; $c
-  fi
-
   rm -f $rpath/usr/local/lib/debug
   if ! $u;then
     ln -s ../../lib/debug $rpath/usr/local/lib/debug