Burning CD / DVD under Linux (especially for SuSE 7.x and 8.x)
How to burn CD DVD 's under SuSE Linux 7.x and 8.0 & 8.1 ?
(Brennen von CD und DVD unter SuSE Linux - einfach gemacht. In englischer Sprache - wer diese Seite in Deutscher Sprache möchte, sollte sich auf dem WWW nach einem Uebersetzungsprogramm umsehen - es gibt mehrere davon)
Attention: In the following description you have to be aware, that for SuSE Linux 7.x the description is valid for xcdroast-0.98alpha9, while for the description for SuSE Linux 8.0 & 8.1 the description will be given for xcdroast-0.98alpha10, which is the newest version on SuSE 8.1 (in fact, Thomas Niederreiter has released already version X-CD-Roast 0.98alpha12 !). The newest version should also run on older SuSE Linux distributions, but my descriptions may not be valid for those.
People often report problems with the device files to me; so here is a short
summary of how things should look like and how they can be changed:
(Here we assume, the CD-recorder is on master/secondary, meaning, the first device [master] on the second flat cable)
File /boot/grub/menu.lst
kernel (hd0............root=....... hdc=ide-scsi
File /etc/fstab
/dev/cdrom /media/cdrecorder auto ro,noauto,user,exec 0 0
ls -l /dev/sr0
brw------- 1 root root 11, 0 Mär 23 2002 sr0
If this file does not exist, enter: mknod /dev/sr0 b 11 0
ls -l /dev/cdrecorder
lrwxrwxrwx 1 root root 3 2003-11-24 01:58 /dev/cdrecorder -> sr0
If this link does not exist, enter: ln -sf /dev/sr0 /dev/cdrecorder
File $HOME/Desktop/CD-RW (or whatever your Icon-File is called):
.
.
Dev=/dev/cdrecorder
MountPoint=/media/cdrecorder
.
.
If these entries do not look like this, change them appropriately
This page is divided into seven sections: STEP1 describes the actions to take for the SCSI-emulation for the different versions of SuSE Linux 7.x and 8.0 & 8.1. STEP2 describes, what has to be done to install xcdroast using SuSE Linux 7.2, and 7.3 and 8.0 & 8.1. STEP3 explains how to set the permissions, if you want to run xcdroast as non-root-user and STEP4 describes how to initially set-up xcdroast as root. STEP5 describes the set-up by individual users, and STEP6 describes how users may use xcdroast. STEP7 describes how to burn DVD's.
STEP 1 (Emulating SCSI for IDE CD-Devices):
SuSe Linux 8.0 & 8.1
As root (su -) do the following:
Enable SCSI-emulation for your CD-R and CD-RW devices. In my case, the CD-RW
is on master/secondary, the DVD is on slave/secondary.
Boot loader LILO:
SCSI-emulation is done by appending info to the boot loader (here LILO):
In the file /etc/lilo.conf you will find an entry:
  append = " hdc=ide-scsi"
If you have a second cd- or dvd-device, add it, so it reads:
  append = " hdc=ide-scsi hdd=ide-scsi"
Then enter:
lilo SuSEconfig shutdown -r 0 (and the machine will reboot)
Boot loader GRUB:
SCSI-emulation is done by appending info to the boot loader (here GRUB):
In the file /boot/grub/menu.lst you will find an entry:
  kernel (hd0,2)/vmlinuz root=/dev/hda6 hdc=ide-scsi
If you have a second cd- or dvd-device, add it, so it reads:
  kernel (hd0,2)/vmlinuz root=/dev/hda6 hdc=ide-scsi hdd=ide-scsi
Then enter (attention! I think, with 'grub' the following steps are not
really necessary, with the excpetion of the reboot! But this is the safe way...):
grub-install /dev/hda (if you want to install it on the 1st hard disk) SuSEconfig shutdown -r now (and the machine will reboot)Now check, whether things are ok and use 'hwinfo' for more information:
... Driver: "ide-scsi" Device File: /dev/sr0 ... Driver: "ide-scsi" Device File: /dev/sr1 ...Since the master/secondary is the CD-writer and the slave/secondary is the DVD-reader, we enter:
( !! Configuration in our office !!) ln -sf /dev/sr0 /dev/cdrecorder ( ln -sf /dev/sr1 /dev/cdrecorder ) ln -sf /dev/sr0 /dev/cdrom ( ln -sf /dev/sr1 /dev/cdrom ) ln -sf /dev/sr1 /dev/dvd ( ln -sf /dev/sr0 /dev/dvd ) ( use the command above on our laptop)
SuSe Linux 7.3
There is an error in the description in the manual distributed for SuSE
Linux 7.3 - at least in my German version of the manual 'Die Programme'
(page 129). The so-called 'SCSI-Emulation' has not to be done as the manual
describes, but as follows:
- Start YaST1 - Administration of the System (System Administration) - Modify Configuration (Konfigurationsdatei veraendern) - scroll to "INITRD_MODULES" - here make sure, there is an entry as 'ide-scsi'; this is already the case, if you installed 7.3 from scratch, but if you have 'updated' to 7.3, this may not be here yet; then append to the line ide-scsi - Start YaST1 - Administration of the System (System Administration) - Kernel- and Bootconfiguration (Kernel- und Bootkonfiguration) - Configure LILO (LILO konfigurieren) - Make sure, there are entries such as: hdc=ide-scsi hdd=ide-scsi (assuming your CD-drives are on master and slave on the secondary bus) otherwise append the line by these entries - su - (root-password) - Edit the file /etc/init.d/boot.local : if you have an entry /sbin/modprobe ide-scsi in this file, then this is from the SuSE Linux 7.2 version; delete this line! - Make the necessary links: ln -sf /dev/sr0 /dev/cdrecorder ln -sf /dev/sr1 /dev/cdrom ln -sf /dev/sr1 /dev/dvd (the command above only if it *is* a DVD-reader) And: Here we assume, your CD-RW is on master/secondary, the DVD is on slave/secondary)
- Make sure your file /etc/fstab has the following entries:
/dev/cdrecorder /media/cdrecorder auto ro,noauto,user,exec 0 0 /dev/cdrom /media/cdrom auto ro,noauto,user,exec 0 0 /dev/dvd /media/dvd auto ro,noauto,user,exec 0 0  (This was already the case in my 7.3 installation)
- Restart your system.
Note from 23May2002: I experienced problems when starting xcdroast, after the
libimlib's were updated. Things work fine again, after I had re-installed
the older versions of libimlib-gif.so and libimlib-png.so .
These two files from the original SuSE7.3 distribution are available
here; please also
read thge file README.
SuSe Linux 7.2
- login as root
- with YaST1 (Administration / Kernel- and Bootkonfiguration / Configure LILO) configure the kernel so that you add in the append-line
    hdc=ide-scsi hdd=ide-scsi
   (assuming your CD-drives are on master and slave on the secondary bus)
  - At the end of the file /etc/init.d/boot.local add the following line:
      /sbin/modprobe ide-scsi
      ln -sf /dev/scd0 /dev/cdrecorder
      ln -sf /dev/scd1 /dev/cdrom
