7 copyto="${copyfrom}_swap"
9 if [ -z "${MODULETORAM}" ]
11 size=$(fs_size "" ${copyfrom}/${LIVE_MEDIA_PATH} "used")
13 MODULETORAMFILE="${copyfrom}/${LIVE_MEDIA_PATH}/${MODULETORAM}"
15 if [ -f "${MODULETORAMFILE}" ]
17 size=$( expr $(ls -la ${MODULETORAMFILE} | awk '{print $5}') / 1024 + 5000 )
19 log_warning_msg "Error: toram-module ${MODULETORAM} (${MODULETORAMFILE}) could not be read."
24 if [ "${copytodev}" = "ram" ]
27 freespace=$(awk '/^MemFree:/{f=$2} /^Cached:/{c=$2} END{print f+c}' /proc/meminfo)
28 mount_options="-o size=${size}k"
33 # it should be a writable block device
34 if [ -b "${copytodev}" ]
38 fstype=$(get_fstype "${dev}")
39 freespace=$(fs_size "${dev}")
41 log_warning_msg "${copytodev} is not a block device."
46 if [ "${freespace}" -lt "${size}" ]
48 log_warning_msg "Not enough free ${free_string} (${freespace}k free, ${size}k needed) to copy live media in ${copytodev}."
53 if [ -z "${mount_options}" ] && [ -n "${ramdisk_size}" ]
55 # FIXME: should check for wrong values
56 mount_options="-o size=${ramdisk_size}"
59 # begin copying (or uncompressing)
61 log_begin_msg "mount -t ${fstype} ${mount_options} ${dev} ${copyto}"
62 mount -t "${fstype}" ${mount_options} "${dev}" "${copyto}"
64 if [ "${extension}" = "tgz" ]
67 tar zxf "${copyfrom}/${LIVE_MEDIA_PATH}/$(basename ${FETCH})"
68 rm -f "${copyfrom}/${LIVE_MEDIA_PATH}/$(basename ${FETCH})"
69 mount -r -o move "${copyto}" "${rootmnt}"
72 if [ -n "${MODULETORAMFILE}" ]
76 echo " * Copying $MODULETORAMFILE to RAM" 1>/dev/console
77 rsync -a --progress ${MODULETORAMFILE} ${copyto} 1>/dev/console # copy only the filesystem module
79 cp ${MODULETORAMFILE} ${copyto} # copy only the filesystem module
84 echo " * Copying whole medium to RAM" 1>/dev/console
85 rsync -a --progress ${copyfrom}/* ${copyto} 1>/dev/console # "cp -a" from busybox also copies hidden files
87 mkdir -p ${copyto}/${LIVE_MEDIA_PATH}
88 cp -a ${copyfrom}/${LIVE_MEDIA_PATH}/* ${copyto}/${LIVE_MEDIA_PATH}
89 if [ -e ${copyfrom}/${LIVE_MEDIA_PATH}/.disk ]
91 cp -a ${copyfrom}/${LIVE_MEDIA_PATH}/.disk ${copyto}
97 mount -r -o move ${copyto} ${copyfrom}