Raul Fernandes (raulgf@solar.com.br)
Baseado no HowTo CD-Writing escrito por Winfried Trümper
Muitas gravadoras de CD-ROM são atualmente suportadas pelo Linux. A lista não é completa, porque os drivers são genéricos e, por isso, a cada dia se descobre uma nova gravadora que o Linux suporta. A melhor maneira de saber se a sua é suportada é testando.
Para habilitar a sua gravadora para gravar CD-ROMs, você deve recompilar o kernel. As opções são específicas para 3 tipos de gravadoras: as IDE/ATAPI, SCSI e de porta paralela (ou externas). Olhe a tabela abaixo e selecione os drivers do kernel, como indicados:
Grupo | Descrição | Nome do Módulo | SCSI | IDE/ATAPI | Porta Paralela |
BLOCK | Enhanced IDE/MFM/RLL | Y | |||
BLOCK | IDE/ATAPI CDROM | ide-cd | M | ||
BLOCK | SCSI hostadaptor emulation | ide-scsi | M | ||
BLOCK | Loopback device loop | Y/M | Y/M | Y/M | |
PARIDE | Parallel port device | paride | Y/M | ||
PARIDE | Parallel port ATAPI CD-ROMs | M | |||
PARIDE | Parallel port generic ATAPI | M | |||
PARIDE | (selecione o driver para a sua gravadora se precisar) | Y | |||
SCSI | SCSI support | scsi_mod | Y/M | Y/M | |
SCSI | SCSI CD-ROM support | sr_mod | Y/M | Y/M | |
SCSI | Enable vendor-specific | Y | Y | ||
SCSI | SCSI generic support | sg | Y/M | Y/M | |
SCSI | (selecione o driver para a sua gravadora) | Y | |||
FS | ISO 9660 CDROM filesystem | iso9660 | Y | Y | Y |
FS | Microsoft Joliet cdrom | Y/M | Y/M | Y/M |
Entre os drivers que se pode escolher colocar dentro do kernel (Y) ou como módulo (M), por preferência minha, é melhor colocar dentro do kernel, com exceção dos módulos SCSI para gravadoras IDE/ATAPI, que devem ser colocados como módulos para permitir o uso da gravadora como leitora de CD-ROM comum. Os módulos SCSI são usados pelas gravadoras IDE porque o software de gravação do Linux somente suporta SCSI. Para resolver esse problema, criaram um emulador de SCSI para gravadoras IDE.
Depois de escolher esses drivers, recompile o kernel.
Para gravadoras IDE/ATAPI, adicione essas linhas ao arquivo /etc/modules.conf ou /etc/conf.modules:
alias scd0 sr_mod alias scsi_hostadaptor ide-scsi options ide-cd ignore=hdd
A última linha se refere ao drive do cdrom, no caso o hdd ou slave da IDE 1. ATENÇÃO: Para usar a gravadora como um CD-ROM comum, comente a última linha do arquivo acima, digite depmod -a e carregue o módulo do CD-ROM, digitando modprobe ide-cd.
Certo, depois de reinicializar o Linux, é só digitar:
modprobe scd0 modprobe scsi_hostadaptor
Agora, reinicialize o Linux.
Digite:
cdrecord -scanbus
Vai aparecer a sua gravadora e o número do dispositivo dela, parecido com isso:
cdrecord -scanbusCdrecord release 1.8a29 Copyright (C) 1995-1999 Jörg Schilling scsibus0: 0,0,0 0) 'HP ' 'CD-Writer+ 8100 ' '1.0g' Removable CD-ROM 0,1,0 1) * 0,2,0 2) * 0,3,0 3) * 0,4,0 4) * 0,5,0 5) * 0,6,0 6) * 0,7,0 7) *
Esse comando vai ter dar o número do dispositivo que você vai precisar para gravar os CD-ROMs. São 3. Nesse exemplo, são 0, 0 e 0.
Pronto. Agora vamos para a gravação em si. Existem 2 formas de gravar: criando primeiro a imagem e depois gravar ela no CD ou criar a imagem ao mesmo tempo que grava no CD. A primeira opção é a preferida, porque a segunda requer maior poder de processamento da máquina. Mesmo que seu computador seja potente (Pentium II, por exemplo), ainda é preferível usar a primeira opção, assim alcança uma maior velocidade de gravação tendo menor risco de erros. Vou explicar a primeira opção agora. Apesar de explicar como criar o CD na linha de comando, existem ótimos programas com interface gráfica para facilitar a gravação.
Para criar a imagem do CD, digite:
mkisofs -r -o nome_da_imagem diretório_dos_arquivos
A opção -r é para usar a extensão RockRidge (32 caracteres, suporte a links e outras coisas. resumindo, use-a). O diretório somente pode ser um, ou seja, todos arquivos devem ser colocados dentro do mesmo diretório. Melhor de tudo, dá para ver como ficou a imagem. Monte o arquivo de imagem e percorra os diretórios como se fossem o próprio cdrom (não vi no windows uma opção dessas e faz muita falta):
mount -t iso9660 -o ro,loop=/dev/loop0 nome_da_imagem /diretório_de_montagem
Então, queime o disco:
cdrecord -v speed=4 dev=0,0,0 -data nome_da_imagem
A velocidade é a que você quiser ou puder (a gravadora é claro. O Linux não tem problema com a velocidade. Aqui pego 4x tranquilíssimo, enquanto no windows rodava somente em 2x com medo de dar erro). Outra coisa interessante é que o Linux grava os CDs um pouco mais rápido que o windows. Algo em torno de 1 a 3% do tempo total. Curioso... O dev é aqueles números do dispositivo que falei. São 3. No meu caso, foram 0,0,0, mas verifique. E nome_da_imagem é o nome do arquivo de imagem (claro, se precisar, o caminho dele também). Se disco for regravável, adicione a opção blank=fast ao comando, assim:
cdrecord -v speed=4 dev=0,0,0 blank=fast -data nome_da_imagem
Para gravar ao mesmo tempo que produz a imagem, use o seguinte:
IMG_SIZE=`mkisofs -R -q -print-size diretório_dos_arquivos/ 2>&1 | sed -e "s/.*= //"` echo $IMG_SIZE [ "0$IMG_SIZE" -ne 0 ] && mkisofs -r diretório_dos_arquivos/ | cdrecord speed=2 dev=0,6,0 tsize=${IMG_SIZE}s -data -
Como pode ver, é bem mais complicado, mas é somente isso.
Somente mais uma coisa, se estiver em dúvida sobre a gravação, use a opção -dummy após todas as outras para testar a gravação, sem realmente gravar nada.
Dúvidas e mais informações sobre gravação de CD-ROMs no Linux, me contacte pelo email (raulgf@solar.com.br ou rgfernandes@yahoo.com).
O Arquivo Histórico do BR-Linux.org mantém no ar (sem alteração, exceto quanto à formatação) notícias, artigos e outros textos publicados originalmente no site na segunda metade da década de 1990 e na primeira década do século XXI, que contam parte considerável a história do Linux e do Open Source no Brasil. Exceto quando indicado em contrário, a autoria dos textos é de Augusto Campos, e os termos de uso podem ser consultados na capa do BR-Linux.org. Considerando seu caráter histórico, é provável que boa parte dos links estejam quebrados, e que as informações deste texto estejam desatualizadas.