- Make sure your file /etc/fstab has the following entries:
/dev/cdrecorder /media/cdrecorder auto ro,noauto,user,exec 0 0  (This was already the case in my 7.2 installation)
/dev/cdrom /media/cdrom auto ro,noauto,user,exec 0 0
- Restart your system.
SuSe Linux 7.0 and 7.1
There is an error in the description in the manual distributed for SuSE Linux 7.0; see the following links:
http://sdb.suse.de/en/sdb/html/mkrapp-cdwriting-7.0.html English - SCSI-emulation for IDE-CD-devices
http://support.suse.de/de/sdb/html/mkrapp-cdwriting-7.0.html German - SCSI-Emulation von IDE-CD-Geraeten
http://sdb.suse.de/sdb/de/html/tbraza_ide_brenner.html German - Brennen von CDs mit IDE-Brennern
- login as root
- with YaST1 (Administration / Kernel- and Bootkonfiguration / Configure LILO) configure the kernel so that you add in the append-line
    hdc=ide-scsi hdd=ide-scsi
   (assuming your CD-drives are on master and slave on the secondary bus)
  - substitute in the file /etc/modules.conf the line with
      alias scsi_hostadapter off
      by
      alias scsi_hostadapter ide-scsi
  - Now do not follow the manual; instead add at the end of the file /sbin/init.d/boot.local
      a line with
      /sbin/modprobe ide-scsi
