Merge tag 'debian/5.0_a5-1' into debian
authorEvgeni Golov <evgeni@grml.org>
Sun, 23 Aug 2015 09:29:50 +0000 (11:29 +0200)
committerEvgeni Golov <evgeni@grml.org>
Sun, 23 Aug 2015 09:29:50 +0000 (11:29 +0200)
Tagging debian version 5.0~a5-1.

bin/live-toram [new file with mode: 0755]
manpages/old/live-snapshot.it.1.txt [new file with mode: 0644]

diff --git a/bin/live-toram b/bin/live-toram
new file mode 100755 (executable)
index 0000000..b7740a2
--- /dev/null
@@ -0,0 +1,120 @@
+#!/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/loop0' or die $!;
+open DEST, '</tmp/live' or die $!;
+ioctl(LOOP, 0x4C06, fileno(DEST)) or die $!
+close LOOP;
+close DEST;
+EOF
+
+done
+
+# Unmounting live media
+_DEVICE="$(awk '/\/live\/image / { print $1 }' /proc/mounts)"
+
+if [ -d /live/image ]
+then
+       umount /live/image
+       rmdir --ignore-fail-on-non-empty /live/image || true
+fi
+
+# Ejecting live media if it is not an optical device
+if [ "$(expr substr ${_DEVICE} 1 2)" != "sd" ] && \
+   ! readlink /sys/block/$(expr substr ${_DEVICE} 6 3) | grep -q usb
+then
+       if [ ! -x "$(which rsync 2>/dev/null)" ]
+       then
+               eject -p -m ${_DEVICE} >/dev/null 2>&1
+       fi
+fi
diff --git a/manpages/old/live-snapshot.it.1.txt b/manpages/old/live-snapshot.it.1.txt
new file mode 100644 (file)
index 0000000..2370de7
--- /dev/null
@@ -0,0 +1,128 @@
+live-snapshot(1)
+================
+:man source: 1.157.3
+:man manual: Debian Live
+
+Name
+----
+live-snapshot - uno script per facilitare l'uso della persistenza sui sistemi live
+
+Synopsis
+--------
+live-snapshot [-c|--cow **DIRECTORY**s] [-d|--device **DEVICE**] [-e|--exclude-list **FILE**] [-o|--output **FILE**] [-t|--type **TYPE**]
+
+live-snapshot [-r|--resync-string **STRING**]
+
+live-snapshot [-h|--help]
+
+live-snapshot [-u|--usage]
+
+live-snapshot [-v|--version]
+
+Description
+-----------
+
+live-snapshot `e uno script che pu`o essere usato per costruire un file immagine formattato
+correttamente per essere usato da live-initramfs(7); viene inoltre usato dallo script di
+init di live-initramfs in uscita per sincronizzare i device di snapshot riconosciuti al boot.
+
+Options
+-------
+
+  -c, --cow **DIRECTORY**::
+
+specifica la directory da clonare nel file immagine. Il valore di default `e
+lo stesso default usato da live-initramfs per la sua directory COW (copy on
+write, un tempo situata in "/live/cow") ed `e sufficiente per gli usi comuni.
+Pu`o essere utile tuttavia specificare "/home" e come tipo "ext2" per
+preparare un file immagine adatto per essere montato da live-initramfs come
+"/home" al boot.
+
+  -d, --device **DEVICE**::
+
+seleziona il device dove il file/partizione di snapshot o persistenza dovr`a
+essere sistemato. Se il device non ha un filesystem, ne verr`a creato uno
+automaticamente, di tipo ext2 ed etichettato (label) in base al valore
+specificato nell'opzione "--output" o con un default. Se non viene specificato
+nessun device, verr`a usato un "tmpfs" linkato sul desktop dell'utente, in
+modo che port`a essere mosso dove si vuole.
+
+  -e, --exclude-list **FILE**::
+
+un file contenente una lista di file e percorsi che NON devono essere salvati.
+Questa lista verr`a inclusa nello snapshot per essere riutilizzata.
+
+  -o, --output **FILE**::
+
+il nome del file o l'etichetta (label) da usare per il file o la partizione di
+snapshot. Se non specificata, live-snapshot cercher\`a un file all'interno
+del device oppure user`a l'intera partizione.
+
+  -r, --resync-string **STRING**::
+
+usato internamente nelle sincronizzazioni dallo script di init di
+live-initramfs. Il formato pu\`o cambiare, usatelo a vostro rischio.
+
+  -f, --refresh::
+
+scatena la stessa operazione che verrebbe fatta al reboot o all'halt della
+macchina, provando a fare il resync degli snapshot trovati al boot, usabile
+per salvare le modifiche in vista di un crash o di una mancanza di corrente.
+
+  -t, --type **TYPE**::
+
+il tipo pu`o essere "cpio", "squashfs" o "ext2".
+
+  -h, --help::
+
+mostra l'aiuto ed esce
+
+  -u, --usage::
+
+mostra l'utilizzo ed esce
+
+  -v, --version::
+
+da informazioni sulla versione ed esce
+
+Files
+-----
+
+  /etc/live-snapshot.list
+
+Facoltativo, se presente cambia completamente il funzionamento di live-snapshot; solo i files e le directory elencate verranno effettivamente inclusi nello snapshot.
+Funziona attualmente solo con gli snapshot di tipo "cpio" e "partizione intera".
+
+  /etc/live-snapshot.exclude_list
+
+Facoltativo, se presente verrà utilizzato per filtrare i file da includere negli snapshot. Tutte i file che conterranno le stringhe elecate (come "grep -F -v") non verranno salvati da live-snapshot.
+Funziona attualmente solo con gli snapshot di tipo "cpio", "partizione intera" e "squashfs"; è utile per filtrare contenuti poco significativi come i file temporanei e la cache.
+
+See also
+--------
+
+live-initramfs(8)
+
+Questo programma fa parte di live-initramfs.
+
+Bugs
+----
+
+Riportate i bug sul pacchetto live-initramfs
+link:http://packages.qa.debian.org/live-initramfs[http://packages.qa.debian.org/live-initramfs].
+
+Homepage
+--------
+
+Ulteriori informazioni su progetto Debian Live possono essere trovate su
+link:http://debian-live.alioth.debian.org/[http://debian-live.alioth.debian.org/] e
+link:http://wiki.debian.org/DebianLive/[http://wiki.debian.org/DebianLive/].
+
+Authors
+-------
+
+live-initramfs `e mantenuto da Daniel Baumann <daniel@debian.org> per il
+progetto Debian. live-initramfs `e un fork di
+link:http://packages.ubuntu.com/casper[casper]. casper `e stato scritto
+originariamente da Tollef Fog Heen <tfheen@canonical.com> e Matt Zimmerman
+<mdz@canonical.com>.