<?xml version="1.0"?>
<?xml-stylesheet type="text/css" href="http://www.slacky.eu/wikislack/skins/common/feed.css?303"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="it">
		<id>http://www.slacky.eu/wikislack/index.php?title=Organizzare_un_backup_completo&amp;feed=atom&amp;action=history</id>
		<title>Organizzare un backup completo - Cronologia</title>
		<link rel="self" type="application/atom+xml" href="http://www.slacky.eu/wikislack/index.php?title=Organizzare_un_backup_completo&amp;feed=atom&amp;action=history"/>
		<link rel="alternate" type="text/html" href="http://www.slacky.eu/wikislack/index.php?title=Organizzare_un_backup_completo&amp;action=history"/>
		<updated>2013-05-25T07:51:56Z</updated>
		<subtitle>Cronologia della pagina su questo sito</subtitle>
		<generator>MediaWiki 1.20.3</generator>

	<entry>
		<id>http://www.slacky.eu/wikislack/index.php?title=Organizzare_un_backup_completo&amp;diff=5679&amp;oldid=prev</id>
		<title>Tiferet il 10:14, 25 mar 2009</title>
		<link rel="alternate" type="text/html" href="http://www.slacky.eu/wikislack/index.php?title=Organizzare_un_backup_completo&amp;diff=5679&amp;oldid=prev"/>
				<updated>2009-03-25T10:14:01Z</updated>
		
		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;table class='diff diff-contentalign-left'&gt;
				&lt;col class='diff-marker' /&gt;
				&lt;col class='diff-content' /&gt;
				&lt;col class='diff-marker' /&gt;
				&lt;col class='diff-content' /&gt;
			&lt;tr style='vertical-align: top;'&gt;
			&lt;td colspan='2' style=&quot;background-color: white; color:black;&quot;&gt;← Versione meno recente&lt;/td&gt;
			&lt;td colspan='2' style=&quot;background-color: white; color:black;&quot;&gt;Versione delle 10:14, 25 mar 2009&lt;/td&gt;
			&lt;/tr&gt;&lt;tr&gt;
  &lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Riga 5:&lt;/td&gt;
  &lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Riga 5:&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot;&gt; &lt;/td&gt;
  &lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;Questo script ha lo scopo di organizzare un backup completo di un path liberamente definibile. Lo script organizza i dati in immagini iso di grandezza definibile e le masterizza man mano. È possibile scegliere se seguire un ordinamento alfabetico o per dimensione dei file, se i supporti devono essere riempiti al massimo e se i file devono essere compressi.&lt;/div&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot;&gt; &lt;/td&gt;
  &lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;Questo script ha lo scopo di organizzare un backup completo di un path liberamente definibile. Lo script organizza i dati in immagini iso di grandezza definibile e le masterizza man mano. È possibile scegliere se seguire un ordinamento alfabetico o per dimensione dei file, se i supporti devono essere riempiti al massimo e se i file devono essere compressi.&lt;/div&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot;&gt; &lt;/td&gt;
  &lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot;&gt; &lt;/td&gt;
  &lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;−&lt;/td&gt;
  &lt;td style=&quot;background: #ffa; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;= Download =&lt;/div&gt;&lt;/td&gt;
  &lt;td colspan=&quot;2&quot;&gt;&amp;nbsp;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;−&lt;/td&gt;
  &lt;td style=&quot;background: #ffa; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;http://www.slacky.eu/misto/concorso/tiferet/backntar&lt;/div&gt;&lt;/td&gt;
  &lt;td colspan=&quot;2&quot;&gt;&amp;nbsp;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot;&gt; &lt;/td&gt;
  &lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;= Script =&lt;/div&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot;&gt; &lt;/td&gt;
  &lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;= Script =&lt;/div&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot;&gt; &lt;/td&gt;
  &lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&amp;lt;pre&amp;gt;&lt;/div&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot;&gt; &lt;/td&gt;
  &lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&amp;lt;pre&amp;gt;&lt;/div&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Tiferet</name></author>	</entry>

	<entry>
		<id>http://www.slacky.eu/wikislack/index.php?title=Organizzare_un_backup_completo&amp;diff=5678&amp;oldid=prev</id>
		<title>Tiferet: /* Descrizione */</title>
		<link rel="alternate" type="text/html" href="http://www.slacky.eu/wikislack/index.php?title=Organizzare_un_backup_completo&amp;diff=5678&amp;oldid=prev"/>
				<updated>2009-03-25T10:11:55Z</updated>
		
		<summary type="html">&lt;p&gt;‎&lt;span dir=&quot;auto&quot;&gt;&lt;span class=&quot;autocomment&quot;&gt;Descrizione&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;table class='diff diff-contentalign-left'&gt;
				&lt;col class='diff-marker' /&gt;
				&lt;col class='diff-content' /&gt;
				&lt;col class='diff-marker' /&gt;
				&lt;col class='diff-content' /&gt;
			&lt;tr style='vertical-align: top;'&gt;
			&lt;td colspan='2' style=&quot;background-color: white; color:black;&quot;&gt;← Versione meno recente&lt;/td&gt;
			&lt;td colspan='2' style=&quot;background-color: white; color:black;&quot;&gt;Versione delle 10:11, 25 mar 2009&lt;/td&gt;
			&lt;/tr&gt;&lt;tr&gt;
  &lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Riga 1:&lt;/td&gt;
  &lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Riga 1:&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot;&gt; &lt;/td&gt;
  &lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;[[Category:Script]]&lt;/div&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot;&gt; &lt;/td&gt;
  &lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;[[Category:Script]]&lt;/div&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot;&gt; &lt;/td&gt;
  &lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;= Descrizione =&lt;/div&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot;&gt; &lt;/td&gt;
  &lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;= Descrizione =&lt;/div&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;−&lt;/td&gt;
  &lt;td style=&quot;background: #ffa; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&lt;span class=&quot;diffchange diffchange-inline&quot;&gt;Questo script ha lo scopo di organizzare un backup completo di un path liberamente definibile. Lo script organizza i dati in immagini iso di grandezza definibile e le masterizza man mano.&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;+&lt;/td&gt;
  &lt;td style=&quot;background: #cfc; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&lt;span class=&quot;diffchange diffchange-inline&quot;&gt;Backntar v3.0 25/03/2009&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td colspan=&quot;2&quot;&gt;&amp;nbsp;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;+&lt;/td&gt;
  &lt;td style=&quot;background: #cfc; color:black; font-size: smaller;&quot;&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td colspan=&quot;2&quot;&gt;&amp;nbsp;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;+&lt;/td&gt;
  &lt;td style=&quot;background: #cfc; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;Questo script ha lo scopo di organizzare un backup completo di un path liberamente definibile. Lo script organizza i dati in immagini iso di grandezza definibile e le masterizza man mano. È possibile scegliere se seguire un ordinamento alfabetico o per dimensione dei file, se i supporti devono essere riempiti al massimo e se i file devono essere compressi.&lt;/div&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td colspan=&quot;2&quot;&gt;&amp;nbsp;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;+&lt;/td&gt;
  &lt;td style=&quot;background: #cfc; color:black; font-size: smaller;&quot;&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot;&gt; &lt;/td&gt;
  &lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;= Download =&lt;/div&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot;&gt; &lt;/td&gt;
  &lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;= Download =&lt;/div&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot;&gt; &lt;/td&gt;
  &lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;http://www.slacky.eu/misto/concorso/tiferet/backntar&lt;/div&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot;&gt; &lt;/td&gt;
  &lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;http://www.slacky.eu/misto/concorso/tiferet/backntar&lt;/div&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Tiferet</name></author>	</entry>

	<entry>
		<id>http://www.slacky.eu/wikislack/index.php?title=Organizzare_un_backup_completo&amp;diff=5677&amp;oldid=prev</id>
		<title>Tiferet: /* Script */</title>
		<link rel="alternate" type="text/html" href="http://www.slacky.eu/wikislack/index.php?title=Organizzare_un_backup_completo&amp;diff=5677&amp;oldid=prev"/>
				<updated>2009-03-25T10:09:05Z</updated>
		
		<summary type="html">&lt;p&gt;‎&lt;span dir=&quot;auto&quot;&gt;&lt;span class=&quot;autocomment&quot;&gt;Script&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;a href=&quot;http://www.slacky.eu/wikislack/index.php?title=Organizzare_un_backup_completo&amp;amp;diff=5677&amp;amp;oldid=4337&quot;&gt;Mostra cambiamenti&lt;/a&gt;</summary>
		<author><name>Tiferet</name></author>	</entry>

	<entry>
		<id>http://www.slacky.eu/wikislack/index.php?title=Organizzare_un_backup_completo&amp;diff=4337&amp;oldid=prev</id>
		<title>Slacky il 16:00, 21 ott 2007</title>
		<link rel="alternate" type="text/html" href="http://www.slacky.eu/wikislack/index.php?title=Organizzare_un_backup_completo&amp;diff=4337&amp;oldid=prev"/>
				<updated>2007-10-21T16:00:54Z</updated>
		
		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Nuova pagina&lt;/b&gt;&lt;/p&gt;&lt;div&gt;[[Category:Script]]&lt;br /&gt;
