For convenience, I want to store copies of all my DVDs on my file server. It allow me to save shelf space flat while still having my movie collection easily available. It also make it possible to let the kids see their favorite DVDs without wearing the physical copies down. I prefer to store the DVDs as ISOs to keep the DVD menu and subtitle options intact. It also ensure that the entire film is one file on the disk. As this is for personal use, the ripping is perfectly legal here in Norway.
Normally I rip the DVDs using dd like this:
#!/bin/sh # apt-get install lsdvd title=$(lsdvd 2>/dev/null|awk '/Disc Title: / {print $3}') dd if=/dev/dvd of=/storage/dvds/$title.iso bs=1M
But some DVDs give a input/output error when I read it, and I have been looking for a better alternative. I have no idea why this I/O error occur, but suspect my DVD drive, the linux kernel driver or something fishy with the DVDs in question. Or perhaps all three.
Anway, I believe I found a solution today using dvdbackup and genisoimage. This script gave me a working ISO for a problematic movie by first extracting the DVD file system and then repacking it back as an ISO.
#!/bin/sh # apt-get install lsdvd dvdbackup genisoimage set -e tmpdir=/storage/dvds/ title=$(lsdvd 2>/dev/null|awk '/Disc Title: / {print $3}') dvdbackup -i /dev/dvd -M -o $tmpdir -n$title genisoimage -dvd-video -o $tmpdir/$title.iso $tmpdir/$title rm -rf $tmpdir/$title
Anyone know of a better way available in Debian/Squeeze?