summaryrefslogtreecommitdiff
path: root/scripts
diff options
context:
space:
mode:
authorMarco Amadori <amadorim@vdavda.com>2008-06-13 15:00:12 +0200
committerDaniel Baumann <daniel@debian.org>2011-03-09 17:48:00 +0100
commitd5347eae8a5e2bf7a1f4eb2ae85e8dac5920d4d1 (patch)
tree319f9164264ba29742132aa9e56b87f8d36e7d9d /scripts
parent02f0fb6ca32464adc6d6dd80878ac62bd75048ec (diff)
downloadlive-boot-d5347eae8a5e2bf7a1f4eb2ae85e8dac5920d4d1.tar.gz
live-boot-d5347eae8a5e2bf7a1f4eb2ae85e8dac5920d4d1.zip
live-snapshot: fixed the remount helper.
* Now it should work even if not using klibc's "read".
Diffstat (limited to 'scripts')
-rw-r--r--scripts/live-helpers19
1 files changed, 9 insertions, 10 deletions
diff --git a/scripts/live-helpers b/scripts/live-helpers
index 20952f3..b8b9cf1 100644
--- a/scripts/live-helpers
+++ b/scripts/live-helpers
@@ -72,12 +72,9 @@ where_is_mounted ()
if grep -q "^${device} " /proc/mounts
then
- grep "^${device} " /proc/mounts | read d mountpoint rest
- echo ${mountpoint}
- return 0
+ # return the first found
+ grep "^${device} " /proc/mounts | cut -f2 -d ' '
fi
-
- return 1
}
lastline ()
@@ -120,9 +117,9 @@ fs_size ()
if [ -z "${mountp}" ]
then
- mountp=$(where_is_mounted "${dev}")
+ mountp="$(where_is_mounted ${dev})"
- if [ "${?}" -gt 0 ]
+ if [ -z "${mountp}" ]
then
mountp="/mnt/tmp_fs_size"
@@ -243,10 +240,12 @@ try_mount ()
mountp="${2}"
opts="${3}"
- if where_is_mounted ${dev} > /dev/null
+ old_mountp="$(where_is_mounted ${dev})"
+
+ if [ -n "${old_mountp}" ]
then
- mount -o remount,"${opts}" ${dev} $(where_is_mounted ${dev}) || panic "Remounting failed"
- mount -o bind $(where_is_mounted ${dev}) ${mountp} || panic "Cannot bind-mount"
+ mount -o remount,"${opts}" "${dev}" "${old_mountp}" || panic "Remounting ${dev} ${opts} on ${old_mountp} failed"
+ mount -o bind "${old_mountp}" "${mountp}" || panic "Cannot bind-mount ${old_mountp} on ${mountp}"
else
mount -t $(get_fstype "${dev}") -o "${opts}" "${dev}" "${mountp}" || panic "Cannot mount ${dev} on ${mountp}"
fi