Revista Do Linux
EDIÇÃO DO MÊS
 CD do Mês

 Capa
 Entrevista
 Corporativo
 Distro
 Segurança
 Hardware
 Produto
 Primeiros Passos
 Sistema
 

Pronto para queimar

Aprenda a configurar um gravador de CD e saia "queimando" tudo o que quiser

Assim como aconteceu com scanners, impressoras, webcams, modems e vários outros periféricos, os drives de CD-R ou CD-RW estão se tornando cada vez mais populares. Seja para fazer backups de dados importantes, seja para gravar coletâneas com as MP3 "ripadas" de seus CDs de áudio, todos querem entrar nessa nova onda. Com isso, aumentou também o número de usuários querendo saber como configurar esses periféricos no Linux.

Os procedimentos aqui descritos foram testados em um Conectiva Linux e em um RedHat Linux, com kernel da série 2.2.x. Embora o procedimento para outras distribuições seja semelhante, não garantimos os mesmos resultados.

Todo o processo consiste em configurar o seu kernel para que ele possa utilizar a emulação de dispositivos SCSI, ou seja, para que ele reconheça sua gravadora IDE como sendo SCSI. Algumas distribuições já vêm prontas para isso, e em outras o kernel precisa ser recompilado. Para descobrir qual é o seu caso, abra um terminal, vá até o diretório /usr/src/linux e execute o comando make xconfig ou, se você estiver no modo texto, make menuconfig. Compare a configuração do seu kernel com esses exemplos:

Vá até a seção Block Devices e configure-a conforme mostra a Figura 1.

Verifique se tudo está como na Figura 1. Caso não esteja, configure o kernel seguindo o exemplo, pois será necessário recompilá-lo. Volte para o menu principal. Vá até a seção SCSI support e configure-a seguindo a Figura 2.

Volte para o menu principal. Caso a configuração do seu kernel esteja idêntica à mostrada nas figuras 1 e 2 (esse é o caso do Conectiva Linux 5.1 e 6.0) e você não tenha precisado modificar nada, clique em Quit Without Saving e pule direto para a seção Ativando os Módulos, neste artigo. Se você precisou modificar a configuração, salve-a e recompile o kernel com a seqüência de comandos: make dep, make clean, make bzImage, make modules e make modules_install. Esse processo pode demorar algum tempo.

A nova imagem do kernel (chamada bzImage) será colocada no diretório /usr/src/linux/arch/i386/boot. Mova-a para o diretório /boot. O próximo passo é modificar o bootloader, para que ele reconheça o novo kernel.

Modificando o LILO

Edite o arquivo /etc/lilo.conf e adicione uma entrada image para o novo kernel, como no exemplo abaixo:

image=/boot/bzImage
label=gravador
root=/dev/hda3
read-only

Grave o arquivo e rode o comando /sbin/lilo para validar as alterações. A partir de agora você pode acionar o kernel com suporte a emulação SCSI digitando gravador no prompt do LILO na inicialização.

Modificando o Grub

As modificações no Grub são semelhantes às do LILO. Edite o arquivo: /boot/grub/menu.lst e adicione mais uma seção Title, como no exemplo a seguir:

Title = Gravador de CD
kernel (hd0,2)/boot/bzImage root=/dev/hda3

Salve o arquivo, e na próxima vez que você reiniciar o computador uma entrada chamada Gravador de CD aparecerá no menu.

Ativando os módulos

Após configurar o bootloader, iremos reiniciar a máquina com o novo kernel e ativar os módulos necessários para a emulação de dispositivos SCSI, desativando módulos que possam causar problemas. Liste os módulos ativos em sua máquina com o comando lsmod, e veja se o módulo ide-cd está presente. Se estiver ativo, devemos removê-lo com o comando rmmod ide-cd. Agora carregue os módulos de emulação SCSI com os comandos modprobe sg e modprobe ide-scsi. Para não ter de dar esses comandos toda vez que reiniciar a máquina, edite o arquivo /etc/rc.d/rc.local e coloque-os no final do arquivo.

Para testar se a gravadora foi reconhecida, usaremos alguns utilitários presentes nos pacotes mkisofs e cdrecord. Verifique se esses pacotes estão instalados em sua máquina com os comandos:

[*root@localhost /boot]# rpm -qa | grep -i mkisofs
[*root@localhost /boot]# rpm -qa | grep -i cdrecord

Se eles estiverem presentes, o comando acima deve retornar o nome completo de cada pacote (por exemplo mkisofs-1.8-4cl). Se um ou mais pacotes estiverem faltando, procure-os nos CD de sua distribuição e instale-os com o utilitário RPM. Para testar a gravadora siga o procedimento abaixo:

[*root@localhost /]# cdrecord -scanbus

Se tudo correr bem irá parecer algo como:

