X-Git-Url: http://git.grml.org/?a=blobdiff_plain;f=scripts%2Flive;h=df104ef399cf344dab3d4dcc787e77f172f2b9ca;hb=refs%2Ftags%2Fupstream%2F1.156.1;hp=d06dd209eca8855338bfcd5e73d7009f660f931e;hpb=58ce4e7fc93ebcc9f9e86766706fb463962eea65;p=live-boot-grml.git diff --git a/scripts/live b/scripts/live index d06dd20..df104ef 100755 --- a/scripts/live +++ b/scripts/live @@ -340,6 +340,11 @@ Arguments () export PERSISTENT ;; + persistent-path=*) + PERSISTENT_PATH="${ARGUMENT#persistent-path=}" + export PERSISTENT_PATH + ;; + nopersistent) NOPERSISTENT="Yes" export NOPERSISTENT @@ -497,7 +502,7 @@ is_live_path () if [ -d "${DIRECTORY}"/"${LIVE_MEDIA_PATH}" ] then - for FILESYSTEM in squashfs ext2 ext3 xfs dir jffs2 + for FILESYSTEM in squashfs ext2 ext3 ext4 xfs dir jffs2 do if [ "$(echo ${DIRECTORY}/${LIVE_MEDIA_PATH}/*.${FILESYSTEM})" != "${DIRECTORY}/${LIVE_MEDIA_PATH}/*.${FILESYSTEM}" ] then @@ -537,7 +542,7 @@ matches_uuid () get_backing_device () { case "${1}" in - *.squashfs|*.ext2|*.ext3|*.jffs2) + *.squashfs|*.ext2|*.ext3|*.ext4|*.jffs2) echo $(setup_loop "${1}" "loop" "/sys/block/loop*" '0' "${LIVE_MEDIA_ENCRYPTION}" "${2}") ;; @@ -574,6 +579,7 @@ mount_images_in_directory () if match_files_in_dir "${directory}/${LIVE_MEDIA_PATH}/*.squashfs" || match_files_in_dir "${directory}/${LIVE_MEDIA_PATH}/*.ext2" || match_files_in_dir "${directory}/${LIVE_MEDIA_PATH}/*.ext3" || + match_files_in_dir "${directory}/${LIVE_MEDIA_PATH}/*.ext4" || match_files_in_dir "${directory}/${LIVE_MEDIA_PATH}/*.jffs2" || match_files_in_dir "${directory}/${LIVE_MEDIA_PATH}/*.dir" then @@ -914,7 +920,7 @@ find_snap () if [ "${PERSISTENT}" != "nofiles" ] then # search for image files - snapdata=$(find_files "${snap_label}.squashfs ${snap_label}.cpio.gz ${snap_label}.ext2 ${snap_label}.ext3 ${snap_label}.jffs2") + snapdata=$(find_files "${snap_label}.squashfs ${snap_label}.cpio.gz ${snap_label}.ext2 ${snap_label}.ext3 ${snal_label}.ext4 ${snap_label}.jffs2") fi if [ -z "${snapdata}" ] @@ -946,9 +952,9 @@ try_snap () break fi - if echo "${snapfile}" | grep -qs '\(squashfs\|ext2\|ext3\|jffs2\)' + if echo "${snapfile}" | grep -qs '\(squashfs\|ext2\|ext3\|ext4\|jffs2\)' then - # squashfs, jffs2 or ext2/ext3 snapshot + # squashfs, jffs2 or ext2/ext3/ext4 snapshot dev=$(get_backing_device "${snapback}/${snapfile}") do_snap_copy "${dev}" "${snap_mount}" "${snap_type}" @@ -1053,7 +1059,7 @@ setup_unionfs () done else # ${MODULE}.module does not exist, create a list of images - for FILESYSTEM in squashfs ext2 ext3 xfs jffs2 dir + for FILESYSTEM in squashfs ext2 ext3 ext4 xfs jffs2 dir do for IMAGE in "${image_directory}"/*."${FILESYSTEM}" do @@ -1066,7 +1072,7 @@ setup_unionfs () if [ -n "${addimage_directory}" ] && [ -d "${addimage_directory}" ] then - for FILESYSTEM in squashfs ext2 ext3 xfs jffs2 dir + for FILESYSTEM in squashfs ext2 ext3 ext4 xfs jffs2 dir do for IMAGE in "${addimage_directory}"/*."${FILESYSTEM}" do @@ -1190,7 +1196,7 @@ setup_unionfs () root_snapdata=$(find_snap "${root_snapshot_label}" "${blacklistdev}") # This second type should be removed when snapshot will get smarter, # hence when "/etc/live-snapshot*list" will be supported also by - # ext2|ext3|jffs2 snapshot types. + # ext2|ext3|ext4|jffs2 snapshot types. home_snapdata=$(find_snap "${home_snapshot_label}" "${blacklistdev}") if [ -b "${cowprobe}" ] @@ -1422,6 +1428,7 @@ find_livefs () elif [ "${fstype}" = "squashfs" -o \ "${fstype}" = "ext2" -o \ "${fstype}" = "ext3" -o \ + "${fstype}" = "ext4" -o \ "${fstype}" = "jffs2" ] then # This is an ugly hack situation, the block device has