How do I write CD at Debian Linux command prompt

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*
interface.
Linux sg driver version: 3.5.27
Using libscg version 'schily-0.8'.
scsibus1:
 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

Where,

  • -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.

Want to read Linux tips and tricks, but don't have time to check our blog everyday? Subscribe to our daily email newsletter to make sure you don't miss a single tip/tricks. Subscribe to our weekly newsletter here!

{ 5 comments… read them below or add one }

1 imp 09.11.05 at 8:52 pm

Or, you can simply use BashBurn:

http://bashburn.sourceforge.net/

2 imp 09.11.05 at 8:54 pm

…when you want to do it from command line, but interactively.

3 Rock Da Linux 09.12.05 at 12:10 am

Thanks imp pointing out nice little tool :)

4 Allotment 03.23.07 at 1:21 pm

debain typo in title

5 nixcraft 03.23.07 at 2:20 pm

Allotment,

Thanks for heads up!

Leave a Comment

You can use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

Previous post: Weird DNS problem

Next post: Debian Linux: Allow non-root user to write CDs