How do I write CD at Debian Linux command prompt

Posted on in Categories Backup, Debian Linux, Linux, Sys admin, Tips last updated November 16, 2013

We have couple of Debian Linux boxes with CD/DVD combo drive. We have an automated solution over network to backup all data everyday. However recently we decided to make backup of logs and few modified application on a CD. Don’t ask me why but my manager asked me to do so. He said if not possible to take backup using command line fetch all files using ftp/http to windows XP and then write them :/?

Since I was aware of command line based cd-writing utilities, I told him I can do it on server itself. Here is my server setup:

P4 System running Debain Linux with custom compile 2.6.xx.xx series kernel. In order to write CDs at command prompt you need programs:
1)mkisofs – Create an ISO file image so that cdrecord can use the same to burn on a CD.
2)cdrecord – It is a utility capable of burning an actual disc i.e. ISO images created with mkisofs.
Since these packages were not installed I quickly run the commands to install it:
# apt-get install mkisofs
# apt-get install cdrecord

Configure cdrecord to write a CD

Under kernel version 2.6 you would not want to use ide-scsi for
CD-writing, the new kernel provides a superior access method that finally supports DMA access when writing CDs. Find out the device name used by your cdwriter i.e. find out the virtual SCSI ID of your device:
# cdrecord dev=ATA: -scanbusOutput:

Cdrecord-Clone 2.01a34 (i686-pc-linux-gnu)
Copyright (C) 1995-2004 Jrg Schilling
scsidev: 'ATA:'
devname: 'ATA'
scsibus: -1 target: -1 lun: -1
Warning: Using badly designed ATAPI via /dev/hd* 
Linux sg driver version: 3.5.27
Using libscg version 'schily-0.8'.
 1,0,0 100) 'SONY' 'CD-Writer' '1.0g'
 1,1,0 101) *
 1,2,0 102) *
 1,3,0 103) *
 1,4,0 104) *
 1,5,0 105) *
 1,6,0 106) *
 1.7.0 107) *

As you see SONY CD-WRITER at 1,0,0. The comma separated number you need to pass to command line option as -dev=1,0,0. You can write an ISO image to CD with the following command:
# cdrecord -v -dev=ATA:1,0,0 speed=4 mydata.iso


  • -speed=XX : Specify writing speed.
  • -v : Verbose output.
  • -dev : The virtual SCSI ID of your device

Here is an example, to create backup of /home/hosting-app/ directory:

a) Create an ISO file that can be opened on both windows and Linux computer:
$ mkisofs -v -o /tmp/happ.iso -R /home/hosting-app

b) Write an ISO (happ.iso) to CD i.e. burn an image:
$ cdrecord -v -dev=ATA:1,0,0 speed=4 /tmp/happ.iso

Read man pages of cdrecord and mkisofs for more information.

Update: The latest version of Debian Linux, try updated package called wodim.

7 comment

  1. [code]
    WARNING: the ATA: method is considered deprecated on modern kernels!
    Use –devices to display the native names.

    Update please?

Leave a Comment