X-Git-Url: http://git.grml.org/?a=blobdiff_plain;f=scripts%2Flive;h=54b43fbab3d57b3eb7ae1d797ce1f7ae0a6a56ff;hb=d2714312237eecf4ccb95c7a09b1445a231f6988;hp=e2112638f44c07089d1731dc35fabb9ed7c085fa;hpb=03dc8cc3445af502900bd0002ea584bfbc8d0b1a;p=live-boot-grml.git diff --git a/scripts/live b/scripts/live index e211263..54b43fb 100755 --- a/scripts/live +++ b/scripts/live @@ -456,7 +456,7 @@ Arguments () if [ -z "${UNIONTYPE}" ] then - UNIONTYPE="unionfs" + UNIONTYPE="aufs" export UNIONTYPE fi } @@ -561,6 +561,9 @@ is_nice_device () if /lib/udev/path_id "${sysfs_path}" | grep -E -q "ID_PATH=(usb|pci-[^-]*-[ide|scsi|usb])" then return 0 + elif echo "${sysfs_path}" | grep -q '^/block/vd[a-z]$' + then + return 0 fi return 1 @@ -650,8 +653,16 @@ do_netmount () modprobe -q af_packet # For DHCP - udevtrigger - udevsettle + if [ -x /sbin/udevadm ] + then + # lenny + udevadm trigger + udevadm settle + else + # etch + udevtrigger + udevsettle + fi ipconfig ${DEVICE} | tee /netboot.config @@ -1008,7 +1019,7 @@ setup_unionfs () rofslist="${image} ${rofslist}" elif [ -f "${image}" ] then - if /sbin/losetup --help 2>&1 | grep -q -- "-r\b" + if losetup --help 2>&1 | grep -q -- "-r\b" then backdev=$(get_backing_device "${image}" "-r") else @@ -1041,8 +1052,16 @@ setup_unionfs () modprobe -q -b ${module} done - udevtrigger - udevsettle + if [ -x /sbin/udevadm ] + then + # lenny + udevadm trigger + udevadm settle + else + # etch + udevtrigger + udevsettle + fi # For some reason, udevsettle does not block in this scenario, # so we sleep for a little while. @@ -1064,10 +1083,12 @@ setup_unionfs () then cowdevice=${cowprobe} cow_fstype=$(get_fstype "${cowprobe}") + cow_mountopt="rw,noatime" else [ "${quiet}" != "y" ] && log_warning_msg "Unable to find the persistent medium" cowdevice="tmpfs" cow_fstype="tmpfs" + cow_mountopt="rw,noatime,mode=755" fi elif [ -n "${NFS_COW}" ] && [ -z "${NOPERSISTENT}" ] then @@ -1091,6 +1112,7 @@ setup_unionfs () else cowdevice="tmpfs" cow_fstype="tmpfs" + cow_mountopt="rw,noatime,mode=755" fi if [ "${cow_fstype}" = "nfs" ] @@ -1100,7 +1122,7 @@ setup_unionfs () nfsmount ${nfs_cow_opts} ${cowdevice} /cow || \ panic "Can not mount ${cowdevice} (n: ${cow_fstype}) on /cow" else - mount -t ${cow_fstype} -o rw,noatime ${cowdevice} /cow || \ + mount -t ${cow_fstype} -o ${cow_mountopt} ${cowdevice} /cow || \ panic "Can not mount ${cowdevice} (o: ${cow_fstype}) on /cow" fi @@ -1192,12 +1214,6 @@ check_dev () devname=$(sys2dev "${sysdev}") fi - if [ -n "${LIVE_MEDIA_OFFSET}" ] - then - loopdevname=$(setup_loop "${devname}" "loop" "/sys/block/loop*" "${LIVE_MEDIA_OFFSET}" '') - devname="${loopdevname}" - fi - if [ -d "${devname}" ] then mount -o bind "${devname}" $mountpoint || continue @@ -1211,6 +1227,12 @@ check_dev () fi fi + if [ -n "${LIVE_MEDIA_OFFSET}" ] + then + loopdevname=$(setup_loop "${devname}" "loop" "/sys/block/loop*" "${LIVE_MEDIA_OFFSET}" '') + devname="${loopdevname}" + fi + fstype=$(get_fstype "${devname}") if is_supported_fs ${fstype}