Gravando CDs sob o Linux

ArticleCategory: [Es gibt verschiedene Artikel Kategorien]

Applications

AuthorImage:[Ein Bild von Dir]

[Photo of the Authors]

TranslationInfo:[Autor und Übersetzer]

original in en Katja and Guido Socher 

en to pt Bruno Sousa

AboutTheAuthor:[Eine kleine Biographie über den Autor]

A Katja � a editora alem� da LinuxFocus. Ela gosta do Tux, filmes & fotografia e do mar. A sua p�gina pessoal pode ser encontrada aqui.

O Guido � um f� de h� longa data do Linux e ele gosta do Linux porque � desenhado por pessoas honestas e abertas. Isto � uma das raz�es porque se chama c�digo aberto. A sua p�gina pessoal pode ser encontrada em linuxfocus.org/~guido.

Abstract:[Hier sollte eine kleine Zusammenfassung stehen]

Neste artigo descreveremos como pode gravar CDs sob o Linux.

ArticleIllustration:[Das Titelbild des Artikels]

[Illustration]

ArticleBody:[Der eigentliche Artikel. Überschriften innerhalb des Artikels sollten h2 oder h3 sein.]

Provavelmente leu o artigo da Katja Um novo mundo inteiro na nossa �ltima edi��o e saiu de viagem com o Tux. E agora tem imensos "imagens" e "sons" que deseja trazer para casa e questiona-se como pode fazer isto. Gravar tudo num CD � uma boa solu��o e neste artigo vamos dizer-lhe como � que pode fazer isto.

O que � que precisa ?

Configura��o de Hardware:
Claro que o Linux tem de estar instalado e a correr na sua m�quina e precisa de um gravador de CDs para fazer o trabalho.
Se tiver um gravador de CDs SCSI as chances de ser reconhecido imediatamente pelo Kernel s�o muito boas. S� precisa de confirmar se o seu dispositivo SCSI � suportado pelo Linux (para isto, veja a base de dados de hardware). Todos os gravadores SCSI de CDs trabalharam sob o Linux.
Para um gravador ATAPI/IDE tem de configurar a emula��o SCSI para o seu gravador parecer um dispositivo SCSI mesmo que esteja ligado atrav�s do bus IDE. Como fazer isto est� descrito no ficheiro README.atapi do xcdroast, tamb�m recomendamos que leia o HOWTO de Grava��o de CDs em linuxdoc.org
Para gravadores USB veja o HOWTO de Gravadores de CDs USB em mobilix.org/linux_usb_cd.html.
Como ambos s� experiment�mos com gravadores SCSI s� podemos repetir o que lemos aqui.

Software para gravar CDs:
Para gravar CDs, voc� precisa dos seguintes programas:

  1. cdrecord: este � o programa que, actualmente, comunica com o seu gravador de CDs.
  2. mkisofs: precisa dele para fazer CDs de dados. � usado para gerar uma imagem do sistema de ficheiros para o CD, chamada imagem ISO.
  3. cdda2wav: este � preciso para ler audio digital a partir de CDs audio.
Todos os tr�s est�o inclu�dos no pacote cdrtools que pode obter a partir de www.xcdroast.org
ou ftp.fokus.gmd/pub/unix/cdrecord/
Com estes utilit�rios pode j� gravar CDs utilizando a linha de comandos. Mas se deseja uma interface simp�tica e amig�vel precisa ainda de interfaces. Existem imensas interfaces dispon�veis mas neste artigo s� falaremos do xcdroast (http://www.xcdroast.org) e koncd (http://www.koncd.org/).O xcdroast parece ser o frontend com mais possibilidades e gostamos do Koncd porque � muito f�cil de utilizar.


Instala��o

Em muitos casos o xcdroast j� estar� instalado no seu computador, pelo menos com a distribui��o RedHat � compilado com a biblioteca pam o que significa que lhe pedir� sempre pela password root se quiser gravar CDs e provavelmente, n�o quer dar a palavra-passe do root a todos os utilizadores que queiram gravar CDs. Um segundo sen�o � n�o poder iniciar o programa remotamente pela rede. Assim sendo � melhor fazer download da �ltima vers�o a partir de http://www.xcdroast.org. Isto deve ser suficiente visto que existem pacotes pr�-compilados para a maioria das distribui��es dispon�veis.
O koncd pode ser obtido a partir de www.koncd.org. As vers�es recentes do koncd assentam nas novas caracter�sticas QT/KDE. Se n�o quiser passar algum tempo a actualizar as bibliotecas do QT e do KDE pode utilizar uma vers�o mais antiga do koncd. Para este artigo utiliz�mos o koncd-0.7.5 sob o redhat 7.1.

Gravando CDs como um utilizador normal (n�o-root)

Para gravar CDs voc� precisa de ter permiss�es de escrita nos dispositivos /dev/sg* que s�o utilizados para a comunica��o com o hardware. Mas o cdrecord utiliza extens�es em tempo real para evitar "buffer underruns" durante o processo de escrita, o que requer, tamb�m permiss�es de root. Assim a melhor solu��o � utilizar o SUID no cdrecord e cdda2wav. Uhh ? SUID ? N�o se preocupe. Pode ler o artigo do Guido acerca de permiss�es de ficheiros se quer saber exactamente o que �. De momento basta digitar os dois seguintes comandos e esquecer-se deles novamente :-)

