Ceci est une ancienne révision du document !
Passer d'un DVD Vidéo à un fichier iso
Via le logiciel K3B
Il est désormais très facile de crée une image ISO de n'importe quel dvd du commerce avec le logiciel K3B.
Pour installer K3B il vous suffit d'installer le paquet K3B après avoir activé les dépôts Universe.
Ensuite lancer K3B et sélectionner sur le panneau principal "Autres choix…" puis "Copier un DVD" et cocher "Créer seulement une image" rendez-vous ensuite dans l'onglet "Image" pour sélectionner le dossier ou le fichier image ISO sera écrit.
Script (ancien)
Malgré tout, dvdbackup sait très bien faire un backup des fichiers et de la structure d'un DVD Vidéo sur disque dur. Parallèlement, mkisofs sait très bien produire un iso fonctionnel à partir de ces fichiers.
Voici donc un petit script rapide et sans prétention qui permet, d'un clic de souris, après bien sûr avoir glissé un DVD Vidéo dans le lecteur, de se retrouver avec une image ISO fonctionnelle de ce DVD sur le disque dur.
Attention, ce script est extrêmement basique, il ne prend pas en compte les éventuelles erreurs dûes à de mauvaises conditions initiales. Aussi pour que cela se passe sans encombre, assurez-vous que vous avez bien mis le DVD dans le lecteur, qu'il existe bien un répertoire dvdtmp dans votre répertoire ~ et qu'il y a suffisamment d'espace libre sur le disque.
Voici le script, à placer dans /usr/bin/ et à rendre exécutable grâce à un chmod +x dvd2iso :
#!/bin/sh echo -n Copie du DVD dans ~/dvdtmp.................. date1=$(date +%s) dvdbackup -v 0 -M -i /dev/hda -o ~/dvdtmp echo OK echo dvdtitle=$(ls ~/dvdtmp) echo -n Conversion des fichiers DVD en ISO..................... mkisofs -dvd-video -quiet -o $dvdtitle.iso ~/dvdtmp/$dvdtitle/ echo OK echo echo -n Suppression des fichiers temporaires................... rm -fr ~/dvdtmp/$dvdtitle echo OK date2=$(date +%s) duree=$(($(($date2-$date1))/60)) echo echo "Operation terminee (duree = "$duree" min), "$dvdtitle.iso se trouve dans $ (dirname ~/dvdtmp)
Pour utiliser ce script avec une interface graphique, installez zenity, puis créez par exemple un lanceur appelant le script DVD2ISO (placé dans /usr/bin/ et chmodé +x) contenant le code suivant :
dvd2iso|zenity --text-info --title "DVD2ISO" --width=400 --height=300
Voilà !
Note de SandMan :
Amélioration en date du 19/12/2008.
Je pousse un peu plus loin le bon travail de djoole :
Je permets le choix du lecteur dvd en entrée et crée le répertoire temporaire. Le fichier de sortie .iso se trouvera dans le répertoire "home" de l'utilisateur. Maintenant, il suffit de le démarrer via un lanceur ou d'entrer la commande suivante dans un terminal :
/usr/bin/dvd2isohui /dev/dvd
Voiçi les scripts :
sudo nano /usr/bin/dvd2iso
#!/bin/sh DEVDVD=$1 echo -n Copie du DVD dans ~/dvdtmp.................. date1=$(date +%s) mkdir ~/dvdtmp dvdbackup -M -i "$DEVDVD" -o ~/dvdtmp echo OK echo dvdtitle=$(ls ~/dvdtmp) echo -n Conversion des fichiers DVD en ISO..................... mkisofs -dvd-video -quiet -o ~/"$dvdtitle.iso" ~/dvdtmp/"$dvdtitle"/ echo OK echo echo -n Suppression des fichiers temporaires................... rm -fr ~/dvdtmp echo OK date2=$(date +%s) duree=$(($(($date2-$date1))/60)) echo echo "Operation terminee (duree = "$duree" min), "$dvdtitle.iso" se trouve dans "$(dirname ~)"
sudo chmod +x /usr/bin/dvd2iso sudo nano /usr/bin/dvd2isogui
#!/bin/sh DEVDVD=$1 dvd2iso "$DEVDVD"|zenity --text-info --title "DVD2ISO" --width=400 --height=300
sudo chmod +x /usr/bin/dvd2isogui
dvd2iso - Version 1.2 - 09/12/2010
Note de Mr_Djez :
J'ai apporté quelque modification a ce script (pour l'adapter a mes besoin) et je viens vous déposer le résultat ;)
On ne sais jamais si sa peut aider :D
ajout significatif:
- puce vérification de l'espace disponible avant traitement
- vérification des dépendances
- dvd_dev = chemin absolut ver votre device dvd
- rep_iso = chemin absolut ou seront stocké les image-dvd.iso
- rep_app = chemin absolut ver le répertoire tampon utiliser par le script
#!/bin/sh ##################################################################### # dvd2iso.sh # # permet, d'un clic de souris, après bien sûr avoir glissé un DVD # Vidéo dans le lecteur, de se retrouver avec une image ISO # fonctionnelle de ce DVD sur le disque dur. # ... # Dépendance: # - dvdbackup # - mkisofs # # Auteur : # - djoole # - SandMan # - mr_djez <djez.depannage> à <gmail> dot <com> # # Historique : # 09/12/2010 (1.2) mr.djez # - mise en forme # - ajout de commentaire # - plusieurs petite modif (variable, expression, condition) ;) # - modif sur le calcul du temps d'exécution # - testes présence des dépendances # - ajout de l'option 'udf' a mkisofs # - testes sur l'espace disponible # 19/12/2008 (1.1) SandMan # - ajoute répertoire temporaire # - calcul du temps # 11/01/2007 (1.0) djoole # - écriture initiale ##################################################################### # VERSION=1.2 # Heure de lancement date_start=$(date +%s) ### Variable ( a modifier selon votre config ) # Device DVD dvd_dev=/dev/sr0 # Répertoire temporaire utiliser par le script # /!\ il sera crée et supprimé a chaque utilisation rep_app=/tmp/dvd2iso-$date_start # Répertoire stockage des iso rep_iso=/media/Doc # Test des dépendance "dvdbackup" which dvdbackup > /dev/null if [ $? -eq 1 ] ; then printf "dvdbackup not found \ninstaller le paquet dvdbackup \n apt-get install dvdbackup\n" exit 1 fi # Test des dépendance "mkisofs" which mkisofs > /dev/null if [ $? -eq 1 ] ; then printf "mkisofs not found!\ninstaller le paquet mkisofs \n apt-get install mkisofs\n" exit 1 fi printf "\nCopie du DVD dans %s..................\n" $rep_app # Création du répertoire test ! -d $rep_app && mkdir $rep_app # on lance le backup du dvd si il y a suffisamment d'espace libre # répertoire APP doit être supérieur a la taille du dvd if [ $(df $rep_app | awk '/^\/dev/ {print $4}') -gt $(df $dvd_dev | awk '/^\/dev/ {print $3}') ] ; then # Backup du dvd dvdbackup -M -i "$dvd_dev" -o "$rep_app" && echo OK || echo FAIL else printf "FAIL\n FATAL\: espace libre insuffisant sur %s\n" $rep_app. fi # Nom du dossier backup dvdtitle=$(ls $rep_app) printf "Conversion des fichiers DVD en ISO....................." # on lance la création de l'iso si il y a suffisamment d'espace libre if [ $(df $rep_iso | awk '/^\/dev/ {print $4}') -gt $(du $rep_app/$dvdtitle | tail -1 | awk '{print $1}') ] ; then # Création de l'iso mkisofs -dvd-video -udf -quiet -o "$rep_iso/$dvdtitle.iso" "$rep_app/$dvdtitle/" && echo OK || echo FAIL else printf "FAIL\n FATAL\: espace libre insuffisant sur %s\n" $rep_iso fi printf "Suppression des fichiers temporaires..................." # Efface les fichiers backup rm -fr "$rep_app" && echo OK || echo FAIL # Heure de fin date_stop=$(date +%s) # Calcul de durée duree_total_sec=$(expr $date_stop - $date_start) duree_min=$(expr $duree_total_sec / 60) duree_sec=$(expr $duree_total_sec % 60) # Rapport printf "\n=== Operation terminee ! ===\n \ Duree: %d min %d sec\n \ Fichier cree: %s.iso dans %s\n\n" $duree_min $duree_sec $dvdtitle $rep_iso exit 0