Академический Документы
Профессиональный Документы
Культура Документы
Man telinit http://pt.wikipedia.org/wiki/Parti%C3%A7%C3%A3o http://web.mit.edu/rhel-doc/4/RH-DOCS/rhel-ig-ppc-multi-pt_br-4/ap-partitions.h man inittab man update-rc.d man rcconf man file-rc http://www.linuxjournal.com/article/3016 http://www.freeos.com/articles/3243/ http://www.debian-administration.org/articles/28 http://www.debianadmin.com/manage-linux-init-or-startup-scripts.html http://www.debianadmin.com/manpages/runlevelconfmanpage.htm
Eduardo Jnior
Assuntos abordados
Inicializao do Sistema Processo Init Boot Loaders Estrutura de Diretrios e Arquivos
Inicializao do Sistema
Inicializao do Sistema
Pr Boot Runlevels Scripts de Inicializao
Pr Boot
POST Power On Self Test BIOS passa para a MBR (Setor de Boot) a continuidade do processo de boot primeiros 512 bytes do disco que estamos zbootando Setor de boot sempre se localiza no mesmo local: track 0, cylinder 0 e head 0 No setor de boot temos os carregadores (loaders) de boot: GRUB ou LILO, que carregam o Sistema Operacional
Pr Boot
Controle do processo de boot passado para o Kernel No linux, ele ficam armazenado no /boot e chamado de vmlinuz; /boot/vmlinuz Kernel inicia tabelas internas, cria estrutura de dados apropriadas para o sistema na memria, termina de diagnosticar o hardware... Kernel cria o init
INIT
Aps o kernel ter sido carregado Processo pai de todos os outros processos (PID 1) Ler o arquivo /etc/inittab Seta path, inicia swapping, checa file system... Seta runlevel default Inicia processos olhando no rc?.d adequado Getty para cada console virtual
/etc/inittab
Sintaxe: id:runlevel:action:process
Id identificador nico; limitaes de tamanho Runlevel indica o runleve para esta linha (uau!); pode ser null ou um valor nmerico Action atividade Process o processo especfico ou o programa a ser executado
/etc/inittab
id:2:initdefault: ~~:S:wait:/sbin/sulogin si::sysinit:/etc/init.d/rcS l0:0:wait:/etc/init.d/rc 0 ca:12345:ctrlaltdel:/sbin/shutdown -t1 -a -r now 3:23:respawn:/sbin/getty 38400 tty3
Inicializao do Sistema
- Vrios scripts de inicializao - 6 modos de inicializao (mais outros no usados, mas disponveis) - Scripts de inicializao independentes por runlevel e por processo
Runlevels
0 halt 1 single user 2 multi-user 3 multi-user 4 multi-user 5 multi-user 6 restart S Inicializao do sistema
/etc/rc?.d
- Diretrios separados por runlevel - Links simblicos para scripts em /etc/init.d - Ordem de execuo (S/KNN) - /etc/rc.local
rc?.d
/etc/rc0.d /etc/rc1.d /etc/rc2.d /etc/rc3.d /etc/rc4.d /etc/rc5.d /etc/rc6.d /etc/rcS.d
Mudar de runlevel
Nvel atual /etc/rc?.d/KNN* Exceto os que aparecem tanto no atual quanto no antigo runlvel Nvel que se deseja /etc/rc?.d/SNN* Perigoso, pois caso no tenha total conhecimento das dependncias de processos, pode travar a mquina NUNCA setar os runlevels 0 e 6 para default
Links Simblicos
uptade-rc.d
Sintaxe:
update-rc.d [-n] [-f] name remove udpate-rc.d [-n] name defaults [NN | NN-start NN-stop] updat-rc.d [-n] name start|stop NN runlevel runlevel start|stop NN runlevel runlevel
rcconf
file-rc
Boot Loaders
Boot Loaders
- Bootstrap, bootstrap loader ou boot loader - Multi boot - diferentes Sistemas Operacionais - diferentes verses de kernel - programas independentes de SO - Carrega o Sistema Operacional (carrega o kernel e passa o controle do boot para o mesmo) - Pode modificar o modo o Sistema Operacional ser carregado, atravs de opes de linha de comando
GRUB
/boot/grub/menu.lst Rtulos, delays, default acpi=off Noapic Nolapic Vga=771 init=/bin/bash ...
LILO
/boot/lilo.conf Linux single Linux <runlevel> ...
Boot Loaders
Parmetro de boot de emergncia: emergncia -b Diz ao init ler o arquivo /etc/inittab, mas no executar os comandos l listados, pulando para o modo de manuteno
Exerccios 1
1. Inserir o script blah na inicializao do runlevel 4, com nmero de sequncia 44, usando o comando ln 2. Insert links using the defaults 3. Equivalent command using explicit argument sets 4. More typical command using explicit argument sets 5. Desabilitar o apache e festival (se ativos) da inicializao do sistema usando o rcconf 6. Insert links at default runlevels when B requires A 7. Insert a link to a service that (presumably) will not be needed by any other daemon 8. Remover o script blih da iniciazalio de qualquer runlevel do sistema atravs do comando unlink 9. Insert links for a script that requires services that start/stop at sequence number 20 10. Disabling a service 11. Habilitar a desativao do script dccbar do runlevel 3 usando o comando unlink
- Padronizao para a estrutura de diretrios e arquivos para Sistemas UNIX-like FHS: Filesystem Hierarchy Standard - Comeou a ser escrito em 1994 e atualmente se encontra na verso 2.3 - Mantido pela Free Standards Group
Root FileSystem
O diretrio raz - /
Segundo o FHS, o root filesystem ou diretrio raz contm contedo que deve ser adequado para boot, recuperao e reparao do sistema. O objetivo primrio de se manter o root filesystem o menor possvel, pelas seguintes razes:
- pode estar acessvel de uma partio pequena (dispositivo com pouco espao de armazenado disponvel) - por existir muitos arquivos especficos do sistema, evitando-se o uso excessivo para reas no compartilhveis - menor pr-disposio a falhas, e mais disposta a usabilidade e a operaes de manuteno
Root FileSystem
Diretrios Requeridos para o /: bin binrios essenciais bootarquivos estticos do gerenciador de boot dev arquivos de dispositivos etc configuraes do sistema lib bibliotecas compartilhadas essencias e mdulos do kernel media ponto de montagem para dispositivos removveis media mnt ponto de montagem para sistemas de arquivos temporrios opt aplicaes extras sbin binrios essencias do sistema, utilizados pelo ururio root srv dados para servios tmp arquivos temporrios usr segunda hierarquia var dados variveis Opcionais: home lib<qual> root diretrio pessoal dos usurios bibliotecas compartilhadas para arquiteturas especficas diretrio pessoal do usurio root
Hierarquia /usr
- Segunda maior hierarquia do filesystem - Diretrio compartilhvel e somente leitura
Diretrios ou links simblicos requeridos para o /usr:
bin include lib local sbin share maioria dos comandos dos usurios arquivos cabealhos de programas C bibliotecas hierarquia local binrios no vitais ao sistema dados independentes de arquitetura
Opcionais:
X11R6 games lib<qual> src hierarquia do Sistema Xwindows, verso 11 release 6 games e binrios educativos) bibliotecas especficos para alguma arquitetura ou de foramato alternativo cdigos fontes
Hierarquia /var
- Contm arquivos e dados variveis, como diretrios e arquivos de spool, informaes administrativas e de logs e arquivos temporrios. - Algumas partes do /var no so compartilhveis, como /var/log, /var/lock e /var/run. Outras devem ser, como /var/mail, /var/cache/man /var/spool/news.
Diretrios ou links simblicos requeridos no /var:
cache lib local lock log opt run spool tmp dados cacheados de aplicaes informaes de estado varivel dados variveis do /usr/local arquivos de lock arquivos e diretrios de logs dados variveis do /opt informaes relevantes de processos em execuao dados de spool de aplicaes arquivos temporrios preservados entre reboots do sistema
Opcionais:
account crash games mail yp logs do processo de contas dumps de crashs do sistema dados variveis de games arquivos mailbox de usurios Informaes do Servio de Rede e arquivos de base de dados
FHS
- Particionar um disco significa dividir o dispositivo em vrios, podendo-se alocar mais de um sistema de arquivos em apenas um disco e, consequentemente, mais de um Sistema Operacional - Uma partio possui os seguintes dados:
- ponto de incio e de trmino - se a partio est ativa - tipo da partio
Sistemas de Arquivos
O sistema de arquivo criado quando da formatao da partio. Toda a estrutura pra leitura e gravao de arquivos e diretrios criada. Tipos da partio para Sistemas de arquivos:
Linux nativo tipo 83 Linux swap tipo 82 FAT32 tip OB NTFS tipo 7
No GNU/Linux, os dispositivos existentes em seu computador so identificados por um arquivo no diretrio /dev A identificao de um disco rgido no GNU/Linux feita da seguinte forma: /dev/hda1 /dev/sdb2
- Particionamento:
- cfdisk - fdisk
- Formatao:
- mkswap e swapon - mkfs.ext2 - mkfs.ext3 - mkfs.reiserfs - mkfs.vfat
0 0
0 1
Exerccio 2
1. Criar uma partio com tamanho 150 mb, sistema de arquivos reiserfs e montagem e disponibiliz-lo momentaneamente 2. Criar uma partio com 30 mb, FAT32, para armazenamento de cdigos-fonte da disciplina Teoria dos Grafos, com ponto de montagem /mnt/grafos. Montagem deve ficar disponvel aps o reincio do sistema 3. Criar uma partio de 40 mb para rea de troca com a memria principal. Mant-la ativa aps o reboot do sistema 4. Acesso a partio de 75 mb, somente leitura, tipo de sistema de arquivo ext2 e que fique disponvel atravs do ponto de montagem /mnt/leitura. Deix-la apenas disponvel momentaneamente.
Referncias
http://tldp.org/HOWTO/LILO.html http://www.gnu.org/software/grub/ Man pages Man init Man update-rc.d Man telinit Man grub Man lilo
Referncias
Man cfdisk Man fdisk Man fsck Man mount Curso Extenso 2007.1 Amadeu Barbosa http://www.pathname.com/fhs/pub/fhs-2.3.html http://www.linux-usb.org