X-Git-Url: http://git.grml.org/?a=blobdiff_plain;f=bin%2Flive-toram;fp=bin%2Flive-toram;h=0000000000000000000000000000000000000000;hb=dcd5a31c0db21b7c89fd1d8eca4bb28ae404f8c8;hp=b7740a2c0042916d734dbdf71d0798cf99a0c66e;hpb=52dcca5493c1a58029f247cf196759795274d806;p=live-boot-grml.git diff --git a/bin/live-toram b/bin/live-toram deleted file mode 100755 index b7740a2..0000000 --- a/bin/live-toram +++ /dev/null @@ -1,120 +0,0 @@ -#!/bin/sh - -set -e - -# Read cmdline -for _PARAMETER in $(cat /proc/cmdline) -do - case "${_PARAMETER}" in - module=*) - _MODULE="${_PARAMETER#module=}" - ;; - esac -done - -# Assemble filesystems -if [ -z "${_MODULE}" ] -then - _FILESYSTEMS="/live/image/live/filesystem.squashfs" -else - for _FILESYSTEM in _MODULE - do - _FILESYSTEMS="${_FILESYSTEMS} /live/image/live/${_FILESYSTEM}" - done -fi - -# Exit if system is not debian live -if [ ! -d /live/image ] -then - echo "E: live-toram only works on Debian Live systems." - - exit 1 -fi - -# Exit if filesystem not accessible -for _FILESYSTEM in ${_FILESYSTEMS} -do - if [ ! -r ${_FILESYSTEM} ] - then - echo "E: ${_FILESYSTEM}: No such file" - echo "I: live-toram already run?" - - exit 1 - fi -done - -# Exit if user is unprivileged -if [ "$(id -u)" -ne 0 ] -then - echo "E: need root privileges" - - exit 1 -fi - -# Exit if not enough free memory -_SIZE=0 - -for _FILESYSTEM in ${_FILESYSTEMS} -do - _SIZE="$((${_SIZE} + $(du ${_FILESYSTEM} | awk '{ print $1 }')))" - _MEMORY="$(awk '/MemFree/ { print $2 }' /proc/meminfo)" -done - -case ${@} in - -f|--force) - echo "W: Ignoring memory constrains as requested" - ;; - - *) - if [ $_MEMORY -lt $_SIZE ] - then - echo "E: not enough free memory available." - echo "I: images need ${_SIZE}kB, free memory is ${_MEMORY}kB." - - exit 1 - fi - ;; -esac - -# Copying image to memory -echo "P: Copying images to memory." -echo "P: This may take a while..." - -# FIXME: doesn't work with multiple filesystems -for _FILESYSTEM in ${_FILESYSTEMS} -do - if [ ! -x "$(which rsync 2>/dev/null)" ] - then - rsync -a --progress ${_FILESYSTEM} /tmp/live - else - cp -av ${_FILESYSTEM} /tmp/live - fi - -LANGUAGE=C LANG=C LC_ALL=C perl << EOF -open LOOP, '/dev/null)" ] - then - eject -p -m ${_DEVICE} >/dev/null 2>&1 - fi -fi