= Descrizione =&lt;br /&gt;
Questo script ha lo scopo di organizzare un backup completo di un path liberamente definibile. Lo script organizza i dati in immagini iso di grandezza definibile e le masterizza man mano.&lt;br /&gt;
= Download =&lt;br /&gt;
http://www.slacky.eu/misto/concorso/tiferet/backntar&lt;br /&gt;
= Script =&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
#!/bin/bash&lt;br /&gt;
# The bash/sh interpreter&lt;br /&gt;
# ***************************************************************************************&lt;br /&gt;
# questo script ha lo scopo di organizzare un backup completo di&lt;br /&gt;
# un path liberamente definibile. Lo script organizza i dati in&lt;br /&gt;
# immagini iso di grandezza definibile e le masterizza man mano.&lt;br /&gt;
# ***************************************************************************************&lt;br /&gt;
&lt;br /&gt;
# =======================================================================================&lt;br /&gt;
# inizio dichiarazione delle funzioni&lt;br /&gt;
# =======================================================================================&lt;br /&gt;
&lt;br /&gt;
function dohelp ()&lt;br /&gt;
{&lt;br /&gt;
# se mi chiedi aiuto o non sai come usarmi, ti spiego&lt;br /&gt;
&lt;br /&gt;
echo &amp;quot;$(basename $0) v2.0&lt;br /&gt;
Questo script ha lo scopo di organizzare un backup completo di&lt;br /&gt;
un path liberamente definibile. Lo script organizza i dati in&lt;br /&gt;
immagini iso di grandezza definibile e le masterizza man mano.&amp;quot;&lt;br /&gt;
&lt;br /&gt;
echo &amp;quot;Utilizzo:&lt;br /&gt;
$(basename $0) [opzioni] [specifiche]&lt;br /&gt;
&lt;br /&gt;
OPZIONI:&lt;br /&gt;
-h, --help:	stampa questo help ed esce.&lt;br /&gt;
-c, --conf:	mostra la configurazione contenuta all'interno&lt;br /&gt;
		del file ~/$backfile, se esiste.&lt;br /&gt;
-f, --file:	effettua il backup con le impostazioni contenute&lt;br /&gt;
		all'interno del file ~/$backfile, se esiste.&lt;br /&gt;
-s, --save:	effettua il backup con le impostazioni che gli sono&lt;br /&gt;
		fornite di seguito&lt;br /&gt;
-r, --resume:	riprende l'ultimo backup effettuato.&lt;br /&gt;
--quiet:	quando è data questa opzione, le immagini ISO sono&lt;br /&gt;
		create senza soluzione di continuità.&lt;br /&gt;
&lt;br /&gt;
SPECIFICHE:&lt;br /&gt;
Se è utilizzata la funzione -s, allora devono essere dati i seguenti dati&lt;br /&gt;
in quest'ordine:&lt;br /&gt;
$(basename $0)	-s backup={backdir} exclude={excdir} optdim={optdim}&lt;br /&gt;
		isodim={isodim} maxdim={maxdim}&lt;br /&gt;
&lt;br /&gt;
backdir:	path completo della directory da organizzare per il backup&lt;br /&gt;
excdir:		nomi delle sotto-directory da escludere, separati da |&lt;br /&gt;
optdim:		dimensione ottimale delle cartelle da comprimere&lt;br /&gt;
isodim:		dimensione approssimativa finale dell'immagine ISO&lt;br /&gt;
maxdim:		dimensione massima del supporto utilizzato&lt;br /&gt;
&lt;br /&gt;
ovviamente deve risultare optdim &amp;lt;&amp;lt; isodim &amp;lt; maxdim&lt;br /&gt;
&lt;br /&gt;
Se è utilizzata la funzione -s, allora devono essere forniti i seguenti dati:&lt;br /&gt;
$(basename $0)	-r {prev_path} {n}&lt;br /&gt;
&lt;br /&gt;
prev_path:	percorso completo della directory creata durante l'ultimo backup&lt;br /&gt;
n:		indice dell'immagine ISO successiva all'ultime creata&lt;br /&gt;
&amp;quot;&lt;br /&gt;
&lt;br /&gt;
exit 0&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
function doconf ()&lt;br /&gt;
{&lt;br /&gt;
# se mi chiedi la configurazione attuale, te la do senza discutere&lt;br /&gt;
&lt;br /&gt;
# controllo se il file di configurazione esiste&lt;br /&gt;
preleva_conf&lt;br /&gt;
&lt;br /&gt;
# stampo la configurazione&lt;br /&gt;
echo &amp;quot;*************************************************************************&amp;quot;&lt;br /&gt;
echo &amp;quot;Sarà effettuato il backup completo della directory $backdir&amp;quot;&lt;br /&gt;
echo &amp;quot;La dimensione dell'immagine ISO è impostata a $isodim MB&amp;quot;&lt;br /&gt;
echo &amp;quot;La dimensione ottimale è impostata a $optdim MB&amp;quot;&lt;br /&gt;
echo &amp;quot;La dimensione dei supporti è impostata a $maxdim MB&amp;quot;&lt;br /&gt;
echo &amp;quot;*************************************************************************&amp;quot;&lt;br /&gt;
&lt;br /&gt;
exit 0&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
function preleva_conf ()&lt;br /&gt;
{&lt;br /&gt;
# la funzione preleva_conf serve per verificare, ove necessario, l'esistenza del&lt;br /&gt;
# file di configurazione e quindi di prelevare i valori corretti delle imnpostazioni&lt;br /&gt;
if [ ! -e ~/$backfile ]; then&lt;br /&gt;
	echo &amp;quot;Non esiste ancora un file di configurazione!&amp;quot;&lt;br /&gt;
	echo &amp;quot;Ne creerò uno di default, ma è opportuno controllarlo!&amp;quot;&lt;br /&gt;
	echo &amp;quot;backup_path	:{please, insert path for directory to backup}:&amp;quot; &amp;gt; ~/$backfile&lt;br /&gt;
	echo &amp;quot;iso_dimension	:4200:&amp;quot; &amp;gt;&amp;gt; ~/$backfile&lt;br /&gt;
	echo &amp;quot;opt_dimension	:1024:&amp;quot; &amp;gt;&amp;gt; ~/$backfile&lt;br /&gt;
	echo &amp;quot;max_dimension	:4400:&amp;quot; &amp;gt;&amp;gt; ~/$backfile&lt;br /&gt;
	echo &amp;quot;exclude_path	:foo1|foo2|foo3:&amp;quot; &amp;gt;&amp;gt; ~/$backfile&lt;br /&gt;
	exit 1&lt;br /&gt;
else&lt;br /&gt;
	backdir=$(grep 'backup' ~/$backfile | cut &amp;quot;-d:&amp;quot; -f2)&lt;br /&gt;
	isodim=$(grep 'iso' ~/$backfile | cut &amp;quot;-d:&amp;quot; -f2)&lt;br /&gt;
	optdim=$(grep 'opt' ~/$backfile | cut &amp;quot;-d:&amp;quot; -f2)&lt;br /&gt;
	maxdim=$(grep 'max' ~/$backfile | cut &amp;quot;-d:&amp;quot; -f2)&lt;br /&gt;
	excpath=$(grep 'exclude' ~/$backfile | cut &amp;quot;-d:&amp;quot; -f2)&lt;br /&gt;
	return 0&lt;br /&gt;
fi&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
function preleva_dati () # modificare in modo che l'utente debba inserire una sintassi del tipo variabile=valore&lt;br /&gt;
{&lt;br /&gt;
# la funzione preleva_dati serve per assegnare correttamente i parametri alle variabili&lt;br /&gt;
arg1=$(echo &amp;quot;$*&amp;quot; | egrep -o &amp;quot;backup=.*&amp;quot; | cut &amp;quot;-d=&amp;quot; -f2 | cut &amp;quot;-d &amp;quot; -f1)&lt;br /&gt;
arg2=$(echo &amp;quot;$*&amp;quot; | egrep -o &amp;quot;exclude=.*&amp;quot; | cut &amp;quot;-d=&amp;quot; -f2 | cut &amp;quot;-d &amp;quot; -f1)&lt;br /&gt;
arg3=$(echo &amp;quot;$*&amp;quot; | egrep -o &amp;quot;isodim=.*&amp;quot; | cut &amp;quot;-d=&amp;quot; -f2 | cut &amp;quot;-d &amp;quot; -f1)&lt;br /&gt;
arg4=$(echo &amp;quot;$*&amp;quot; | egrep -o &amp;quot;optdim=.*&amp;quot; | cut &amp;quot;-d=&amp;quot; -f2 | cut &amp;quot;-d &amp;quot; -f1)&lt;br /&gt;
arg5=$(echo &amp;quot;$*&amp;quot; | egrep -o &amp;quot;maxdim=.*&amp;quot; | cut &amp;quot;-d=&amp;quot; -f2 | cut &amp;quot;-d &amp;quot; -f1)&lt;br /&gt;
&lt;br /&gt;
backdir=${arg1:-~}&lt;br /&gt;
excpath=${arg2:-&amp;quot;&amp;quot;}&lt;br /&gt;
isodim=${arg3:-&amp;quot;4200&amp;quot;}&lt;br /&gt;
optdim=${arg4:-&amp;quot;1024&amp;quot;}&lt;br /&gt;
maxdim=${arg5:-&amp;quot;4400&amp;quot;}&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
function preleva_resume ()&lt;br /&gt;
{&lt;br /&gt;
# la funzione preleva_resume ha il compito di impostare correttamente i dati di backup&lt;br /&gt;
# relativi ad un backup precedentemente interrotto. Devono essere forniti:&lt;br /&gt;
# il percorso della directory temporanea del backup precedente e il numero progressivo&lt;br /&gt;
# del backup da eseguire&lt;br /&gt;
tempdir=&amp;quot;$1&amp;quot;&lt;br /&gt;
n=&amp;quot;$2&amp;quot;&lt;br /&gt;
&lt;br /&gt;
# per evitare che siano ricreate le liste dei file e delle directory, imposto la&lt;br /&gt;
# variabile $work a &amp;quot;resume&amp;quot;&lt;br /&gt;
work=&amp;quot;resume&amp;quot;&lt;br /&gt;
&lt;br /&gt;
# prelevo i dati dell'ultimo backup&lt;br /&gt;
backdir=$(grep 'backup' $tempdir/$confile | cut &amp;quot;-d:&amp;quot; -f2)&lt;br /&gt;
isodim=$(grep 'iso' $tempdir/$confile | cut &amp;quot;-d:&amp;quot; -f2)&lt;br /&gt;
optdim=$(grep 'opt' $tempdir/$confile | cut &amp;quot;-d:&amp;quot; -f2)&lt;br /&gt;
maxdim=$(grep 'max' $tempdir/$confile | cut &amp;quot;-d:&amp;quot; -f2)&lt;br /&gt;
excpath=$(grep 'exclude' $tempdir/$confile | cut &amp;quot;-d:&amp;quot; -f2)&lt;br /&gt;
line=$(grep 'line' $tempdir/$confile | cut &amp;quot;-d:&amp;quot; -f2)&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
function se_corretta_sintassi ()&lt;br /&gt;
{&lt;br /&gt;
#  la funzione se_corretta_sintassi verifica che sia stato dato il corretto numero e&lt;br /&gt;
# formato di dati del backup.&lt;br /&gt;
&lt;br /&gt;
# path inesistente?&lt;br /&gt;
if [ ! -e $backdir ]; then&lt;br /&gt;
	echo &amp;quot;Penso che tu abbia sbagliato ad indicarmi il percorso...&amp;quot;&lt;br /&gt;
	exit 1&lt;br /&gt;
# ordine sbagliato?&lt;br /&gt;
elif [ $optdim -gt $isodim ]; then&lt;br /&gt;
	echo &amp;quot;La dimensione ottimale ($optdim MB) non può essere superiore&amp;quot;&lt;br /&gt;
	echo &amp;quot;alla dimensione dell'immagine ISO ($isodim MB).&amp;quot;&lt;br /&gt;
	exit 1&lt;br /&gt;
elif [ $isodim -gt $maxdim ]; then&lt;br /&gt;
	echo &amp;quot;La dimensione dell'immagine ISO ($isodim MB) non può essere superiore&amp;quot;&lt;br /&gt;
	echo &amp;quot;alla dimensione del supporto ($maxdim MB).&amp;quot;&lt;br /&gt;
	exit 1&lt;br /&gt;
fi&lt;br /&gt;
&lt;br /&gt;
# creo il file config contenente le informazioni sul backup, per un evantuale resume&lt;br /&gt;
if [ &amp;quot;$work&amp;quot; != &amp;quot;resume&amp;quot; ]; then&lt;br /&gt;
	echo &amp;quot;backup_path	:$backdir:&lt;br /&gt;
iso_dimension	:$isodim:&lt;br /&gt;
opt_dimension	:$optdim:&lt;br /&gt;
max_dimension	:$maxdim:&lt;br /&gt;
exclude_path	:$excpath:&amp;quot; &amp;gt; $tempdir/$confile&lt;br /&gt;
fi&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
function crea_lista ()&lt;br /&gt;
{&lt;br /&gt;
# la funzione crea_lista serve ad ottenere i file $okdir e $sparefile che contengono&lt;br /&gt;
# l'elenco delle directory aventi dimensioni inferiori a $optdim e l'elenco dei file&lt;br /&gt;
# rimanenti.&lt;br /&gt;
&lt;br /&gt;
# controllo che la directory $backdir non entri in un singolo supporto; in quel caso non&lt;br /&gt;
# c'é bisogno di fare alcunché, altrimenti creo la lista delle sottodirectory, eliminando&lt;br /&gt;
# la prima riga che contiene proprio la $backdir&lt;br /&gt;
if [ &amp;quot;$totdim&amp;quot; -gt &amp;quot;$maxdim&amp;quot; ]; then&lt;br /&gt;
	du -k --max-depth 1 --exclude=.* $backdir | head -n -1  | sort -nr -o $kodir&lt;br /&gt;
else&lt;br /&gt;
	echo &amp;quot;La directory $backdir ha un dimensione inferiore a quella di un singolo&amp;quot;&lt;br /&gt;
	echo &amp;quot;supporto: $totdim KB &amp;lt; $maxdim KB. Pertanto non è necessario proseguire.&amp;quot;&lt;br /&gt;
	exit 0&lt;br /&gt;
fi&lt;br /&gt;
&lt;br /&gt;
# se la directory da backuppare non entra in un singolo supporto,&lt;br /&gt;
# allora è meglio scomporla in più sotto-directory.&lt;br /&gt;
while [ &amp;quot;`cat $kodir`&amp;quot; ]; do&lt;br /&gt;
	read line1 &amp;lt; $kodir&lt;br /&gt;
	dirdim=$(echo $line1 | cut &amp;quot;-d &amp;quot; -f1)&lt;br /&gt;
	dirname=$(echo $line1 | cut &amp;quot;-d &amp;quot; -f2-)&lt;br /&gt;
	if [ &amp;quot;$dirdim&amp;quot; -gt &amp;quot;$optdim&amp;quot; ]; then&lt;br /&gt;
		du -k --max-depth 1 &amp;quot;$dirname&amp;quot; | head -n -1 &amp;gt;&amp;gt; $kodir&lt;br /&gt;
		find &amp;quot;$dirname&amp;quot; -maxdepth 1 -type f -printf &amp;quot;%k\t%p\n&amp;quot; &amp;gt;&amp;gt; $sparefiles&lt;br /&gt;
		sed 1d $kodir | sort -nr -o $kodir&lt;br /&gt;
	else&lt;br /&gt;
		echo -e &amp;quot;$dirdim\t$dirname&amp;quot; &amp;gt;&amp;gt; $okdir&lt;br /&gt;
		sed 1d $kodir | sort -nr -o $kodir&lt;br /&gt;
	fi&lt;br /&gt;
done&lt;br /&gt;
&lt;br /&gt;
#  elimino dai file $okdir e $sparefiles i path da escludere&lt;br /&gt;
if [ $excpath ]; then&lt;br /&gt;
	sed -r /$excpath/d $okdir | sort -nr -o $okdir&lt;br /&gt;
	sed -r /$excpath/d $sparefiles | sort -nr -o $sparefiles&lt;br /&gt;
fi&lt;br /&gt;
&lt;br /&gt;
# creo una copia di backup delle due liste&lt;br /&gt;
cp $okdir $tempdir/backup_$(basename $okdir)~&lt;br /&gt;
cp $sparefiles $tempdir/backup_$(basename $sparefiles)~&lt;br /&gt;
&lt;br /&gt;
# conto di quante linee siano composti i due elenchi e sommo i risultati. Il totale&lt;br /&gt;
# costituisce il numero massimo di iterazioni che si può compiere per creare una&lt;br /&gt;
# singola immagine ISO, quindi scrivo il risultato nel file $confile&lt;br /&gt;
local dirlines=$(wc -l $okdir | cut &amp;quot;-d &amp;quot; -f1)&lt;br /&gt;
local filelines=$(wc -l $sparefiles | cut &amp;quot;-d &amp;quot; -f1)&lt;br /&gt;
let &amp;quot;line=$dirlines+$filelines&amp;quot;&lt;br /&gt;
echo &amp;quot;line		:$line:&amp;quot; &amp;gt;&amp;gt; $tempdir/$confile&lt;br /&gt;
&lt;br /&gt;
return&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
function se_entra ()&lt;br /&gt;
{&lt;br /&gt;
# la funzione se_entra ha il compito di verificare che il primo elemento dell'elenco&lt;br /&gt;
#  trasmessogli come argomento abbia dimensioni tali da entrare nella directory $isodir&lt;br /&gt;
&lt;br /&gt;
# prendo la lista che mi viene passata&lt;br /&gt;
local list=&amp;quot;$1&amp;quot;&lt;br /&gt;
&lt;br /&gt;
# leggo la prima riga, ossia la directory (o file) più grande&lt;br /&gt;
if [ -s $list ]; then&lt;br /&gt;
	local line1&lt;br /&gt;
	read line1 &amp;lt; $list&lt;br /&gt;
else&lt;br /&gt;
	return 1&lt;br /&gt;
fi&lt;br /&gt;
dirdim=$(echo $line1 | cut &amp;quot;-d &amp;quot; -f1)&lt;br /&gt;
&lt;br /&gt;
# verifico lo spazio disponibile e dunque se la directory (o file) può entrare&lt;br /&gt;
local busydim=$(du -k --max-depth 0 $isodir | cut -f1)&lt;br /&gt;
# let &amp;quot;busydim=1024*100*$i&amp;quot;&lt;br /&gt;
local freedim&lt;br /&gt;
let &amp;quot;freedim=$isodim-$busydim&amp;quot;&lt;br /&gt;
if (( $dirdim &amp;lt;= $freedim )); then&lt;br /&gt;
	return 0&lt;br /&gt;
else&lt;br /&gt;
	sed 1d $list &amp;gt; $filetemp&lt;br /&gt;
	mv -f $filetemp $list&lt;br /&gt;
	echo $line1 &amp;gt;&amp;gt; $list&lt;br /&gt;
	return 1&lt;br /&gt;
fi&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
function comprimi ()&lt;br /&gt;
{&lt;br /&gt;
# la funzione &amp;quot;comprimi&amp;quot; ha la funzione di comprimere in un archivio .tar.bz2 la directory&lt;br /&gt;
# contenuta nella prima riga della lista delle directory da backuppare. Tale lista deve&lt;br /&gt;
# essere passata come primo argomento.&lt;br /&gt;
&lt;br /&gt;
# prendo la lista che mi viene passata&lt;br /&gt;
local list=&amp;quot;$1&amp;quot;&lt;br /&gt;
&lt;br /&gt;
# leggo la prima riga, ossia la directory (o file) più grande&lt;br /&gt;
local line1&lt;br /&gt;
read line1 &amp;lt; $list&lt;br /&gt;
local dirpath=$(echo $line1 | cut &amp;quot;-d &amp;quot; -f2-)&lt;br /&gt;
&lt;br /&gt;
# creo il nome dell'archivio&lt;br /&gt;
archname=&amp;quot;$(echo $dirpath | sed s:$backdir/::g | sed s:/:_:g | sed s:&amp;quot; &amp;quot;:_:g)&amp;quot;&lt;br /&gt;
&lt;br /&gt;
# comprimo la directory più grande&lt;br /&gt;
echo -n &amp;quot; $(basename &amp;quot;$dirpath&amp;quot;)...&amp;quot;&lt;br /&gt;
if se_compresso &amp;quot;$(basename &amp;quot;$dirpath&amp;quot;)&amp;quot;; then&lt;br /&gt;
	tar -cvjf $isodir/$archname.tar.bz2 &amp;quot;$dirpath&amp;quot; &amp;gt;&amp;gt; $tempdir/tar_output 2&amp;gt;&amp;amp;1&lt;br /&gt;
# 	touch $isodir/$(basename $dirpath).tar.bz2&lt;br /&gt;
else&lt;br /&gt;
	tar -cvf $isodir/$archname.tar &amp;quot;$dirpath&amp;quot; &amp;gt;&amp;gt; $tempdir/tar_output 2&amp;gt;&amp;amp;1&lt;br /&gt;
# 	touch $isodir/$(basename $dirpath).tar&lt;br /&gt;
fi&lt;br /&gt;
&lt;br /&gt;
# cancello la prima riga dalla lista&lt;br /&gt;
sed 1d $list &amp;gt; $filetemp&lt;br /&gt;
mv -f $filetemp $list&lt;br /&gt;
&lt;br /&gt;
return 0&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
function se_compresso ()&lt;br /&gt;
{&lt;br /&gt;
# la funzione se_compresso verifica se l'argomento passato è già stato compresso e&lt;br /&gt;
# restituisce 1 o 0 a seconda che sia stato o no compresso.&lt;br /&gt;
&lt;br /&gt;
local file=&amp;quot;$1&amp;quot;&lt;br /&gt;
&lt;br /&gt;
# con egrep verifico se nel nome del file sia contenuta un'estensione tipica dei&lt;br /&gt;
# formati compressi&lt;br /&gt;
local zip=$(echo $file | egrep .'\&amp;lt;tar\&amp;gt;|\&amp;lt;rar\&amp;gt;|\&amp;lt;zip\&amp;gt;|\&amp;lt;gz\&amp;gt;|\&amp;lt;bz2\&amp;gt;|\&amp;lt;tgz\&amp;gt;|\&amp;lt;iso\&amp;gt;')&lt;br /&gt;
&lt;br /&gt;
# restituisco il valore opportuno&lt;br /&gt;
if [ &amp;quot;$zip&amp;quot; ]; then&lt;br /&gt;
	return 1&lt;br /&gt;
else&lt;br /&gt;
	return 0&lt;br /&gt;
fi&lt;br /&gt;
&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
function se_pieno ()&lt;br /&gt;
{&lt;br /&gt;
# la funzione se_pieno verifica che la cartella $isodir non abbia raggiunto la dimensione&lt;br /&gt;
# limite stabilita per la masterizzazione e restituisce 1 o 0 a seconda che si sia&lt;br /&gt;
# raggiunto o no tale limite&lt;br /&gt;
&lt;br /&gt;
local busydim=$(du -k --max-depth 0 $isodir | cut -f1)&lt;br /&gt;
# let &amp;quot;busydim=1024*100*$i&amp;quot;&lt;br /&gt;
&lt;br /&gt;
if (( $busydim &amp;gt;= $isodim )) || (( $k &amp;gt;= $line )); then&lt;br /&gt;
	k=0&lt;br /&gt;
	return 1&lt;br /&gt;
else&lt;br /&gt;
	return 0&lt;br /&gt;
fi&lt;br /&gt;
&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
function crea_iso ()&lt;br /&gt;
{&lt;br /&gt;
# la funzione crea_iso non fa altro che convertire in un'immagine iso la directory&lt;br /&gt;
# $isodir e successivamente attende verifica che la dimensione finale sia inferiore al&lt;br /&gt;
# limite di capienza del supporto&lt;br /&gt;
mkisofs -r -V $(basename $isoname .iso) -o $imgdir/$isoname $isodir &amp;gt;&amp;gt; $tempdir/&amp;quot;$isoname&amp;quot;_output 2&amp;gt;&amp;amp;1&lt;br /&gt;
&lt;br /&gt;
# prima di proseguire, controllo che l'immagine esista&lt;br /&gt;
if [ -e $imgdir/$isoname ]; then&lt;br /&gt;
	local imgdim=$(du -k $imgdir/$isoname | cut -f1)&lt;br /&gt;
else&lt;br /&gt;
	echo &amp;quot;==========================================================================&amp;quot;&lt;br /&gt;
	echo &amp;quot;Per qualche strano motivo, l'immagine non è stata creata.&amp;quot;&lt;br /&gt;
	echo &amp;quot;&amp;quot;&lt;br /&gt;
	echo &amp;quot;Mi dispiace, ma il backup si interrompe qui; controlla cosa è andato&amp;quot;&lt;br /&gt;
	echo &amp;quot;storto e riprendi con \&amp;quot;$(basename $0) --resume\&amp;quot;&amp;quot;&lt;br /&gt;
	echo &amp;quot;==========================================================================&amp;quot;&lt;br /&gt;
	exit 1&lt;br /&gt;
fi&lt;br /&gt;
&lt;br /&gt;
# riordino per dimensione le liste dei file e delle directory&lt;br /&gt;
cat $okdir | sort -nr -o $okdir&lt;br /&gt;
cat $sparefiles | sort -nr -o $sparefiles&lt;br /&gt;
&lt;br /&gt;
# aggiorno le copie di backup delle liste&lt;br /&gt;
cp -f $okdir $tempdir/backup_$(basename $okdir)~&lt;br /&gt;
cp -f $sparefiles $tempdir/backup_$(basename $sparefiles)~&lt;br /&gt;
&lt;br /&gt;
# per sicurezza, controllo che la dimensione effettiva dell'immagine sia inferiore al&lt;br /&gt;
# limite massimo&lt;br /&gt;
if [ &amp;quot;$imgdim&amp;quot; -le &amp;quot;$maxdim&amp;quot; ]; then&lt;br /&gt;
	return 0&lt;br /&gt;
else&lt;br /&gt;
	return 1&lt;br /&gt;
fi&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
# =======================================================================================&lt;br /&gt;
# fine dichiarazione delle funzioni&lt;br /&gt;
# =======================================================================================&lt;br /&gt;
&lt;br /&gt;
# =======================================================================================&lt;br /&gt;
# inizio programma principale&lt;br /&gt;
# =======================================================================================&lt;br /&gt;
# inizializzo variabili di path per comandi non residenti nel path di base&lt;br /&gt;
otbin=~/bin&lt;br /&gt;
&lt;br /&gt;
# inizializzo le variabili $n e $tempdire quelle non dipendenti da queste due.&lt;br /&gt;
# Le altre devono essere inizializzate dopo che si è scelta la funzione da utilizzare&lt;br /&gt;
k=0					# indice riempimento&lt;br /&gt;
m=0					# indice file multipli&lt;br /&gt;
n=1					# indice nome backup&lt;br /&gt;
# i=0					# indice di riempimento virtuale&lt;br /&gt;
tempdir=~/tmp/$($otbin/tempname)	# directory temporanea&lt;br /&gt;
imgdir=~/backup				# directory delle immagini ISO&lt;br /&gt;
filetemp=~/tmp/$($otbin/tempname)	# file temporaneo&lt;br /&gt;
confile=config				# file di resume&lt;br /&gt;
backfile=&amp;quot;.backntar.conf&amp;quot;		# file di configurazione&lt;br /&gt;
&lt;br /&gt;
# prelevo la funzione da effettuare, dal primo argomento&lt;br /&gt;
funzione=&amp;quot;$1&amp;quot;&lt;br /&gt;
&lt;br /&gt;
# controllo che mi sia stato ordinato di procedere in modalità &amp;quot;quiet&amp;quot;, ossia creando&lt;br /&gt;
# tutte le immagini ISO di seguito&lt;br /&gt;
quiet=$(echo &amp;quot;$*&amp;quot; | grep quiet)&lt;br /&gt;
if [ &amp;quot;$quiet&amp;quot; ]; then&lt;br /&gt;
	quiet=&amp;quot;yes&amp;quot;&lt;br /&gt;
else&lt;br /&gt;
	quiet=&amp;quot;no&amp;quot;&lt;br /&gt;
fi&lt;br /&gt;
&lt;br /&gt;
case $funzione in&lt;br /&gt;
	-h | --help)	dohelp;;&lt;br /&gt;
	-c | --conf)	doconf;;&lt;br /&gt;
	-f | --file)	preleva_conf;;&lt;br /&gt;
	-s | --save)	preleva_dati $2 $3 $4 $5 $6;;&lt;br /&gt;
	-r | --resume)	preleva_resume $2 $3;;&lt;br /&gt;
	*)		echo &amp;quot;Spiacente, ma la funzione \&amp;quot;$funzione\&amp;quot; non esiste.&amp;quot;&lt;br /&gt;
			echo &amp;quot;Prova a digitare \&amp;quot;$(basename $0) --help\&amp;quot; per ottenere aiuto.&amp;quot;&lt;br /&gt;
			exit 1;;&lt;br /&gt;
esac&lt;br /&gt;
&lt;br /&gt;
# inizializzo le altre variabili: se si è in resume, la variabile $tempdir&lt;br /&gt;
# e la variabile $n sono state riassegnate&lt;br /&gt;
okdir=$tempdir/okdir			# elenco $okdir&lt;br /&gt;
kodir=$tempdir/kodir			# elenco $kodir&lt;br /&gt;
sparefiles=$tempdir/spare		# elenco $sparefiles&lt;br /&gt;
isodir=$tempdir/isodir			# directory immagine&lt;br /&gt;
&lt;br /&gt;
#inizializzo i file e le directory necessarie&lt;br /&gt;
if [ ! -e $tempdir ]; then&lt;br /&gt;
	mkdir -p $tempdir&lt;br /&gt;
	mkdir -p $isodir&lt;br /&gt;
	mkdir -p $imgdir&lt;br /&gt;
fi&lt;br /&gt;
&lt;br /&gt;
# verifico che la creazione sia andata a buon fine&lt;br /&gt;
if [ ! -e $tempdir -o ! -e $isodir -o ! -e $imgdir ]; then&lt;br /&gt;
	echo &amp;quot;Per qualche motivo non ho potuto creare le directory&lt;br /&gt;
necessarie, quindi termino qui il compito, per evitare di far danno!&lt;br /&gt;
Spiacente!!!&lt;br /&gt;
&amp;quot;&lt;br /&gt;
	exit 1&lt;br /&gt;
fi&lt;br /&gt;
&lt;br /&gt;
# controllo che i dati inseriti siano coerenti&lt;br /&gt;
se_corretta_sintassi&lt;br /&gt;
&lt;br /&gt;
# calcolo la dimensione totale della directory $backdir e il numero approssimativo&lt;br /&gt;
# di supporti da utilizzare&lt;br /&gt;
totdim=$(du -k --max-depth 0 $backdir | cut -f1)&lt;br /&gt;
let &amp;quot;ndvd=($totdim/1024)/($maxdim)+1&amp;quot;&lt;br /&gt;
&lt;br /&gt;
# stampo a video la configurazione attuale&lt;br /&gt;
echo &amp;quot;*************************************************************************&amp;quot;&lt;br /&gt;
echo &amp;quot;Sarà effettuato il backup completo della directory $backdir&amp;quot;&lt;br /&gt;
echo &amp;quot;La dimensione dell'immagine ISO è impostata a $isodim MB&amp;quot;&lt;br /&gt;
echo &amp;quot;La dimensione ottimale è impostata a $optdim MB&amp;quot;&lt;br /&gt;
echo &amp;quot;La dimensione dei supporti è impostata a $maxdim MB&amp;quot;&lt;br /&gt;
echo &amp;quot;*************************************************************************&amp;quot;&lt;br /&gt;
echo &amp;quot;Saranno necessari approssimativamente $ndvd supporti&amp;quot;&lt;br /&gt;
echo &amp;quot;*************************************************************************&amp;quot;&lt;br /&gt;
echo &amp;quot;&amp;quot;&lt;br /&gt;
echo &amp;quot;&amp;quot;&lt;br /&gt;
&lt;br /&gt;
# riporto i MB in KB&lt;br /&gt;
let &amp;quot;optdim=$optdim*1024&amp;quot;&lt;br /&gt;
let &amp;quot;isodim=$isodim*1024&amp;quot;&lt;br /&gt;
let &amp;quot;maxdim=$maxdim*1024&amp;quot;&lt;br /&gt;
&lt;br /&gt;
# creo la lista dei file e delle directory, a meno che non tratti di un resume&lt;br /&gt;
# per cui copio i file di backup nelle liste per evitare di tralasciare alcuni&lt;br /&gt;
# file&lt;br /&gt;
if [ &amp;quot;$work&amp;quot; != &amp;quot;resume&amp;quot; ]; then&lt;br /&gt;
	echo -n &amp;quot;Sto creando la lista delle directory e dei file...&amp;quot;&lt;br /&gt;
	crea_lista &lt;br /&gt;
	echo &amp;quot;terminato!&amp;quot;&lt;br /&gt;
elif [ &amp;quot;$work&amp;quot; = &amp;quot;resume&amp;quot; ]; then&lt;br /&gt;
	cp -f $tempdir/backup_$(basename $okdir)~ $okdir&lt;br /&gt;
	cp -f $tempdir/backup_$(basename $sparefiles)~ $sparefiles&lt;br /&gt;
fi&lt;br /&gt;
&lt;br /&gt;
# creo le immagini ISO necessarie al backup della directory $backdir. Finché gli elenchi&lt;br /&gt;
# $okdir e $sparefiles non sono vuoti, sarà necessario creare altre immagini ISO;&lt;br /&gt;
# andranno aggiunti file e directory alla stessa immagine, finché questa non raggiunge&lt;br /&gt;
# la dimensione fissata. Se una directory non entra, perché è troppo grossa per lo spazio&lt;br /&gt;
# restante, allora si esamina il file più grande, poi la seconda directory più grande e&lt;br /&gt;
# così via.&lt;br /&gt;
&lt;br /&gt;
echo &amp;quot;Procedo alla creazione delle immagini ISO...&amp;quot;&lt;br /&gt;
echo &amp;quot;Per visualizzare i progressi, entra in una shell e dai il comando&amp;quot;&lt;br /&gt;
echo &amp;quot;tail -f &amp;quot;$tempdir&amp;quot;/tar_output&amp;quot;&lt;br /&gt;
&lt;br /&gt;
while [ -s $okdir -o -s $sparefiles ]; do&lt;br /&gt;
	isoname=&amp;quot;backup_$(date -d &amp;quot;today&amp;quot; +%Y%m%d)_$n.iso&amp;quot;&lt;br /&gt;
	echo -e &amp;quot;\tCreo l'immagine $isoname...&amp;quot;&lt;br /&gt;
	while se_pieno; do&lt;br /&gt;
		if se_entra $okdir; then&lt;br /&gt;
			echo -en &amp;quot;\t\tSto comprimendo la directory&amp;quot;&lt;br /&gt;
			comprimi $okdir&lt;br /&gt;
# 			let &amp;quot;i=$i+1&amp;quot;&lt;br /&gt;
			k=0&lt;br /&gt;
			echo &amp;quot; terminato!&amp;quot;&lt;br /&gt;
		elif se_entra $sparefiles; then&lt;br /&gt;
			echo -en &amp;quot;\t\tSto comprimendo il file&amp;quot;&lt;br /&gt;
			comprimi $sparefiles&lt;br /&gt;
# 			let &amp;quot;i=$i+1&amp;quot;&lt;br /&gt;
			k=0&lt;br /&gt;
			echo &amp;quot; terminato!&amp;quot;&lt;br /&gt;
		fi&lt;br /&gt;
		if [ ! -s $okdir -a ! -s $sparefiles ]; then&lt;br /&gt;
			break&lt;br /&gt;
		fi&lt;br /&gt;
		let &amp;quot;k++&amp;quot;&lt;br /&gt;
	done&lt;br /&gt;
	echo &amp;quot;Sto creando l'immagine ISO $isoname...&amp;quot;&lt;br /&gt;
	echo &amp;quot;Per visualizzare i progressi, entra in una shell e dai il comando&amp;quot;&lt;br /&gt;
	echo &amp;quot;tail -f &amp;quot;$tempdir&amp;quot;/&amp;quot;$isoname&amp;quot;_output&amp;quot;&lt;br /&gt;
	crea_iso&lt;br /&gt;
	let &amp;quot;n++&amp;quot;&lt;br /&gt;
	rm -f $isodir/*&lt;br /&gt;
# 	i=0&lt;br /&gt;
	echo -e &amp;quot;\tterminato!&amp;quot;&lt;br /&gt;
	echo &amp;quot;--&amp;gt; E' stata creata l'immagine ISO $isoname nella directory $imgdir,&amp;quot;&lt;br /&gt;
	echo &amp;quot;--&amp;gt; per cui si prega di procedere alla masterizzazione prima di proseguire.&amp;quot;&lt;br /&gt;
	echo &amp;quot;--&amp;gt; Io restero' in attesa che tu mi dica \&amp;quot;prosegui\&amp;quot;.&amp;quot;&lt;br /&gt;
	while true; do&lt;br /&gt;
		if [[ $quiet = &amp;quot;no&amp;quot; ]]; then&lt;br /&gt;
			read scelta&lt;br /&gt;
			if [ &amp;quot;$scelta&amp;quot; = &amp;quot;prosegui&amp;quot; ]; then&lt;br /&gt;
				break&lt;br /&gt;
			elif [ &amp;quot;$scelta&amp;quot; = &amp;quot;termina&amp;quot; ]; then&lt;br /&gt;
				echo &amp;quot;Rinominerò la cartella \&amp;quot;$tempdir\&amp;quot; in \&amp;quot;backup_$(date -d &amp;quot;today&amp;quot; +%Y%m%d)\&amp;quot;&amp;quot;&lt;br /&gt;
				echo &amp;quot;così che tu possa riconoscerla facilmente&amp;quot;&lt;br /&gt;
				mv $tempdir $(dirname &amp;quot;$tempdir&amp;quot;)/backup_$(date -d &amp;quot;today&amp;quot; +%Y%m%d)&lt;br /&gt;
				exit 0&lt;br /&gt;
			else&lt;br /&gt;
				echo &amp;quot;Scegli \&amp;quot;prosegui\&amp;quot; per continuare nella procedura di backup&amp;quot;&lt;br /&gt;
				echo &amp;quot;Scegli \&amp;quot;termina\&amp;quot; per terminare la procedura di backup&amp;quot;&lt;br /&gt;
				echo &amp;quot;Puoi sempre riprendere più tardi con \&amp;quot;$(basename $0) --resume\&amp;quot;&amp;quot;&lt;br /&gt;
			fi&lt;br /&gt;
		elif [[ $quiet = &amp;quot;yes&amp;quot; ]]; then&lt;br /&gt;
			break&lt;br /&gt;
		fi&lt;br /&gt;
	done&lt;br /&gt;
	scelta=&amp;quot;&amp;quot;&lt;br /&gt;
done&lt;br /&gt;
&lt;br /&gt;
echo &amp;quot;terminato!&amp;quot;&lt;br /&gt;
&lt;br /&gt;
exit 0&lt;br /&gt;
# =======================================================================================&lt;br /&gt;
# fine programma principale&lt;br /&gt;
# =======================================================================================&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
* Data: 21/10/2007&lt;br /&gt;
* Autore: Tiferet&lt;/div&gt;</summary>
		<author><name>Slacky</name></author>	</entry>

	</feed>