Cdrecord 1.8 (i686-pc-linux-gnu) Copyright (C) 1995-2000 Jörg Schilling
Using libscg version ‘schily-0.1’
scsibus0:
cdrecord: Warning: controller returns wrong size for CD capabilities page.
        0,0,0     0) ‘CREATIVE’ ‘CD3220E SC980114’ ‘1.02’ Removable CD-ROM
        0,1,0     1) ‘HP      ‘ ‘CD-Writer+ 9300 ‘ ‘1.0b’ Removable CD-ROM
        0,2,0     2) *
        0,3,0     3) *
        0,4,0     4) *
        0,5,0     5) *
        0,6,0     6) *
        0,7,0     7) *

A partir de agora a gravadora e os outros drives de CD-ROM da máquina deixarão de responder por um device IDE (hdX¹n2), passarão a responder por um device SCSI (srm3). Para ter certeza de que esses drives estão respondendo como dispositivos SCSI, digite:

[*root@localhost /]# dmesg | grep -i scsi

irá aparecer algo similar a:


scsi : 0 hosts.
scsi : detected total.
scsi0 : SCSI host adapter emulation for IDE ATAPI devices
scsi : 1 host.
Type:   CD-ROM ANSI SCSI revision: 02
Detected scsi CD-ROM sr0 at scsi0, channel 0, id 0, lun 0
Type:   CD-ROM ANSI SCSI revision: 02
Detected scsi CD-ROM sr1 at scsi0, channel 0, id 1, lun 0
sr0: scsi3-mmc drive:16x/24x cd/rw xa/form2 cdda tray
sr1: scsi3-mmc drive:32x/32x writer cd/rw xa/form2 cdda tray

Agora sabemos que o device pelo qual o CD-R/CD-RW irá responder é o sr1 (isso no exemplo em questão).

Vamos tentar montar um CD:

[*root@localhost /]# mount -t iso9660 /dev/sr1 /mnt/cdrom

Caso seja reportada uma mensagem de erro como:

mount: the kernel does not recognize /dev/sr1 as a block device (maybe insmod driver’?)

isso se deve ao fato de o device sr1 não existir na máquina. Para criá-lo digite:

[*root@localhost /]# mknod /dev/srn b 11 m

Caso tenha mais de um CD-ROM, mesmo que não seja gravador de CDs, você também precisa criar um device para ele. Assim, troque o n pelo número do device, ou seja, se for o primeiro, coloque srO, se for o segundo, sr1, e assim por diante, e faça o mesmo para o m da sentença acima; o exemplo abaixo mostrará como criar dois devices no caso de haver dois drives de CD-ROM, um gravador e outro não, seguindo nosso exemplo do início, onde assumimos que o CD-ROM seria o /dev/hdb e o CD-R/CD-RW seria o /dev/hdc; mas não haverá problemas se ambas forem gravadoras. Para criar os devices SCSI escreva:

[*root@localhost /]# mknod /dev/sr0 b 11 0 <–/dev/hdb (drive de CDROM)
[*root@localhost /]# mknod /dev/sr1 b 11 1 <–/dev/hdc (drive de CD-R/CD-RW)
Agora para facilitar a montagem dos dispositivos no seu sistema é interessante, mas não necessário, criar um link para eles, como mostra o exemplo abaixo:
[*root@localhost /]# ln -sf /dev/sr0 /dev/cdrom
[*root@localhost /]# ln -sf /dev/sr1 /dev/cdrw

Perceba que assumimos o device srl como sendo o gravador de CD. Caso seja o srO ou qualquer outro número mude conforme sua situação. Para facilitar as coisas, você pode criar um diretório no /mnt para servir como ponto de montagem para os drives, e adicionar entradas para os drives de CD e CD/RW no /etc/fstab. Consulte o artigo "Todos os segredos estão no /etc", na Revista do Linux, edição nº 16, para mais informações sobre o assunto.

Pronto, agora você tem configurado seu gravador de CDs e seu drive de CD no Linux, podendo fazer as cópias e backups dos seus dados à vontade. Existem várias ferramentas que permitem a gravação de CDs no Linux; o próprio cdrecord tem muitas outras opções de gravação, inclusive uma interface gráfica cheia de recursos, chamada xcdroast. Vale lembrar que, com um gravador de CDs à disposição, é muito fácil transpor as barreiras da lei e enveredar-se pelo caminho da pirataria. Copie, mas seja legal!

Vários softwares para gravação de CD possuem interfaces intuitivas e a maioria dos usuários pode "se virar" sozinha. Contudo, publicaremos, em edição futura, um artigo sobre os softwares de gravação disponíveis.


A Revista do Linux é editada pela Conectiva S/A
Todos os Direitos Reservados.

Política de Privacidade
Anuncie na Revista do Linux