[gull] creation de dvd de sauvetage.

Félix Hauri felix at f-hauri.ch
Fri Feb 4 10:01:04 CET 2005


On Thu, Feb 03, 2005 at 02:42:03PM +0100, BRINER Cedric wrote:
> bonjour,
> 
> j'aimerais sauvegarder tout un repertoire sur des DVD.
> mais malheureusement la taille original du repertoire est de 14Go.
> 
> car en fait je pensais creer ma sauvegarde de la maniere suivante
> 
> 1)
> dd if=/dev/zero of=dvd1.iso bs=1000 count=4'700'000
> mkisofs -o dvd1 dvd1.iso
> mkdir dvd1
> mount -t iso9660 -o loop dvd1.iso dvd1
> et ainsi de suite avec les autres dvd.
> 
> faire une copie en hardlink de mon repertoire a sauver
> cp -al <repertoire a sauver> <repertoire miroir>
Marchera pas!

ISO N'est PAS un filesystem ``read-write''.

Du peux le faire avec ext2:
# cd /tmp
# mkdir dvds
# cd dvds
# for ((i=1;i<5;i++));do 
    dd if=/dev/zero of=dvd$i.ext2 bs=1000 count=4'700'000
    mke2fs -F dvd$i.ext2
    mkdir dvd$i
    mount -o loop dvd$i.ext2 dvd$i
    done
...
# df -h dvd? 
Filesystem            Size  Used Avail Use% Mounted on
/tmp/dvds/dvd1.ext2   4.4G   20K  4.1G   1% /tmp/dvds/dvd1
/tmp/dvds/dvd2.ext2   4.4G   20K  4.1G   1% /tmp/dvds/dvd2
/tmp/dvds/dvd3.ext2   4.4G   20K  4.1G   1% /tmp/dvds/dvd3
/tmp/dvds/dvd4.ext2   4.4G   20K  4.1G   1% /tmp/dvds/dvd4
...
> 
> puis de faire un
> mv <repertoire miroir> dvd1
> puis lorsqu'une erreur se leve
> mv <repertoire a sauver> dvd2
> jusqu'a tout copier.

Y not!? 
Vérifies l'état des fichiers sur lesquels il s'arrête!

Puis
# mkifofs -o - dvd1 | dvdrecord ...

Et alors,
> puis demonter mes dvd et les gravers
# umount dvd?
(les quatres d'un coup;)

> 
> une meilleure idee ???
Je crois qu'il s'agit là d'un excellent moyen de réaliser des dvd contenant des 
fichiers lisibles. Toutefois il nécessitera la disponnibilité d'au moins 18Go
de disque...

L'avantage de la méthode ``cp -al'' + ``mv'' c'est que tu peux faire l'opération
en plusieur fois, en n'utilisant qu'un block de 4.7Go d'espace disque:

Attn! ceci n'est pas un script! Juste une méthode...
   1 )  cp -al source copy
        dd
        mkdir dvdmpnt
        finish=false
        while ! $finish ; do

 +-> 2 )  mkfs.ext2
 |   3 )  mount loop
 |   4 )  mv copy/* dvdmpnt -> error
 |              cmp || rm dvdmpnt/brokenfiles -> cp source/brokenfile copy/
 |   5 )  mkisofs -o - dvdmpnt | dvdrecord -
 |           umount dvdmpnt
 |   6 )  find copy -mindepth 1 | grep -q . || finish=true   -+
 +----------------------------------------------------­-------+

        done



> 2) j'ai donc des dvd de 4.7Go et la je me retrouve avec un probleme de 
>         comprehension.
>      4.7 Go de donnees brutes (ce que je pense etre correcte)
>    ou
>      4,7 Go de donnees dans le systeme de fichier iso

Juste, ils vendent de l'espace disque brut. Par exemple, si tu met du CDDA
tu n'as pas besoins de compter le fs iso...

> 3) et la encore quand on parle de Go c'est donc bien 4,7x10^9 octets
>     et non un truc a la 1024x1024x1024 
ou 1024^3 ou encore 2^30, càd 1'0000000000'0000000000'0000000000
  en binaire, on comprend mieux que les informaticiens ``arrondissent''
  bizarre! ;)
En fait, je ne suis pas sûr de la taille dispo sur un dvd.

>    ref de knuth: http://www-cs-staff.stanford.edu/~knuth/news99.html
Excellente lecture!

> tout ca pour savoir quelle doivent etre les valeur pour le:
> dd if=/dev/zero of=dvd1.iso bs=1000 count=4'700'000
Oui, malheureusement le fs ext2 ``bouffe'' un peu, et l'isofs aussi,
je ne suis donc pas sûr du calcul à faire pour des valeur correcte
à la cde ``dd''.
De plus, un fichier ne prendra pas le même place en ext2 qu'en isofs
(taille de block différente, table de fichiers ou inodes, etc.)

je crois que l'expérience est encore la meilleure méthode pour en
apprendre à ce propos...

Bonne chance.

-- 
 Félix Hauri  -  <felix at f-hauri.ch>  -  http://www.f-hauri.ch



More information about the gull mailing list