- Enter the following commands (still as root):
      ln -sf /dev/scd0 /dev/cdrom
      ln -sf /dev/scd1 /dev/cdrom1
- Make sure your file /etc/fstab has the following entries:
/dev/cdrecorder /cdrecorder auto ro,noauto,user,exec 0 0
/dev/cdrom /cdrom auto ro,noauto,user,exec 0 0
- Restart your system.
By doing so, I have emulated both an IDE CD-RW (master on secondary; hdc) as well as an IDE DVD-R (slave on secondary; hdd) as a SCSI device and this works fine.
STEP 2 (Install and Run X-CD-Roast):
SuSe Linux 8.1
With YaST2 install xcdroast and then do an online update with YaST2 / YOU; a new version of cdrecord may be downloaded.
SuSe Linux 8.0
With YaST2 install gdk-pixbuf from your SuSE DVD or the CDs (search for gdk
-- double-click on gdk-pixbuf -- OK)
Now download the newest version for SuSE 8.0. Before doing that, I recommend
to read the pages on http://www.xcdroast.org.
Go to http://xcdroast.sourceforge.net/RPMS/a10/ and click on suse-8.0/ - if this is the SuSE version you are running.
Read the comments carefully.
You will now have to onstall the library gdk-pixbuf; do this by starting
YaST2 and install gdk-pixbuf from your SuSE DVD or the CDs (search for
gdk -- double click on gdk-pixbuf -- OK).
Download the 5 RPMs:
xcdroast-0.98alpha10-1.SuSE80.i386.rpm cdrtools-mkisofs-1.11a21-1.SuSE80.i386.rpm cdrtools-libscg-1.11a21-1.SuSE80.i386.rpm cdrtools-cdrecord-1.11a21-1.SuSE80.i386.rpm cdrtools-cdda2wav-1.11a21-1.SuSE80.i386.rpmand install them by entering the following commands:
rpm -U cdrtools*SuSE80.i386.rpm rpm -U xcdroast*SuSE80.i386.rpmThe author Thomas Niederreiter writes on http://www.xcdroast.org/xcdr098/rpms-a10.html "Note: You may get an error "cannot remove /usr/lib/xcdroast-0.98 - directory not empty" while updating. Please ignore, all is fine."
SuSe Linux 7.3
- Install xcdroast (it's part of the distribution CDs) ==> The next three steps are not necessary, if you update with YaST-Online Update (YOU) ==> They *were* necessary in Fall 2001, during the first weeks after the release of SuSE 7.3 - Update to the newest version: ftp://ftp.suse.com/pub/suse/i386/update/7.3/xap2/ Point (e.g.) to xcdroast-0.98alpha9-42.i386.rpm and click to the right button of your mouse and choose 'save link as...' - su - (root password) - cd to the directory, where this rpm-file has been stored and enter: rpm -U xcdroast-0.98alpha9-42.i386.rpm
SuSe Linux 7.2
- Get the newest versions of the programs: - Use your browser and select: http://www.xcdroast.org/xcdr098/rpms-a9.html#suse72 - Click on the five links for the binaries and download them (e.g.) in your local downloads-directory (e.g. /home/user/downloads) - su - (root password) - cd /home/user/downloads - rpm -U cdrtools*.rpm xcdroast-0.98alpha9-1.i386.rpm (you will get some log-info and may get an error: "cannot remove /usr/lib/xcdroast-0.98 - directory not empty". Please ignore - all is fine. (That's what the author Thomas Niederreiter says)
STEP 3 (Setting Permissions):
For SuSE Linux 8.1 enter the following as root (changing links by actual files):
rm /usr/X11R6/lib/xcdroast-0.98/bin/cdrecord cp -p /usr/bin/cdrecord /usr/X11R6/lib/xcdroast-0.98/bin/. rm /usr/X11R6/lib/xcdroast-0.98/bin/mkisofs cp -p /usr/bin/mkisofs /usr/X11R6/lib/xcdroast-0.98/bin/. rm /usr/X11R6/lib/xcdroast-0.98/bin/readcd cp -p /usr/bin/readcd /usr/X11R6/lib/xcdroast-0.98/bin/. rm /usr/X11R6/lib/xcdroast-0.98/bin/cdda2wav cp -p /usr/bin/cdda2wav /usr/X11R6/lib/xcdroast-0.98/bin/.
For SuSE Linux 8.0 nothing has to be done here - skip STEP3!
For SuSE LInux 7.x do the following:
- Read the file /usr/share/doc/packages/xcdroast/README.nonroot if you want to run xcdroast as non-root (recommended) - The following is a short list, what has to be done to use xcdroast as a non-root user: - login as root: su - (root password) groupadd cdwrite cd /usr/bin chown root:cdwrite cdrecord cdda2wav mkisofs readcd chmod 4710 cdrecord cdda2wav mkisofs readcd cd /usr/X11R6/lib/xcdroast-0.98/bin chown root:cdwrite xcdrwrap chmod 2755 xcdrwrap
STEP 4 (Initial setup of xcdroast by root):
SuSE Linux 8.0 & 8.1
Now configure xcdroast as root first. I recommend, that this time you do
not become root using su - , but enter the following:
sux - (then enter the root password)
By doing this, your DISPLAY is set correctly automatically.
Now enter the following:
xcdroast Click on: Activate Non-Root-Mode Ok Launch X-CD-Roast Ok Setup Menus: - Device-Scan: Check, if hardware is detected correctly - CD Settings: * Preset the default writer speed (to e.g. 16x) (However, this is only necessary, if the user cannot change this value; otherwise users will get the default 1x and will have to change it anyway) * If you have another device besides the CD-RW, select the other as Primary Read Device - HD Settings: enter e.g. /images in the Path field and click on Add - Micellaneous: Set 'DSP-Device' to /dev/dsp (make use of the 'Test' button to verify your selection) - Options: Usually nothing to change - Users: Here, I activated (by a click) the 'change write parameters' and the 'change reade parameters', so users have their choice Click on: Save configuration on the left Ok Ok (on the left side) Exit (on the left side)
SuSE Linux 7.x
- If you don't do the following, users other than root will get an error message when starting xcdroast. - Still as root: start xcdroast for the first time - you may first have to set the DISPLAY variable by entering: export DISPLAY=hostname:0.0 and you may also first have to allow access to the X-server by entering: xhost +hostname from a non-root-window (!) (in both cases, use your actual hostname as 'hostname'; the command hostname gives you this name). By the way: You do not have to do the things describes in the few lines above, if you have set the DISPLAY for root as described on our small tricks web-page. --> Ok, now enter: xcdroast - Ok - Setup - CD Settings - Secondary Read Device : Choose your other device, if you have one - Hard Disk Settings : Create a Directory /images from a terminal window as root and set the permissions: su - (root-password) cd / mkdir images chmod a+rwx /images and then add this directory (/images) in the Path field - click on 'Add' - Miscellaneous: click 'at events' on 'on completion' if you like - Options: Click on 'Windows style list selections' if you like - Users: Click on 'change write paramters' and 'change read parameters' - if it's ok by you - Save configuration - ok - Ok - Exit - YesThis was everything you have to do as 'root' - now every user can run xcdroast:
STEP 5 (Setup of xcdroast by individual users):
(all Linux 7.x and 8.0 & 8.1 versions)
- xcdroast - Ok - Setup (do this at your first time you use xcdroast) - CD Settings: enter the burn-speed for your CD-writer (eg. 16x) - on the left: save configuration - Ok - on the left: Ok - Now you may use any of the two options in the main menu: * Duplicate CD or * Create CD
STEP 6 (Using xcdroast to burn CD's):
(The following description is valid for SuSE Linux 7.3 - I will soon check, whether this description is also valid for the xcdroast version 0.98alpha10 !).
The information below is specifically for the newest version of xcdroast, run under SuSE Linux 7.3 - for older versions of xcdroast, things are not quite the same, but similar.
DUPLICATING A CD - Duplicate a CD (CD Duplizieren) - CD/Image Information (already 'clicked' automatically) * Select Read-Device if necessary - Write CD (CD schreiben) * Adjust 'speeds' on upper side right (Geschwindigkeiten rechts oben waehlen) * Select CD-R/RW Type (74 min, 80 min, etc.) * Write CD (CD schreiben) - Ok * When CD is burned: Ok * Back to Main Menu (Zurueck zum Hauptmenu) * Finish - Yes (Beenden - Ja) Burn speeds measured: between 48 and 53 sec per 100 MB which is: between 125 and 113 MB per minute on CD-R CD's (for 16x) (see my local configuration at the bottom of this page) BURNING A DATA CD (E.G. FOR BACKUP PURPOSES) - Create CD ('CD erstellen') * Master tracks (Tracks mastern) * On the right window select the directory you want to write on CD * Click on 'Add' ('Hinzufuegen') * On the new window click on 'ok' if you like the default, which means that the complete path will be used on the CD * Add other directories if you wish... * Exclude directories/files similarly, but after selecting them, click on 'Exclude' ('Ausschliessen') * Click on 'ISO9660-Options' * Choose Image-Type: 'Rock Ridge + Joliet' The default values, which are activated, are for anonymous data backup; activated are: - Rock Ridge (Anonymisiert) - Allow 30-characters ISO-Filenames (Erlaube 30-Zeichen ISO-Dateinamen) - Allow deep directory trees (Erlaube tiefe Verzeichnisbaeume) - Joliet-Extensions (Joliet-Erweiterungen fuer Windows) - ISO-Files may begin with dot (ISO-Dateien duerfen mit Punkt beginnen) For my own backups, I do the following: - Click on 'Rock Ridge (Anonymisiert)' in order to deactivate this switch - Click on 'Rock Ridge (Datensicherung)' for a backup (activate this switch) * Click on the large bar at the bottom: 'Augenblickliche Werte ... sichern' * ok * Click on 'Create Session/Image' ('Session/Image erzeugen') * Select on the right side the length of your empty CD (Default: 74 min) * Click on the upper left side on 'Groesse berechnen' - ok --> if the size is too big for your empty CD, you have to exclude files... * Put an empty CD onto the CD-Writer * Click on 'Mastern und on-the-fly schreiben' - it may occur, that there is a warning message, that possibly there is not enough space on your empty CD. If you are sure there is enough space, click on 'Trotzdem fortfahren' * ok * When CD is burned: Ok * Click on the left on 'Back to the main menu' (Zurueck zum Hauptmenu) * Click on 'End' (Beenden) * 'yes' Burn speed measured: 88 sec per 100 MB which is: 68 MB per minute on a CD-RW (for 10x) (see my local configuration at the bottom of this page) READING AUDIO-TRACKS FROM A CD AND SAVING THEM ON DISK - Create CD ('CD erstellen') * Read tracks (tracks lesen) * Make sure, read-device is correct * On 'Image-Directory' (Image-Verzeichnis) select '/images' (Important!!) * Select track's in the left window (for selection of more than one track use cntl-Click) * NOTE: On my Plextor I have to turn off the 'Indexscan' under READ-Options; if this is activated, I have to kill xcdroast because it never ends.... AND: the Plextor device then seems to be blocked. As a workaround I found the following solution: - insert a data CD, mount it and list its contents - then unmount it. After this, things work fine again. (using the Matshita DVD/CD reader, things work fine) * on the lower right click on 'read selected tracks' (Ausgewaehlte Tracks einlesen) * when reading is finished: Ok * in another window: cd /images and give the audio-file the proper name, e.g.: mv track-07.wav The_Band-It\'s_All_Over_\(live\).wav --> Note, that special characters have to be preceeded by a masking \ ! * change the audio CD - and click on the left on 'CD/Image Information' and again to 'Read Tracks' in order to refresh the list of tracks... and continue as described above * to finish work: Back to main menu - end - yes BURNING AN AUDIO-CD - Create CD ('CD erstellen') * ..... to be continued.....
STEP 7 (How to burn a DVD with xcdroast and cdrecord):
0. Burning DVDs works with xcdroast-0.98alpha10-50 1. You must have SCSCI-emulation and xcdroast installed on your PC (see: http://www.seismo.ethz.ch/linux/xcdroast.html 2. Read /usr/share/doc/packages/xcdroast/README.ProDVD 3. Read ftp://ftp.berlios.de/pub/cdrecord/ProDVD/README 4. Read http://www.fokus.gmd.de/research/cc/glone/employees/joerg.schilling/private/cdrecord.html 5. Download the cdrecord-ProDVD for your system from: ftp://ftp.berlios.de/pub/cdrecord/ProDVD/ (I took the cdrecord-prodvd-1.11a21-i586-pc-linux-gnu version for my SuSE Linux 8.1 on a PC) 6. Make a copy of the original 'cdrecord': cd /usr/bin cp -p cdrecord cdrecord_orig 7. Rename the downloaded binary to 'cdrecord'. Example: cp cdrecord-prodvd-1.11a21-i586-pc-linux-gnu /usr/bin/cdrecord 8. Set the permissions of the new cdrecord to: -rws--x--- The 's' in the permissions above means, the sticky-bit is set and the user may execute the program (chmod u+sx cdrecord). 9. In your home-directory, add the following three lines to the file .bashrc : # for xcdroast and burning DVDs: CDR_SECURITY=8:dvd,clone,lowspeed:sparc.......... export CDR_SECURITY 10. Now you best login again to your system... 11. When running xcdroast, select the DVD-writer as the writing-device in the configuration menu. 12. Note, that since you now may burn larger data sets, it may take a while until the size of the image is calculated. In addition, don't worry about the selected size of the CD-R/RW; as long as your data volume is smaller than the 4.7 GB on your empty DVD, things will work fine (so also neglect the warning message, that will appear on your screen that possibly there would not be enough space on your CD-R - hey: you have now a DVD!) 13. To write 3.7 GB to a DVD-RW on my DVD-writer took about 50 minutes (it's a Toshiba SD-R5002; so not the fastest device...) - and to write about 4.4 GB (a SuSE 8.1 Pro installation DVD) on a DVD-RW took about one hour.
Useful links:
http://www.xcdroast.org/xcdr098/rpms-a9.html About xcdroast
http://www.xcdroast.org About xcdroast
My Configuration:
- Compaq Presario 5471 with Intel Celeron 500 Mhz
- CD-RW Plextor PX-W1610A (burning CD-R's 16x, CD-RW's 10x)
- CD-R (actually a DVD-ROM): Matshita SR-8586
... and since December 2002 a newer machine, including a DVD-burner...