chmod 4111 /usr/bin/cdrecord
chmod 4111 /usr/bin/cdda2wav

Tenha precau��o que isto pode ser um potencial risco, mas n�o �, definitivamente. menos seguro do que dizer a toda a gente que deseja gravar CDs qual a palavra-passe do root.
Agora pode testar se o seu gravador de CDs � reconhecido correctamente. Corra simplesmente:

cdrecord -scanbus

Se tudo est� bem, ent�o devia var algo parecido com isto:

0,6,0 6) 'PLEXTOR ' 'CD-ROM PX-W8220T ' '1.03' Removable CD-ROM

Os n�meros e a descri��o podem ser diferentes, dependendo da sua configura��o de hardware.
Pode, alternativamente, clicar no bot�o SETUP do xcdroast ou koncd e verificar se o seu gravador � reconhecido correctamente. correctly.
Comecemos, ent�o, finalmente a gravar um CD.

Notas gerais acerca da grava��o de CDs

Existem quatro passos necess�rios para gravar CDs:
  1. Tem de seleccionar os dados/m�sica que deseja gravar num CD.
  2. Tem de definir algumas op��es para o CD que vai ser gravado. Por exemplo quando deseja gravar um CD audio tem de escolher entre o modo TAO e DAO ou para um CD de dados tem de definir algumas op��es para o sistema de ficheiros.
  3. Deve criar um direct�rio de imagem com os ficheiros que deseja gravar para o CD. Se s� deseja duplicar completamente, um outro CD voc� "escrever� on the fly" caso contr�rio tem de criar uma imagem primeiro no disco r�gido.
    Um direct�rio imagem � um espa�o de armazenamento tempor�rio para os dados que v�o ser escritos para o CD. Para os CDs audio isto s�o ficheiros indexados e os ficheiros wav cont�m a m�sica e os CDs de dados s�o um ficheiro muito grande chamado imagem ISO.
  4. Grava actualmente o CD.
Geralmente, os CDs precisam de ser escritos de "uma s� ida" e o fluxo de dados n�o perturbado durante o processo de escrita. Gra�as �s extens�es de tempo real os buffer underruns que conduzem a CDs queimados s�o s� um problema do utilizadores do windows. Com o Linux n�o precisa, realmente, de "burn proof". Existe um buffer especial, chamado FIFO, dentro do gravador de CDs para compensar pequenos dist�rbios o que, normalmente, � suficiente para evitar falhas de grava��o no Linux. Contudo deve ser cuidadoso e n�o deve fazer coisas que precisem de muito poder de computa��o. Pode navegar na Web, compilar software,... mas apagar um ficheiro grande pode ser um problema e talvez seja suficiente para perturbar o processo o que resultado num CD queimado.
Se est� preocupado com os buffer underruns pode utilizar a op��o de simula��o de escrita (dummy write) para primeiro testar se a escrita do CD trabalha antes de o queimar. O processo de grava��o � testado com dados reais, mas o laser dentro do gravador de CDs � desligado. � sempre melhor fazer um teste em vez de ter de repetir tudo novamente.
O facto de ter de gravar de "uma s� ida" significa que se esqueceu, mesmo de um simples ficheiro voc� tem de gravar o CD novamente. Existe uma possibilidade de multisess�o onde adiciona algo mais tarde, mas n�o falaremos disto aqui porque com a multisess�o n�o pode ler o CD em muitos gravadores de CD visto que n�o est� pronto e o pre�o de um CD est� t�o baixo que nunca tivemos uma raz�o para o usar.

Configura��o

Quando inicia o koncd ou o xcdroast, reconhecer� que ambos t�m um bot�o de setup. Aqui pode descobrir se o seu gravador � reconhecido correctamente e definir op��es gerais.
[xcdroast: run as root to configure] Olhemos para o setup do xcdroast e do koncd:

CDs de m�sica (audio) (Puros)

