(Parte 5 de 6)

Se você quiser também pode configurar o Advanced Power Management caso você use notebook.

Fica assim:

Aqui você diz se quer suporte a Plug and Play embutidos no Kernel. Marque y nas duas subopções.

•Block devices (Aqui você configura devices com transferência em bloco, como disquete, CDROM, etc.)

Marque com y: Normal PC floppy disk support, Enhaced IDE/MFM/...,

Include IDE/ATA-2 DISK support, Include IDE/ATAPI CDROM support, CMD640..., RZ100..., Generic PCI IDE chipset support, Generic PCI busmaster DMA support, Use DMA by default when available e RAM disk support.

Dê uma olhada:

•Networking options (Aqui você configura as opções de network. Se você estiver perdido, lembre-se do HELP.)

Allow large windows(caso tenha 16 Mb ou mais de RAM).

Marque com y: Packet socket, Unix domain sockets, TCP/IP networking e

Nesta opção você pode configurar também o Appletalk se quiser se comunicar com um Mac.

•SCSI support

Se você possuir algum dispositivo SCSI, configure-o aqui. Marque n na primeira subopção caso contrário.

•Network device support Aqui você configura o suporte a alguns protocolos e devices de rede.

Marque com y a primeira opção e "P (point-to-point) protocol". Marque com m "Dummy net driver support".

•Ethernet (10 or 100 Mbits)

Configure aqui sua placa de rede compatIvel com Ethernet, marcando a primeira opção com y e escolhendo sua placa dentre as listadas.

Caso não possua uma placa de rede Ethernet, marque n na primeira opção.

•Mais rede

Você pode configurar Appletalk devices, Wan, Token Ring nas respectivas opções.

•Conexão remota

Você pode configurar Radio amador (Amateur Radio support) e ISDN nas respectivas opções.

•IrDA subsystem support

Aqui você pode configurar os protocolos para comunicação através de Infra Vermelho (Infra Red).

Também terá que configurar "Infrared-port devices drivers", caso configure o que foi descrito acima.

•Character Device

Aqui você configura os devices de caracter, como terminais, impressoras, etc.

Marque com y: Virtual Terminal, Support dor console on virtual terminal,

Standard/generic (dumb) serial support, UNIX98 PTY support, Parallel printer support e Support IEEE1284 status readback.

•Video For Linux

Aqui você pode configurar webcams, placas AM/FM e outros devices que dizem respeito à captura de video.

•Joystick support Aqui você configura vários tipos de Joysticks de jogos.

Se quiser usar joystick, marque a primeira opção com y. Depois escolha seu joystick na lista abaixo (marcando com y).

• Filesystem Aqui você configura os sistemas de arquivos que o Linux vai suportar.

Marque com y: Kernel automounter support, DOS FAT fs support, MSDOS fs support, VFAT (Windows-95) fs support, ISSO 9660 Filesystem support, Microsoft Joliet CDROM extensions, /proc filesystem support, /dev/pty filesystem for UNIX98 Ptys e Second extended fs support.

•Network File Systems

Aqui você configura os sistemas de arquivo de rede que o Linux vai suportar.

•Native Language Support Configuração de língua nativa.

Marque com y a opção: "Codepage 860 (Portuguese)".

•Console drivers Marque apenas a opção "VGA text console".

• Sound Se você possui uma placa de som este é o lugar para configurá-la.

Marque com y a primeira opção. Depois escolha a sua placa de som (marcando y) e preencha os campos indicando porta, irq e dma.

•Additional low level sound drivers

Aqui você configura alguns detalhes de placas de som, como por exemplo o MIDI das Sound Blaster AWE.

6.4 Compilando

Depois de configurar tudo, salve a configuração em um arquivo ("Store Configuration to file"). Depois salve e saia ("Save and Exit"). Pronto, agora saia do X para poupar memória: Ctrl + Alt + Backspace.

Execute: 41

# make dep Quando esta etapa acabar, compile e instale os módulos (marcados com m):

# make modules # make modules_install

