Índice
É inteligente para si como o administrador do sistema ter uma ideia como o sistema Debian é arranca e é configurado. Apesar dos detalhes exactos estarem nos ficheiros de código-fonte dos pacotes instalados e nas suas documentações, é um pouco exagerado para a maioria de nós.
Eu fiz o meu melhor para disponibilizar uma visão geral breve dos pontos chave do sistema Debian a da sua configuração para sua referência, baseando-me em conhecimentos actuais e anteriores meus e de outros. Como o sistema Debian é um alvo em movimento, a situação sobre o sistema pode ter mudado. Antes da fazer quaisquer alterações ao sistema, você deve consultar a documentação mais recente de cada pacote.
O sistema do computador passa por várias fases de processos de arranque desde o ligar da energia até que oferece, ao utilizador, o sistema operativo (SO) totalmente funcional.
Para simplicidade, eu limito a discussão à plataforma PC típico com a instalação por omissão.
O processo típico de arranque é como um foguete de quatro etapas. Cada etapa do foguete entrega o controle do sistema à próxima etapa.
É claro que, estes podem ser configurados de modo diferente. Por exemplo, se você compilou o seu próprio kernel, você pode estar a saltar o passo com o mini sistema Debian. Portanto por favor não assuma que é este o caso para o seu sistema até que o verifique por si próprio.
![]() |
Nota |
---|---|
Para uma plataforma de PC não-legacy como o sistema SUN ou o Macintosh, a BIOS em ROM e o particionamento do disco podem ser bastante diferentes (Secção 9.5.2, “Configuração das partições do disco”). Por favor procure noutro lado a documentação específica da plataforma para tais casos. |
A BIOS é o 1ª etapa do processo de arranque que é iniciado com o evento de ligar a energia. A BIOS que reside na read only memory (ROM) é executada a partir de um endereço de memória particular no qual o contador de programa da CPU é inicializado pelo evento de ligar a energia.
Esta BIOS executa a inicialização básica do hardware (POST: power on self test) e entrega o controle do sistema ao próximo passo que você disponibiliza. A BIOS é normalmente disponibilizada com o hardware.
O ecrã de arranque da BIOS geralmente indica que tecla(s) pressionar para entrar no ecrã de configuração da BIOS para configurar o comportamento da BIOS. As teclas populares são F1, F2, F10, Esc, Ins, e Del. Se o seu ecrã de arranque da BIOS está escondido por um vistoso ecrã gráfico, você pode pressionar algumas teclas como a Esc para o desactivar. Estas teclas dependem fortemente do hardware.
A localização do hardware e prioridade do código iniciado pela BIOS pode ser seleccionado no ecrã de configuração da BIOS. Tipicamente, os primeiros poucos sectores do primeiro dispositivo seleccionado encontrado (disco rígido, disquete, CD-ROM, ...) são carregados para a memória e este código inicial é executado. Este código inicial pode ser um dos seguintes:
O código do gestor de arranque
O código de kernel do SO da idade da pedra como o FreeDOS
O código do kernel do SO de destino se ele couber neste pequeno espaço
Tipicamente, o sistema é arrancado a partir da partição especificada das partições do disco rígido principal. Os primeiros 2 sectores do disco rígido em PCs legacy contêm o master boot record (MBR). A informação de partições do disco incluindo a selecção de arranque é gravada no final deste MBR. O código do primeiro gestor de arranque executado pela BIOS ocupa o resto deste MBR.
O gestor de arranque é o 2º estágio do processo de arranque que é iniciado pela BIOS. Ele carrega a imagem de kernel do sistema e a imagem initrd para a memória e passa o controle para eles. Esta imagem initrd é a imagem do sistema de ficheiros raiz e o seu suporte depende do gestor de arranque utilizado.
O sistema Debian normalmente usa o kernel Linux como kernel predefinido do sistema. A imagem initrd para o kernel Linux 2.6/3.x actual é tecnicamente a initramfs (sistema de ficheiros de RAM inicial). A imagem initramfs é um arquivo de ficheiros cpio gzipado no sistema de ficheiros raiz.
A instalação predefinida do sistema Debian coloca código da primeira etapa do gestor de arranque GRUB no MBR para a plataforma PC. Existem muitos gestores de arranque e opções de configuração disponíveis.
Tabela 3.1. Lista de gestores de arranque
pacote | popcon | tamanho | initrd | gestor de arranque | descrição |
---|---|---|---|---|---|
grub-legacy | V:0, I:4 | 2066 | Suportado | GRUB Legacy | É suficientemente inteligente para compreender partições de disco e sistemas de ficheiros como vfat, ext3, ... |
grub-pc | V:60, I:887 | 559 | Suportado | GRUB 2 | É suficientemente inteligente para compreender partições de disco e sistemas de ficheiros como vfat, ext4, ... (predefinição) |
grub-rescue-pc | V:0, I:2 | 6685 | Suportado | GRUB 2 | Isto são imagens de arranque de recuperação do GRUB 2 (CD ou disquete) (Versão PC/BIOS) |
lilo | V:1, I:9 | 608 | Suportado | Lilo | Isto baseia-se nas localizações de sectores de dados no disco rígido. (Antigo) |
syslinux | V:10, I:91 | 327 | Suportado | Isolinux | Isto compreende o sistema de ficheiros ISO9660. É utilizado pelo CD de arranque. |
syslinux | V:10, I:91 | 327 | Suportado | Syslinux | Isto compreende o sistema de ficheiros MSDOS (FAT). É utilizado pela disquete de arranque. |
loadlin | V:0, I:1 | 105 | Suportado | Loadlin | Novo sistema é iniciado a partir do sistema FreeDOS/MSDOS. |
mbr | V:1, I:17 | 72 | Não suportado | MBR por Neil Turton | Isto é software livre que substitui o MBR do MSDOS. Apenas compreende partições de disco. |
![]() |
Atenção |
---|---|
Não brinque com os gestores de arranque sem ter discos de arranque de
recuperação (CD ou disquete) criados a partir de imagens do pacote
|
Para o GRUB Legacy, o ficheiro de configuração do menu está localizado em
"/boot/grub/menu.lst
". Por exemplo, tem entradas como a
seguinte.
title Debian GNU/Linux root (hd0,2) kernel /vmlinuz root=/dev/hda3 ro initrd /initrd.img
Para o GRUB 2, o ficheiro de configuração do menu está localizado em
"/boot/grub/grub.cfg
". É gerado automaticamente pelo
"/usr/sbin/update-grub
" utilizando modelos de
"/etc/grub.d/*
" e definições de
"/etc/default/grub
". Por exemplo, tem entradas como as
que se seguem:
menuentry "Debian GNU/Linux" { set root=(hd0,3) linux /vmlinuz root=/dev/hda3 initrd /initrd.img }
Para estes exemplos, estes parâmetros do GRUB significam o seguinte.
Tabela 3.2. O significado dos parâmetros do GRUB
Parâmetro do GRUB | significado |
---|---|
root
|
utiliza a 3ª partição no disco primário ao defini-la como
"(hd0,2) " no GRUB Legacy ou como
"(hd0,3) " no GRUB 2
|
kernel
|
utiliza o kernel localizado em "/vmlinuz " com parâmetro
de kernel: "root=/dev/hda3 ro "
|
initrd
|
utiliza a imagem initrd/initramfs
localizada em "/initrd.img "
|
![]() |
Nota |
---|---|
O valor do número de partição utilizado pelo programa GRUB legacy é menos um que o normal usado pelo kernel Linux e ferramentas utilitárias. O programa GRUB 2 corrige este problema. |
![]() |
Dica |
---|---|
Pode ser utilizado o UUID (veja Secção 9.5.3, “Aceder a partição usando UUID”) para identificar um dispositivo
especial de bloco em vez do seu nome de ficheiro como
" |
![]() |
Dica |
---|---|
Se for usado o GRUB, o parâmetro de arranque do
kernel é definido em |
![]() |
Dica |
---|---|
Você pode iniciar um gestor de arranque a partir de outro gestor de arranque utilizando técnicas chamadas chain loading. |
Veja "info grub
" e
grub-install(8).
O mini-sistema Debian é o 3º estágio do processo de arranque que é iniciado pelo gestor de arranque. Corre o kernel do sistema com o seu sistema de ficheiros raiz na memória. Este é um estágio preparatório opcional do processo de arranque.
![]() |
Nota |
---|---|
O termo "mini-sistema Debian" é cunhado pelo autor para descrever este 3º estágio do processo de arranque para este documento. Este sistema é geralmente referido como o initrd ou sistema initramfs. É utilizado pelo Instalador de Debian um sistema semelhante em memória . |
O script "/init
" é executado como o primeiro programa
neste sistema de ficheiros raiz em memória. É um programa script de shell
que inicializa o kernel no espaço de utilizador e entrega o controle ao
próximo estágio. Este mini-sistema Debian oferece flexibilidade ao processo
de arranque tal como adicionar módulos de kernel antes do processo de
arranque principal ou montar o sistema de ficheiros raiz como um encriptado.
Você pode interromper esta parte do processo de arranque para obter a shell
de root ao fornecer "break=init
" etc. ao parâmetro de
arranque do kernel. Veja o script "/init
" para mais
condições de interrupção. Este ambiente shell é suficientemente sofisticado
para fazer uma boa inspecção do hardware da sua máquina.
Os comandos disponíveis neste mini-sistema Debian são versões reduzidas e disponibilizados principalmente por uma ferramenta GNU chamada busybox(1).
![]() |
Cuidado |
---|---|
Você precisa de utilizar a opção " |
O sistema Debian normal é o 4º estágio do processo de arranque que é iniciado pelo mini-sistema Debian. O kernel do sistema para o mini-sistema Debian continua a correr no seu ambiente. O sistema de ficheiros raiz é mudado daquele em memória para o que está no sistema de ficheiros do disco rígido real.
O programa init é executado como o primeiro
programa com PID=1 para executar o processo de arranque principal de
arrancar muitos programas. O caminho de ficheiro predefinido para o programa
init é "/sbin/init
" mas pode ser alterado pelo parâmetro
de arranque do kernel como "init=/path/to/init_program
".
O programa de iniciação predefinido tem sido alterado:
Debian antes de squeeze
a iniciação de estilo SysV simples.
Debian wheezy
melhora a iniciação de estilo SysV ao
ordenar a sequência de arranque com cabeçalho LSB e arrancando scripts de
arranque em paralelo.
Debian jessie
muda o seu init predefinido para o systemd para a inicialização em paralelo e gerida
por eventos.
![]() |
Dica |
---|---|
Todos os mecanismos de arranque são compatíveis através dos scripts
" |
![]() |
Dica |
---|---|
O comando de iniciação actual do seu sistema pode ser verificado pelo
comando " |
Tabela 3.3. Lista de utilitários de arranque para o sistema Debian
pacote | popcon | tamanho | descrição |
---|---|---|---|
initscripts
|
V:863, I:999 | 277 | scripts para inicializar e desligar o sistema |
sysvinit-core
|
V:27, I:31 | 247 | utilitários de init(8) estilo System-V |
sysv-rc
|
V:865, I:998 | 221 | mecanismo de mudança de runlevel estilo System-V |
sysvinit-utils
|
V:865, I:998 | 206 | utilitários estilo System-V (startpar(8), bootlogd(8), …) |
lsb-base
|
V:864, I:999 | 36 | Linux Standard Base funcionalidade de script de init 3.2 |
insserv
|
V:811, I:946 | 183 | ferramenta para organizar a sequência de arranque usando dependências dos scripts init.d LSB |
upstart
|
V:0, I:0 | 1832 |
daemon de eventos baseado em
init(8)
para a concorrência (alternativa a sysvinit )
|
systemd
|
V:122, I:141 | 11723 |
daemon de eventos baseado em
init(8)
para a concorrência (alternativa a sysvinit )
|
readahead-fedora
|
V:4, I:8 | 157 | readahead(8) para pré-carregar os ficheiros do processo de arranque |
uswsusp
|
V:8, I:22 | 575 | ferramentas disponibilizadas pelo Linux para utilizar a suspensão de software no espaço de utilizador |
kexec-tools
|
V:1, I:7 | 289 | ferramenta kexec para re-arranques kexec(8) (re-arranque a quente) |
bootchart
|
V:0, I:1 | 46 | analisador de performance do processo de arranque |
bootchart-view
|
V:0, I:1 | 211 | analisador de performance do processo de arranque (visualização) |
mingetty
|
V:0, I:3 | 24 | getty(8) apenas de consola |
mgetty
|
V:0, I:2 | 360 | substituto inteligente de modem getty(8) |
![]() |
Dica |
---|---|
O pacote |
![]() |
Dica |
---|---|
Veja Debian wiki: BootProcessSpeedup para as dicas mais recentes em como acelerar o processo de arranque. |
Esta secção descreve como a iniciação ao estilo do bom e velho SysV costumava arrancar o sistema. O seu sistema Debian não funciona exactamente como descrito aqui, mas é bastante educativo saber estas bases já que os sistemas de iniciação mais recentes tendem a oferecer funcionalidades equivalentes.
O processo de arranque estilo SysV essencialmente segue o seguinte.
O sistema Debian entra em runlevel N
(nenhum) para inicializar o sistema ao seguir a descrição de
"/etc/inittab
".
O sistema Debian entra em runlevel S para inicializar o sistema sob o modo de único-utilizador para completar a inicialização do hardware e etc.
O sistema Debian vai para um dos runlevels de multi-utilizador (2 a 5) especificado para arrancar os serviços do sistema.
O runlevel inicial utilizado para modo de multi-utilizador é especificado
com o parâmetro "init=
" de arranque do kernel ou na linha
"initdefault" de "/etc/inittab
". O sistema Debian
instalado arranca no runlevel 2.
Todos os ficheiros script executados pelo sistema init estão localizados no
directório "/etc/init.d/
".
Veja
init(8),
inittab(5),
e "/usr/share/doc/sysv-rc/README.runlevels.gz
" para a
explicação exacta.
Cada runlevel utiliza um directório para a sua configuração e tem um significado específico conforme o seguinte.
Tabela 3.4. Lista de runlevels e descrição da sua utilização
runlevel | directório | descrição da utilização do runlevel |
---|---|---|
N
|
nenhum |
arranque do sistema em NENHUM nível (nenhum directório
"/etc/rcN.d/ ")
|
0
|
/etc/rc0.d/
|
parar o sistema |
S
|
/etc/rcS.d/
|
modo de utilizador singular no arranque (alias: "s ")
|
1
|
/etc/rc1.d/
|
modo de utilizador singular trocado a partir do modo de multi utilizador |
2
|
/etc/rc2.d/
|
modo de multi-utilizador |
3
|
/etc/rc3.d/
|
,, |
4
|
/etc/rc4.d/
|
,, |
5
|
/etc/rc5.d/
|
,, |
6
|
/etc/rc6.d/
|
reiniciar o sistema |
7
|
/etc/rc7.d/
|
modo de multi-utilizador válido mas normalmente não usado |
8
|
/etc/rc8.d/
|
,, |
9
|
/etc/rc9.d/
|
,, |
Você pode mudar o runlevel a partir da consola para, por exemplo 4, com o seguinte.
$ sudo telinit 4
![]() |
Cuidado |
---|---|
O sistema Debian não pré-atribui nenhumas diferenças de significado especiais entre os runlevels 2 e 5. O administrador de sistema no sistema Debian pode mudar isto. (Isto é, Debian não é Red Hat Linux nem Solaris da Sun Microsystems nem HP-UX da Hewlett Packard nem AIX da IBM nem …) |
![]() |
Cuidado |
---|---|
O sistema Debian não povoa os directórios para os runlevels entre 7 e 9 durante a instalação. As variantes Unix tradicionais não utilizam estes runlevels. |
Quando os comandos init(8) ou telinit(8) vão para o runlevel para "<n>", o sistema basicamente executa os scripts de inicialização que se seguem.
Os scripts cujos nomes começam com um "K
" em
"/etc/rc<n>.d/
" são executados por ordem alfabética
com o único argumento "stop
". (matando os serviços)
Os scripts cujos nomes começam com um "S
" em
"/etc/rc<n>.d/
" são executados por ordem alfabética
com o único argumento "start
". (iniciando os serviços)
Por exemplo, se você tiver os links "S10sysklogd
" e
"S20exim4
" num directório de runlevel, o
"S10sysklogd
" que está simbolicamente ligado a
"../init.d/sysklogd
" irá correr antes de
"S20exim4
" que está simbolicamente ligado a
"../init.d/exim4
".
A inicialização sequencial simples do sistema é o método de arranque
tradicional System V e foi utilizado até ao
sistema Debian lenny
.
Em vez disso, o recente sistema Debian é optimizado para executar os scripts de inicialização de forma concorrente.
O comando insserv(8) utiliza a informação de dependências dos pacotes e calcula as dependências entre todos os scripts.
Veja "/usr/share/doc/insserv/README.Debian
".
A informação de dependências de pacotes definida no cabeçalho dos scripts de inicialização assegura a existência dos recursos necessários.
![]() |
Atenção |
---|---|
Não é aconselhável fazer quaisquer alterações nos links simbólicos em
" |
Por exemplo, vamos configurar o runlevel do sistema de certa maneira como o Red Hat Linux com o seguinte.
init
arranca o sistema em runlevel=3 por predefinição
O init
não arranca o
gdm3(1)
nos runlevel (0,1,2,6).
init
arranca o
gdm3(1)
em runlevel=(3,4,5).
Isto pode ser feito com o editor no ficheiro
"/etc/inittab
" para alterar o runlevel de arranque e
utilizar ferramentas de gestão do runlevel amigas do utilizador como o
sysv-rc-conf
ou o bum
para editar o
runlevel. Se utilizar apenas a linha de comandos, aqui está como fazê-lo
(após a instalação predefinida do pacote gdm3
e
seleccioná-lo para ser o gestor de ecrã escolhido).
# cd /etc/rc2.d ; mv S21gdm3 K21gdm3 # cd /etc ; perl -i -p -e 's/^id:.:/id:3:/' inittab
Por favor note que o ficheiro
"/etc/X11/default-display-manager
" é verificado quando se
arrancam daemons de gestor de ecrã: xdm
,
gdm3
, kdm
, e wdm
.
![]() |
Nota |
---|---|
Você pode ainda arrancar o X a partir de qualquer consola de shell com o comando startx(1). |
O parâmetro predefinido para cada script de init em
"/etc/init.d/
" é dado pelo ficheiro correspondente em
"/etc/default/
" o qual contém apenas atribuições das variáveis de ambiente. Esta
escolha de nome de directório é específica do sistema Debian. É
grosseiramente o equivalente ao directório
"/etc/sysconfig
" encontrado em Red Hat Linux e outras distribuições. Por
exemplo, "/etc/default/cron
" pode ser utilizado para
controlar como o "/etc/init.d/cron
" funciona.
O ficheiro "/etc/default/rcS
" pode ser utilizado para
personalizar as predefinições no momento de arranque para
motd(5),
sulogin(8),
etc.
Se não conseguir obter o comportamento que deseja ao alterar tais variáveis então pode modificar os scripts de init. Estes são ficheiros de configuração editáveis por administradores de sistemas.
O kernel mantém o nome-de-máquina do
sistema. O script init em runlevel S which é ligado simbolicamente a
"/etc/init.d/hostname.sh
" e define o nome de máquina
durante o arranque (utilizando o comando hostname
) para o
nome armazenado em "/etc/hostname
". Este ficheiro deve
conter apenas o nome de máquina do
sistema, e não um nome de domínio totalmente qualificado.
Para escrever o nome de máquina actual corra hostname(1) sem argumentos.
Apesar do sistema de ficheiros raiz ser montado pelo kernel quando arranca, outros sistemas de ficheiros são montados no runlevel S pelos seguintes scripts de init.
"/etc/init.d/mountkernfs.sh
" para sistemas de ficheiros
do kernel em "/proc
", "/sys
", etc.
"/etc/init.d/mountdevsubfs.sh
" para sistemas de ficheiros
virtuais em "/dev
"
"/etc/init.d/mountall.sh
" para sistemas de ficheiros
normais usando o "/etc/fstab
"
"/etc/init.d/mountnfs.sh
" para sistemas de ficheiros de
rede usando o "/etc/fstab
"
As opções de montagem dos sistemas de ficheiros especiais do kernel (procfs,
sysfs, e tmpfs para /proc
, /sys
,
/tmp
, /run
, etc.) são definidas em
"/etc/default/rcS
". Veja
rcS(5).
As opções de montagem de sistemas de ficheiros de discos normais e de rede
são definidas em "/etc/fstab
". Veja Secção 9.5.7, “Optimização do sistema de ficheiros por opções de montagem”.
![]() |
Nota |
---|---|
A montagem actual de sistemas de ficheiros de rede espera que a interface de rede arranque. |
![]() |
Atenção |
---|---|
Após montar todos os sistemas de ficheiros, os ficheiros temporários em
" |
As interfaces de rede são iniciadas no runlevel 5 pelo script de init
simbolicamente ligado a "/etc/init.d/ifupdown-clean
" e
"/etc/init.d/ifupdown
". Veja Capítulo 5, Configuração de rede para como os configurar.
Muitos serviços de rede (veja Capítulo 6, Aplicações de rede) são
iniciados sob modo de multi-utilizador directamente como processos daemon
durante o arranque pelo script de init, ex.,
"/etc/rc2.d/S20exim4
" (para RUNLEVEL=2) o que é um link
simbólico para "/etc/init.d/exim4
".
Alguns serviços de rede podem ser iniciados a pedido utilizando o super-servidor inetd
(ou o
seu equivalente). O inetd
é iniciado durante o arranque
pelo "/etc/rc2.d/S20inetd
" (para RUNLEVEL=2) o qual é um
link simbólico para "/etc/init.d/inetd
". Essencialmente,
o inetd
permite que um daemon a correr possa invocar
vários outros, reduzindo a carga do sistema.
Sempre que um pedido para serviço chega ao super-servidor inetd
, o seu
protocolo e serviço é identificado ao procura-lo nas bases de dados em
"/etc/protocols
" e "/etc/services
". O
inetd
então procura um serviço de Internet normal na base
de dados "/etc/inetd.conf
", ou um serviço baseado em
Open Network Computing
Remote Procedure Call (ONC RPC)/Sun RPC em
"/etc/rpc.conf
".
Por vezes, o inetd
não arranca o servidor pretendido
directamente mas arranca o programa wrapper de
TCP,
tcpd(8),
com o nome do servidor pretendido como seu argumento em
"/etc/inetd.conf
". Neste caso, o tcpd
corre o programa servidor apropriado após registar em log o pedido e fazer
algumas verificações adicionais usando "/etc/hosts.deny
"
e "/etc/hosts.allow
".
Para segurança do sistema, desactive o máximo possível de programas de serviço de rede. Veja Secção 4.6.4, “Restringindo acesso a alguns serviços de servidor”.
Veja
inetd(8),
inetd.conf(5),
protocols(5),
services(5),
tcpd(8),
hosts_access(5),
hosts_options(5),
rpcinfo(8),
portmap(8),
e "/usr/share/doc/portmap/portmapper.txt.gz
".
A mensagem do sistema pode ser personalizada em
"/etc/default/rsyslog
" e
"/etc/rsyslog.conf
" quer para o ficheiro de registo quer
para as mensagens no ecrã. Veja
rsyslogd(8)
e
rsyslog.conf(5).
Veja também Secção 9.2.2, “Analisador de relatório (Log)”.
A mensagem do kernel pode ser personalizada pelo
"/etc/default/klogd
" para ambos os ficheiros de registo e
a visualização no ecrã. Defina "KLOGD='-c 3'
" neste
ficheiro e execute "/etc/init.d/klogd restart
". Veja
klogd(8).
Você pode alterar directamente o nível de mensagens de erro fazendo o seguinte.
# dmesg -n3
Tabela 3.5. Lista de níveis de erro do kernel
valor de nível de erro | nome de nível de erro | significado |
---|---|---|
0 | KERN_EMERG | sistema está inutilizável |
1 | KERN_ALERT | acção tem de ser tomada imediatamente |
2 | KERN_CRIT | condições críticas |
3 | KERN_ERR | condições de erro |
4 | KERN_WARNING | condições de aviso |
5 | KERN_NOTICE | condição normal mas significante |
6 | KERN_INFO | informativa |
7 | KERN_DEBUG | mensagens de nível de depuração |
Para o kernel Linux 2.6 e mais recentes, o sistema udev disponibiliza um mecanismo para a descoberta automática de hardware e sua inicialização (veja udev(7)). Após a descoberta de cada dispositivo pelo kernel, o sistema udev arranca um processo de utilizador que usa informação a partir do sistema de ficheiros sysfs (veja Secção 1.2.12, “procfs e sysfs”), carrega os módulos de kernel necessários para o suportar usando o programa modprobe(8) (veja Secção 3.3.1, “A inicialização de módulos do kernel”), e cria os nós correspondentes do dispositivo.
![]() |
Dica |
---|---|
Se " |
Os nomes dos nós de dispositivos podem ser configurados pelos ficheiros de
regras do udev em "/etc/udev/rules.d/
". As regras
predefinidas actuais tentem a criar nomes gerados dinamicamente resultando
em nomes de dispositivos não estáticos excepto para dispositivos de cd e de
rede. Ao adicionar os seus ficheiros personalizados de modo semelhante ao
que é feito pelos dispositivos de cd e rede, você também pode gerar nomes
estáticos para dispositivos para outros dispositivos como pens USB de
memória. Veja "Escrever regras do
udev" ou
"/usr/share/doc/udev/writing_udev_rules/index.html
".
Como o sistema udev é de certa forma um alvo em movimento, eu deixo os detalhes para outras documentações e descrevo a informação mínima aqui.
![]() |
Dica |
---|---|
Para regras de montagem em " |
O programa modprobe(8) permite-nos configurar o kernel Linux em execução a partir do processo de utilizador ao adicionar e remover módulos do kernel. O sistema udev (veja Secção 3.3, “O sistema udev”) automatiza a sua invocação para ajudar na inicialização dos módulos de kernel.
Existem módulos de não-hardware e módulos driver de hardware especial como
os seguintes que precisam de ser pré-carregados ao listá-los no ficheiro
"/etc/modules
" (veja
modules(5)).
módulos TUN/TAP que disponibilizam dispositivos de rede Point-to-Point virtuais (TUN) e dispositivos de rede Ethernet virtuais (TAP).
módulos netfilter que disponibilizam capacidades de firewall netfilter (iptables(8), Secção 5.9, “Infraestrutura netfilter”), e
módulos de driver watchdog timer
Os ficheiros de configuração para o programa
modprobe(8)
estão localizados sob o directório "/etc/modprobes.d/
"
como explicado em
modprobe.conf(5).
(Se você deseja evitar que alguns módulos do kernel sejam carregados
automaticamente, considere metê-los em lista negra no ficheiro
"/etc/modprobes.d/blacklist
".)
O ficheiro "/lib/modules/<version>/modules.dep
"
gerado pelo programa
depmod(8)
descreve as dependências dos módulos usados pelo programa
modprobe(8).
![]() |
Nota |
---|---|
Se tiver problemas com o carregamento de módulos durante o arranque ou com o
modprobe(8),
" |
O programa modinfo(8) mostra informação sobre um módulo do kernel Linux.
O programa
lsmod(8)
formata lindamente o conteúdo de "/proc/modules
", e
mostra que módulos do kernel que estão actualmente carregados.
![]() |
Dica |
---|---|
Você pode identificar o hardware exacto no seu sistema. Veja Secção 9.4.3, “Identificação do hardware”. |
![]() |
Dica |
---|---|
Você pode configurar o hardware durante o arranque para activar as funcionalidades esperadas do hardware. Veja Secção 9.4.4, “Configuração do hardware”. |
![]() |
Dica |
---|---|
Você pode provavelmente adicionar suporte para o seu dispositivo especial ao recompilar o kernel. Veja Secção 9.9, “O kernel”. |