Aqui, deve primeiro pensar um pouco no formato. Se a can��o � a partir de outro CD n�o h� problema. � s� avan�ar e copiar. Por outro lado deve notar que o cdrecord reconhece ficheiros au e wav e converte-os automaticamente para os tocar no seu leitor de CDs mas outros formatos precisa de os converter primeiro se n�o quiser ouvir, mais tarde, s� ru�do. Para converter um ficheiro a partir de mp3 para wav pode fazer o seguinte na linha de comandos:
mpg123 -w /tmp/song.wav song.mp3
Isto permite-lhe obter CDs audio normais a partir de m�sica mp3. Ocupa mais espa�o mas pode ser tocado em quase todos os leitores de CDs.
Finalmente ao gravar o CD pode escolher se quer a c�pia no modo TAO ou DAO. No modo TAO ter� 2 segundos de pausa entre cada can��o enquanto que no modo DAO n�o tem isto o que o torna o modo de escolha para grava��es de m�sica ao vivo. TAO= Track at Once (pista de uma s� vez) e DAO= Disk at Once (disco se uma s� vez).
Pode copiar um CD completamente ou misturar m�sicas a partir de CDs diferentes ou outros ficheiros de som, por exemplo obtidos da internet.

Vejamos, primeiro como pode copiar um CD sem altera��es:

[xcdroast Duplicate CD]


Vejamos agora o que tem de fazer se quiser gravar um CD com m�sica de v�rios s�tios:

CDs de dados (Puro)

Para os CDs de dados precisa de um sistema de ficheiros ou, como normalmente se diz o CD tem de ser formatado. Tem de escolher o sistema de ficheiros que deseja. Esta escolha depender� do sistema operativo no qual quer ler os dados. O standard ISO-9660, que descreve o sistema de ficheiros do CD, por exemplo n�o permite ficheiros de nomes compridos. Por isso foram desenvolvidas extens�es para este standard. Para o Linux e Unix as extens�es RockRidge s�o utilizadas, a Microsoft utiliza as extens�es Joliet. Com o formato RockRidge pode tamb�m ter permiss�es, etc. como j� o sabe do seu sistema.
A solu��o recomendada � utilizar as extens�es RockRidge e Joliet no mesmo CD.
Se s� quiser copiar um CD a partir de um outro existente, n�o tem de se preocupar com isto porque o CD j� possui um sistema de ficheiros que tamb�m � copiado.

[xcdroast Master CD]

Se quiser copiar dados a partir do seu disco r�gido :
[koncd Master CD]

Backup do seu direct�rio de trabalho

Basicamente pode salvaguardar tudo em CD com o m�todo descrito em "CDs de dados (puros)". Se os dados no seu direct�rio de trabalho forem demasiado grandes para caberem num CD ent�o precisa de seleccionar subdirect�rios e escrev�-los para um CD diferente.

Dicas e Truques:

Pode ser �til verificar se a imagem ISO � correcta antes de proceder � grava��o final. Para fazer isto pode montar a imagem ISO como se fosse um CD real:

Mude para root: su -
Crie um direct�rio vazio (conhecido como ponto de montagem): mkdir /tmp/mycd
Monte a imagem ISO (ligue a imagem ISO ao direct�rio):
mount -o loop -t iso9660 Image.iso /tmp/mycd
Agora pode utilizar o comando "ls" para inspeccionar a imagem do CD: ls /tmp/mycd
Se lhe parece ok desmonte-o: umount /tmp/mycd

... e grave a imagem para o seu CD.

Utilit�rios de linha de comandos

Acima discutimos duas interfaces gr�ficas para gravar CDs mas pode tamb�m gravar CDs utilizando somente a linha de comandos. Se olhar para a p�gina do manual do cdrecord ver� que existem centenas de op��es, uuuhh... n�o tenha medo. � mais f�cil do que parece � primeira. Obtenha as duas scripts em perl o cdrecordeasy e o mkisofseasy.
Est�o inclu�dos no pacote easycdscripts (p�gina de download)
Descomprima-os com o comando

tar zxvf easycdscripts-0.1.tar.gz

Agora corra o comando cdrecord -scanbus. Olhe para a linha onde pode ver o seu gravador de CDs e lembre-se dos n�meros que v� no princ�pio. Devia ser algo como 0,4,0 ou 0,6,0 ....
Edite o ficheiro cdrecordeasy introduzindo este n�mero atr�s da linha que diz $dev=... Encontra-la-� algures no princ�pio.
Agora a instala��o das nossas duas pequenas scripts est� terminada. Criar, agora um CD de dados � muito f�cil:
  1. Copie todos os ficheiros que deseja ter no CD para um direct�rio (por exemplo ~/cdrom). Os discos r�gidos s�o bastante grandes e baratos nestes dias e n�o deve constituir problema a c�pia de algumas centenas de MB.
  2. Corra o comando: mkisofseasy ~/image.iso ~/cdrom
    Isto criar� uma imagem ISO de todos os ficheiros no direct�rio ~/cdrom.
  3. Grave o CD correndo o comando: cdrecordeasy ~/image.iso
E � isto. Muito mais f�cil do que parecia no princ�pio, n�o �!? :-)

Divirta-se com os seus CDs!

Refer�ncias