Quando acabar com os módulos você irá compilar o Kernel. Você possui várias opções. Algumas são: bzImage, bzlilo, zImage, etc. Eu costumo usar o bzlilo, pois esta opção compacta bem o Kernel e já o instala para mim automaticamente. Então executo:

# make bzlilo

Pronto, veja se não deu nenhum erro ereinicie o computador: Ctrl + Alt + Delete.

Espere acabar de compilar. Esta parte demora mesmo (entre 15 minutos e, no máximo, 1 hora, dependendo da velocidade do computador). Este é o único momento em que o Linux precisa ser reiniciado (o que acontece constantemente em outros sistemas).

6.5Compilando o Kernel na Debian

Compilar o kernel na distribuição Debian é um pouco mais organizado que em outras distribuições. Ela vem com um programa chamado kernel package que permite recompilar o Kernel e gerar um pacote da Debian. Dessa maneira, você instala o kernel com o comando dpkg, conforme esse artigo de introdução. Isso permite você ter várias versões do kernel customizados. Também é possível gerar um kernel para um 386 compilado, em um Pentium (que é mais rápido).

Vamos aos passos: o passo inicial, seja make config, menuconfig ou xconfig é igual ao descrito anteriormente. O próximo comando é:

# make-kpkg –clean (para limpar a compilação) para gerar um pacote .deb no diretorio /usr/src: make-kpkg --revision=custom1.0 kernel_imagem .

Dai é só instalar com: # dpkg -i /usr/src/ker*deb Quando você rodar o dpkg, ele irá rodar o lilo e instalar o kernel.

Quando sai uma nova versão do kernel, é inviável baixar todo o kernel novamente para compilar quando foram mudadas apenas algumas coisas. Por exemplo, o tamanho médio das versões do kernel 2.2.* é de 12 Mb, enquanto que os patches não passam de 2 Mb. Por isso, é mais prático pegar o patch, que nada mais é do que a diferença entre sucessivas versões dokernel.

Usar o patch é simples, vamos a um exemplo:

Digamos que você tenha o fonte da versão do kernel 2.2.13 e saiu a versão 2.2.14.

Então, coloque esse arquivo (que chamaremos patch-2.2.14) no diretório do kernel antigo antigo (/usr/src/linux) e digite:

# patch -p1 < patch-2.2.14

Esse comando irá aplicar as mudanças do kernel 2.2.14 na versão 2.2.13. Agora, é só compilar o 2.2.14.

7 - 7 - Gerenciamento de Pacotes com RPM Gerenciamento de Pacotes com RPM

O Gerenciador de Pacotes Red Hat (RPM) é um sistema que pode ser executado tanto no Conectiva Linux quanto em qualquer outro sistema Unix e é um produto distribuído sob os termos da licença GPL.

Para usuários finais, o RPM disponibiliza uma série de implementações que facilitam a manutenção do sistema. Instalar, desinstalar ou atualizar um programa que esteja no formato de um pacote RPM pode ser feito através de um único comando, sendo que o gerenciador cuidará de todos os detalhes necessários ao processo.

Para desenvolvedores, o RPM permite manter fontes e binários e suas atualizações separadamente, empacotando-os de forma configurável para os usuários finais.

O gerenciador mantém uma base de dados com os pacotes instalados e seus arquivos, o que permite executar pesquisas complexas e verificações de maneira ágil e segura. Durante atualizações de programas, por exemplo, o RPM administra, por exemplo, arquivos de configuração, mantendo as configurações já realizadas no sistema, uma tarefa impossível por exemplo para programas em formato tar.gz.

7.1Objetivos do RPM

7.1.1Atualização de Softwares

Com o gerenciador de pacotes é possível atualizar componentes individuais do sistema, sem a necessidade de reinstalação total. Ao se ter uma nova versão de um determinado pacote baseado em RPM, a atualização se dá de maneira rápida, inteligente e totalmente automatizada. Os arquivos de configuração são mantidos durante o processo, não se perdendo assim uma personalização já efetuada.

O RPM foi projetado, ainda, para atender a pesquisas sobre os pacotes já instalados e seus arquivos. É possível pesquisar a que pacote pertence determinado arquivo e qual a sua origem. Os arquivos RPM estão em formato compactado e com um cabeçalho padrão contendo informações úteis sobre os pacotes e seus conteúdos.

1.1.1Verificação do Sistema

Outra ferramenta poderosa é a verificação de pacotes. Caso algum arquivo importante de algum pacote tenha sido removido, pode-se inicialmente verificar se o pacote apresenta alguma anormalidade. Caso detectada é possível reinstalar o pacote, preservando-se as configurações e personalizações existentes.

Um dos principais objetivos do RPM é possibilitar a distribuição dos fontes originais, idênticos aos distribuídos pelos autores dos programas e as alterações separadamente. Com o gerenciador de pacotes é possível ter os fontes e as atualizações que foram aplicadas. Assim torna-se possível comparar as alterações efetuadas nos programas a cada nova versão que seja disponibilizada.

7.2Instalação

Pacotes RPM têm nomes de arquivos com o seguinte formato: foo-1.0-1.i386.rpm, que incluem o nome do pacote (foo), versão (1.0), release (1) e plataforma (i386) e o sufixo rpm indicando tratar-se de um pacote RPM. A instalação de um programa é feita através de uma única linha de comando, como por exemplo:

# rpm –ivh foo-1.0-1.i386.rpm

Como se pode observar, o RPM apresenta o nome do pacote (o qual não tem necessariamente o mesmo nome do programa) e apresenta uma sucessão de caracteres # atuando como uma régua de progresso do processo de instalação.

O processo de instalação foi desenvolvido para ser o mais simples possível, porém eventualmente alguns erros podem ocorrer, dentre estes:

7.2.1Pacotes já Instalados

Se o pacote já tiver sido instalado anteriormente será apresentada a seguinte mensagem:

# rpm –ivh foo-1.0-1.i386.rpm foo packaged foo-1.0-1.i386.rpm is already installed error: foo-1.0-1.i386.rpm cannot be installed

Caso se deseje instalar o pacote de qualquer forma, pode-se usar o parâmetro -replacekgs na linha de comando, fazendo com que RPM ignore o erro.

7.2.2Arquivos Com Conflitos

Ao se tentar instalar um pacote que contém um arquivo já instalado por outro pacote, será apresentada a seguinte mensagem:

# rpm –ivh foo-1.0-1.i386.rpm foo /usr/bin/foo conflicts with file from bar-1.0-1 error: foo-1.0-1.i386.rpm cannot be installed

Caso se deseje ignorar o erro, pode-se usar o parâmetro -replacefiles na linha de comando.

7.2.3Dependências Não Resolvidas

Pacotes RPM podem depender da instalação prévia de outros pacotes, o que significa que eles necessitam daqueles para poderem ser executados adequadamente. Caso se deseje instalar um pacote que dependa de outro não localizado será apresentada a seguinte mensagem:

# rpm –ivh foo-1.0-1.i386.rpm failed dependencies: foo is needed by bar-1.0-1

Para corrigir esse erro será necessário instalar o pacote solicitado. Caso se deseje que a instalação ocorra de qualquer forma, pode-se utilizar o parâmetro -nodeps na linha de comando. Porém, provavelmente o pacote não funcionará ou o fará de forma incorreta.

7.3Desinstalação Para desinstalar um pacote utilize o comando:

# rpm -e foo

Onde foo é o nome do pacote e não do arquivo utilizado na instalação (por exemplo foo-1.0-1.i386.rpm).

Pode ser encontrado um erro de dependência durante o processo de desinstalação de um pacote (outro pacote necessita da sua existência para poder funcionar corretamente). Neste caso será apresentada a seguinte mensagem:

Para ignorar a mensagem de erro e desinstalar o pacote deve ser utilizado o parâmetro -nodeps na linha de comando.

1.2Atualização Para atualizar um pacote utilize o comando:

foo################################

$ rpm -Uvh foo-1.0-1.i386.rpm

O RPM desinstalará qualquer versão anterior do pacote e fará a nova instalação preservando as configurações. Sugerimos utilizar sempre a opção -U, uma vez que ela funciona perfeitamente, mesmo quando não há uma versão anterior do pacote.

Uma vez que o RPM executa um processo de atualização inteligente, é apresentada uma mensagem do tipo: saving /etc/foo.conf as /etc/foo.conf.rpmsave o que significa que os arquivos de configuração existentes estão salvos, porém mudanças no programa podem tornar esse arquivo de configuração não mais compatível com o pacote (o que não é comum). Neste caso as adequações necessárias devem ser feitas pelo usuário.

Como o processo de atualização é uma combinação dos processos de desinstalação e instalação, algumas mensagens de erros podem surgir, como por exemplo, ao se tentar atualizar um pacote com uma versão anterior à versão corrente, será apresentada a seguinte mensagem:

$ rpm -Uvh foo-1.0-1.i386.rpm foo package foo-2.0-1 (which is newer) is already installed error: foo-1.0-1.i386.rpm cannot be installed

Para forçar uma atualização, deve-se usar o parâmetro --oldpackage na linha de comando.

7.4Consultas

A consulta à base de dados de pacotes instalados é feita através do comando rpm -q.

Com a sua utilização são apresentados o nome do pacote, versão e release. Como exemplo temos:

$ rpm -q foo rpm-2.0-1

Ao invés de especificar o nome do pacote, pode-se utilizar as seguintes opções após o parâmetro q:

•-a - consulta todos os pacotes instalados.

•-f <arquivo> - consulta o pacote que contém <arquivo>.

•-F - funciona como o parâmetro -f, exceto que funciona a partir de stdin11.1, como por exemplo find /usr/bin | rpm -qF.

•-p <arquivo do pacote> - consulta o pacote originado pelo <arquivo do pacote>.

•-P - funciona como o parâmetro -p, exceto a partir da entrada padrão, como por exemplo find /mnt/cdrom/RedHat/RPMS | rpm -qP.

Há diversas formas de especificar que informações devem ser apresentadas pelas consultas. As opções de seleção são:

•-i - apresenta as informações do pacote, tais como nome, descrição, release, tamanho, data de criação, data de instalação, vendedor e outras.

•-l - apresenta a lista de arquivos relacionadas com o pacote.

•-s - apresenta o status dos arquivos do pacote. Há dois estados possíveis: normal ou missing11.2.

•-d - apresenta uma lista dos arquivos de documentação (páginas de manual, páginas info, README, etc.).

•-c - apresenta uma lista dos arquivos de configuração. Estes arquivos podem ser alterados após a instalação para personalização. Exemplos sendmail.cf, passwd, inittab, etc..

Para as opções que apresentam listas de arquivos podem ser adicionados os parâmetros -v para obter a lista no formato do comando ls -l.

7.5Verificando

A verificação de um pacote provoca a comparação dos arquivos instalados de um pacote com as informações localizadas nas bases de dados do RPM. Entre outras coisas a verificação compara o tamanho, MD5 sum, permissões, tipo, dono e grupo de cada arquivo. Para verificar um pacote deve-se utilizar o comando:

$ rpm -V <nome do pacote>

Pode-se usar as mesmas opções disponíveis no processo de pesquisas. Exemplos:

•Para verificar um pacote que contenha um arquivo em especial: $ rpm -Vf /bin/vi

•Para verificar todos os pacotes instalados: $ rpm -Va

•Para verificar um pacote instalado e o arquivo de pacote RPM: 47

Esta função pode ser útil caso haja alguma suspeita de que a base de dados RPM esteja corrompida.

Se não houver nenhuma discrepância não haverá resposta do sistema, caso contrário será apresentada na forma de um string com 8 caracteres, com um c significando arquivo de configuração e após o nome do arquivo. Cada um dos 8 caracteres significa um dos atributos do arquivo comparado com aqueles definidos no pacote RPM, onde um ponto significa que o atributo está ok. Os atributos são mostrados na tabela abaixo.

Código Significado 5MD5 checksum STamanho do arquivo LLink simbólico TModificação do arquivo D Device U Usuário G Grupo MModo (inclui permissões e tipo de arquivo)

(Parte 5 de 6)

Comentários