How do I write CD at Debian Linux command prompt

by on September 7, 2005 · 7 comments· LAST UPDATED March 23, 2007

in , ,

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.



If you would like to be kept up to date with our posts, you can follow us on Twitter, Facebook, Google+, or even by subscribing to our RSS Feed.


{ 7 comments… read them below or add one }

1 imp September 11, 2005 at 8:52 pm

Or, you can simply use BashBurn:

http://bashburn.sourceforge.net/

Reply

2 imp September 11, 2005 at 8:54 pm

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

Reply

3 Rock Da Linux September 12, 2005 at 12:10 am

Thanks imp pointing out nice little tool :)

Reply

4 Allotment March 23, 2007 at 1:21 pm

debain typo in title

Reply

5 nixcraft March 23, 2007 at 2:20 pm

Allotment,

Thanks for heads up!

Reply

6 sujith August 28, 2009 at 6:29 am

This brief explanation is simple and very usable.we need to know how to configure if it is a SATA CD/DVD writer?

Reply

7 Anonymous June 22, 2010 at 6:45 pm

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

Update please?

Reply

Leave a Comment

You can use these HTML tags and attributes for your code and commands: <strong> <em> <ol> <li> <u> <ul> <blockquote> <pre> <a href="" title="">
What is 7 + 6 ?
Please leave these two fields as-is:
Solve the simple math so we know that you are a human and not a bot.

Previous post:

Next post: