#This file was created by LinuxDoc-SGML
#(conversion : Frank Pavageau and Jose' Matos)
\lyxformat 2.15
\textclass linuxdoc
\language default
\inputencoding default
\fontscheme default
\papersize Default
\paperfontsize default
\spacing single
\secnumdepth 3
\tocdepth 3
\paragraph_separation indent
\defskip medskip
\quotes_language default
\quotes_times 2
\paperorientation portrait
\papercolumns 1
\papersides 1
\paperpagestyle default
\layout Title

\added_space_top vfill \added_space_bottom vfill
Como Fazer um Disco de Inicialização Linux 
\layout Author

Tom Fawcett (
\family typewriter fawcett@croftj.net
\family default                 
\layout Date

v3.2, June 1998
\layout Abstract

 Este documento descreve como definir e construir o seu próprio disquete de inicialização e do sistema de arquivos raiz para o Linux. Estes discos podem ser usados como disquetes de emergência ou no teste de novos componentes do sistema. Caso não se tenha lido o FAQ do Linux e outros relacionados, como o Tutorial de Instalação Linux e o Guia de Instalação Linux, não é indicada a construção de discos de inicialização. Caso se deseje somente criar discos de emergência, veja o Anexo 
\begin_inset LatexCommand \ref{
\end_inset
distbootdisks
\begin_inset LatexDel }{
\end_inset
Discos de inicialização pré-configurados 
\begin_inset LatexDel }
\end_inset
. 
\layout Standard

\begin_inset LatexCommand \tableofcontents
\end_inset
\layout Section

Prefácio
\layout Standard

\series bold Nota: este documento pode não estar atualizado.
\series default  Caso a data no título da página seja anterior a 6 meses, por favor verifique na página do Projeto de Documentação Linux \begin_inset LatexDel \url{
\end_inset
http://sunsite.unc.edu/LDP/
\begin_inset LatexDel }{
\end_inset
{urlnam}
\begin_inset LatexDel }
\end_inset
 se há alguma  versão  mais  recente  deste  documento. 
\layout Standard

Apesar  deste  documento  estar  em  formato texto, ele pode ser  visualizado  de maneira muito 
\shape italic mais
\shape default  agradável em formato Postscript (
\family typewriter .ps
\family default ) ou HTML,  
em virtude dos comandos  de  notação  tipográfica utilizados. Nós  sugerimos a utilização de um destes  formatos.  
\layout Subsection

Notas
\layout Standard

kernel, versões 
\layout Standard

Graham Chapman (
\family typewriter grahamc@zeta.org.au
\family default ) escreveu a versão original e a suportou até a versão 3.1. Tom Fawcett 
(
\family typewriter fawcett@croftj.net
\family default ) adicionou uma grande quantidade de informações do Núcleo 2.0 e é o mantenedor atual da versão 3.2, porém muito da versão original ainda permanece.  
\layout Standard

Este documento está voltado para usuários da versão 
\series bold  2.0 do Kernel do Linux ou posterior
\series default . Caso se esteja utilizando uma versão anterior (1.2.xx ou mais antiga), é aconselhável utilizar versões do Bootisk-HOWTO arquivadas na \begin_inset LatexDel \url{
\end_inset
http://www.zeta.org.au/~grahamc/linux.html
\begin_inset LatexDel }{
\end_inset
Página Pessoal de Graham  Chapman
\begin_inset LatexDel }
\end_inset
. 
\layout Standard

As informações aqui apresentadas estão voltadas para os usuários da plataforma 
\series bold Intel
\series default , porém muito do aqui descrito aplica-se ainda a outros processadores, porém não podemos ser conclusivos a respeito disso. Caso alguém tenha essa experiência, por favor  nos contate. 
\layout Subsection

Opiniões e Créditos
\layout Standard

Quaisquer comentários ou sugestões, positivas ou negativas, sobre o conteúdo deste documento são bem-vindas. Fizemos o melhor possível para garantir que as informações aqui contidas sejam confiáveis e acuradas. Por favor avise-nos caso sejam encontrados erros ou omissões. 
\layout Standard

Agradecemos às inúmeras pessoas que enviaram as suas sugestões e correções. A sua contribuição certamente tornou este documento muito melhor, do que se   tivéssemos feito tudo sozinhos.    
\layout Standard

Por favor envie comentários, correções e dúvidas ao autor  no email apresentado mais acima. Não me incomodo em responder dúvidas, porém por favor leia primeiramente a seção  
\begin_inset LatexCommand \ref{
\end_inset
problemas
\begin_inset LatexDel }{
\end_inset
Problemas
\begin_inset LatexDel }
\end_inset
. 
\layout Subsection

Política de Distribuição
\layout Standard

Copyright © 1995,1996,1997,1998 de Tom Fawcett and Graham Chapman. Este documento pode ser distribuído sob os termos da Licença do Projeto de Documentação Linux  disponível em \begin_inset LatexDel \url{
\end_inset
http://sunsite.unc.edu/LDP/COPYRIGHT.html
\begin_inset LatexDel }{
\end_inset
{urlnam}
\begin_inset LatexDel }
\end_inset
.  Por favor contacte os autores caso não seja possível obter uma licença. 
\layout Standard

Esta é uma documentação livre. É distribuída na expectativa de ser útil, porém sem 
\series bold qualquer garantia
\series default ;  mesmo as garantias inerentes de  
\series bold comercialização
\series default  ou 
\series bold adequação a um propósito particular
\series default . 
\layout Section

Introdução
\layout Standard

Discos de inicialização do Linux são úteis em diversas situações, tais como: 
\layout Itemize
Testes de um novo kernel. 
\layout Itemize
Recuperação de falhas de disco -- qualquer coisa que pode variar desde um setor de inicialização à uma quebra de cabeça de disco.  
\layout Itemize
Consertando um sistema defeituoso. Um pequeno erro como superusuário pode tornar o sistema  sem condições de uso, e pode ser necessário inicializar o sistema a partir um disquete, para consertá-lo. 
\layout Itemize
Atualizar arquivos críticos do sistema, tais como o 
\family typewriter libc.so
\family default .   
\layout Standard

Há várias formas de se obter discos de inicialização (boot): 
\layout Itemize
Usar um de uma distribuição como Slackware, Red Hat, Conectiva Linux, o qual permitirá que ao menos o sistema seja inicializado. 
\layout Itemize
Usar um pacote  desenvolvido para a criação de discos de emergência. 
\layout Itemize
Aprender o que é necessário para cada tipo de disco operar e construir um por conta própria. 
\layout Standard

Algumas pessoas escolhem a última opção, construindo os seus próprios discos de emergência. Desta forma, na ocorrência de algum problema, eles podem saber o que deve ser corrigido. Mais ainda, é uma grande maneira de aprender como o Linux funciona. 
\layout Standard

Este documento assume alguma familiaridade com os conceitos básicos de administração de sistemas Linux. Por exemplo, deve-se  conhecer os conceitos de diretórios, sistemas de arquivos e disquetes. Deve-se saber ainda utilizar os comandos  
\family typewriter mount
\family default  e tt/df/, bem como o significado dos arquivos /etc/passwd efstab e como eles estão constituídos, assim como saber que a maioria dos comandos deste HOWTO devem ser executados como superusuário (root). 
\layout Standard

A construção de um disco de inicialização do nada pode ser bem complexa. Caso não se tenha lido os conteúdos do FAQ do Linux e documentos relacionados, como por exemplo, o  HOWTO Instalação Linux e o Guia de Instalação Linux, não é aconselhável tentar-se a construção dos discos desta forma. Caso se necessite somente de um disco de emergência  que funcione, será 
\shape italic muito
\shape default   mais simples utilizar um pré-existente. Veja o Apêndice 
\begin_inset LatexCommand \ref{
\end_inset
distbootdisks
\begin_inset LatexDel }{
\end_inset
Discos de Inicialização Pré-Configurados
\begin_inset LatexDel }
\end_inset
, abaixo, a fim de verificar onde encontrá-los . 
\layout Section

Discos de Inicialização e o Processo de Inicialização do Sistema
\layout Standard

processo de inicialização 
\layout Standard

Um disco de inicialização é basicamente uma miniatura de um sistema completo, ou seja é um sistema Linux contido em um disquete. Ele deve executar muitas das funções que o sistema completo permite. Antes de tentar construir um, deve-se conhecer os conceitos básicos do processo de inicialização do sistema, apresentados a seguir, os quais são suficientes para o entendimento do restante deste documento. Alguns detalhes e opções foram omitidos por não serem significativos para o conteúdo deste documento. 
\layout Subsection

O Processo de Inicialização
\layout Standard

setor de inicialização 
Todos os sistemas em microcomputadores começam o processo de inicialização executando código existente na ROM  (especificamente no BIOS), para carregar o setor 0 do cilindro 0 do dispositivo de inicialização. O  dispositivo de inicialização é normalmente a primeira unidade de disquete (denominada  
\family typewriter A:
\family default  no DOS e /dev/fd0 no Linux). 
O BIOS tenta então executar este setor. Em muitos discos inicializáveis, o setor 0, cilindro 0, pode conter ainda: 
\layout Itemize
código de um carregador de sistemas, como o LILO, o qual localiza o kernel do sistema escolhido, carrega e  executa, de acordo com a opção definida. 
\layout Itemize
o início de um kernel de um sistema operacional, como por exemplo o Linux. 
\layout Standard

Caso o kernel do Linux  tenha sido copiado fisicamente para um disquete, o primeiro setor do disco será o primeiro setor do kernel do Linux. O primeiro setor continuará o processo de inicialização, carregando o restante do kernel contido no dispositivo. 
\layout Standard

Uma vez que o  kernel tenha sido completamente carregado, ele executa alguma inicialização básica de dispositivos. Ele tenta carregar e montar o 
\series bold sistema de arquivos raiz
\series default  a partir de algum dispositivo. Um sistema de arquivos raiz é simplesmente um sistema de arquivos montado como  ``/''.  Deve-se indicar para o kernel a localização do sistema de arquivos raiz; caso não seja encontrada uma imagem inicializável naquele local, o sistema é paralisado. 
\layout Standard

Em algumas situações de início do sistema, freqüentemente na inicialização a partir de disquetes, o sistema de arquivos é montado em um 
\series bold disco em memória
\series default ,  o qual é acessado na memória RAM, como se fosse um disco físico. Há duas razões para o sistema ser carregado em discos em memória. Inicialmente, memória RAM é muitas vezes mais rápida que um disquete, tornando a operação do sistema mais rápida, e segundo, o kernel do sistema pode ser armazenado como um 
\series bold sistema de arquivos compactado
\series default   em um disquete, e descompactado no disco em memória, permitindo que muitos mais arquivos sejam armazenados no disquete. 
\layout Standard

Uma vez que o sistema de arquivos raiz é montado, pode-se visualizar uma mensagem similar a: 
\layout Verbatim


\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
VFS:
\protected_separator

\protected_separator
Raiz
\protected_separator
montado
\protected_separator
(sistema
\protected_separator
de
\protected_separator
arquivos
\protected_separator
ext2)
\protected_separator
somente
\protected_separator
para
\protected_separator
leitura.
\protected_separator

\protected_separator

\layout Standard

initinittabsysinit Neste momento o sistema encontra o programa 
\family typewriter init
\family default  no sistema de arquivos raiz (em 
\family typewriter /bin
\family default  ou 
\family typewriter /sbin
\family default )  e executa-o.   
\family typewriter init
\family default  lê o arquivo de configuração /etc/inittab,  procurando por uma linha denominada 
\family typewriter sysinit
\family default ,  e executa o programa especificado. O programa 
\family typewriter sysinit
\family default   é normalmente denominado /etc/rc ou /etc/init.d/boot.  Este programa é constituído de uma série de comandos de shell que configuram os serviços básicos do sistemas, como por exemplo: 
\layout Itemize
Execução do comando  
\family typewriter fsck
\family default  em todos os discos 
\layout Itemize
Carga dos módulos necessários ao kernel 
\layout Itemize
Inicialização da área de troca 
\layout Itemize
Inicialização da rede  
\layout Itemize
Montagem dos discos descritos em 
\family typewriter fstab
\family default . 
\layout Standard

Este programa normalmente aciona diversos outros, tornando o processo de inicialização modular. Por exemplo, na estrutura comum do SysVinit, o diretório /etc/rc.d/ contém uma estrutura complexa de subdiretórios, cujos arquivos definem como iniciar e desligar a maior parte dos serviços do sistema. De qualquer forma, um programa sysinit em um disco de inicialização é normalmente muito simples. 
\layout Standard

Quando o programa sysinit termina, o controle retorna ao  
\family typewriter init
\family default ,  o qual entrará no  
\shape italic nível de execução padrão
\shape default , especificado em  
\family typewriter inittab
\family default , através da palavra chave 
\family typewriter initdefault
\family default .  A linha de nível de execução normalmente especifica um programa como 
\family typewriter getty
\family default ,  o qual é responsável pelo gerenciamento das comunicações através da console e ttys. É o programa  
\family typewriter getty
\family default  que apresenta a expressão familiar ``
\family typewriter login:
\family default ''. O programa 
\family typewriter getty
\family default  por sua vez, chama o programa 
\family typewriter login
\family default   para administrar o processo de validação e iniciar  as sessões dos usuários. 
\layout Subsection

Tipos de Discos
\layout Standard

Após a revisão do processo básico de inicialização, podemos agora definir diversos tipos de discos envolvidos. Podemos classificar os discos em quatro tipos. A discussão aqui contida e através de todo o documento do uso do termo disco refere-se a disquetes, a menos que seja especificado o contrário, observando-se que na verdade, o conceito pode ser aplicado sem distinção a discos rígidos. 
\layout Description

inicialização
\protected_separator

 Um disco contendo um kernel do sistema que pode ser inicializado. O disco pode ser usado  para iniciar o kernel do sistema, o qual pode carregar o sistema de arquivos raiz a partir de outro disco. O kernel em um disco de inicialização pode receber informações sobre a localização do sistema de arquivos raiz. 
\layout Standard

Freqüentemente um disco de inicialização carrega o sistema de arquivos raiz a partir de outro disquete, porém é possível configurar a carga a partir de um sistema de arquivos raiz residente em um disco rígido, por exemplo. Isso é comumente feito quando se está testando um novo kernel (na verdade ``
\family typewriter make zdisk
\family default '' criará um disco de inicialização automaticamente a partir dos fontes do kernel). 
\layout Description

raiz
\protected_separator

 Um disco com um sistema de arquivos raiz contém os arquivos necessários para a execução de um sistema Linux. Tal disco pode não conter necessariamente nem o kernel e tão pouco o carregador de sistemas disco raiz. 
\layout Standard

Um disco raiz pode ser usado para executar o sistema independentemente de outros discos, uma vez que o kernel do sistema tenha sido inicializado. Normalmente o disco raiz é automaticamente copiado para um disco em memória, o que torna o acesso às suas informações muito mais rápido e libera a unidade de disquetes para outras atividades. 
\layout Description

inicialização/raiz
\protected_separator

 Um disco pode conter  tanto o kernel    disco de inicialização/raiz quanto um sistema de arquivos raiz. Em outras palavras, ele contém todo o necessário para inicializar e executar um sistema Linux, sem a necessidade de um disco rígido. A vantagem desse tipo de disco é que a solução torna-se compacta. Todo o necessário está em um único disco. Por outro lado, o gradual aumento de tamanho dos itens necessários ao processo significa o aumento da dificuldade de colocar-se tudo em um único disquete, mesmo com compactação. 
\layout Description

utilitário
\protected_separator

 É um disco que contém um sistema de arquivos, mas que não será montado como um sistema raiz. É um disco de dados adicionais, e pode ser utilizado para a disponibilização de utilitários, caso o disco raiz não tenha mais espaço disponível.disquete com utilitários 
\layout Standard

Em geral, quando falamos de "construir um disco de inicialização" significa a criação das funções de carga do kernel e do sistema de arquivos raiz. Elas podem estar juntas (em um único disco de inicialização e raiz) ou separados (disco de inicialização e disco raiz). A abordagem mais flexível para discos de emergência é provavelmente usar disquetes separados, e um ou mais disquetes de utilitários para gerenciar o que não foi possível colocar nos primeiros.  
\layout Section

Construíndo um Sistema de Arquivos Raiz
\layout Standard

\begin_inset LatexCommand \label{buildroot}
\end_inset 
\layout Standard

Criar um sistema de arquivos raiz envolve a seleção dos arquivos necessários para que o sistema possa ser executado. Nesta seção descreveremos como construir um 
\shape italic sistema de arquivos raiz compactado
\shape default . Uma opção menos usual é a construção de um sistema de arquivos não compactados em um disquete, que é montado diretamente como raiz; esta alternativa é descrita na seção 
\begin_inset LatexCommand \ref{
\end_inset
nonramdiskroot
\begin_inset LatexDel }{
\end_inset
{refnam}
\begin_inset LatexDel }
\end_inset
. 
\layout Subsection

Visão Geral
\layout Standard

Um sistema de arquivos raiz deve conter todo o necessário para suportar um sistema Linux completo. Para tanto, o disco deve incluir os requisitos mínimos de um sistema Linux: 
\layout Itemize
A estrutura básica do sistema de arquivos 
\layout Itemize
Conjunto mínimo de diretórios: 
\family typewriter /dev, /proc, /bin, /etc, /lib, /usr, /tmp
\family default  
\layout Itemize
Conjunto básico de utilitários: 
\family typewriter sh, ls, cp, mv
\family default , etc. 
\layout Itemize
Conjunto mínimo de arquivos de configuração: 
\family typewriter rc, inittab, fstab
\family default , etc... 
\layout Itemize
Dispositivos: 
\family typewriter /dev/hd*, /dev/tty*, /dev/fd0
\family default , etc... 
\layout Itemize
Biblioteca que disponibilize as funções básicas necessárias aos utilitário 
\layout Standard

Evidentemente, qualquer sistema somente torna-se útil quando permite a execução de algum programa, e um disquete raiz somente é útil quando permite que sejam executadas funções como: 
\layout Itemize
Verificar um sistema de arquivos em outro dispositivo, por exemplo para checar o sistema de arquivos raiz em um disco rígido será necessário carregar o sistema operacional a partir de outro dispositivo, o que pode ser feito com um sistema de arquivos raiz em disquete. Pode-se então executar 
\family typewriter fsck
\family default  no dispositivo original que contém o sistema raiz enquanto ele não estiver montado. 
\layout Itemize
Restauração total ou parcial do dispositivo raiz original a partir de uma cópia de segurança usando arquivamento ou utilitários de compactação, tais como  
\family typewriter cpio, tar, gzip
\family default  e 
\family typewriter ftape
\family default . 
\layout Standard

Descreveremos como construir um sistema de arquivos  
\shape italic compactado
\shape default , assim chamado  porque é arquivado compactado no disco e é descompactado do disco para memória. sistema de arquivos raiz compactado 
Um sistema de arquivos compactado pode conter diversos arquivos (aproximadamente 2 megabytes) em um disquete padrão 1.440 Kb. Como o arquivo é muito maior que o disquete, não se pode construí-lo diretamente no dispositivo. Deve-se construí-lo em outro local qualquer, compacta-lo, e então copiá-lo para o disquete. 
\layout Subsection

Criando o Sistema de Arquivos
\layout Standard

\begin_inset LatexCommand \label{creatingrootfs}
\end_inset 
\layout Standard

Para construir-se um sistema de arquivos raiz, deve-se ter um dispositivo extra, grande o suficiente para conter todos os arquivos antes da compactação. Deve-se ter à mão um dispositivo capaz de conter pelo menos 4 Mb. Há diversas opções: 
\layout Itemize
Usar um 
\series bold disco em memória
\series default  (DEVICE = /dev/ram0). Neste caso a memória é utilizada para simular um dispositivo de disco, sendo que deve ser grande o suficiente para conter todo o sistema de arquivos em seu tamanho adequado. Caso se use o LILO, deve-se verificar o arquivo de configuração (/etc/lilo.conf) e buscar uma linha similar a : 
\layout Verbatim


\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
RAMDISK_SIZE
\protected_separator
=
\protected_separator
nnn
\protected_separator

\protected_separator

RAMDISK_SIZE, parâmetro LILO o qual determina quanto de memória RAM será alocada. O padrão é  4096K, o qual deverá ser suficiente. Não se deve tentar utilizar esse disco em memória para máquinas com menos de 8 Mb de RAM. 
Verifique a existência de um dispositivo como por exemplo /dev/ram0, /dev/ram ou /dev/ramdisk. Caso não exista, crie  /dev/ram0 com  
\family typewriter mknod
\family default  (major number 1, minor 0). 
\layout Itemize
Caso se tenha uma partição de disco rígido grande o suficiente (diversos megabytes) disponível, esta certamente será uma boa solução. Caso se tenha memória RAM disponível, pode-se desligar as funções de troca e utilizar a partição de troca (swap). 
\layout Itemize
Usar uma 
\series bold simulação de dispositivo
\series default , o qual permite que um arquivo em disco seja tratado como um dispositivo. Usando-se uma simulação permite a criação de um arquivo de três megabytes no disco rígido e a construção do sistema de arquivos nele. 
Para fazer uso da simulação de dispositivos, deve-se utilizar os programas 
\family typewriter mount
\family default  e 
\family typewriter unmount
\family default  especialmente alterados para isso. Eles podem ser encontrados no diretório: 
ftp://ftp.win.tue.nl/pub/linux/util/mount/  
\layout Standard

Caso não se tenha uma simulação de dispositivos  (/dev/loop0, 
/dev/loop1, etc...) no sistema, pode-se criar uma através do comando ``
\family typewriter mknod /dev/loop0 b 7 0
\family default ''.  Uma vez instalados os binários especiais de 
\family typewriter mount
\family default  e 
\family typewriter umount
\family default  , deve-se criar um arquivo temporário em um disco rígido com capacidade suficiente (por exemplo, /tmp/fsfile). Pode-se, por exemplo, utilizar o comando: 
\layout Standard

\begin_deeper
\layout Standard

dd if=/dev/zero of=/tmp/fsfile bs=1k count=nnn 
\end_deeper
\layout Standard

para criar um arquivo com  
\shape italic nnn
\shape default  blocos. 
\layout Standard

Deve-se utilizar então o nome do arquivo no lugar do DISPOSITIVO a seguir. Ao utilizar o comando mount deve-se incluir a opção``
\family typewriter -o loop
\family default '' para definir uma simulação de dispositivos.  simulação de dispositivos Por exemplo: 
\layout Verbatim


\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
mount
\protected_separator
-o
\protected_separator
loop
\protected_separator
-t
\protected_separator
ext2
\protected_separator
/tmp/fsfile
\protected_separator
/mnt
\protected_separator

\protected_separator

\layout Standard

irá montar  /tmp/fsfile (através de uma simulação de dispositivo) no ponto de montagem  
\family typewriter /mnt
\family default .  Através do comando 
\family typewriter df
\family default  pode-se obter a confirmação disso. 
\layout Standard

Após a escolha de alguma dessas opções, deve-se preparar o DISPOSITIVO com o seguinte comando: 
\layout Verbatim


\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
dd
\protected_separator
if=/dev/zero
\protected_separator
of=DISPOSITIVO
\protected_separator
bs=1k
\protected_separator
count=3000
\protected_separator

\protected_separator

\layout Standard

Este comando inicializa com zeros o DISPOSITIVO. Este passo é importante pois o sistema de arquivos será compactado posteriormente e as partes não utilizadas e preenchidas com zeros, atingirão o máximo de compactação. 
\layout Standard

inodes, alocação Após, pode-se criar o sistema de arquivos. O kernel do Linux reconhece dois tipos de sistemas de arquivos para discos raiz a serem automaticamente copiados para discos em memória. Há o minix e o ext2, sendo o segundo o mais indicado.  No caso de utilização do ext2, pode ser útil  o uso da opção 
\family typewriter -i
\family default  para especificar um número maior de inodes que o padrão do sistema; 
\family typewriter -i 2000
\family default  é o valor sugerido, garantindo-se assim que não faltarão inodes. Alternativamente, pode-se salvar inodes removendo-se os diversos arquivos 
\family typewriter dev
\family default  desnecessários.  
\family typewriter mke2fs
\family default  irá criar 360 inodes por padrão em um disquete 1.44. Cremos que 120 inodes são suficientes para um disco de emergência padrão, mas caso todos os dispositivos 
\family typewriter /dev
\family default  sejam incluídos, então pode-se facilmente exceder os 360 disponíveis. Usar um sistema de arquivos raiz compactado permite um sistema de arquivos maior, provocando a utilização de um número de inodes maior que o padrão, porém pode ainda ser necessário reduzir o número de arquivos ou incrementar o número de inodes. 
\layout Standard

O comando necessário será algo similar a:  
\begin_deeper
\layout Standard

mke2fs -m 0 -i 2000 DISPOSITIVO 
\end_deeper
\layout Standard

(Caso se esteja usando uma simulação de dispositivos, o arquivo em disco que se esteja utilizando deve ser informado no lugar do DISPOSITIVO.  simulação de dispositivo Neste caso 
\family typewriter mke2fs
\family default  perguntará se realmente se deseja executar o comando e a resposta deve ser positiva.) 
\layout Standard

O comando 
\family typewriter mke2fs
\family default   automaticamente detectará o espaço disponível e fará a configuração automaticamente. O parâmetro 
\family typewriter -m 0
\family default   evita a alocação de espaço para o raiz, e adicionalmente provê mais espaço útil em disco. 
\layout Standard

A seguir deve-se montar o dispositivo: 
\layout Verbatim


\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
mount
\protected_separator
-t
\protected_separator
ext2
\protected_separator
DISPOSITIVO
\protected_separator
/mnt
\protected_separator

\protected_separator

\layout Standard

(Deve-se criar um ponto de montagem 
\family typewriter mnt
\family default  caso ele ainda não exista). Nas próximas seções, todos os nomes de diretórios são assumidos como relativos a  
\family typewriter /mnt
\family default . 
\layout Subsection

Ocupando o Sistema de Arquivos
\layout Standard

Segue um razoável número mínimo de diretórios no sistema de arquivos raiz: 
\layout Itemize
\family typewriter /dev
\family default   Dispositivos, necessários para as operações de Leitura/Gravação 
\layout Itemize
\family typewriter /proc
\family default  Diretório temporário requerido pelo sistema de arquivos proc 
\layout Itemize
\family typewriter /etc
\family default   Arquivos de configuração do sistema 
\layout Itemize
\family typewriter /sbin
\family default  Binários fundamentais do sistema 
\layout Itemize
\family typewriter /bin
\family default   Binários básicos e considerados parte do sistema 
\layout Itemize
\family typewriter /lib
\family default   Bibliotecas compartilhadas que provêem suporte à execução dos binários 
\layout Itemize
\family typewriter /mnt
\family default   Um ponto de montagem para manutenção em outros discos 
\layout Itemize
\family typewriter /usr
\family default   Utilitários adicionais e aplicações 
\layout Standard

(A estrutura de diretórios aqui apresentada é somente para uso no disquete raiz. Sistemas Linux têm uma política mais complexa e disciplinada, chamada Padrões de Sistemas de Arquivos, para determinar quais arquivos devem estar presentes e aonde.) 
\layout Standard

procmntusr 
\layout Standard

Três destes diretórios devem estar vazios no sistema de arquivos raiz, devendo somente serem criados com o comando  
\family typewriter mkdir
\family default .  O diretório 
\family typewriter /proc
\family default  é basicamente um ponto de referência onde o sistema de arquivos proc está localizado. Os diretórios  
\family typewriter /mnt
\family default  e 
\family typewriter /usr
\family default  são somente pontos de montagem para uso após a inicialização do sistema e a carga do sistema de arquivos raiz. Mais uma vez, estes diretórios somente precisam ser criados. 
\layout Standard

Os quatro diretórios remanescentes estão descritos nas seções a seguir: 
\layout Standard

\family typewriter /dev
\family default  
\layout Standard

diretório de dispositivos (dev)  
\layout Standard

Um diretório 
\family typewriter /dev
\family default   contendo um arquivo especial com todos os dispositivos a serem utilizados pelo sistema é fundamental para o Linux. O diretório em si é um diretório comum e pode ser criado com o comando  
\family typewriter mkdir
\family default   da forma usual. Os arquivos especiais de dispositivos devem ser criados de uma forma especial, utilizando-se o comando  
\family typewriter mknod
\family default . 
\layout Standard

Há um atalho, podendo-se copiar o conteúdo do diretório 
\family typewriter /dev
\family default  e apagando-se o que for desnecessário. A única exigência é que a cópia seja efetuada com a utilização do parâmetro 
\family typewriter -R
\family default . Isso copiará o diretório sem copiar o conteúdo dos arquivos. 
\shape italic  Esteja seguro de utilizar um R maiúsculo
\shape default . Caso seja utilizado  
\family typewriter r
\family default  em formato minúsculo, provavelmente será copiado o conteúdo completo de todo o disco rígido -- ou no mínimo, o que couber no disquete! De qualquer forma, é importante estar atento ao comando: 
\layout Verbatim


\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
cp
\protected_separator
-dpR
\protected_separator
/dev
\protected_separator
/mnt
\protected_separator

\protected_separator

\layout Standard

Assumindo-se que o disquete esteja montado em 
\family typewriter /mnt
\family default .  A opção 
\family typewriter dp
\family default  garante que ligações simbólicas serão copiadas como ligações, ao invés de usar um arquivo de destino, e que os atributos originais do arquivo serão preservados, assim como as informações sobre os donos. 
\layout Standard

Alternativamente, pode-se usar o programa 
\family typewriter cpio
\family default   com a opção 
\family typewriter -p
\family default , uma vez que  
\family typewriter cpio
\family default   lida com arquivos especiais corretamente, e não tentará copiar o seu conteúdo. Pode-se por exemplo, utilizar o seguinte comando: 
\layout Standard

\begin_deeper
\layout Verbatim

cd
\protected_separator
/dev
\protected_separator

\protected_separator
\newline
find
\protected_separator
.
\protected_separator
-print
\protected_separator
|
\protected_separator
cpio
\protected_separator
-pmd
\protected_separator
/mnt/dev
\protected_separator


\end_deeper
\layout Standard

o qual irá copiar todos os arquivos especiais de  
\family typewriter /dev
\family default  para /mnt/dev. Na verdade, irá copiar todos os arquivos da árvore de diretórios iniciada em 
\family typewriter /dev
\family default ,  e criará todos os subdiretórios necessários na árvore de diretórios de destino. 
\layout Standard

Caso se deseje fazer da forma mais difícil, deve-se usar  
\family typewriter ls -l
\family default   para mostrar os números major e minor dos dispositivos desejados, e criá-los  no disquete através do comando  
\family typewriter mknod
\family default . 
\layout Standard

Uma vez que os dispositivos estejam copiados, é aconselhável verificar se todos os arquivos de dispositivos necessários foram copiados no disco de emergência. Por exemplo,  
\family typewriter ftape
\family default   é utilizado por unidades de fitas, sendo necessário copiar todos eles, caso se pretenda acessar um dispositivo desse tipo a partir do disco de inicialização.  
\layout Standard

Note que um inode é necessário para cada tipo de arquivo especial de dispositivo, e  inodes podem, às vezes, serem um recurso escasso, especialmente em disquetes com sistemas de arquivos configurados. Desta forma é indicada a remoção de qualquer arquivo especial de dispositivos em 
\family typewriter /dev
\family default  que não seja necessário no sistema específico. Por exemplo, caso não se tenha discos SCSI, pode-se tranqüilamente remover todos os arquivos de dispositivos começados por 
\family typewriter sd
\family default .  Similarmente, caso não se pretenda utilizar portas seriais, então todos os arquivos começados com  
\family typewriter cua
\family default  também podem ser removidos. 
\layout Standard

\shape italic Deve-se necessariamente ter os seguintes arquivos neste diretório:
\shape default  
\family typewriter console, kmem, mem, null, ram, tty1
\family default . 
\layout Standard

\family typewriter /etc
\family default  
\layout Standard

diretório etc 
\layout Standard

Este diretório deve conter uma série de arquivos de configuração. Na maioria dos sistemas este pode estar dividido em três grupos: 
\layout Enumerate
Sempre requeridos, por exemplo 
\family typewriter rc, fstab, passwd
\family default  
rcfstabpasswd 
\layout Enumerate
Podem ser requeridos, mas não há como assegurar 
\layout Enumerate
Arquivos desnecessários 
\layout Standard

Arquivos que não são essenciais podem ser identificados através do comando: 
\layout Standard

\begin_deeper
\layout Verbatim


\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
ls
\protected_separator
-ltru
\protected_separator

\protected_separator

\end_deeper
\layout Standard

Este comando gera uma lista em ordem inversa de último acesso, dependendo de que arquivos não são acessados ou utilizados e que, podem não estar presentes no disquete raiz. 
\layout Standard

Nos nossos disquetes raiz, temos um número de arquivos de configuração inferior a 15. Isso reduz o trabalho de lidar com um conjunto de três tipos de arquivos. 
\layout Enumerate
Os arquivos que devem ser configurados para um  sistema: 

\begin_deeper
\layout Enumerate
\family typewriter rc.d/*
\family default  início do sistema e definição dos programas de cada nível de execução  
\layout Enumerate
\family typewriter fstab
\family default  lista dos sistemas de arquivos que devem ser montados 
\layout Enumerate
\family typewriter inittab
\family default  parâmetros para o processo 
\family typewriter init
\family default  , o primeiro que é executado em tempo de inicialização do sistema. init 

\end_deeper
\layout Enumerate
Estes devem ser customizados para a inicialização de um sistema: 

\begin_deeper
\layout Enumerate
\family typewriter passwd
\family default  lista de usuários, diretórios pessoais, etc... 
\layout Enumerate
\family typewriter grupo
\family default  grupos de usuários grupos de usuários 
\layout Enumerate
\family typewriter shadow
\family default  senha dos usuários. Eventualmente pode não existir. sombra das senhas 

\end_deeper
Caso segurança seja um item importante do sistema específico, 
\family typewriter passwd
\family default   e 
\family typewriter shadow
\family default   devem ser  suprimidos, a fim de evitar a cópia de senhas de usuários para fora do sistema, e quando o sistema for inicializado através de disquetes, acessos indesejados serão rejeitados. De qualquer forma, há uma razão para  
\shape italic não
\shape default  suprimir  
\family typewriter passwd
\family default  e  
\family typewriter group
\family default .  
\family typewriter tar
\family default  (e provavelmente outros programas de arquivamento) armazenam o usuário e o grupo junto com os dados dos arquivos. Caso estes arquivos sejam restaurados no disco rígido a partir de uma fita, os arquivos serão restaurados com seus nomes originais. Caso os nomes dos donos e grupos não existam em  
\family typewriter passwd
\family default /
\family typewriter group
\family default   durante a restauração,  as identificações de usuários e grupos (UID e GID) não estarão corretas. restaurando arquivos 
Esteja certo de que o arquivo 
\family typewriter passwd
\family default  contém ao menos o superusuário 
\family typewriter root
\family default .  Caso se pretenda utilizar outros usuários para acessar o sistema, deve-se estar seguro da existência de seus diretórios pessoais e interpretadores de comando (shell). 
  
\layout Enumerate
 Os demais: verificaremos mais adiante as informações sobre este tópico. 
\layout Standard

Além disso, deve-se somente configurar dois arquivos, e o que eles devem conter é surpreendentemente pequeno. 
\layout Itemize
\family typewriter rc
\family default  deve conter 
\layout Verbatim


\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
#!/bin/sh
\protected_separator

\protected_separator
\newline

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
/bin/mount
\protected_separator
-av
\protected_separator

\newline

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
/bin/hostname
\protected_separator
Conectiva
\protected_separator


Deve-se estar seguro de que os diretórios estão corretos. A execução de 
\family typewriter hostname
\family default   não é obrigatória, somente dá um melhor acabamento ao trabalho. 
\layout Itemize
\family typewriter fstab
\family default  deve conter, no mínimo: 
\layout Verbatim


\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
/dev/ram0
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
/
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
ext2
\protected_separator

\protected_separator

\protected_separator

\protected_separator
defaults
\protected_separator

\protected_separator
\newline

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
/dev/fd0
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
/
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
ext2
\protected_separator

\protected_separator

\protected_separator

\protected_separator
defaults
\protected_separator

\newline

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
/proc
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
/proc
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
proc
\protected_separator

\protected_separator

\protected_separator

\protected_separator
defaults
\protected_separator


Pode-se copiar as entradas de um arquivo  
\family typewriter fstab
\family default , já existente, mas não se deve montar automaticamente qualquer partição do disco rígido; usando-se então o parâmetro 
\family typewriter noauto
\family default , pois o disco rígido pode estar danificado ou sem condições de uso no momento da inicialização do sistema. 
\layout Standard

O 
\family typewriter inittab
\family default  deve ser alterado, de outra forma a linha  
\family typewriter sysinit
\family default  executará o  
\family typewriter rc
\family default  ou qualquer outro programa básico de inicialização que seja indicado. Ainda para assegurar-se de que usuários em portas seriais não poderão acessar o sistema, pode-se comentar todas as entradas em 
\family typewriter getty
\family default  que incluam  dispositivos 
\family typewriter ttys
\family default  ou 
\family typewriter ttyS
\family default   ao final da linha. Deve-se deixar as portas 
\family typewriter tty
\family default  para poder-se acessar o sistema a partir da console. 
\layout Standard

Um arquivo 
\family typewriter inittab
\family default  mínimo contém: 
\layout Verbatim


\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
id:2:initdefault:
\protected_separator

\protected_separator
\newline

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
si::sysinit:/etc/rc
\protected_separator

\newline

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
1:2345:respawn:/sbin/getty
\protected_separator
9600
\protected_separator
tty1
\protected_separator

\newline

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
2:23:respawn:/sbin/getty
\protected_separator
9600
\protected_separator
tty2
\protected_separator


\layout Standard

O arquivo 
\family typewriter inittab
\family default  define o que o sistema executará nos vários estados, inclusive no seu início, em modo multiusuário, etc... Um ponto no qual deve-se ter muito cuidado é o de checar se todos os comandos informados em 
\family typewriter inittab
\family default  referem-se a programas presentes e se o diretório está corretamente indicado. Caso se coloque no disco de emergência os arquivos de comandos apresentados  na Seção 
\begin_inset LatexCommand \ref{
\end_inset
listings
\begin_inset LatexDel }{
\end_inset
Listas de exemplo do conteúdo do disco de inicialização
\begin_inset LatexDel }
\end_inset
  como um guia, e após se copie o  
\family typewriter inittab
\family default   para o disco sem uma checagem cuidadosa, provavelmente ele falhará, e o problema terá origem na ausência de arquivos ou indicações erradas de diretórios. 
\layout Standard

localizações pré-definidas 
Note que alguns comandos não podem ser movidos para qualquer outro lugar, porque alguns programas têm a sua localização dentro de seu código. Por exemplo em nosso sistema, /etc/shutdown tem a sua localização definida no fonte do comando /etc/reboot. Caso 
\family typewriter reboot
\family default  seja movido para /bin/reboot, e após seja executado o comando 
\family typewriter shutdown
\family default , ele falhará, porque o arquivo 
\family typewriter reboot
\family default  não pode ser localizado. 
\layout Standard

diretório etc 
\layout Standard

Para todo o restante, deve-se simplesmente copiar os arquivos texto no diretório 
\family typewriter /etc
\family default , mais os executáveis do mesmo diretório que não possam ser definidos como desnecessários. Como um guia, pode-se consultar os exemplos na Seção 
\begin_inset LatexCommand \ref{
\end_inset
listings
\begin_inset LatexDel }{
\end_inset
Listas de exemplo do conteúdo do disco de inicialização
\begin_inset LatexDel }
\end_inset
. Provavelmente será suficiente copiar somente aqueles arquivos, porém sistemas podem ser muito diferentes, então não se pode estar seguro de que a lista apresentada seja suficiente. O único método de estar seguro é iniciar o sistema com 
\family typewriter inittab
\family default  e verificar o que é solicitado. 
\layout Standard

Muitos sistemas utilizam um diretório /etc/rc.d/ contendo shell scripts de diferentes níveis de execução. O mínimo é um simples programa 
\family typewriter rc
\family default , mas pode ser mais simples copiar o 
\family typewriter inittab
\family default  e o diretório /etc/rc.d de um sistema já existente, e suprimir os scripts no diretório 
\family typewriter rc.d
\family default  para remover os processamentos não relevantes do ambiente de sistema em disquete. 
\layout Standard

\family typewriter /bin e /sbin
\family default  
\layout Standard

diretório bin 
diretório sbin 
\layout Standard

O diretório 
\family typewriter /bin
\family default   é um lugar adequado para utilitários extras necessários à execução de atividades básicas. Utilitários como 
\family typewriter ls
\family default , 
\family typewriter mv
\family default , 
\family typewriter cat
\family default  e 
\family typewriter dd
\family default .Veja o Apêndice 
\begin_inset LatexCommand \ref{
\end_inset
listings
\begin_inset LatexDel }{
\end_inset
Listagem de exemplo de conteúdo do disco de inicialização
\begin_inset LatexDel }
\end_inset
 para um exemplo da lista de arquivos que podem estar presentes nos diretórios 
\family typewriter /bin
\family default  e 
\family typewriter /sbin
\family default . Ela não inclui nenhum utilitário requerido para restaurar cópias de segurança, tais como 
\family typewriter cpio
\family default , 
\family typewriter tar
\family default  e 
\family typewriter gzip
\family default . Isso porque estes programas foram colocados em um disquete de utilitários em separado, visando economizar espaço no disquete de inicialização e raiz. Uma vez que o disquete de inicialização tenha sido carregado, ele é copiado para o disco em memória, deixando a unidade de disquetes livre para montar outro disquete, o disquete de utilitários. Normalmente montamos esse disquete como 
\family typewriter /usr
\family default . 
\layout Standard

A criação de um disquete de utilitários é descrito na Seção 
\begin_inset LatexCommand \ref{
\end_inset
utilitydisk
\begin_inset LatexDel }{
\end_inset
Construindo um disquete de utilitários
\begin_inset LatexDel }
\end_inset
. É desejável manter uma cópia da mesma versão dos utilitários de cópias de segurança usados para gerar as cópias de segurança disponíveis, não perdendo-se tempo assim tentando-se instalar versões que não podem ler as cópias geradas. 
\layout Standard

\shape italic Esteja seguro de incluir os seguintes programas:
\shape default  
\family typewriter init
\family default , 
\family typewriter getty
\family default  
ou equivalente, 
\family typewriter login
\family default , 
\family typewriter mount
\family default , algum interpretador que possa executar os programas rc, e uma ligação de 
\family typewriter sh
\family default  para o shell. 
\layout Standard

initgettyloginshells 
\layout Standard

\family typewriter /lib
\family default  
\layout Standard

diretório de bibliotecas (lib) 
bibliotecas 
\layout Standard

No diretório 
\family typewriter /lib
\family default  deve-se colocar as bibliotecas compartilhadas e seus carregadores. Caso as bibliotecas necessárias não sejam encontradas no diretório 
\family typewriter /lib
\family default , o sistema não poderá ser iniciado. Com um pouco de sorte pode-se receber uma mensagem de erro dizendo a razão. 
\layout Standard

libc.so 
Praticamente todos os programas requerem no mínimo a biblioteca 
\family typewriter libc
\family default , 
\family typewriter libc.so.N
\family default , onde N é o número da versão corrente. Ao verificar o diretório 
\family typewriter /lib
\family default , 
\family typewriter libc.so.5
\family default  é normalmente uma ligação simbólica para um arquivo com o número completo da versão. 
\layout Standard

\begin_deeper
\layout Verbatim

%
\protected_separator
ls
\protected_separator
-l
\protected_separator
/lib/libc.so*
\protected_separator

\protected_separator
\newline
lrwxrwxrwx
\protected_separator

\protected_separator
1
\protected_separator
root
\protected_separator
root
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
14
\protected_separator
Nov
\protected_separator

\protected_separator
1
\protected_separator
20:34
\protected_separator
/lib/libc.so.5
\protected_separator
->
\protected_separator
libc.so.5.4.33*
\protected_separator

\newline
-rwxr-xr-x
\protected_separator

\protected_separator
1
\protected_separator
root
\protected_separator
root
\protected_separator

\protected_separator
573176
\protected_separator
Jun
\protected_separator
12
\protected_separator
02:05
\protected_separator
/lib/libc.so.5.4.33*
\protected_separator


\end_deeper
\layout Standard

Neste caso, tem-se disponível o arquivo 
\family typewriter libc.so.5.4.33
\family default . Para encontrar outras bibliotecas deve-se verificar todos os binários necessários e checar as suas dependências com o comando 
\family typewriter ldd
\family default  . Por exemplo: 
\layout Verbatim


\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
%
\protected_separator
ldd
\protected_separator
/sbin/mke2fs
\protected_separator

\protected_separator
\newline

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
libext2fs.so.2
\protected_separator
=>
\protected_separator
/lib/libext2fs.so.2
\protected_separator

\newline

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
libcom_err.so.2
\protected_separator
=>
\protected_separator
/lib/libcom_err.so.2
\protected_separator

\newline

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
libuuid.so.1
\protected_separator
=>
\protected_separator
/lib/libuuid.so.1
\protected_separator

\newline

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
libc.so.5
\protected_separator
=>
\protected_separator
/lib/libc.so.5
\protected_separator


\layout Standard

O arquivo apresentado na coluna da direita é necessário, tendo-se em mente que as bibliotecas listadas podem ser ligações simbólicas. 
\layout Standard

Em  
\family typewriter /lib
\family default  deve-se ainda incluir um carregador de bibliotecas. 
carregadores O carregador será ou o  
\family typewriter ld.so
\family default  (para bibliotecas a.out) 
ou 
\family typewriter ld-linux.so
\family default  (para bibliotecas ELF).ELFa.out Caso não se esteja seguro do que será necessário, deve-se executar o comando 
\family typewriter file
\family default  na biblioteca.  Por exemplo: 
\layout Verbatim

%
\protected_separator
file
\protected_separator
/lib/libc.so.5.4.33
\protected_separator
/lib/libc.so.4.7.2
\protected_separator

\protected_separator
\newline

\protected_separator

\protected_separator
/lib/libc.so.4.7.2:
\protected_separator
Linux/i386
\protected_separator
demand-paged
\protected_separator
executable
\protected_separator
(QMAGIC),
\protected_separator
stripped
\protected_separator

\newline

\protected_separator

\protected_separator
/lib/libc.so.5.4.33:
\protected_separator
ELF
\protected_separator
32-bit
\protected_separator
LSB
\protected_separator
shared
\protected_separator
object,
\protected_separator
Intel
\protected_separator
386,
\protected_separator
version
\protected_separator
1,
\protected_separator
stripped
\protected_separator


\layout Standard

\family typewriter QMAGIC
\family default  indica que 
\family typewriter 4.7.2
\family default  é para bibliotecas a.out, e  
\family typewriter ELF
\family default  indica que 
\family typewriter 5.4.33
\family default  é para ELF.ELFa.out 
\layout Standard

Deve-se então copiar o(s) carregador(es) necessário(s) para o sistema de arquivos raiz em construção. Bibliotecas e carregadores devem ser checados 
\shape italic cuidadosamente
\shape default  com o binários incluídos. Caso o kernel não possa carregar a biblioteca necessária, normalmente haverá um travamento sem mensagens de erro. 
\layout Subsection

Módulos
\layout Standard

módulos 
\layout Standard

Caso se tenha um kernel modular, deve-se considerar quais módulos devem ser carregados a partir do disco de inicialização após o início do sistema. Pode-se incluir os módulos 
\family typewriter ftape
\family default  e 
\family typewriter zftape
\family default  caso cópias de segurança tenham sido feitas em um fita, módulos para dispositivos SCSI caso eles estejam presentes, e módulos para suporte a PPP ou SLIP caso se queira acesso a rede em uma emergência. ftape 
\layout Standard

Estes módulos podem ser colocados em /lib/modules. Deve-se ainda incluir  
\family typewriter insmod
\family default , 
\family typewriter rmmod
\family default  e 
\family typewriter lsmod
\family default . 
\layout Standard

Caso se deseje carregar os módulos automaticamente, pode-se incluir ainda 
\family typewriter modprobe
\family default , 
\family typewriter depmod
\family default  e 
\family typewriter swapout
\family default .  E caso se use o 
\family typewriter kerneld
\family default , deve-se incluir ainda o  /etc/conf.modules. 
\layout Standard

A principal vantagem de utilizar módulos reside no fato de poder mover módulos não essenciais para um disco de utilitários e carregá-los quando necessário, usando menos espaço no disco raiz. Porém, caso seja necessário lidar com muitos dispositivos diferentes, uma abordagem mais adequada pode  residir em construir um único kernel com diversos módulos integrados. 
disquete de utilitários 
\layout Standard

\shape italic Note que para se ter um sistema de arquivos ext2 compactado, é obrigatória a existência de suporte a disco em memória e  sistemas de arquivos ext2
\shape default . Estes não podem ser disponibilizados como módulos. 
\layout Subsection

Alguns detalhes finais
\layout Standard

Alguns programas de sistema, como o  
\family typewriter login
\family default , apresentam mensagem de advertência caso o arquivo /var/run/utmp e o diretório  /var/log não existam.utmp Então: 
\layout Verbatim


\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
mkdir
\protected_separator
-p
\protected_separator
/mnt/var/{log,run}
\protected_separator

\protected_separator
\newline

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
touch
\protected_separator
/mnt/var/run/utmp
\protected_separator


\layout Standard

Finalmente, após ter-se configurado todas as bibliotecas necessárias, deve-se executar o 
\family typewriter ldconfig
\family default   para gerar novamente o  /etc/ld.so.cache no sistema de arquivos raiz. O cache diz ao carregador onde encontrar as bibliotecas. Para reconstruir  o 
\family typewriter ld.so.cache
\family default , execute os seguintes comandos:ldconfigld.so.cache 
\layout Verbatim


\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
chdir
\protected_separator
/mnt;
\protected_separator
chroot
\protected_separator
/mnt
\protected_separator
/sbin/ldconfig
\protected_separator

\protected_separator

\layout Standard

O comando 
\family typewriter chroot
\family default   é necessário porque  
\family typewriter ldconfig
\family default   sempre gera o cache para o sistema de arquivos raiz. 
\layout Subsection

Empacotando
\layout Standard

\begin_inset LatexCommand \label{empacotando}
\end_inset 
\layout Standard

Uma vez concluída a construção do sistema de arquivos raiz, ele deve ser desmontado, copiado para um arquivo e compactado: 
\layout Verbatim


\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
umount
\protected_separator
/mnt
\protected_separator

\protected_separator
\newline

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
dd
\protected_separator
if=DISPOSITIVO
\protected_separator
bs=1k
\protected_separator
|
\protected_separator
gzip
\protected_separator
-v9
\protected_separator
>
\protected_separator
saraiz.gz
\protected_separator


\layout Standard

Isso pode levar diversos minutos. Ao finalizar estará disponível um arquivo 
\family typewriter saraiz.gz
\family default   que é o sistema de arquivos raiz compactado. Deve-se verificar se o arquivo cabe em um disquete. Caso não caiba, deve-se retornar aos passos anteriores e eliminar alguns arquivos. A Seção 
\begin_inset LatexCommand \ref{
\end_inset
slimfast
\begin_inset LatexDel }{
\end_inset
Reduzindo o tamanho de um sistema de arquivos raiz
\begin_inset LatexDel }
\end_inset
 fornece algumas dicas sobre a redução de tamanho do sistema de arquivos raiz. 
\layout Section

Escolhendo um kernel
\layout Standard

kernel, escolhendo 
\layout Standard

Neste ponto tem-se disponível um sistema de arquivos raiz compactado. O próximo passo é construir um kernel ou selecionar um kernel. Em muitos casos é possível copiar o kernel atual e inicializar o sistema a partir do disquete. Porém em muitos casos poderá ser necessário construir um em separado. 
\layout Standard

Uma das razões é o tamanho. Caso se esteja construindo um único disquete de inicialização e raiz, o kernel será um dos maiores arquivos no disquete e será necessário reduzí-lo o máximo possível. Caso se esteja construindo dois discos (um de inicialização e um raiz), isso não será problema pois o kernel irá em um disquete separado. 
\layout Standard

Para reduzir seu tamanho, deve-se construir um kernel com o mínimo de facilidades necessárias ao suporte do sistema desejado. Isso significa, deixar de lado tudo que não seja absolutamente necessário. Suporte a rede é um dos prováveis candidatos, assim como suporte a unidades de disco e outros dispositivos desnecessários durante o início do sistema. Conforme descrito anteriormente, o kernel  
\shape italic deve
\shape default  ter suporte a disco em memória e ext2 . 
\layout Standard

Após incluir somente o mínimo necessário de facilidades no kernel, deve-se verificar o que deve retornar. Provavelmente um dos usos mais comuns a um disquete de inicialização e raiz é a restauração de sistemas de arquivos raiz com problemas, e para que isso seja possível é necessário suporte no kernel do sistema. Por exemplo, caso as cópias de segurança tenham sido efetuadas em fita, utilizando Ftape para acessar uma unidade de fita,  então será obrigatória a presença de suporte a dispositivos de fitas para efetuar uma restauração. Caso não esteja presente, poderá ser necessário reinstalar o Linux, copiar e reinstalar ftape, e então tentar  ler as cópias de segurança. 
\layout Standard

O ponto aqui é, qualquer suporte a leitura e gravação que seja adicionado ao kernel para suportar cópias de segurança, deve também ser adicionado ao kernel de inicialização do sistema em disquete de emergência. 
\layout Standard

kernel, construindo do fonte 
\layout Standard

O procedimento para construir um kernel é descrito na documentação que o acompanha. É relativamente simples, podendo-se verificar o conteúdo de  /usr/src/linux.  Note que caso se tenha problemas construindo um novo kernel, então provavelmente não se deve tentar construir um disco de inicialização. Deve-se lembrar de compactar o kernel  através do comando ``
\family typewriter make zImage
\family default ''. 
\layout Section

Colocando tudo junto: Construindo o(s) disco(s)
\layout Standard

Neste ponto, tem-se um kernel e um sistema de arquivos raiz. Caso se esteja construindo um único disco de inicialização e raiz, deve-se verificar o seu tamanho e estar seguro de que eles caberão em um único disco. Caso se esteja construindo dois discos, deve-se verificar se o sistema de arquivos cabe em um único disquete. 
\layout Standard

Deve-se decidir pelo uso ou não do LILO no disquete de inicialização do kernel. A alternativa será copiar o kernel diretamente no disquete e iniciar o sistema sem o LILO.  A vantagem de utilizar o LILO reside na possibilidade de passagens de parâmetros para o kernel, o que pode ser necessário para inicializar algum hardware (deve-se verificar o conteúdo do arquivo /etc/lilo.conf.  Caso exista alguma linha do tipo ``
\family typewriter append=...
\family default '', provavelmente esta facilidade será necessária). A desvantagem de usar o LILO é que a construção do disco de inicialização torna-se mais complexa e  mais espaço é necessário. Deve-se construir um pequeno sistema de arquivos em separado, o qual nós denominamos 
\series bold sistema de arquivos do kernel
\series default , para onde se pode transferir o kernel e algumas outras coisas necessárias para o LILO. 
\layout Standard

lilo.confsistema de arquivos lilokernel, parâmetros 
\layout Standard

Caso se vá utilizar o LILO, siga adiante, caso contrário pode-se ir diretamente para a seção  
\begin_inset LatexCommand \ref{
\end_inset
semlilo
\begin_inset LatexDel }{
\end_inset
Transferindo o kernel sem o LILO
\begin_inset LatexDel }
\end_inset
. 
\layout Subsection

Transferindo o kernel com o  LILOLILO
\layout Standard

\begin_inset LatexCommand \label{usandolilo}
\end_inset 
\layout Standard

O primeiro item que deve ser criado é um pequeno arquivo de configuração do LILO. Ele deve ser similar ao seguinte: 
\layout Code

        boot      =/dev/fd0 
        install   =/boot/boot.b 
        map       =/boot/map 
        read-write 
        backup    =/dev/null 
        compact 
        image     = KERNEL 
        label     = Disquete_Inic 
        root      =/dev/fd0  
\layout Standard

Para opter detalhes destes parâmetros, por favor verifique a documentação de usuário do LILO. Pode ser desejável ainda adicionar a linha 
\family typewriter append=...
\family default   copiada do arquivo /etc/lilo.conf existente em disco.lilo.conf 
\layout Standard

Deve-se salvar o arquivo como  
\family typewriter bdlilo.conf
\family default  e a seguir criar um pequeno sistema de arquivos, o qual será denominado  
\series bold sistema de arquivos do kernel
\series default ,  para distingui-lo do sistema de arquivos raiz. 
\layout Standard

Inicialmente, deve-se verificar o tamanho que o sistema de arquivos terá. Verifique o tamanho do kernel em blocos (o tamanho é mostrado através do comando ``
\family typewriter ls -l KERNEL
\family default ''  dividido por 1024 e arredondado para cima) e acrescido de 50, referentes ao espaço necessário aos inodes e outros arquivos. Pode-se calcular o número exato ou simplesmente utilizar 50. Caso se esteja criando um conjunto com dois disquetes, pode-se superestimar o espaço usado pelo kernel. Denominaremos este número de 
\family typewriter NÚCLEO_BLOCOS
\family default .NÚCLEO_BLOCOS 
\layout Standard

Deve-se colocar um disquete no dispositivo (para simplificar assumiremos que será em  /dev/fd0) e após criar um sistema de arquivos tipo ext2 para o kernel: 
\layout Verbatim


\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
mke2fs
\protected_separator
-i
\protected_separator
8192
\protected_separator
-m
\protected_separator
0
\protected_separator
/dev/fd0
\protected_separator
NÚCLEO_BLOCOS
\protected_separator

\protected_separator

\layout Standard

inodes, alocação 
\layout Standard

O parâmetro ``
\family typewriter -i 8192
\family default '' especifica que desejamos um inode para cada 8192 bytes. Após, deve-se montar o sistema de arquivos, remover o diretório 
\family typewriter lost+found
\family default  e criar os diretórios 
\family typewriter dev
\family default  e 
\family typewriter boot
\family default  para o  LILO: 
\layout Verbatim


\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
mount
\protected_separator
/dev/fd0
\protected_separator
/mnt
\protected_separator

\protected_separator
\newline

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
rm
\protected_separator
-rf
\protected_separator
/mnt/lost+found
\protected_separator

\newline

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
mkdir
\protected_separator
/mnt/{boot,dev}
\protected_separator


\layout Standard

Após, deve-se criar os dispositivos /dev/null e /dev/fd0. Ao invés de procurar pelos números dos dispositivos, pode-se simplesmente copiá-lo do disco rígido utilizando-se 
\family typewriter -R
\family default : 
\layout Verbatim


\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
cp
\protected_separator
-R
\protected_separator
/dev/{null,fd0}
\protected_separator
/mnt/dev
\protected_separator

\protected_separator

\layout Standard

LILO necessita de uma cópia de seu  carregador de inicialização, 
\family typewriter boot.b
\family default ,  o qual pode ser encontrado no disco rígido, normalmente no diretório  
\family typewriter /boot
\family default  . 
\layout Verbatim


\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
cp
\protected_separator
/boot/boot.b
\protected_separator
/mnt/boot
\protected_separator

\protected_separator

\layout Standard

Finalmente, deve-se copiar os arquivos de configuração do LILO criado conforme a seção anterior, assim como o kernel. Ambos devem estar presentes no diretório raiz: 
\layout Verbatim


\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
cp
\protected_separator
bdlilo.conf
\protected_separator
KERNEL
\protected_separator
/mnt
\protected_separator

\protected_separator

\layout Standard

Todo o necessário para que o LILO possa ser executado está presente no sistema de arquivos do kernel. Deve-se então executar o   LILO com o parâmetro 
\family typewriter -r
\family default   para instalar o carregador de inicialização : LILO 
\layout Verbatim


\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
lilo
\protected_separator
-v
\protected_separator
-C
\protected_separator
bdlilo.conf
\protected_separator
-r
\protected_separator
/mnt
\protected_separator

\protected_separator

\layout Standard

LILO deverá ser executado sem erros, após o qual o sistema de arquivos do kernel deve ter a seguinte aparência:  
sistema de arquivos do kernel 
\layout Code

total 361 
  1 -rw-r--r--   1 root     root          176 Jan 10 07:22 bdlilo.conf 
  1 drwxr-xr-x   2 root     root         1024 Jan 10 07:23 boot/ 
  1 drwxr-xr-x   2 root     root         1024 Jan 10 07:22 dev/ 
358 -rw-r--r--   1 root     root       362707 Jan 10 07:23 vmlinuz 
boot: 
total 8 
  4 -rw-r--r--   1 root     root         3708 Jan 10 07:22 boot.b 
  4 -rw-------   1 root     root         3584 Jan 10 07:23 map 
dev: 
total 0 
  0 brw-r-----   1 root     root       2,   0 Jan 10 07:22 fd0 
  0 crw-r--r--   1 root     root       1,   3 Jan 10 07:22 null  
\layout Standard

Não há motivos para preocupação caso os tamanhos de arquivos sejam um pouco diferentes. 
\layout Standard

Pode-se ir agora para a seção 
\begin_inset LatexCommand \ref{
\end_inset
ramdiskword
\begin_inset LatexDel }{
\end_inset
Configurando o disco em memória
\begin_inset LatexDel }
\end_inset
. 
\layout Subsection

Transferindo o kernel sem o LILO
\layout Standard

\begin_inset LatexCommand \label{semlilo}
\end_inset 
\layout Standard

Caso  
\shape italic não
\shape default   se esteja utilizando o LILO, o kernel pode ser transferido para o disco de inicialização com o comando 
\family typewriter dd
\family default  : 
\layout Verbatim


\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
%
\protected_separator
dd
\protected_separator
if=KERNEL
\protected_separator
of=/dev/fd0
\protected_separator
bs=1k
\protected_separator

\protected_separator
\newline

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
353+1
\protected_separator
records
\protected_separator
in
\protected_separator

\newline

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
353+1
\protected_separator
records
\protected_separator
out
\protected_separator


\layout Standard

Neste exemplo, 
\family typewriter dd
\family default   gravou 353 registros completos e 1 parcialmente, concluindo-se que o kernel ocupou 354 blocos do disquete. Denominaremos este número como 
\family typewriter NÚCLEO_BLOCOS
\family default  , o qual será utilizado na próxima seção.NÚCLEO_BLOCOS 
\layout Standard

Finalmente, deve-se configurar o disquete como o dispositivo raiz e dar-lhe permissões de leitura e gravação: 
\layout Verbatim


\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
rdev
\protected_separator
/dev/fd0
\protected_separator
/dev/fd0
\protected_separator

\protected_separator
\newline

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
rdev
\protected_separator
-R
\protected_separator
/dev/fd0
\protected_separator
0
\protected_separator


\layout Standard

rdev 
\layout Standard

Deve-se ter o máximo cuidado ao usar o 
\family typewriter -R
\family default  maiúsculo no comando  
\family typewriter rdev
\family default  . 
\layout Subsection

Configurando o disco em memória
\layout Standard

\begin_inset LatexCommand \label{ramdiskword}
\end_inset 
\layout Standard

Dentro da imagem do kernel está a  
\series bold palavra (dois ou mais bytes) de configuração do disco em memória
\series default  que especifica onde o sistema de arquivos raiz deve ser encontrado, em conjunto com as suas opções. A palavra  é definida em  /usr/src/linux/arch/i386/kernel/setup.c e é interpretada da seguinte forma: 
\layout Verbatim

bits
\protected_separator

\protected_separator
0-10:
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
deslocamento
\protected_separator
para
\protected_separator
início
\protected_separator
da
\protected_separator
memória,
\protected_separator
em
\protected_separator
blocos
\protected_separator
de
\protected_separator
1024
\protected_separator
bytes
\protected_separator

\protected_separator
\newline
bits
\protected_separator
11-13:
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
sem
\protected_separator
utilização
\protected_separator

\newline
bit
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
14:
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
Indicador
\protected_separator
se
\protected_separator
o
\protected_separator
disco
\protected_separator
em
\protected_separator
memória
\protected_separator
deve
\protected_separator
ser
\protected_separator
carregado
\protected_separator

\newline
bit
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
15:
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
Indicador
\protected_separator
de
\protected_separator
prompt
\protected_separator
antes
\protected_separator
da
\protected_separator
carga
\protected_separator
do
\protected_separator
sistema
\protected_separator
de
\protected_separator
arquivos
\protected_separator
raiz
\protected_separator


\layout Standard

Caso o bit 15 esteja configurado, no processo de inicialização será solicitada a inserção de um novo disquete na unidade. Isso é necessário no caso de conjuntos de dois disquetes de inicialização. 
\layout Standard

Há dois casos, dependendo da construção de um único disquete ou de um conjunto de dois disquetes (inicialização e raiz). 
\layout Enumerate
 Caso se esteja construindo um único disco, o sistema de arquivos raiz será colocado exatamente após o kernel, sendo o deslocamento então igual ao primeiro bloco livre (o que deve ser igual a  
\family typewriter NÚCLEO_BLOCOS
\family default ).  O bit 14 será configurado com 1 e o bit 15 com zeros.NÚCLEO_BLOCOS 
\layout Enumerate
Caso se esteja construindo um conjunto de dois disquetes, o sistema de arquivos raiz começará no bloco zero e o deslocamento será igual a zero. Bit 14 será igual a 1 e o bit 15 também será igual a 1. 
Após calcular cuidadosamente o valor da palavra de disco em memória, deve-se configurá-la com  
\family typewriter rdev -r
\family default .rdevpalavra disco em memória Esteja seguro de utilizar valores  
\shape italic decimais
\shape default . Caso se esteja utilizando o LILO, o argumento  
\family typewriter rdev
\family default   deve ser igual  ao 
\shape italic caminho do kernel
\shape default , por exemplo 
\family typewriter /mnt/vmlinuz
\family default ; caso o kernel tenha sido copiado com 
\family typewriter dd
\family default , deve-se usar o nome do dispositivo de disquetes (por exemplo,
\family typewriter /dev/fd0
\family default ). 
\layout Verbatim


\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
rdev
\protected_separator
-r
\protected_separator
NÚCLEO_OU_UNIDADE_
\protected_separator
DE
\protected_separator
_DISQUETE
\protected_separator

\protected_separator

\layout Standard

Caso se esteja utilizando o LILO, a unidade de disquetes deve ser desmontada agora. 
\layout Subsection

Transferindo o sistema de arquivos raiz
\layout Standard

O último passo é a transferência do sistema de arquivos raiz. 
\layout Itemize
Caso o sistema de arquivos raiz seja colocado no  
\shape italic mesmo
\shape default  disco que o kernel, a transferência deve ser efetuada utilizando-se o comando 
\family typewriter dd
\family default  com a opção 
\family typewriter seek
\family default ,  a qual especifica quantos blocos devem ser ignorados até que a gravação tenha início: 
\layout Verbatim


\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
dd
\protected_separator
if=rootfs.gz
\protected_separator
of=/dev/fd0
\protected_separator
bs=1k
\protected_separator
seek=BLOCOS_NÚCLEO
\protected_separator

\protected_separator

\layout Itemize
Caso o sistema de arquivos raiz seja colocado em um  
\shape italic segundo
\shape default  disco, deve-se remover o primeiro disquete e colocar o segundo na unidade, transferindo-se o sistema de arquivos raiz: 
\layout Verbatim


\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
dd
\protected_separator
if=rootfs.gz
\protected_separator
of=/dev/fd0
\protected_separator
bs=1k
\protected_separator

\protected_separator

\layout Standard

Parabéns, serviço concluído! 
\layout Standard

\series bold  
DEVE-SE SEMPRE TESTAR UM DISCO DE INICIALIZAÇÃO ANTES DE GUARDÁ-LO, PARA USO EM UMA EMERGÊNCIA 
\series default  
\layout Section

Problemas
\layout Standard

\begin_inset LatexCommand \label{problemas}
\end_inset 
problemas 
\layout Standard

Na construção de discos de inicialização, as primeiras tentativas normalmente gerarão discos com problemas. A abordagem de construção de um disco raiz é montar seus componentes a partir de um sistema já existente e tentar construir um disquete baseado nele  que viabilize a  carga do sistema até o momento em que mensagens possam ser apresentadas na console. Após esse passo, cabe verificar as mensagens e os erros apresentados, e ir corrigindo um a  um, de acordo com o apresentado no console. Caso o sistema simplesmente trave, sem maiores explicações, encontrar a causa será um pouco mais difícil. Para ter-se um sistema que possa chegar ao estágio de enviar mensagens para o console, são requeridos diversos componentes, que devem estar presentes e corretamente configurados. O procedimento recomendado na investigação de um problema onde o sistema não apresente a sua causa é o seguinte: 
\layout Itemize
Verificar se o disco raiz contém realmente os diretórios necessários. É comum copiar de níveis errados e ter algo como  /discoraiz/bin ao invés de  
\family typewriter /bin
\family default  no disquete. 
\layout Itemize
Verificar se existe /lib/libc.so com a mesma ligação que aparece no diretório 
\family typewriter /lib
\family default  do disco rígido. libc.so 
\layout Itemize
Verificar se todas as  ligações simbólicas no diretório  
\family typewriter /dev
\family default  existem  no sistema de arquivos raiz do disquete, onde aquelas ligações devem ser para dispositivos que estão inclusos no disco raiz. Em particular, ligações para 
\family typewriter /dev/console
\family default  são fundamentais em diversos casos. diretórios de dispositivos (dev) 
\layout Itemize
Verificar se os arquivos 
\family typewriter /dev/tty1, /dev/null, /dev/zero, /dev/mem, /dev/ram
\family default  e 
\family typewriter /dev/kmem
\family default  foram incluídos. 
\layout Itemize
Verificar se a configuração do kernel suporta todos os recursos requeridos até o momento de acesso ao sistema e se estão adicionados ao kernel de forma residente e não como módulos.  
\shape italic Suporte a discos em memória e ext2 devem estar residentes
\shape default . 
\layout Itemize
Verificar se as configurações do dispositivo  raiz e do kernel e o disco em memória estão corretas. 
\layout Standard

Alguns deste aspectos gerais são melhor detalhados a seguir: 
\layout Enumerate
Esteja certo de que  
\family typewriter init
\family default  foi incluído como  /sbin/init ou /bin/init e  que tem permissão de execução.init 
\layout Enumerate
Execute  
\family typewriter ldd init
\family default  para checar as bibliotecas necessárias à execução do init. Normalmente é necessária somente 
\family typewriter libc.so
\family default . Esteja certo de que todas as bibliotecas e carregadores foram incluídos. 
\layout Enumerate
Esteja certo de utilizar o carregador correto para as bibliotecas --- 
\family typewriter ld.so
\family default  para a.out ou 
\family typewriter ld-linux.so
\family default  para ELF.carregadores 
\layout Enumerate
Verificar se o arquivo /etc/inittab no sistema de arquivos do disquete de inicialização, aponta para o programa 
\family typewriter getty
\family default  (ou algum programa similar a  
\family typewriter getty
\family default , como por exemplo 
\family typewriter agetty
\family default , 
\family typewriter mgetty
\family default  ou 
\family typewriter getty_ps
\family default ).inittabgetty Cheque duplamente esse arquivo comparando-o com o disponível no disco rígido. Verifique as páginas do manual do programa que está sendo utilizado para estar seguro que a configuração está correta. 
\family typewriter inittab
\family default   é possivelmente a parte mais repleta de detalhes devido à sua sintaxe e o seu conteúdo depende do programa usado no sistema. A única forma de não correr riscos é ler as páginas de manual do  
\family typewriter init
\family default  e 
\family typewriter inittab
\family default    e verificar exatamente o que o sistema está fazendo ao ser iniciado. Esteja seguro que  /etc/inittab tem uma entrada de inicialização no sistema. Deve haver um comando de execução do programa de inicialização do sistema, o qual deve existir. 
\layout Enumerate
Assim como realizado com  
\family typewriter init
\family default , execute 
\family typewriter ldd
\family default  em 
\family typewriter getty
\family default  para verificar as dependências, esteja certo de que as bibliotecas necessárias e carregadores estão presentes no sistema de arquivos raiz. 
\layout Enumerate
Esteja seguro de ter incluído um shell script (por exemplo, 
\family typewriter bash
\family default  ou 
\family typewriter ash
\family default ), capaz de executar todos os programas rc .interpretador de comandos 
\layout Enumerate
Caso se tenha um arquivo  /etc/ld.so.cache no disco de emergência, refaça-o. ld.so.cache 
\layout Standard

Caso 
\family typewriter init
\family default  comece, mas seja obtida a seguinte mensagem: 
\layout Verbatim


\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
Id
\protected_separator
xxx
\protected_separator
respawning
\protected_separator
too
\protected_separator
fast:
\protected_separator
disabled
\protected_separator
for
\protected_separator
5
\protected_separator
minutes
\protected_separator

\protected_separator

\layout Standard

retransmitindo muito rápido 
ela é oriunda do 
\family typewriter init
\family default , normalmente indicando que  os programas 
\family typewriter getty
\family default  ou 
\family typewriter login
\family default  estão sendo encerrados imediatamente após o seu início. initgettylogin Verifique os executáveis 
\family typewriter getty
\family default  e  
\family typewriter login
\family default  e as bibliotecas necessárias. Esteja seguro que as chamadas em /etc/inittab estão corretas. Caso mensagens estranhas apareçam a partir do 
\family typewriter getty
\family default , pode significar que a chamada em  /etc/inittab está errada. As opções disponíveis em  getty  variam bastante; assim como diferentes versões do  
\family typewriter agetty
\family default  podem ter incompatibilidades na sintaxe das chamadas.inittab 
\layout Standard

Caso ao se tentar executar algum programa, tal como  
\family typewriter df
\family default ,  presente no disco de emergência, e obtêm-se mensagens como: 
\family typewriter df: não encontrado
\family default , deve-se verificar: (1) o diretório que contém o comando está configurado na variável de ambiente PATH, e (2) todas as bibliotecas e carregadores necessários ao programa estão presentes. 
\layout Section

Diversos
\layout Subsection

Reduzindo o tamanho do sistema de arquivos raiz
\layout Standard

\begin_inset LatexCommand \label{slimfast}
\end_inset 
\layout Standard

Algumas vezes o sistema de arquivos raiz é muito grande para caber em um disquete, mesmo após a sua compactação. Seguem algumas formas de reduzir seu tamanho, listadas em ordem decrescente de efetividade: 
\layout Description

Aumentar
\protected_separator
a
\protected_separator
densidade
\protected_separator
do
\protected_separator
disco
\protected_separator

 Por padrão, disquetes são formatados em 1400K, mas  formatos de maior densidade estão disponíveis. fdformat poderá formatar nos seguintes tamanhos: 1600, 1680, 1722, 1743, 1760, 1840, e 1920. Muitos dispositivos de 1440K suportarão  1722K, e é este que sempre usamos para disquetes de inicialização. A página de manual fdformat e  o arquivo /usr/src/linux/Documentation/devices.txt fornecem maiores informações sobre o tema. 
\layout Description

Alterar
\protected_separator
o
\protected_separator
interpretador
\protected_separator
de
\protected_separator
comandos
\protected_separator

 Alguns dos mais populares interpretadores de comando para Linux, como  
\family typewriter bash
\family default  e 
\family typewriter tcsh
\family default , são grandes e requerem diversas bibliotecas.interpretador de comandos Alternativas mais leves existem, tais como 
\family typewriter ash
\family default , 
\family typewriter lsh
\family default , 
\family typewriter kiss
\family default  e 
\family typewriter smash
\family default , os quais são muito menores e requerem menos (ou nenhuma) bibliotecas. Muitos dos interpretadores alternativos estão disponíveis em \begin_inset LatexDel \url{
\end_inset
http://sunsite.unc.edu/pub/Linux/system/shells/
\begin_inset LatexDel }{
\end_inset
{urlnam}
\begin_inset LatexDel }
\end_inset
. Esteja certo porém de que o interpretador seja capaz de executar todos os comandos e programas configurados nos arquivos  
\family typewriter rc
\family default  incluídos no disco de inicialização. 
\layout Description

Diminuir
\protected_separator
as
\protected_separator
bibliotecas
\protected_separator
e
\protected_separator
os
\protected_separator
binários
\protected_separator

 bibliotecasMuitas bibliotecas e binários estão tipicamente com todos os símbolos de depuração inclusos, o que aumenta seu tamanho. Executando-se '
\family typewriter file
\family default ' nestes arquivos , ele apresentará a mensagem  '
\family typewriter not stripped
\family default ' caso essa afirmativa seja verdadeira. Ao copiar binários para o seu sistema de arquivos raiz, é aconselhável utilizar: 
\layout Verbatim


\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
objcopy
\protected_separator
--strip-all
\protected_separator
FROM
\protected_separator
TO
\protected_separator

\protected_separator

\layout Standard

stripobjcopybibliotecas, diminuindo tamanho 
Ao copiar bibliotecas deve ser usado: 
\layout Verbatim


\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
objcopy
\protected_separator
--strip-debug
\protected_separator
FROM
\protected_separator
TO
\protected_separator

\protected_separator

\layout Description

Mover
\protected_separator
arquivos
\protected_separator
não
\protected_separator
críticos
\protected_separator
para
\protected_separator
um
\protected_separator
disco
\protected_separator
de
\protected_separator
utilitários
\protected_separator

 Caso alguns binários não sejam necessários durante a inicialização ou no acesso ao sistema, eles podem ser movidos para um disquete adicional. Veja a Seção 
\begin_inset LatexCommand \ref{
\end_inset
utilitydisk
\begin_inset LatexDel }{
\end_inset
Construindo um disquete de utilitários
\begin_inset LatexDel }
\end_inset
 para maiores detalhes. Deve-se ainda considerar também a movimentação de módulos. disquete de utilitários 
\layout Subsection

Sistemas de arquivos raiz não residentes em discos na memória
\layout Standard

\begin_inset LatexCommand \label{nonramdiskroot}
\end_inset 
disco em memória 
\layout Standard

A Seção 
\begin_inset LatexCommand \ref{
\end_inset
buildroot
\begin_inset LatexDel }{
\end_inset
Construindo um sistema de arquivos raiz
\begin_inset LatexDel }
\end_inset
 apresenta instruções sobre como construir um sistema de arquivos raiz compactado o qual é carregado em um disco em memória quando o sistema é iniciado. Este método tem diversas vantagens e é o mais comumente utilizado. De qualquer forma, alguns sistemas com pouca memória podem não suportar toda a RAM necessária para isso; e nestes casos o sistema de arquivos raiz é montado diretamente ao invés de ser copiado para um disco em memória. 
\layout Standard

Tais sistemas de arquivos são na verdade mais simples de serem construídos do que sistemas compactados, uma vez que eles podem ser construídos tanto em disquetes como em qualquer outro dispositivo, e não têm que ser compactados. Apresentaremos os procedimentos necessários e as suas diferenças em relação ao descrito até aqui. Caso seja esta a sua opção, deve-se ter em mente que se terá 
\shape italic  muito menos espaço 
\shape default  disponível. 
\layout Enumerate
Calcular o espaço disponível para os arquivos do sistema de arquivos raiz. 
Caso se esteja construindo um único disco de inicialização e raiz, todos os blocos do kernel mais os do sistema de arquivos raiz devem caber em um disquete. 
\layout Enumerate
Utilizar o programa  
\family typewriter mke2fs
\family default , para criar um sistema de arquivos raiz em um disquete com o tamanho apropriado. 
\layout Enumerate
Incluir os arquivos do sistema de arquivos conforme descrito acima. 
\layout Enumerate
Ao finalizar, desmontar o sistema de arquivos e transferi-lo para um arquivo de disco, 
\shape italic sem compactação
\shape default . 
\layout Enumerate
Transferir o kernel para um disquete, conforme descrito anteriormente. Ao calcular a palavra do disco em memória, 
\series bold configurar o bit 14 para zero
\series default , para indicar que o sistema de arquivos raiz não será carregado para um disco em memória. Executar o comando  
\family typewriter rdev
\family default  conforme descrito.rdevpalavra de disco em memória 
\layout Enumerate
Transferir o sistema de arquivos raiz conforme descrito anteriormente. 
Há diversos atalhos que podem ser executados. Caso se esteja construindo um conjunto de dois disquetes, pode-se construir o sistema de arquivos raiz diretamente no segundo disquete, não sendo necessário transferi-lo para o disco rígido e após para o disquete novamente. Ainda, caso se esteja construindo um único disquete de raiz e inicialização utilizando-se o LILO, pode-se construir  um 
\shape italic único
\shape default  sistema de arquivos no disco inteiro, contendo o kernel, arquivos do LILO e do raiz, e simplesmente executar o LILO como o último passo. 
\layout Subsection

Construindo um disquete de utilitários
\layout Standard

\begin_inset LatexCommand \label{utilitydisk}
\end_inset 
disquete de utilitários 
\layout Standard

Construir um disquete de utilitários é bastante simples, basta simplesmente criar um sistema de arquivos em um disquete formatado e copiar os arquivos para ele. Para usá-lo com o disco de inicialização, deve-se montá-lo manualmente após o sistema ser carregado. 
\layout Standard

Conforme descrito anteriormente, o disquete de utilitários  pode ser montado como 
\family typewriter /usr
\family default .  Neste caso, os binários podem ser colocados no diretório 
\family typewriter /bin
\family default  no disquete de utilitários, sendo que uma indicação a /usr/bin na variável de ambiente de caminho permitirá o acesso direto a eles. Bibliotecas adicionais podem ser colocadas no diretório  
\family typewriter /lib
\family default  no disquete de utilitários. 
\layout Standard

Há vários pontos importantes  para atentar-se ao se construir um disco de utilitários, a saber: 
\layout Enumerate
\shape italic Não
\shape default  colocar binários ou bibliotecas que sejam críticos para o início do sistema, uma vez que o disquete não será montado antes da inicialização do sistema. 
\layout Enumerate
 Não é possível acessar uma unidade de disquete e uma unidade de fita simultaneamente. Isso significa que caso se tenha uma unidade de fita, não será possível acessá-la enquanto o disco de utilitários estiver montado. 
\layout Enumerate
O acesso aos arquivos no disco de utilitários será lento. 
\layout Standard

Apêndice 
\begin_inset LatexCommand \ref{
\end_inset
utilitylist
\begin_inset LatexDel }{
\end_inset
Listas de exemplo do conteúdo do disco de utilitários
\begin_inset LatexDel }
\end_inset
 mostra um lista de exemplo de arquivos em um disquete de utilitários. Aqui estão colocadas algumas idéias que podem ser úteis: programas para examinar e manipular discos ( (
\family typewriter format, fdisk
\family default ) e sistemas de arquivos (
\family typewriter mke2fs, fsck, isofs.o
\family default ), um editor de textos leve (
\family typewriter elvis, jove
\family default ), utilitários de compactação e arquivamento (
\family typewriter gzip, tar, cpio, afio
\family default ), utilitários para fitas (
\family typewriter mt, tob, taper
\family default ), comunicação (
\family typewriter ppp.o, slip.o, minicom
\family default ) e dispositivos (
\family typewriter setserial, mknod
\family default ). 
\layout Section

Como os profissionais fazem isso
\layout Standard

\begin_inset LatexCommand \label{pros}
\end_inset 
\layout Standard

É possível perceber que os discos de inicialização das maiores distribuições, tais como Conectiva Linux, Red Hat, Slackware ou Debian, parecem ser mais sofisticados do que o descrito neste documento. Discos de inicialização de distribuições profissionais são baseados nos mesmos princípios aqui descritos, mas empregam alguns detalhes adicionais, uma vez que devem atender a um número maior de sistemas e situações. Inicialmente, eles devem ser capazes de funcionar com uma grande variedade de hardwares, sendo necessário então interagir com o usuário e carregar diversos arquivos de dispositivos. Segundo, eles devem ser preparados para trabalhar com diversas opções de instalação, com diferentes níveis de automação. Finalmente, distribuições normalmente combinam  funcionalidades de instalação e emergências. 
\layout Standard

Alguns discos de inicialização contém uma funcionalidade chamada  
\series bold initrd
\series default  (
\series bold disco em memória inicial
\series default ).disco em memória inicial (initrd) Esta funcionalidade foi introduzida com a versão 2.0.X e provê grande flexibilidade, permitindo que o kernel seja carregado em duas fases. Quando o kernel é inicializado, ele inicialmente carrega uma imagem do disco em memória a partir do disquete de inicialização. O disco em memória inicial é um sistema de arquivos raiz contendo um programa que é executado antes que o raiz verdadeiro seja carregado. Este programa normalmente inspeciona o ambiente e solicita que o usuário selecione entre diversas opções de inicialização, tais como o real dispositivo que deve ser utilizado para a carga do sistema de arquivos raiz. Tipicamente ele carrega módulos adicionais não incluídos no kernel. Quando o programa inicial termina, o kernel carrega o raiz original e o processo de inicialização continua normalmente. Para maiores informações sobre o 
\family typewriter initrd
\family default , veja /usr/src/linux/Documentation/initrd.txt e 
\begin_inset LatexDel \url{
\end_inset
ftp://elserv.ffm.fgan.de/pub/linux/loadlin-1.6/initrd-example.tgz
\begin_inset LatexDel }{
\end_inset
{urlnam}
\begin_inset LatexDel }
\end_inset
. 
\layout Standard

As informações a seguir são um resumo dos discos de instalação de cada uma das distribuições, baseado na inspeção de seus sistemas de arquivos e dos códigos fontes. Não podemos garantir a exata acuidade das informações aqui descritas, ou se elas forem alteradas em novas versões. 
\layout Standard

Slackware (v.3.1) usa uma inicialização similar a um LILO descrito na seção 
\begin_inset LatexCommand \ref{
\end_inset
usandolilo
\begin_inset LatexDel }{
\end_inset
Transferindo o kernel com o  LILO
\begin_inset LatexDel }
\end_inset
.  O disco de inicialização do Slackware apresenta uma mensagem (``
\family typewriter Bem-vindo ao disco de inicialização do kernel do Slackware Linux!
\family default '') usando o parâmetro 
\family typewriter message
\family default  do LILO. Após, o usuário é instruído a entrar com os parâmetros de inicialização, se necessários. Após a inicialização, um sistema de arquivos raiz é carregado de um segundo disco. O usuário executa o programa 
\family typewriter setup
\family default   que inicia a instalação. Ao invés de usar um kernel modular, Slackware provê uma série de diferentes kernels e depende do usuário a escolha do mais adequado aos seus requisitos de hardware. 
\layout Standard

RedHat (v.4.0)  também utiliza a inicialização do LILO. Ele carrega um disco em memória compactado a partir do primeiro disco, o qual executa um programa  
\family typewriter init
\family default  customizado. Este programa solicita os arquivos de controle de dispositivos e carrega-os de um disco suplementar quando necessário. 
\layout Standard

Debian (v.1.3) é provavelmente o mais sofisticado disco de instalação. Ele utiliza o carregador SYSLINUX para permitir várias opções de inicialização, usando então uma imagem do  
\family typewriter initrd
\family default  para guiar o usuário pelo processo de instalação. Aparenta usar tanto um  
\family typewriter init
\family default  quanto um interpretador customizados. 
\layout Section

Lista das Perguntas Mais Frequentes (FAQ)
\layout Standard

\series bold  
Q. Eu carrego meus discos de inicialização e raiz e nada acontece. O que posso fazer? 
\series default 
\layout Standard

Veja a Seção 
\begin_inset LatexCommand \ref{
\end_inset
problemas
\begin_inset LatexDel }{
\end_inset
Problemas
\begin_inset LatexDel }
\end_inset
. 
\layout Standard

\series bold Q. Como o disco de inicialização da Conectiva/Red Hat/Slackware/Debian funcionam? 
\series default 
\layout Standard

Veja a Seção 
\begin_inset LatexCommand \ref{
\end_inset
pros
\begin_inset LatexDel }{
\end_inset
Como os profisisonais fazem isso
\begin_inset LatexDel }
\end_inset
. 
\layout Standard

\series bold Q. Como eu posso construir um disquete de inicialização com o arquivo de controle de dispositivos XYZ? 
\series default 
\layout Standard

A forma mais simples é obter um kernel do Slackware em um site espelho mais próximo. Os kernels do Slackware são genéricos e tentam incluir arquivos de controle para o maior número de dispositivos possível. Então caso se tenha uma controladora IDE ou SCSI, as chances são grandes de se ter um arquivo de controle para elas em um kernel do Slackware. 
Vá para o diretório  
\family typewriter a1
\family default   e selecione IDE ou SCSI dependendo do tipo de controladora que se tenha. Verifique o arquivo xxxxkern.cfg do kernel  selecionado para ver os arquivos de controle que foram incluídos neste kernel. Caso o dispositivo que se deseje instalar esteja incluído na lista, então o kernel correspondente deve inicializar o seu computador. Transfira o arquivo  xxxxkern.tgz e copie para o seu disquete de inicialização conforme descrito acima, na seção de construção de discos de inicialização. arquivos de controles de dispositivos, device drivers 
\layout Standard

Deve-se checar o dispositivo raiz no kernel usando-se o comando rdev: 
\layout Verbatim


\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
rdev
\protected_separator
zImage
\protected_separator

\protected_separator

\layout Standard

\family typewriter rdev
\family default  mostrará o dispositivo raiz atual do kernel. Caso este não seja o mesmo desejado, deve-se usar o  
\family typewriter rdev
\family default  para alterá-lo. 
Por exemplo, um kernel testado apontava para /dev/sda2, porém a partição raiz SCSI era /dev/sda8. Para usar um disquete raiz, deve-se utilizar o comando: 
\layout Verbatim


\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
rdev
\protected_separator
zImage
\protected_separator
/dev/fd0
\protected_separator

\protected_separator

\layout Standard

Caso se queira saber como configurar um disquete de inicialização do Slackware, sugere-se verificar o Guia de Instalação Linux ou obter uma distribuição Slackware. Veja a seção denominada "Referências". 
\layout Standard

\series bold Q. Como atualizar um disco de inicialização com um novo kernel? 
\series default 
\layout Standard

kernel, atualização 
\layout Standard

Simplesmente copie o novo kernel em um disquete de inicialização utilizando o comando dd para um disquete sem sistema de arquivos, ou através do comando cp para um disco de inicialização e raiz. Verifique a seção denominada "inicialização" para detalhes sobre a criação de um disquete de inicialização.  A descrição aplica-se perfeitamente à atualização do kernel em um disquete de inicialização. 
\layout Standard

\series bold Q. Como atualizar o disquete raiz com novos arquivos? 
\series default 
\layout Standard

sistema de arquivos raiz, atualização 
\layout Standard

A maneira mais simples é copiar o sistema de arquivos do disco raiz de volta ao DISPOSITIVO utilizado, seção 
\begin_inset LatexCommand \ref{
\end_inset
creatingrootfs
\begin_inset LatexDel }{
\end_inset
Criando um sistema de arquivos
\begin_inset LatexDel }
\end_inset
. Após monte o sistema de arquivos e faça as alterações necessárias. Deve-se lembrar sempre onde o sistema de arquivos começa e quantos blocos ele ocupa: 
\layout Verbatim

dd
\protected_separator
if=/dev/fd0
\protected_separator
bs=1k
\protected_separator
skip=INÍCIO_RAIZ
\protected_separator

\protected_separator
count=BLOCOS
\protected_separator
|
\protected_separator
gunzip
\protected_separator
>
\protected_separator
DISPOSITIVO
\protected_separator

\protected_separator
\newline
mount
\protected_separator
-t
\protected_separator
ext2
\protected_separator
DISPOSITIVO
\protected_separator
/mnt
\protected_separator


\layout Standard

Após as alterações serem concluídas, proceda de acordo com a Seção 
\begin_inset LatexCommand \ref{
\end_inset
empacotando
\begin_inset LatexDel }{
\end_inset
Empacotando
\begin_inset LatexDel }
\end_inset
 e transfira o sistema de arquivos raiz de volta para o disco. Não se deve retransferir o kernel ou recalcular a palavra do disco em memória caso não tenha havido alterações do ponto de início do novo sistema de arquivos raiz. 
\layout Standard

\series bold Q. Como remover o LILO para ser possível utilizar a inicialização DOS novamente? 
\series default 
\layout Standard

LILO 
Registro Master de Inicialização - Master Boot Record (MBR) 
\layout Standard

No Linux pode-se executar: 
\layout Standard

\begin_deeper
\layout Verbatim


\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
/sbin/lilo
\protected_separator
-u
\protected_separator

\protected_separator

\end_deeper
\layout Standard

Pode-se ainda usar o comando   
\family typewriter dd
\family default  para utilizar a cópia de segurança salva pelo LILO do setor de inicialização. Veja na documentação do LILO maiores informações. 
\layout Standard

No DOS ou Windows pode-se executar o seguinte comando DOS: 
\begin_deeper
\layout Verbatim


\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
FDISK
\protected_separator
/MBR
\protected_separator

\protected_separator

\end_deeper
\layout Standard

MBR significa Registro Master de Inicialização (Master Boot Record), e após o comando acima o setor de inicialização recebe registros DOS sem alterar a tabela de partições. Alguns puristas não concordam com essa abordagem, mas mesmo o autor do  LILO, Werner Almesberger, sugere isso, além de ser simples e funcional. 
\layout Standard

\series bold Q. Como inicializar o sistema se o kernel 
\shape italic e
\shape default  o disco de inicialização foram perdidos? 
\series default 
\layout Standard

Caso não se tenha um disco de inicialização extra, provavelmente o método mais simples será obter um kernel do Slackware para a sua controladora de discos ((IDE ou SCSI) conforme descrito anteriormente em "Como construir um disco de inicialização com o arquivo de controle de dispositivos XYZ?". Pode-se iniciar o sistema com esse kernel e procurar reparar o que estiver danificado. 
\layout Standard

O kernel obtido pode não conter o tipo de disco e a partição que se deseje. Por exemplo, kernel genérico do Slackware para controladoras SCSI tem o dispositivo raiz configurado para /dev/sda2,  e eventualmente a partição raiz pode estar em  /dev/sda8. Neste caso o dispositivo raiz do kernel deve ser alterado. 
\layout Standard

Pode-se mudar os parâmetros de dispositivo raiz e disco em memória no kernel, mesmo que tudo o que tenha seja um kernel ou mesmo a partir de outro sistema operacional, como por exemplo DOS. 
\layout Standard

\family typewriter rdev
\family default  altera o kernel através de alterações de valores de deslocamentos fixos do arquivo do kernel, então pode-se utilizar um editor em hexadecimal  em qualquer sistema disponível, como por exemplo o Editor de Disco de Utilitários Norton sob DOS. Deve-se checar se é necessário mudar os valores do kernel nos seguintes deslocamentos: 
palavra do disco em memória rdevi 
\layout Standard

\begin_deeper
\layout Verbatim

HEX
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
DEC
\protected_separator

\protected_separator
DESCRIPTION
\protected_separator

\protected_separator
\newline
0x01F8
\protected_separator

\protected_separator
504
\protected_separator

\protected_separator
Byte
\protected_separator
inferior
\protected_separator
da
\protected_separator
palavra
\protected_separator
do
\protected_separator
disco
\protected_separator
em
\protected_separator
memória
\protected_separator

\newline
0x01F9
\protected_separator

\protected_separator
505
\protected_separator

\protected_separator
Byte
\protected_separator
superior
\protected_separator
da
\protected_separator
palavra
\protected_separator
do
\protected_separator
disco
\protected_separator
em
\protected_separator
memória
\protected_separator

\newline
0x01FC
\protected_separator

\protected_separator
508
\protected_separator

\protected_separator
Número
\protected_separator
menor
\protected_separator
do
\protected_separator
dispositivo
\protected_separator
raiz
\protected_separator
-
\protected_separator
vide
\protected_separator
abaixo
\protected_separator

\newline
0X01FD
\protected_separator

\protected_separator
509
\protected_separator

\protected_separator
Número
\protected_separator
maior
\protected_separator
do
\protected_separator
dispositivo
\protected_separator
raiz
\protected_separator
-
\protected_separator
vide
\protected_separator
abaixo
\protected_separator


\end_deeper
\layout Standard

A interpretação da palavra do disco em memória está descrita na seção 
\begin_inset LatexCommand \ref{
\end_inset
ramdiskword
\begin_inset LatexDel }{
\end_inset
Configurando o disco em memória
\begin_inset LatexDel }
\end_inset
. 
\layout Standard

O número maior e menor do dispositivo devem ser configurados caso se deseje montar o sistema de arquivos raiz nele. Alguns valores importantes são: 
\layout Standard

\begin_deeper
\layout Verbatim

DISPOSITIVO
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
MAJOR
\protected_separator
MINOR
\protected_separator

\protected_separator
\newline
/dev/fd0
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
2
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
0
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
primeira
\protected_separator
unidade
\protected_separator
de
\protected_separator
disquetes
\protected_separator

\newline
/dev/hda1
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
3
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
1
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
partição
\protected_separator
1
\protected_separator
no
\protected_separator
primeiro
\protected_separator
disco
\protected_separator
IDE
\protected_separator

\newline
/dev/sda1
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
8
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
1
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
partição
\protected_separator
1
\protected_separator
no
\protected_separator
primeiro
\protected_separator
disco
\protected_separator
SCSI
\protected_separator

\newline
/dev/sda8
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
8
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
8
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
partição
\protected_separator
8
\protected_separator
no
\protected_separator
primeiro
\protected_separator
disco
\protected_separator
SCSI
\protected_separator


\end_deeper
\layout Standard

Uma vez que estes valores estejam configurados, pode-se gravar o arquivo utilizando tanto o editor Norton, quanto um programa chamado 
\family typewriter rawrite.exe
\family default . Este programa é incluído em todas as distribuições, e é executado em ambientes DOS, sendo capaz de gravar os dados de forma direta, ao invés de gravar através do sistema de arquivos. Caso se utilize o Norton deve-se gravar o arquivo em um disco físico com início igual ao do disco de inicialização. 
\layout Standard

\series bold Q. Como fazer cópias adicionais dos disquetes de inicialização e raiz? 
\series default 
\layout Standard

Como a mídia magnética pode deteriorar-se com o tempo, deve-se manter diversas cópias dos discos de emergência, para as situações em que o original não funcione. 
\layout Standard

A forma mais simples de fazer cópias de qualquer disquete, inclusive disquetes que podem ser inicializados e disquetes de utilitários, é através da utilização do comando 
\family typewriter dd
\family default   para cópia do disquete original em um disco rígido e após o mesmo comando para copiar do disco rígido para os diversos disquetes.  Note que não se deve montar os disquetes, porque o comando  
\family typewriter dd
\family default   utiliza o acesso direto ao dispositivo. 
\layout Standard

Para copiar o disquete original, execute o comando: 
\begin_deeper
\layout Verbatim


\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
dd
\protected_separator
if=NOME_DISPOSITIVO
\protected_separator
of=NOME_ARQUIVO
\protected_separator

\protected_separator
\newline

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
onde
\protected_separator
NOME_DISPOSITIVO
\protected_separator
é
\protected_separator
o
\protected_separator
nome
\protected_separator
da
\protected_separator
unidade
\protected_separator
de
\protected_separator
disquetes
\protected_separator

\newline

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
e
\protected_separator
NOME_ARQUIVO
\protected_separator
é
\protected_separator
o
\protected_separator
nome
\protected_separator
do
\protected_separator
arquivo
\protected_separator
de
\protected_separator
saída
\protected_separator
(no
\protected_separator
disco
\protected_separator
rígido)
\protected_separator


\end_deeper
\layout Standard

Omitindo-se o parâmetro  
\family typewriter count
\family default   faz com que o comando copie todo o disquete (2880 blocos de alta densidade). 
\layout Standard

Para copiar o arquivo resultante para um novo disquete, deve-se inserir o disquete na unidade e executar o comando: 
\layout Standard

\begin_deeper
\layout Verbatim


\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
dd
\protected_separator
if=NOME_ARQUIVO
\protected_separator
of=NOME_DISPOSITIVO
\protected_separator

\protected_separator

\end_deeper
\layout Standard

Note que o exemplo acima assume que se tenha somente uma unidade de gravação de disquetes. Caso se tenha duas de mesmo tipo, pode-se copiar o disquete usando-se o comando: 
\layout Standard

\begin_deeper
\layout Verbatim


\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
dd
\protected_separator
if=/dev/fd0
\protected_separator
of=/dev/fd1
\protected_separator

\protected_separator

\end_deeper
\layout Standard

\series bold Q. Como inicializar o sistema sem ter que digitar "ahaxxxx=nn,nn,nn" toda vez? 
\series default 
\layout Standard

kernel, parâmetros 
\layout Standard

Quando um dispositivo não pode ser detectado automáticamente, é necessário fornecer ao kernel os parâmetros através do comando de dispositivos, como por exemplo: 
\begin_deeper
\layout Verbatim


\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
aha152x=0x340,11,3,1
\protected_separator

\protected_separator

\end_deeper
\layout Standard

Este parâmetro pode ser fornecido pelo LILO de diversas formas: 
\layout Itemize
Informando o comando toda a vez que o sistema for inicializado via LILO. A opção  menos aconselhável. 
\layout Itemize
Usando o parâmetro  ``
\family typewriter lock
\family default '' para armazenar a linha de comando como a linha padrão de comando, fazendo com que o LILO use estas opções toda a vez que o sistema for carregado. 
\layout Itemize
 Utilizando o parâmetro  
\family typewriter append=
\family default  no arquivo de configuração do LILO. Note que o parâmetro deve estar entre aspas. 
\layout Standard

Por exemplo, uma linha de comando usando os parâmetros acima poderia ser: 
\begin_deeper
\layout Verbatim


\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
zImage
\protected_separator

\protected_separator
aha152x=0x340,11,3,1
\protected_separator
root=/dev/sda1
\protected_separator
lock
\protected_separator

\protected_separator

\end_deeper
\layout Standard

Este comando passa os parâmetros do dispositivo,  configura o dispositivo raiz em /dev/sda1 e salva todo o comando para reutilização futura. 
\layout Standard

Um exemplo de comando append: 
\begin_deeper
\layout Verbatim


\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
\backslash
\protected_separator
{append}
\protected_separator
=
\protected_separator
"aha152x=0x340,11,3,1"
\protected_separator

\protected_separator

\end_deeper
\layout Standard

Note que o parâmetro não deve estar entre aspas na linha de comando, mas é obrigatório que assim esteja no comando append. 
\layout Standard

Note ainda que  para que o parâmetro seja ativado, o kernel deve conter o módulo para o dispositivo assinalado. Caso contrário,  o comando não surtirá efeito algum e o kernel deverá ser reconstruído para incluir o módulo requerido. Para maiores detalhes sobre a reconstrução do kernel, mude o diretório  para /usr/src/linux e veja o arquivo README, e leia o FAQ e o tutorial de instalação. Alternativamente pode-se obter um kernel genérico e instalá-lo. 
\layout Standard

É extremamente indicado a leitura da documentação LILO antes de se tentar instalá-lo. Usos indevidos do comando  
\family typewriter BOOT
\family default  podem causar danos às partições. 
\layout Standard

\series bold Q. Durante a inicialização  ocorreu o erro  "
\family typewriter A: não pode executar B
\family default ". Por quê? 
\series default 
\layout Standard

localizações pré-definidas 
\layout Standard

Há diversos casos em que nomes de programas encontram-se dentro do código de vários utilitários. Este casos não ocorrem em toda parte, mas pode ser uma explicação de porquê um executável aparentemente pode não ser encontrado, apesar de estar presente no sistema. Pode-se descobrir se um determinado programa tem o nome de outro dentro de seu código usando-se o comando 
\family typewriter strings
\family default  e conectando sua saída com o comando 
\family typewriter grep
\family default . 
\layout Standard

Exemplos conhecidos de localizações pré-definidas: 
\layout Itemize
Shutdown em algumas versões tem o programa  /etc/reboot pré-definido, sendo que 
\family typewriter reboot
\family default  deverá estar no diretório  
\family typewriter /etc
\family default  . 
\layout Itemize
\family typewriter init
\family default  pode causar alguns problemas, caso o kernel não consiga encontrá-lo em 
\family typewriter init
\family default . 
\layout Standard

Para corrigir estes problemas, deve-se ou mover os programas para o diretório correto, ou mudar os arquivos de configuração (por exemplo  
\family typewriter inittab
\family default ) para apontarem para o diretório correto. Em caso de dúvidas, ponha os programas no mesmo diretório em que eles estavam no disco rígido, e utilize os mesmos  
\family typewriter inittab
\family default  e  /etc/rc.d da forma como eles estão presentes. 
\layout Standard

\series bold Q. Meu kernel tem suporte a disco em memória, mas aparece com 0 Kb de espaço. 
\series default 
\layout Standard

Quando isso ocorre, uma mensagem do kernel aparecerá durante a inicialização: disco em memória 
\layout Verbatim

Dispositivo
\protected_separator
de
\protected_separator
disco
\protected_separator
em
\protected_separator
memória
\protected_separator
inicializado:
\protected_separator

\protected_separator

\protected_separator
\newline
16
\protected_separator
discos
\protected_separator
em
\protected_separator
memória
\protected_separator
com
\protected_separator
tamanho
\protected_separator
de
\protected_separator
0K.
\protected_separator


Isso se deve provavelmente à definição do tamanho em zero através dos parâmetros de kernel em tempo de inicialização. Algo como: 
\layout Standard

\begin_deeper
\layout Verbatim

ramdisk=0
\protected_separator

\protected_separator

\end_deeper
\layout Standard

Isso foi incluído como exemplo de configuração do LILO em algumas distribuições antigas, e foi colocado para sobrepor-se a parâmetros anteriores de configuração do kernel. Caso essa linha esteja presente, deve ser retirada. 
\layout Standard

Note que ao se tentar utilizar um disco em memória com tamanho igual a zero, o comportamento do sistema é imprevisível, e pode resultar em travamentos do kernel. 
\layout Section

Recursos e Endereços
\begin_inset LatexCommand \label{referências}
\end_inset 
\layout Standard

Nesta seção, vvv é usado no lugar de versões dos nomes dos pacotes, a fim de evitar a referência a uma versão específica. Ao recuperar um pacote, deve-se procurar usar sempre a versão mais recente, a menos que haja alguma boa razão para fazer o contrário. 
\layout Subsection

Discos de Inicialização Pré-Configurados
\layout Standard

\begin_inset LatexCommand \label{distbootdisks}
\end_inset 
\layout Standard

Há diversas fontes de discos de distribuições.  
\shape italic  Por favor use um dos sites espelhos para reduzir o tráfego nestas máquinas.
\shape default  
\layout Itemize
 \begin_inset LatexDel \url{
\end_inset
http://sunsite.unc.edu/pub/Linux/distributions/slackware/bootdsks.144/
\begin_inset LatexDel }{
\end_inset
Discos de inicialização Slackware
\begin_inset LatexDel }
\end_inset
 e \begin_inset LatexDel \url{
\end_inset
http://sunsite.unc.edu/pub/Linux/distributions/slackware/MIRRORS.TXT
\begin_inset LatexDel }{
\end_inset
Sites espelho Slackware
\begin_inset LatexDel }
\end_inset
\layout Itemize
 \begin_inset LatexDel \url{
\end_inset
http://sunsite.unc.edu/pub/Linux/distributions/redhat/current/i386/images/
\begin_inset LatexDel }{
\end_inset
 Discos de inicialização Red Hat
\begin_inset LatexDel }
\end_inset
 e \begin_inset LatexDel \url{
\end_inset
http://www.redhat.com/ftp.html
\begin_inset LatexDel }{
\end_inset
Sites espelho Red Hat
\begin_inset LatexDel }
\end_inset
\layout Itemize
 \begin_inset LatexDel \url{
\end_inset
ftp://ftp.debian.org/pub/debian/stable/disks-i386
\begin_inset LatexDel }{
\end_inset
 Discos de inicialização Debian
\begin_inset LatexDel }
\end_inset
 e \begin_inset LatexDel \url{
\end_inset
ftp://ftp.debian.org/debian/README.mirrors
\begin_inset LatexDel }{
\end_inset
Sites espelho Debian
\begin_inset LatexDel }
\end_inset
\layout Standard

Em adição aos discos das distribuições, as seguintes imagens de discos de emergência estão disponíveis: 
\layout Itemize
\family typewriter tomsrtbt
\family default , de Tom Oehser, é um único disco de inicialização e raiz, baseado no kernel 2.0.33, com uma grande lista de funcionalidades e programas de suporte. Suporta IDE, SCSI, fita, placas de rede, PCMCIA e mais. Mais de 100 utilitários e ferramentas estão inclusas para correção e restauração de discos. O pacote ainda inclui programas para desmontagem e reconstrução de imagens, permitindo que novos itens possam ser incluídos.
\layout Standard

\begin_inset LatexDel \url{
\end_inset
http://www.toms.net/~toehser/rb/tomsrtbt-current.tar.gz
\begin_inset LatexDel }{
\end_inset
{urlnam}
\begin_inset LatexDel }
\end_inset
\layout Standard

\begin_inset LatexDel \url{
\end_inset
http://sunsite.unc.edu/pub/Linux/system/recovery/
\begin_inset LatexDel }{
\end_inset
{urlnam}
\begin_inset LatexDel }
\end_inset
\layout Itemize
\family typewriter rescue02
\family default , de John Comyns, é um disco de emergência baseado no kernel 1.3.84, com suporte a IDE e  Adaptec 1542 e NCR53C7,8xx. Usa binários ELF, porém contém comandos suficientes para ser utilizado em qualquer sistema. Há módulos que podem ser carregados após a inicialização do sistema para todas as placas SCSI. Provavelmente não funcionará em sistemas com 4 Mb de RAM, uma vez que utiliza um disco de 3 Mb.
\layout Standard

\begin_inset LatexDel \url{
\end_inset
http://sunsite.unc.edu/pub/Linux/system/recovery/rescue02.zip
\begin_inset LatexDel }{
\end_inset
{urlnam}
\begin_inset LatexDel }
\end_inset
\layout Itemize
\family typewriter resque_disk-2.0.22
\family default , de Sergei Viznyuk,  é um disco de inicialização e raiz baseado no kernel 2.0.22 com suporte a IDE, muitas controladoras SCSI e ELF/OUT. Inclui ainda diversos módulos e utilitários para reparar e restaurar discos rígidos.
\layout Standard

\begin_inset LatexDel \url{
\end_inset
http://sunsite.unc.edu/pub/Linux/system/recovery/resque_disk-vvv.tar.gz
\begin_inset LatexDel }{
\end_inset
{urlnam}
\begin_inset LatexDel }
\end_inset
\layout Itemize
\family typewriter Imagens cramdisk
\family default  baseado no kernel 2.0.33, disponível para máquinas com 4 e 8 Mb. Incluem emulador matemático e suporte à comunicação (PPP e programas de discagem, NE2000, 3C509), ou suporte a dispositivos ZIP paralelos. Estas imagens serão capazes de inicializar um 386 com 4 Mb de RAM. Suporte a MSDOS está incluso, podendo-se assim transmitir da Internet para uma partição DOS.
\layout Standard

\begin_inset LatexDel \url{
\end_inset
http://sunsite.unc.edu/pub/Linux/system/recovery/images/
\begin_inset LatexDel }{
\end_inset
{urlnam}
\begin_inset LatexDel }
\end_inset
\layout Subsection

Discos de Emergência 
\layout Standard

Diversos pacotes de criação de discos de emergência estão disponíveis em sunsite.unc.edu. Com estes pacotes pode-se especificar um conjunto de arquivos para inclusão e o software automatiza (em vários níveis) a criação do disco de inicialização. Veja \begin_inset LatexDel \url{
\end_inset
http://sunsite.unc.edu/pub/Linux/system/recovery/!INDEX.html
\begin_inset LatexDel }{
\end_inset
{urlnam}
\begin_inset LatexDel }
\end_inset
 para maiores informações. 
\series bold Verifique as datas dos arquivos cuidadosamente
\series default  --- alguns destes pacotes podem estar desatualizados há vários anos e podem não suportar a criação de sistemas de arquivos raiz compactados carregados em discos em memória. Até onde conhecemos Yard é o único pacote que poderá fazer isso. 
\layout Subsection

Programas de Lote de Graham Chapman
\layout Standard

Graham Chapman  escreveu um conjunto de programas que podem ser bastante úteis como exemplos de criação de discos de inicialização. Em versões anteriores deste tutorial os programas apareciam como um apêndice, mas foram apagados deste documento e colocados em uma página web: 
\begin_inset LatexDel \url{
\end_inset
http://www.zeta.org.au/grahamc/linux.html
\begin_inset LatexDel }{
\end_inset
{urlnam}
\begin_inset LatexDel }
\end_inset
\layout Standard

Pode ser conveniente o uso destes programas, mas deve-se ler cuidadosamente as instruções -- por exemplo ao especificar uma área de troca incorreta, pode-se apagar o sistema de arquivos raiz definitivamente. Esteja seguro de que esteja bem configurado antes de usar os programas. 
\layout Subsection

LILO --- O carregador Linux
\layout Standard

LILO 
\layout Standard

Escrito por  Werner Almesberger.  Excelente carregador da inicialização do sistema, e a documentação inclui informações sobre o setor de inicialização e os estágios anteriores do processo de carga de um sistema. 
\layout Standard

Ftp em \begin_inset LatexDel \url{
\end_inset
ftp://tsx-11.mit.edu/pub/linux/packages/lilo/lilo.vvv.tar.gz
\begin_inset LatexDel }{
\end_inset
{urlnam}
\begin_inset LatexDel }
\end_inset
.  Está também disponível no Sunsite e seus diversos sites espelhos. 
\layout Subsection

Perguntas Mais Freqüentes e Como Fazer
\layout Standard

Estão disponíveis em diversos locais. Pode-se verificar os grupos de notícias da Usenet em  
\family typewriter news.answers
\family default  e 
\family typewriter comp.os.linux.announce
\family default . 
\layout Standard

Perguntas mais freqüentes em  \begin_inset LatexDel \url{
\end_inset
http://sunsite.unc.edu/pub/Linux/docs/faqs/linux-faq
\begin_inset LatexDel }{
\end_inset
{urlnam}
\begin_inset LatexDel }
\end_inset
 e Como Fazer em  \begin_inset LatexDel \url{
\end_inset
http://sunsite.unc.edu/pub/Linux/docs/HOWTO
\begin_inset LatexDel }{
\end_inset
{urlnam}
\begin_inset LatexDel }
\end_inset
. 
\layout Standard

Mais documentação sobre o Linux pode ser encontrada em  \begin_inset LatexDel \url{
\end_inset
http://sunsite.unc.edu/LDP/
\begin_inset LatexDel }{
\end_inset
Página do Projeto de Documentação Linux
\begin_inset LatexDel }
\end_inset
. 
\layout Standard

Caso o problema seja seríssimo pode-se enviar uma mensagem em inglês para 
\family typewriter mail-server@rtfm.mit.edu
\family default  com a palavra  
``
\family typewriter help
\family default '' na mensagem. 
\layout Subsection

Uso do Disco em Memória
\layout Standard

Disco em memória 
Uma excelente descrição de como funciona o novo código de disco em memória pode ser encontrada com a documentação do kernel do Linux. Veja em  /usr/src/linux/Documentation/ramdisk.txt. Foi escrito por Paul Gortmaker e inclui uma seção sobre a criação de discos em memória compactados. 
\layout Subsection

O processo de inicialização do Linux
\layout Standard

processo de inicialização 
\layout Standard

Para maiores detalhes sobre o processo de inicialização do Linux, seguem algumas indicações: 
\layout Itemize
O Guia de Administração do Sistema Linux contém uma seção sobre o processo. Veja em  \begin_inset LatexDel \url{
\end_inset
http://sunsite.unc.edu/LDP/LDP/sag-0.5/node68.html
\begin_inset LatexDel }{
\end_inset
{urlnam}
\begin_inset LatexDel }
\end_inset
\layout Itemize
Visão Geral do  LILO  \begin_inset LatexDel \url{
\end_inset
http://sunsite.unc.edu/pub/Linux/system/boot/lilo/lilo-t-20.ps.gz
\begin_inset LatexDel }{
\end_inset
{urlnam}
\begin_inset LatexDel }
\end_inset
 tem uma visão tecnicamente detalhada e definitiva sobre o processo de inicialização e como o kernel é carregado. 
\layout Itemize
O código fonte é o último guia. Abaixo seguem alguns arquivos do kernel relacionados com o processo de inicialização. Caso se tenha à disposição os fontes do Linux, que podem ser encontrados em  /usr/src/linux em sistemas Linux; ou alternativamente  Shigio Yamaguchi (shigio@wafu.netgate.net) tem um kernel em hipertexto em  \begin_inset LatexDel \url{
\end_inset
http://wafu.netgate.net/linux/
\begin_inset LatexDel }{
\end_inset
{urlnam}
\begin_inset LatexDel }
\end_inset
. 

\begin_deeper
\layout Description

arch/i386/boot/bootsect.S,setup.S
\protected_separator

 Contém o código Assembler para o setor de inicialização. 
\layout Description

arch/i386/boot/compressed/misc.c
\protected_separator

 Contém o código para descompactar o kernel. 
\layout Description

arch/i386/kernel/
\protected_separator

 Diretório contendo o código de inicialização do kernel. 
\family typewriter setup.c
\family default  contém a palavra de configuração do disco em memória. 
\layout Description

drivers/block/rd.c
\protected_separator

 Contém o arquivo de controle do disco em memória. Os procedimentos 
\family typewriter rd_load
\family default  e   
\family typewriter rd_load_image
\family default   
carregam os blocos de um dispositivo em um disco em memória. O procedimento  
\family typewriter identify_ramdisk_image
\family default   
determina o tipo do sistema de arquivos encontrado e se ele é compactado. 

\end_deeper
\layout Section

Códigos de Erros de Inicialização do LILO
\layout Standard

LILO, códigos de erros 
Questões sobre esses códigos de erros, tem sido freqüentes na Usenet, sendo que incluímos aqui como um serviço público. Este sumário foi desenvolvido a partir da Documentação do Usuário LILO de Werner Almsberger, disponível em  \begin_inset LatexDel \url{
\end_inset
ftp://lrcftp.epfl.ch:/pub/linux/local/lilo/lilo.u.19.ps.gz
\begin_inset LatexDel }{
\end_inset
{urlnam}
\begin_inset LatexDel }
\end_inset
. 
\layout Standard

Quando o LILO carrega a si próprio, ele apresenta a palavra ``
\family typewriter LILO
\family default ''.  Cada letra é apresentada antes da execução de algum processo, assim sendo as letras podem ser um indicador do estágio atingido e da origem do problema. 
\layout Description

 Nenhuma parte do LILO foi carregada. LILO pode não estar instalado ou a partição no qual o setor de inicialização está localizado não está ativa. 
\layout Description

L
\protected_separator

 O primeiro estágio do carregador foi iniciado e executado, mas não foi possível carregar o segundo estágio. Os códigos de erro com dois dígitos indicam o tipo de problema (Veja ainda "Códigos de Erros de Discos"). Esta condição indica normalmente a falha na mídia ou erro de geometria (por exemplo parâmetros de disco incorretos). 
\layout Description

LI
\protected_separator

 O primeiro estágio foi capaz de carregar o segundo, mas falhou na sua execução. Isso pode ser causado por erro de geometria ou pela movimentação do /boot/boot.b  sem a execução do instalador. 
\layout Description

LIL
\protected_separator

 O segundo estágio conseguiu ser iniciado, mas não pode carregar a tabela de descritores do arquivo map. Isso normalmente é causado por falha na mídia ou erro de geometria. 
\layout Description

LIL?
\protected_separator

 O segundo estágio do LILO foi carregado para um endereço incorreto. Isso é tipicamente causado por erros de geometria ou pela movimentação do arquivo /boot/boot.b sem a execução do instalador. 
\layout Description

LIL-
\protected_separator

 A tabela de descritores está corrompida. Isso pode ser causado   por erros de geometria ou pela movimentação do arquivo /boot/boot.b sem a execução do instalador. 
\layout Description

LILO
\protected_separator

 Todas as partes do LILO foram carregadas. 
Caso o BIOS apresente algum erro quando o LILO estiver tentando carregar uma imagem de inicialização, o respectivo código de erro é apresentado. Estes códigos variam de 
\family typewriter 0x00
\family default  até 
\family typewriter 0xbb
\family default . Veja o Guia do Usuário LILO para uma maior explicação sobre este tema. 
\layout Section

Listas de exemplo do conteúdo do disco de inicialização
\layout Standard

\begin_inset LatexCommand \label{listings}
\end_inset 
sistema de arquivos raiz 
Aqui está o conteúdo dos disquetes raiz e utilitários de Graham. Estas listas são apresentadas como um exemplo dos arquivos incluídos em um sistema funcional. Graham adicionou algumas notas explicativas que parecem muito úteis. 
\layout Standard

\begin_deeper
\layout Verbatim

total
\protected_separator
18
\protected_separator

\protected_separator
\newline
drwxr-xr-x
\protected_separator

\protected_separator

\protected_separator
2
\protected_separator
root
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
root
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
1024
\protected_separator
Jul
\protected_separator
29
\protected_separator
21:16
\protected_separator
bin/
\protected_separator

\newline
drwxr-xr-x
\protected_separator

\protected_separator

\protected_separator
2
\protected_separator
root
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
root
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
9216
\protected_separator
Jul
\protected_separator
28
\protected_separator
16:21
\protected_separator
dev/
\protected_separator

\newline
drwxr-xr-x
\protected_separator

\protected_separator

\protected_separator
3
\protected_separator
root
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
root
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
1024
\protected_separator
Jul
\protected_separator
29
\protected_separator
20:25
\protected_separator
etc/
\protected_separator

\newline
drwxr-xr-x
\protected_separator

\protected_separator

\protected_separator
2
\protected_separator
root
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
root
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
1024
\protected_separator
Jul
\protected_separator
28
\protected_separator
19:53
\protected_separator
lib/
\protected_separator

\newline
drwxr-xr-x
\protected_separator

\protected_separator

\protected_separator
2
\protected_separator
root
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
root
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
1024
\protected_separator
Jul
\protected_separator
24
\protected_separator
22:47
\protected_separator
mnt/
\protected_separator

\newline
drwxr-xr-x
\protected_separator

\protected_separator

\protected_separator
2
\protected_separator
root
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
root
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
1024
\protected_separator
Jul
\protected_separator
24
\protected_separator
22:47
\protected_separator
proc/
\protected_separator

\newline
drwxr-xr-x
\protected_separator

\protected_separator

\protected_separator
2
\protected_separator
root
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
root
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
1024
\protected_separator
Jul
\protected_separator
28
\protected_separator
19:07
\protected_separator
sbin/
\protected_separator

\newline
drwxr-xr-x
\protected_separator

\protected_separator

\protected_separator
2
\protected_separator
root
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
root
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
1024
\protected_separator
Jul
\protected_separator
29
\protected_separator
20:57
\protected_separator
tmp/
\protected_separator

\newline
drwxr-xr-x
\protected_separator

\protected_separator

\protected_separator
4
\protected_separator
root
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
root
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
1024
\protected_separator
Jul
\protected_separator
29
\protected_separator
21:35
\protected_separator
usr/
\protected_separator

\newline
drwxr-xr-x
\protected_separator

\protected_separator

\protected_separator
3
\protected_separator
root
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
root
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
1024
\protected_separator
Jul
\protected_separator
28
\protected_separator
19:52
\protected_separator
var/
\protected_separator

\newline

\protected_separator

\newline
/bin:
\protected_separator

\newline
total
\protected_separator
713
\protected_separator

\newline
-rwxr-xr-x
\protected_separator

\protected_separator

\protected_separator
1
\protected_separator
root
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
bin
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
7737
\protected_separator
Jul
\protected_separator
24
\protected_separator
22:16
\protected_separator
cat*
\protected_separator

\newline
-rwxr-xr-x
\protected_separator

\protected_separator

\protected_separator
1
\protected_separator
root
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
bin
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
9232
\protected_separator
Jul
\protected_separator
24
\protected_separator
22:48
\protected_separator
chmod*
\protected_separator

\newline
-rwxr-xr-x
\protected_separator

\protected_separator

\protected_separator
1
\protected_separator
root
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
bin
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
8156
\protected_separator
Jul
\protected_separator
24
\protected_separator
22:48
\protected_separator
chown*
\protected_separator

\newline
-rwxr-xr-x
\protected_separator

\protected_separator

\protected_separator
1
\protected_separator
root
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
bin
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
19652
\protected_separator
Jul
\protected_separator
24
\protected_separator
22:48
\protected_separator
cp*
\protected_separator

\newline
-rwxr-xr-x
\protected_separator

\protected_separator

\protected_separator
1
\protected_separator
root
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
root
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
8313
\protected_separator
Jul
\protected_separator
29
\protected_separator
21:16
\protected_separator
cut*
\protected_separator

\newline
-rwxr-xr-x
\protected_separator

\protected_separator

\protected_separator
1
\protected_separator
root
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
bin
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
12136
\protected_separator
Jul
\protected_separator
24
\protected_separator
22:48
\protected_separator
dd*
\protected_separator

\newline
-rwxr-xr-x
\protected_separator

\protected_separator

\protected_separator
1
\protected_separator
root
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
bin
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
9308
\protected_separator
Jul
\protected_separator
24
\protected_separator
22:48
\protected_separator
df*
\protected_separator

\newline
-rwxr-xr-x
\protected_separator

\protected_separator

\protected_separator
1
\protected_separator
root
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
root
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
9036
\protected_separator
Jul
\protected_separator
29
\protected_separator
20:24
\protected_separator
dircolors*
\protected_separator

\newline
-rwxr-xr-x
\protected_separator

\protected_separator

\protected_separator
1
\protected_separator
root
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
bin
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
9064
\protected_separator
Jul
\protected_separator
24
\protected_separator
22:48
\protected_separator
du*
\protected_separator

\newline
-rwxr-x---
\protected_separator

\protected_separator

\protected_separator
1
\protected_separator
root
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
bin
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
69252
\protected_separator
Jul
\protected_separator
24
\protected_separator
22:51
\protected_separator
e2fsck*
\protected_separator

\newline
-rwxr-xr-x
\protected_separator

\protected_separator

\protected_separator
1
\protected_separator
root
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
bin
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
5361
\protected_separator
Jul
\protected_separator
24
\protected_separator
22:48
\protected_separator
echo*
\protected_separator

\newline
-rwxr-xr-x
\protected_separator

\protected_separator

\protected_separator
1
\protected_separator
root
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
bin
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
5696
\protected_separator
Jul
\protected_separator
24
\protected_separator
22:16
\protected_separator
hostname*
\protected_separator

\newline
-rwxr-xr-x
\protected_separator

\protected_separator

\protected_separator
1
\protected_separator
root
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
bin
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
6596
\protected_separator
Jul
\protected_separator
24
\protected_separator
22:49
\protected_separator
kill*
\protected_separator

\newline
-rwxr-xr-x
\protected_separator

\protected_separator

\protected_separator
1
\protected_separator
root
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
bin
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
10644
\protected_separator
Jul
\protected_separator
24
\protected_separator
22:17
\protected_separator
ln*
\protected_separator

\newline
-rwxr-xr-x
\protected_separator

\protected_separator

\protected_separator
1
\protected_separator
root
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
bin
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
13508
\protected_separator
Jul
\protected_separator
24
\protected_separator
22:17
\protected_separator
login*
\protected_separator

\newline
-rwxr-xr-x
\protected_separator

\protected_separator

\protected_separator
1
\protected_separator
root
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
bin
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
26976
\protected_separator
Jul
\protected_separator
24
\protected_separator
22:17
\protected_separator
ls*
\protected_separator

\newline
-rwxr-xr-x
\protected_separator

\protected_separator

\protected_separator
1
\protected_separator
root
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
bin
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
7416
\protected_separator
Jul
\protected_separator
24
\protected_separator
22:49
\protected_separator
mkdir*
\protected_separator

\newline
-rwxr-x---
\protected_separator

\protected_separator

\protected_separator
1
\protected_separator
root
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
bin
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
34596
\protected_separator
Jul
\protected_separator
24
\protected_separator
22:51
\protected_separator
mke2fs*
\protected_separator

\newline
-rwxr-xr-x
\protected_separator

\protected_separator

\protected_separator
1
\protected_separator
root
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
bin
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
6712
\protected_separator
Jul
\protected_separator
24
\protected_separator
22:49
\protected_separator
mknod*
\protected_separator

\newline
-rwxr-xr-x
\protected_separator

\protected_separator

\protected_separator
1
\protected_separator
root
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
bin
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
20304
\protected_separator
Jul
\protected_separator
24
\protected_separator
22:17
\protected_separator
more*
\protected_separator

\newline
-rwxr-xr-x
\protected_separator

\protected_separator

\protected_separator
1
\protected_separator
root
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
bin
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
24704
\protected_separator
Jul
\protected_separator
24
\protected_separator
22:17
\protected_separator
mount*
\protected_separator

\newline
-rwxr-xr-x
\protected_separator

\protected_separator

\protected_separator
1
\protected_separator
root
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
bin
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
12464
\protected_separator
Jul
\protected_separator
24
\protected_separator
22:17
\protected_separator
mv*
\protected_separator

\newline
-rwxr-xr-x
\protected_separator

\protected_separator

\protected_separator
1
\protected_separator
root
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
bin
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
20829
\protected_separator
Jul
\protected_separator
24
\protected_separator
22:50
\protected_separator
ps*
\protected_separator

\newline
-rwxr-xr-x
\protected_separator

\protected_separator

\protected_separator
1
\protected_separator
root
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
bin
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
9424
\protected_separator
Jul
\protected_separator
24
\protected_separator
22:50
\protected_separator
rm*
\protected_separator

\newline
-rwxr-xr-x
\protected_separator

\protected_separator

\protected_separator
1
\protected_separator
root
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
bin
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
4344
\protected_separator
Jul
\protected_separator
24
\protected_separator
22:50
\protected_separator
rmdir*
\protected_separator

\newline
-rwxr-xr-x
\protected_separator

\protected_separator

\protected_separator
1
\protected_separator
root
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
root
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
299649
\protected_separator
Jul
\protected_separator
27
\protected_separator
14:12
\protected_separator
sh*
\protected_separator

\newline
-rwxr-xr-x
\protected_separator

\protected_separator

\protected_separator
1
\protected_separator
root
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
bin
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
9853
\protected_separator
Jul
\protected_separator
24
\protected_separator
22:17
\protected_separator
su*
\protected_separator

\newline
-rwxr-xr-x
\protected_separator

\protected_separator

\protected_separator
1
\protected_separator
root
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
bin
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
380
\protected_separator
Jul
\protected_separator
27
\protected_separator
14:12
\protected_separator
sync*
\protected_separator

\newline
-rwxr-xr-x
\protected_separator

\protected_separator

\protected_separator
1
\protected_separator
root
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
bin
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
13620
\protected_separator
Jul
\protected_separator
24
\protected_separator
22:17
\protected_separator
umount*
\protected_separator

\newline
-rwxr-xr-x
\protected_separator

\protected_separator

\protected_separator
1
\protected_separator
root
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
root
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
5013
\protected_separator
Jul
\protected_separator
29
\protected_separator
20:03
\protected_separator
uname*
\protected_separator

\newline

\protected_separator

\newline
/dev:
\protected_separator

\newline
total
\protected_separator
0
\protected_separator

\newline
lrwxrwxrwx
\protected_separator

\protected_separator

\protected_separator
1
\protected_separator
root
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
root
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
10
\protected_separator
Jul
\protected_separator
24
\protected_separator
22:34
\protected_separator
cdrom
\protected_separator
->
\protected_separator
/dev/sbpcd
\protected_separator

\newline
crw--w--w-
\protected_separator

\protected_separator

\protected_separator
1
\protected_separator
root
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
tty
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
4,
\protected_separator

\protected_separator

\protected_separator
0
\protected_separator
Jul
\protected_separator
24
\protected_separator
21:49
\protected_separator
console
\protected_separator

\newline
brw-rw----
\protected_separator

\protected_separator

\protected_separator
1
\protected_separator
root
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
floppy
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
2,
\protected_separator

\protected_separator

\protected_separator
0
\protected_separator
Apr
\protected_separator
28
\protected_separator

\protected_separator
1995
\protected_separator
fd0
\protected_separator

\newline
lrwxrwxrwx
\protected_separator

\protected_separator

\protected_separator
1
\protected_separator
root
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
root
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
4
\protected_separator
Jul
\protected_separator
24
\protected_separator
22:34
\protected_separator
ftape
\protected_separator
->
\protected_separator
rft0
\protected_separator

\newline
crw-rw-rw-
\protected_separator

\protected_separator

\protected_separator
1
\protected_separator
root
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
sys
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
10,
\protected_separator

\protected_separator

\protected_separator
2
\protected_separator
Jul
\protected_separator
18
\protected_separator

\protected_separator
1994
\protected_separator
inportbm
\protected_separator

\newline
crw-rw----
\protected_separator

\protected_separator

\protected_separator
1
\protected_separator
root
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
kmem
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
1,
\protected_separator

\protected_separator

\protected_separator
2
\protected_separator
Jul
\protected_separator
28
\protected_separator
16:21
\protected_separator
kmem
\protected_separator

\newline
crw-rw----
\protected_separator

\protected_separator

\protected_separator
1
\protected_separator
root
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
kmem
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
1,
\protected_separator

\protected_separator

\protected_separator
1
\protected_separator
Jul
\protected_separator
18
\protected_separator

\protected_separator
1994
\protected_separator
mem
\protected_separator

\newline
lrwxrwxrwx
\protected_separator

\protected_separator

\protected_separator
1
\protected_separator
root
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
root
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
4
\protected_separator
Jul
\protected_separator
24
\protected_separator
22:34
\protected_separator
modem
\protected_separator
->
\protected_separator
cua0
\protected_separator

\newline
lrwxrwxrwx
\protected_separator

\protected_separator

\protected_separator
1
\protected_separator
root
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
root
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
4
\protected_separator
Jul
\protected_separator
24
\protected_separator
22:34
\protected_separator
mouse
\protected_separator
->
\protected_separator
cua1
\protected_separator

\newline
crw-rw-rw-
\protected_separator

\protected_separator

\protected_separator
1
\protected_separator
root
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
sys
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
1,
\protected_separator

\protected_separator

\protected_separator
3
\protected_separator
Jul
\protected_separator
18
\protected_separator

\protected_separator
1994
\protected_separator
null
\protected_separator

\newline
brw-rw----
\protected_separator

\protected_separator

\protected_separator
1
\protected_separator
root
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
disk
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
1,
\protected_separator

\protected_separator

\protected_separator
1
\protected_separator
Jul
\protected_separator
18
\protected_separator

\protected_separator
1994
\protected_separator
ram
\protected_separator

\newline
crw-rw----
\protected_separator

\protected_separator

\protected_separator
1
\protected_separator
root
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
disk
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
27,
\protected_separator

\protected_separator

\protected_separator
0
\protected_separator
Jul
\protected_separator
18
\protected_separator

\protected_separator
1994
\protected_separator
rft0
\protected_separator

\newline
brw-rw----
\protected_separator

\protected_separator

\protected_separator
1
\protected_separator
root
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
disk
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
25,
\protected_separator

\protected_separator

\protected_separator
0
\protected_separator
Jul
\protected_separator
19
\protected_separator

\protected_separator
1994
\protected_separator
sbpcd
\protected_separator

\newline
***
\protected_separator

\protected_separator
Foram
\protected_separator
incluídos
\protected_separator
arquivos
\protected_separator
de
\protected_separator
dispositivos
\protected_separator
para
\protected_separator
as
\protected_separator
partições
\protected_separator
SCSI
\protected_separator
em
\protected_separator
uso
\protected_separator

\newline
***
\protected_separator

\protected_separator
Caso
\protected_separator
sejam
\protected_separator
utilizados
\protected_separator
discos
\protected_separator
IDE,
\protected_separator
deve-se
\protected_separator
usar
\protected_separator
/dev/hdxx
\protected_separator
.
\protected_separator

\newline
brw-rw----
\protected_separator

\protected_separator

\protected_separator
1
\protected_separator
root
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
disk
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
8,
\protected_separator

\protected_separator

\protected_separator
0
\protected_separator
Apr
\protected_separator
29
\protected_separator

\protected_separator
1995
\protected_separator
sda
\protected_separator

\newline
brw-rw----
\protected_separator

\protected_separator

\protected_separator
1
\protected_separator
root
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
disk
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
8,
\protected_separator

\protected_separator

\protected_separator
6
\protected_separator
Apr
\protected_separator
29
\protected_separator

\protected_separator
1995
\protected_separator
sda6
\protected_separator

\newline
brw-rw----
\protected_separator

\protected_separator

\protected_separator
1
\protected_separator
root
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
disk
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
8,
\protected_separator

\protected_separator

\protected_separator
7
\protected_separator
Apr
\protected_separator
29
\protected_separator

\protected_separator
1995
\protected_separator
sda7
\protected_separator

\newline
brw-rw----
\protected_separator

\protected_separator

\protected_separator
1
\protected_separator
root
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
disk
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
8,
\protected_separator

\protected_separator

\protected_separator
8
\protected_separator
Apr
\protected_separator
29
\protected_separator

\protected_separator
1995
\protected_separator
sda8
\protected_separator

\newline
lrwxrwxrwx
\protected_separator

\protected_separator

\protected_separator
1
\protected_separator
root
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
root
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
7
\protected_separator
Jul
\protected_separator
28
\protected_separator
12:56
\protected_separator
systty
\protected_separator
->
\protected_separator
console
\protected_separator

\newline
***
\protected_separator
esta
\protected_separator
ligação
\protected_separator
de
\protected_separator
systty
\protected_separator
para
\protected_separator
a
\protected_separator
console
\protected_separator
é
\protected_separator
obrigatória
\protected_separator

\newline
crw-rw-rw-
\protected_separator

\protected_separator

\protected_separator
1
\protected_separator
root
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
tty
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
5,
\protected_separator

\protected_separator

\protected_separator
0
\protected_separator
Jul
\protected_separator
18
\protected_separator

\protected_separator
1994
\protected_separator
tty
\protected_separator

\newline
crw--w--w-
\protected_separator

\protected_separator

\protected_separator
1
\protected_separator
root
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
tty
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
4,
\protected_separator

\protected_separator

\protected_separator
0
\protected_separator
Jul
\protected_separator
18
\protected_separator

\protected_separator
1994
\protected_separator
tty0
\protected_separator

\newline
crw--w----
\protected_separator

\protected_separator

\protected_separator
1
\protected_separator
root
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
tty
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
4,
\protected_separator

\protected_separator

\protected_separator
1
\protected_separator
Jul
\protected_separator
24
\protected_separator
22:33
\protected_separator
tty1
\protected_separator

\newline
crw--w----
\protected_separator

\protected_separator

\protected_separator
1
\protected_separator
root
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
tty
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
4,
\protected_separator

\protected_separator

\protected_separator
2
\protected_separator
Jul
\protected_separator
24
\protected_separator
22:34
\protected_separator
tty2
\protected_separator

\newline
crw--w--w-
\protected_separator

\protected_separator

\protected_separator
1
\protected_separator
root
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
root
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
4,
\protected_separator

\protected_separator

\protected_separator
3
\protected_separator
Jul
\protected_separator
24
\protected_separator
21:49
\protected_separator
tty3
\protected_separator

\newline
crw--w--w-
\protected_separator

\protected_separator

\protected_separator
1
\protected_separator
root
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
root
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
4,
\protected_separator

\protected_separator

\protected_separator
4
\protected_separator
Jul
\protected_separator
24
\protected_separator
21:49
\protected_separator
tty4
\protected_separator

\newline
crw--w--w-
\protected_separator

\protected_separator

\protected_separator
1
\protected_separator
root
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
root
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
4,
\protected_separator

\protected_separator

\protected_separator
5
\protected_separator
Jul
\protected_separator
24
\protected_separator
21:49
\protected_separator
tty5
\protected_separator

\newline
crw--w--w-
\protected_separator

\protected_separator

\protected_separator
1
\protected_separator
root
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
root
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
4,
\protected_separator

\protected_separator

\protected_separator
6
\protected_separator
Jul
\protected_separator
24
\protected_separator
21:49
\protected_separator
tty6
\protected_separator

\newline
crw-rw-rw-
\protected_separator

\protected_separator

\protected_separator
1
\protected_separator
root
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
tty
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
4,
\protected_separator

\protected_separator

\protected_separator
7
\protected_separator
Jul
\protected_separator
18
\protected_separator

\protected_separator
1994
\protected_separator
tty7
\protected_separator

\newline
crw-rw-rw-
\protected_separator

\protected_separator

\protected_separator
1
\protected_separator
root
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
tty
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
4,
\protected_separator

\protected_separator

\protected_separator
8
\protected_separator
Jul
\protected_separator
18
\protected_separator

\protected_separator
1994
\protected_separator
tty8
\protected_separator

\newline
crw-rw-rw-
\protected_separator

\protected_separator

\protected_separator
1
\protected_separator
root
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
tty
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
4,
\protected_separator

\protected_separator

\protected_separator
9
\protected_separator
Jul
\protected_separator
19
\protected_separator

\protected_separator
1994
\protected_separator
tty9
\protected_separator

\newline
crw-rw-rw-
\protected_separator

\protected_separator

\protected_separator
1
\protected_separator
root
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
sys
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
1,
\protected_separator

\protected_separator

\protected_separator
5
\protected_separator
Jul
\protected_separator
18
\protected_separator

\protected_separator
1994
\protected_separator
zero
\protected_separator

\newline

\protected_separator

\newline
/etc:
\protected_separator

\newline
total
\protected_separator
20
\protected_separator

\newline
-rw-r--r--
\protected_separator

\protected_separator

\protected_separator
1
\protected_separator
root
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
root
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
2167
\protected_separator
Jul
\protected_separator
29
\protected_separator
20:25
\protected_separator
DIR_COLORS
\protected_separator

\newline
-rw-r--r--
\protected_separator

\protected_separator

\protected_separator
1
\protected_separator
root
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
root
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
20
\protected_separator
Jul
\protected_separator
28
\protected_separator
12:37
\protected_separator
HOSTNAME
\protected_separator

\newline
-rw-r--r--
\protected_separator

\protected_separator

\protected_separator
1
\protected_separator
root
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
root
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
109
\protected_separator
Jul
\protected_separator
24
\protected_separator
22:57
\protected_separator
fstab
\protected_separator

\newline
-rw-r--r--
\protected_separator

\protected_separator

\protected_separator
1
\protected_separator
root
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
root
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
271
\protected_separator
Jul
\protected_separator
24
\protected_separator
22:21
\protected_separator
group
\protected_separator

\newline
-rw-r--r--
\protected_separator

\protected_separator

\protected_separator
1
\protected_separator
root
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
root
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
2353
\protected_separator
Jul
\protected_separator
24
\protected_separator
22:27
\protected_separator
inittab
\protected_separator

\newline
-rw-r--r--
\protected_separator

\protected_separator

\protected_separator
1
\protected_separator
root
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
root
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
0
\protected_separator
Jul
\protected_separator
29
\protected_separator
21:02
\protected_separator
issue
\protected_separator

\newline
-rw-r--r--
\protected_separator

\protected_separator

\protected_separator
1
\protected_separator
root
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
root
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
2881
\protected_separator
Jul
\protected_separator
28
\protected_separator
19:38
\protected_separator
ld.so.cache
\protected_separator

\newline
***
\protected_separator
Diversos
\protected_separator
erros
\protected_separator
ocorrem
\protected_separator
na
\protected_separator
inicialização
\protected_separator
se
\protected_separator
ld.so.cache
\protected_separator
não
\protected_separator
está
\protected_separator
presente,mas
\protected_separator

\newline
***
\protected_separator
esteja
\protected_separator
seguro
\protected_separator
que
\protected_separator

\protected_separator
ldconfig
\protected_separator
está
\protected_separator
incluído
\protected_separator
e
\protected_separator
pode
\protected_separator
ser
\protected_separator
executado
\protected_separator
em
\protected_separator
rc.x
\protected_separator
para
\protected_separator

\protected_separator

\newline
***
\protected_separator
atualizá-lo.
\protected_separator

\newline
-rw-r--r--
\protected_separator

\protected_separator

\protected_separator
1
\protected_separator
root
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
root
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
12
\protected_separator
Jul
\protected_separator
24
\protected_separator
22:22
\protected_separator
motd
\protected_separator

\newline
-rw-r--r--
\protected_separator

\protected_separator

\protected_separator
1
\protected_separator
root
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
root
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
606
\protected_separator
Jul
\protected_separator
28
\protected_separator
19:25
\protected_separator
passwd
\protected_separator

\newline
-rw-r--r--
\protected_separator

\protected_separator

\protected_separator
1
\protected_separator
root
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
root
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
1065
\protected_separator
Jul
\protected_separator
24
\protected_separator
22:21
\protected_separator
profile
\protected_separator

\newline
drwxr-xr-x
\protected_separator

\protected_separator

\protected_separator
2
\protected_separator
root
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
root
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
1024
\protected_separator
Jul
\protected_separator
29
\protected_separator
21:01
\protected_separator
rc.d/
\protected_separator

\newline
-rw-r--r--
\protected_separator

\protected_separator

\protected_separator
1
\protected_separator
root
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
root
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
18
\protected_separator
Jul
\protected_separator
24
\protected_separator
22:21
\protected_separator
shells
\protected_separator

\newline
-rw-r--r--
\protected_separator

\protected_separator

\protected_separator
1
\protected_separator
root
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
root
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
774
\protected_separator
Jul
\protected_separator
28
\protected_separator
13:43
\protected_separator
termcap
\protected_separator

\newline
-rw-r--r--
\protected_separator

\protected_separator

\protected_separator
1
\protected_separator
root
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
root
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
126
\protected_separator
Jul
\protected_separator
28
\protected_separator
13:44
\protected_separator
ttys
\protected_separator

\newline
-rw-r--r--
\protected_separator

\protected_separator

\protected_separator
1
\protected_separator
root
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
root
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
0
\protected_separator
Jul
\protected_separator
24
\protected_separator
22:47
\protected_separator
utmp
\protected_separator

\newline

\protected_separator

\newline
/etc/rc.d:
\protected_separator

\newline
total
\protected_separator
5
\protected_separator

\newline
***
\protected_separator
Não
\protected_separator
me
\protected_separator
importo
\protected_separator
muito
\protected_separator
com
\protected_separator
programas
\protected_separator
de
\protected_separator
encerramento
\protected_separator
do
\protected_separator
sistema
\protected_separator
-
\protected_separator

\newline
***
\protected_separator
tudo
\protected_separator
é
\protected_separator
executado
\protected_separator
em
\protected_separator
um
\protected_separator
disco
\protected_separator
em
\protected_separator
memória,
\protected_separator
não
\protected_separator
havendo
\protected_separator
muitas
\protected_separator
coisas
\protected_separator

\newline
***
\protected_separator
para
\protected_separator
finalizar.
\protected_separator

\newline
-rwxr-xr-x
\protected_separator

\protected_separator

\protected_separator
1
\protected_separator
root
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
root
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
1158
\protected_separator
Jul
\protected_separator
24
\protected_separator
22:23
\protected_separator
rc.K*
\protected_separator

\newline
-rwxr-xr-x
\protected_separator

\protected_separator

\protected_separator
1
\protected_separator
root
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
root
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
1151
\protected_separator
Jul
\protected_separator
28
\protected_separator
19:08
\protected_separator
rc.M*
\protected_separator

\newline
-rwxr-xr-x
\protected_separator

\protected_separator

\protected_separator
1
\protected_separator
root
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
root
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
507
\protected_separator
Jul
\protected_separator
29
\protected_separator
20:25
\protected_separator
rc.S*
\protected_separator

\newline

\protected_separator

\newline
/lib:
\protected_separator

\newline
total
\protected_separator
588
\protected_separator

\newline
***
\protected_separator
Tenho
\protected_separator
um
\protected_separator
sistema
\protected_separator
ELF,
\protected_separator
tendo
\protected_separator
sido
\protected_separator
incluído
\protected_separator
o
\protected_separator
carregador
\protected_separator
loader
\protected_separator
ld-linux.so.
\protected_separator

\protected_separator

\newline
***
\protected_separator

\protected_separator
Caso
\protected_separator
se
\protected_separator
esteja
\protected_separator
ainda
\protected_separator
utilizando
\protected_separator
o
\protected_separator

\protected_separator
a.out,
\protected_separator
então
\protected_separator
deve-se
\protected_separator
incluir
\protected_separator
ld.so.
\protected_separator

\protected_separator

\newline
***
\protected_separator
Deve-se
\protected_separator
usar
\protected_separator
o
\protected_separator
comando
\protected_separator
file
\protected_separator
para
\protected_separator
verificar
\protected_separator
quais
\protected_separator

\protected_separator
bibliotecas
\protected_separator
devem
\protected_separator
ser
\protected_separator
incluídas.
\protected_separator

\newline
lrwxrwxrwx
\protected_separator

\protected_separator

\protected_separator
1
\protected_separator
root
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
root
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
17
\protected_separator
Jul
\protected_separator
24
\protected_separator
23:36
\protected_separator
ld-linux.so.1
\protected_separator
->
\protected_separator
ld-linux.so.1.7.3*
\protected_separator

\newline
-rwxr-xr-x
\protected_separator

\protected_separator

\protected_separator
1
\protected_separator
root
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
root
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
20722
\protected_separator
Aug
\protected_separator
15
\protected_separator

\protected_separator
1995
\protected_separator
ld-linux.so.1.7.3*
\protected_separator

\newline
lrwxrwxrwx
\protected_separator

\protected_separator

\protected_separator
1
\protected_separator
root
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
root
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
13
\protected_separator
Jul
\protected_separator
24
\protected_separator
23:36
\protected_separator
libc.so.5
\protected_separator
->
\protected_separator
libc.so.5.0.9*
\protected_separator

\newline
-rwxr-xr-x
\protected_separator

\protected_separator

\protected_separator
1
\protected_separator
root
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
root
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
562683
\protected_separator
May
\protected_separator
19
\protected_separator

\protected_separator
1995
\protected_separator
libc.so.5.0.9*
\protected_separator

\newline
***
\protected_separator

\protected_separator
Deve-se
\protected_separator
incluir
\protected_separator

\protected_separator

\protected_separator
libtermcap
\protected_separator

\newline
lrwxrwxrwx
\protected_separator

\protected_separator

\protected_separator
1
\protected_separator
root
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
root
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
19
\protected_separator
Jul
\protected_separator
28
\protected_separator
19:53
\protected_separator
libtermcap.so.2
\protected_separator
->
\protected_separator
libtermcap.so.2.0.0*
\protected_separator

\newline
-rwxr-xr-x
\protected_separator

\protected_separator

\protected_separator
1
\protected_separator
root
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
root
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
11360
\protected_separator
May
\protected_separator
19
\protected_separator

\protected_separator
1995
\protected_separator
libtermcap.so.2.0.0*
\protected_separator

\newline

\protected_separator

\newline
/mnt:
\protected_separator

\newline
total
\protected_separator
0
\protected_separator

\newline

\protected_separator

\newline
/proc:
\protected_separator

\newline
total
\protected_separator
0
\protected_separator

\newline

\protected_separator

\newline
/sbin:
\protected_separator

\newline
total
\protected_separator
191
\protected_separator

\newline
***
\protected_separator

\protected_separator
Utilizo
\protected_separator
Slackware,
\protected_separator
o
\protected_separator
qual
\protected_separator
usa
\protected_separator

\protected_separator
agetty.
\protected_separator
Muitos
\protected_separator
sistemas
\protected_separator
usam
\protected_separator

\protected_separator
getty.
\protected_separator

\newline
***
\protected_separator

\protected_separator
Verifique
\protected_separator
em
\protected_separator
/etc/inittab
\protected_separator
para
\protected_separator
ver
\protected_separator
qual
\protected_separator
o
\protected_separator
necessário.
\protected_separator
Note
\protected_separator
que
\protected_separator

\protected_separator
(a)getty
\protected_separator
e
\protected_separator
login
\protected_separator

\newline
***
\protected_separator

\protected_separator
são
\protected_separator
necessários
\protected_separator
para
\protected_separator
que
\protected_separator
se
\protected_separator
possa
\protected_separator
fazer
\protected_separator
algo
\protected_separator
no
\protected_separator
sistema.
\protected_separator

\newline
-rwxr-xr-x
\protected_separator

\protected_separator

\protected_separator
1
\protected_separator
root
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
bin
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
11309
\protected_separator
Jul
\protected_separator
24
\protected_separator
22:54
\protected_separator
agetty*
\protected_separator

\newline
-rwxr-xr-x
\protected_separator

\protected_separator

\protected_separator
1
\protected_separator
root
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
bin
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
5204
\protected_separator
Jul
\protected_separator
24
\protected_separator
22:19
\protected_separator
halt*
\protected_separator

\newline
***
\protected_separator

\protected_separator
Obrigatório
\protected_separator
na
\protected_separator
inicialização
\protected_separator
do
\protected_separator
sistema
\protected_separator

\newline
-rwxr-xr-x
\protected_separator

\protected_separator

\protected_separator
1
\protected_separator
root
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
bin
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
20592
\protected_separator
Jul
\protected_separator
24
\protected_separator
22:19
\protected_separator
init*
\protected_separator

\newline
-rwxr-xr-x
\protected_separator

\protected_separator

\protected_separator
1
\protected_separator
root
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
root
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
86020
\protected_separator
Jul
\protected_separator
28
\protected_separator
19:07
\protected_separator
ldconfig*
\protected_separator

\newline
-rwxr-xr-x
\protected_separator

\protected_separator

\protected_separator
1
\protected_separator
root
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
bin
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
5329
\protected_separator
Jul
\protected_separator
27
\protected_separator
14:10
\protected_separator
mkswap*
\protected_separator

\newline
-rwxr-xr-x
\protected_separator

\protected_separator

\protected_separator
1
\protected_separator
root
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
root
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
5204
\protected_separator
Jul
\protected_separator
24
\protected_separator
22:20
\protected_separator
reboot*
\protected_separator

\newline
-rwxr-xr-x
\protected_separator

\protected_separator

\protected_separator
1
\protected_separator
root
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
root
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
6024
\protected_separator
Jul
\protected_separator
24
\protected_separator
22:20
\protected_separator
rdev*
\protected_separator

\newline
-rwxr-xr-x
\protected_separator

\protected_separator

\protected_separator
1
\protected_separator
root
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
bin
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
12340
\protected_separator
Jul
\protected_separator
24
\protected_separator
22:20
\protected_separator
shutdown*
\protected_separator

\newline
-rwxr-xr-x
\protected_separator

\protected_separator

\protected_separator
1
\protected_separator
root
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
root
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
5029
\protected_separator
Jul
\protected_separator
24
\protected_separator
22:20
\protected_separator
swapoff*
\protected_separator

\newline
-rwxr-xr-x
\protected_separator

\protected_separator

\protected_separator
1
\protected_separator
root
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
bin
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
5029
\protected_separator
Jul
\protected_separator
24
\protected_separator
22:20
\protected_separator
swapon*
\protected_separator

\newline
-rwxr-xr-x
\protected_separator

\protected_separator

\protected_separator
1
\protected_separator
root
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
root
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
20592
\protected_separator
Jul
\protected_separator
27
\protected_separator
18:18
\protected_separator
telinit*
\protected_separator

\newline
-rwxr-xr-x
\protected_separator

\protected_separator

\protected_separator
1
\protected_separator
root
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
root
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
7077
\protected_separator
Jul
\protected_separator
24
\protected_separator
22:20
\protected_separator
update*
\protected_separator

\newline

\protected_separator

\newline
/tmp:
\protected_separator

\newline
total
\protected_separator
0
\protected_separator

\newline

\protected_separator

\newline
/usr:
\protected_separator

\newline
total
\protected_separator
2
\protected_separator

\newline
drwxr-xr-x
\protected_separator

\protected_separator

\protected_separator
2
\protected_separator
root
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
root
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
1024
\protected_separator
Jul
\protected_separator
29
\protected_separator
21:00
\protected_separator
adm/
\protected_separator

\newline
drwxr-xr-x
\protected_separator

\protected_separator

\protected_separator
2
\protected_separator
root
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
root
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
1024
\protected_separator
Jul
\protected_separator
29
\protected_separator
21:16
\protected_separator
lib/
\protected_separator

\newline

\protected_separator

\newline
/usr/adm:
\protected_separator

\newline
total
\protected_separator
0
\protected_separator

\newline

\protected_separator

\newline
/usr/lib:
\protected_separator

\newline
total
\protected_separator
0
\protected_separator

\newline

\protected_separator

\newline
/var:
\protected_separator

\newline
total
\protected_separator
1
\protected_separator

\newline
***
\protected_separator

\protected_separator
Muitos
\protected_separator
problemas
\protected_separator
ocorreram
\protected_separator
antes
\protected_separator
da
\protected_separator
inclusão
\protected_separator
do
\protected_separator

\protected_separator
/etc/rc.S
\protected_separator

\protected_separator

\newline
***
\protected_separator

\protected_separator
para
\protected_separator
inicializar
\protected_separator
o
\protected_separator
/var/run/utmp,
\protected_separator
mas
\protected_separator
talvez
\protected_separator

\protected_separator
isso
\protected_separator
não
\protected_separator
seja
\protected_separator
necessário
\protected_separator

\newline
***
\protected_separator
em
\protected_separator
outros
\protected_separator
sistemas
\protected_separator

\newline
drwxr-xr-x
\protected_separator

\protected_separator

\protected_separator
2
\protected_separator
root
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
root
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
1024
\protected_separator
Jul
\protected_separator
28
\protected_separator
19:52
\protected_separator
run/
\protected_separator

\newline

\protected_separator

\newline
/var/run:
\protected_separator

\newline
total
\protected_separator
0
\protected_separator


\end_deeper
\layout Section

Listas de exemplo do conteúdo do disco de utilitários
\layout Standard

\begin_inset LatexCommand \label{utilitylist}
\end_inset 
disquete de utilitários 
\layout Standard

\begin_deeper
\layout Verbatim

total
\protected_separator
579
\protected_separator

\protected_separator
\newline
-rwxr-xr-x
\protected_separator

\protected_separator

\protected_separator
1
\protected_separator
root
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
root
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
42333
\protected_separator
Jul
\protected_separator
28
\protected_separator
19:05
\protected_separator
cpio*
\protected_separator

\newline
-rwxr-xr-x
\protected_separator

\protected_separator

\protected_separator
1
\protected_separator
root
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
root
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
103560
\protected_separator
Jul
\protected_separator
29
\protected_separator
21:31
\protected_separator
elvis*
\protected_separator

\newline
-rwxr-xr-x
\protected_separator

\protected_separator

\protected_separator
1
\protected_separator
root
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
root
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
56401
\protected_separator
Jul
\protected_separator
28
\protected_separator
19:06
\protected_separator
find*
\protected_separator

\newline
-rwxr-xr-x
\protected_separator

\protected_separator

\protected_separator
1
\protected_separator
root
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
root
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
29536
\protected_separator
Jul
\protected_separator
28
\protected_separator
19:04
\protected_separator
fdisk*
\protected_separator

\newline
-rw-r--r--
\protected_separator

\protected_separator

\protected_separator
1
\protected_separator
root
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
root
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
128254
\protected_separator
Jul
\protected_separator
28
\protected_separator
19:03
\protected_separator
ftape.o
\protected_separator

\newline
-rwxr-xr-x
\protected_separator

\protected_separator

\protected_separator
1
\protected_separator
root
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
root
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
17564
\protected_separator
Jul
\protected_separator
25
\protected_separator
03:21
\protected_separator
ftmt*
\protected_separator

\newline
-rwxr-xr-x
\protected_separator

\protected_separator

\protected_separator
1
\protected_separator
root
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
root
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
64161
\protected_separator
Jul
\protected_separator
29
\protected_separator
20:47
\protected_separator
grep*
\protected_separator

\newline
-rwxr-xr-x
\protected_separator

\protected_separator

\protected_separator
1
\protected_separator
root
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
root
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
45309
\protected_separator
Jul
\protected_separator
29
\protected_separator
20:48
\protected_separator
gzip*
\protected_separator

\newline
-rwxr-xr-x
\protected_separator

\protected_separator

\protected_separator
1
\protected_separator
root
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
root
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
23560
\protected_separator
Jul
\protected_separator
28
\protected_separator
19:04
\protected_separator
insmod*
\protected_separator

\newline
-rwxr-xr-x
\protected_separator

\protected_separator

\protected_separator
1
\protected_separator
root
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
root
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
118
\protected_separator
Jul
\protected_separator
28
\protected_separator
19:04
\protected_separator
lsmod*
\protected_separator

\newline
lrwxrwxrwx
\protected_separator

\protected_separator

\protected_separator
1
\protected_separator
root
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
root
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
5
\protected_separator
Jul
\protected_separator
28
\protected_separator
19:04
\protected_separator
mt
\protected_separator
->
\protected_separator
mt-st*
\protected_separator

\newline
-rwxr-xr-x
\protected_separator

\protected_separator

\protected_separator
1
\protected_separator
root
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
root
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
9573
\protected_separator
Jul
\protected_separator
28
\protected_separator
19:03
\protected_separator
mt-st*
\protected_separator

\newline
lrwxrwxrwx
\protected_separator

\protected_separator

\protected_separator
1
\protected_separator
root
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
root
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
6
\protected_separator
Jul
\protected_separator
28
\protected_separator
19:05
\protected_separator
rmmod
\protected_separator
->
\protected_separator
insmod*
\protected_separator

\newline
-rwxr-xr-x
\protected_separator

\protected_separator

\protected_separator
1
\protected_separator
root
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
root
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
104085
\protected_separator
Jul
\protected_separator
28
\protected_separator
19:05
\protected_separator
tar*
\protected_separator

\newline
lrwxrwxrwx
\protected_separator

\protected_separator

\protected_separator
1
\protected_separator
root
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
root
\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator

\protected_separator
5
\protected_separator
Jul
\protected_separator
29
\protected_separator
21:35
\protected_separator
vi
\protected_separator
->
\protected_separator
elvis*
\protected_separator


\end_deeper
\layout Standard

\the_end
