UNIX® Administração
João Victor A. Di Stasi [email protected]
Núcleo de Computação EletrônicaUniversidade Federal do Rio de Janeiro
Objetivos do curso
● Configuração e Tuning do Linux● Boot e Shutdown do Sistema● Gerenciamento de contas de usuários● Configuração do kernel● Noções de segurança● Conceito de redes avançado
“Entendimento é a chave do sucesso no Linux”The Linux System Administrator's Guide
Carga Horária
● 40 horas teórico / práticas
Referências
● Bibliograficas:– Dominando o Linux
● Editora Ciência Moderna● Matt Welsh e Lar Kaufman
– Usando Linux● Editora Campus● Bill Ball
– Theach Yourself UNIX in 24 Hours● Sams Publishing● Dave Taylor e James C. Armostrong, Jr
– Securing and Optimizing Linux: RedHat Edition● OpenDocs Publishing● Gerhard Mourai
Referências
● Internet– www.linux.org– www.kernel.org– www.tldp.org– www.redhat.com– www.debian.org– br-linux.org– www.linuxsecurity.com– www.linuxtoday.com – www.google.com
UNIX® Básico - Revisão
● Estrutura de Diretórios● Permissões● Gerenciando Sistemas de Arquivos● Processos● Daemons, Sinais e Matando processos● Shells● Editores de texto● Dispositivos
O que é Linux?
● Linux é um clone totalmente funcional do SO UNIX® originalmente desenvolvido pela Bell Labs em 1970
● Todos os recursos que espera-se de um SO– Multi-tarefa – Virtual Memory – Suporte TCP/IP– Shared Libraries – Multi-usuário– Modo Protegido
● Suporta uma grande variedade de plataformas
Por que usar Linux?
● Confiabilidade– Quebra não freqüente do sistema,
conseqüentemente mais disponibilidade● Escalabilidade
– Roda tanto em computadores de grande porte quanto em PDAs
● Grande variedade de softwares● Documentação● Estabilidade
– Bugs são encontrados e resolvidos rapidamente● Alta Performance
Por que usar Linux?
● Segurança● Suporte
– Uma grande variedade de usuários, websites e grupos de discussão pela internet
● Compatibilidade– Aplicações Windows podem rodar no linux
● Personalizável– Existem distribuições voltadas para uso em
hospitais, escolas, crianças, multimídia, etc● Gratuito
Por que o Linux não domina o mundo da computação?
● Contra-tempos– Gerenciamento de software pode ser difícil– Necessidade de padronização de interfaces de
softwares– Nada é 100% gratuito, suporte pago
● Solução– Treinamento de administradores de sistemas– Cursos internos para usuários do sistema– Desenvolvimento– Apoio de todos
UNIX® Básico - Revisão
Estrutura de Diretórios
Estrutura de diretórios - Revisão
/ (Raiz)
bin boot dev etc home lib mnt root sbin tmp var
andre bruno rafael usr
bin include lib local sbin share src X11R6
lib log mail spool tmp
/dev/hda1 on / type ext3 /dev/hda2 on /home type ext3 /dev/hda3 on /usr type ext3 /dev/hda5 on /var type ext3
Estrutura de diretórios - Revisão
● /bin– Programas essenciais para o sistema,
administrador e usuários● /boot
– Onde reside a imagem do kernel vmlinuz, initrd, arquivos de backup do gerenciador de boot
● /dev– Contém arquivos especiais que são referências
para periféricos● /etc
– Mais importantes arquivos de configuraçõeshttp://www.pathname.com/fhs/pub/fhs-2.3.html
Estrutura de diretórios - Revisão
● /home– Diretório de trabalho dos usuários comuns
● /lib– Bibliotecas essenciais para o sistema, onde
reside os módulos do kernel● /lost+found
– Todas as partições possuem um, arquivos são enviados para lá quando recuperados pelo fsck
● /mnt– Ponto de montagem para todos os sistemas de
arquivos externoshttp://www.pathname.com/fhs/pub/fhs-2.3.html
Estrutura de diretórios - Revisão
● /proc– Sistema de arquivos virtual, contém uma série de
informações do sistema● /root
– Diretório de trabalho do super-usuário● /sbin
– Programas essenciais para o sistema e administrador
● /tmp– Espaço temporário
http://www.pathname.com/fhs/pub/fhs-2.3.html
Estrutura de diretórios - Revisão
● /usr– Programas, bibliotecas, documentação,
programas não essenciais do sistema● /var
– Armazena arquivos de dados variáveis como logs, emails, spool de impressão
http://www.pathname.com/fhs/pub/fhs-2.3.html
Estrutura de diretórios - Revisão
● Dotfiles e Dotdirs● file(8)● stat(8)● losetup(8)
UNIX® Básico - Revisão
Permissões UNIX®
"On a UNIX system, everything is a file; if something is not a file, it is a process."
Permissões - Revisão
PermissõesNúmero de arquivos
dono grupo
Data e hora da última modificação
Nome do arquivo
Permissões - Revisão
Permissões - Revisão
● Tipos de arquivos
- Aquivo comumd Diretóriol Linkc Caractere deviceb Block devices Socketp Named pipe
Permissões - Revisão
0 Não lê, não escreve, não executa ---1 Não lê, não escreve, executa --x2 Não lê, escreve, não executa -w-3 Não lê, escreve, executa -wx4 lê, não escreve, não executa r--5 lê, não escreve, executa r-x6 lê, escreve, não executa rw-7 lê, escreve, executa rwx
Permissões - Revisão
● chmod(1)MODO ARQUIVO...– MODO é uma ou mais das letras ugoa, um dos
símbolos += e uma ou mais das letras rwxXstugo– u (User)
● Aplica-se ao dono do arquivo– g (Group)
● Aplica-se ao grupo do arquivo– o (Other)
● Aplica-se a todos os outros usuários que não estejam nos casos acima
– a (All)● Todos os usuários, sem exceção
UNIX® Básico - Revisão
Gerenciando Sistemas de Arquivos
Gerenciando Filesystems - Revisão
Gerenciando Filesystems - Revisão
Número Partição Tipo Status Tam. Em Uso Início Fim
Gerenciando Filesystems - Revisão
● fdisk(8)[opções] device– Divide o disco em um ou mais discos lógicos– Apenas manipula a tabela de partições– Não cria o sistema de arquivos
Gerenciando Filesystems - Revisão
● mkfs(8) [fsoptions] filesys– Utilitário para cria sistemas de arquivos no Unix,
normalmente em block devices– Apenas um front-end para outros utilitários
● mkfs.ext2● mkfs.jfs ● mkfs.msdos ● mkfs.vfat● mkfs.cramfs ● mkfs.ext3 ● mkfs.minix ● mkfs.reiserfs ● mkfs.xfs
Gerenciando Filesystems - Revisão
● fsck(8) [filesys] [] [ fsspecificoptions ]– Checa e opcionalmente repara um sistema de
arquivos– Deve ser executado em um sistema de arquivos
desmontado– Normalmente um front-end para outros utilitários
● fsck.ext2 ● fsck.msdos ● fsck.reiserfs ● fsck.xfs● fsck.ext3 ● fsck.vfat
Gerenciando Filesystems - Revisão
● Os comandos mount(8) e umount(8)– uso básico:
mount device mountpoint
– Parâmetros mais gerais de uso:-a
● Monta todos os sistemas de arquivos listados na fstab
-f● Força a montagem de um sistema de arquivos mesmo
que não esteja “limpo”
Gerenciando Filesystems - Revisão
-r● Monta o sistema de arquivos em somente leitura
-t fstype● Monta o device indicado como o filesystem informado.
-v● Saida mais detalhada (verbose)
-w● Monta o sistema de arquivos em leitura e escrita
Gerenciando Filesystems - Revisão
-o ● Permite parâmetro separados por vírgula, que variam
de filesystem para filesystem.
defaultsrw, suid, dev, exec, auto, nouser, and async.
noatime Não atualiza o campo access time dos inodes no
sistema de arquivo
noautoO sistema de arquivos só é montado
explicitamente, a opção -a não tem efeito aqui.
Gerenciando Filesystems - Revisão
nosuidNão permite a utilização dos bits “set-user-identifier”
e “set-group-identifier”users
Permite qualquer usuário montar e desmontar o sistema de arquivos.
noexecNão permite a execução de binários neste sistema de
arquivos.
userPermite um usuário normal montar o sistema de
arquivos, e somente o mesmo (ou root) pode desmontá-lo.
Gerenciando Filesystems - Revisão
● O arquivo “/etc/fstab”– Sistemas de arquivos são montados
automaticamente durante o processo de boot
– Formato:#device /pto.Mont. fstype opções dumpfreq passno
/dev/hda1 /boot ext3 defaults 0 2/dev/hda2 / ext3 defaults 0 1/dev/hda3 /home ext3 defaults 0 3/dev/hda5 none swap sw 0 0none /proc proc defaults 0 0/dev/cdrom /mnt/cdrom iso9660 ro,user,noauto 0 0
UNIX® Básico - Revisão
Processos
Processos - Revisão
● Sistema Operacional multi-tarefa (técnica para compartilhar um único processador entre vários processos independentes)
● “Processo” é o nome dado á um programa em execução.
● Identificação única “process ID” ou “PID”
● Como arquivos possuem dono e grupo
Processos - Revisão
● O comando ps(1)– Informação momentânea do sistema
Processos - Revisão
● PID– Identificador do processo
● TTY– Terminal em que o processo foi disparado
● STAT– Status do processo
● (S) sleep● (I) Idle● (R) Running● (Z) Zombie
Processos - Revisão
● TIME– Tempo acumulado uso da CPU, não
necessariamente o tempo de execução do processo.
● COMMAND– Linha de comando usada para rodar o programa
Processos - Revisão
● O comando top(1)
– Provê uma visão dinâmica em tempo-real de um sistema em uso
– Mostra um sumário geral do sistema
– Mostra a lista de tarefas (processos) que estão sendo gerenciados pelo kernel
– Interface de manipulação de processos
Processos - Revisão
Processos - Revisão
● nice(1)● pstree
Daemon - Revisão
● Processos que rodam em background
● Executam tarefas específicas de tempos em tempos
● Responsáveis pelos serviços
● Daemons famosos:– sendmail– lpd– inetd
UNIX® Básico - Revisão
Sinais
Sinais - Revisão
● Usados para nos comunicarmos com os processos
● Normalmente usado pelo SO para notificar um processo que algum evento ocorreu
● Devem ser tratados imediatamente
● Alguns podem ser ignorados (mascarados)
Sinais - Revisão
● Tipos de Sinais (man 7 signal):
SINAL NUMERO USO COMUN– SIGHUP 1 Reiniciar o processo– SIGINT 2 Interrupção via teclado Ctrl+C– SIGABRT 6 Sinal via abort(3)– SIGFPE 8 Float Point Exception– SIGKILL* 9 Sinal Morte– SIGSEGV 11 Referência inválida a memória– SIGALRM 14 Timer via alarm(2)– SIGSTOP* 17,19,23 Para o processo
Matando processos - Revisão
● O comando kill(1)
/bin/kill [s] sinal PID
● Cada shell implementa o seu comando kill
● Usuários só podem enviar sinais a processos que lhe pertençam
● SIGKILL e SIGSTOP não podem ser mascarados nem ignorados
UNIX® Básico - Revisão
Shells
Shells - Revisão
● Interpretador de comandos UNIX®
● Recursos
– Controle de jobs– Aliases– Histórico– Expansão de prompt– Variáveis de Ambiente– Completar nomes de arquivos
UNIX® Básico - Revisão
Editores de Texto
Editores de Texto - Revisão
● Diversidade de editores
– vi(1)– ed(1)– joe(1)– pico(1)– nano(1)– mcedit(1)– ee(1)– jed(1)
Editores de Texto - Revisão
● Porque usar vi ?
– Disponível em todos os sistemas UNIX®
– Funciona em qualquer terminal
– Sabendo vi, você sabe muito awk, sed, grep, utiliza o mesmo esquema de expressões regulares
– Pequeno, rápido e poderoso
VI uso básico - Revisão
● Modos de uso:
– Comando● Todas as teclas digitadas são interpretadas como
comando● Para entrar no modo de comando ESC
– Interativo● Tudo que é digitado é ecoado na tela do terminal● Limita-se a inserir e remover caracteres
– Visual● Permite selecionar blocos de texto (v)
VI uso básico - Revisão
● Entrar– vi filename
● Edita um arquivo● cria o arquivo se não existir
● Sair– ZZ
● Sai do vi salvando as modificações– :q!
● Sai do vi descartando as alterações– :x
● Sai do vi salvando as Alterações
VI uso básico - Revisão
● Editar
– i● Insere texto exatamente onde está o cursor
– a● Apenda texto logo abaixo do cursor
– o● Insere uma linha abaixo do cursor e entra no modo de
inserção– O
● Insere uma linha acima do cursor e entra no modo de inserção
VI uso básico - Revisão
● Copiar– yy
● Copia a linha atual– yN
● Copia as N a partir da linha atual– p,qy
● Copia da linha p até a linha q
● Colar– p
● Cola em baixo da linha atual– P
● Cola na linha de cima
VI uso básico - Revisão
● Procurar– /string
● Procura pela ocorrência da string “string”– n
● próxima ocorrência da string
● Substituir– s/velho/novo/[...]
● Substitui uma ocorrência da string “velho” por “novo”– g
● Substitui todas as ocorrências na linha– c
● confirma a alteração
UNIX® Básico - Revisão
Devices
Devices - Revisão
● Todo hardware da máquina recebe o nome de device
● Exemplos de device:
– Impressora
– Placa de Vídeo
– Mouse
– Disco Rígido
Devices - Revisão
● Para cada device (hardware) deve existir um arquivo (device node) no /dev com suas informações
● Exemplos de device nodes:– /dev/hda
– /dev/lp0
– /dev/ttyS0
– /dev/psaux
Devices - Revisão
● Caracter device– Dispositivo que lê e escreve 1 (um) caractere de
dados por vez– Exemplo:
● Teclado, mouse, placa de vídeo
● Block device– Dispositivos que lê escreve mais de 1 caractere
de dados por vez– Exemplo:
● Disco rígido, cdrom, placas SCSI, discos SCSI
Devices - Revisão
● Números Maior e Menor
– Cada device no /dev possui um maior e menor únicos
– Para o kernel não importa o nome do arquivo no /dev
– /usr/src/linux/Documentation/devices.txt
Devices - Revisão
Maior Menor
UNIX® Administração
● Administração de Software● Configuração e Tuning● O Processo de Boot● Gerenciamento básico de contas de usuários● Configurando o kernel● Segurança● Redes
UNIX® Administração
Administração de Software
UNIX® Administração
● Instalando pacotes
– rpm (RedHat, Fedora, Mandrake, Conectiva, ...)
– dpkg (Debian, knoppix, Kurumin)
– tar.gz (todos os Unixes que a aplicação suportar)
Gerenciadores de pacotes - RPM
● RPM(8)– RPM Package Manager – Padrão desenvolvido pela RedHat
– Capaz:
● Instalar● Remover● Atualizar● Procurar● Verificar
RPM
● Instalar
– rpm i [install] pacote.rpm ...● Instala o pacote● Falha se já existir uma versão anterior instalada● Falha se houver dependências
● Opções comuns ao instalar
– v● Saida detalhada
– h● Barra de andamento do processo
RPM
● Remover
– rpm e [erase] metapacote ...● Remove um pacote do sistema● Falha se houverem dependências
● Opções comuns ao remover
– v● Saída detalhada
– nodeps (não comum)● Ignora caso hajam dependências
RPM
● Atualizar
– rpm U [update] pacote.rpm ...● Atualiza um pacote caso ele esteja instalado● Instala o pacote caso não esteja previamente instalado
● Opções comuns ao atualizar
– v● Saída detalhada
– h● Barra de andamento do processo
RPM
● Procurar
– rpm q [query] metapacote ...● Procura procura pelo nome exato do pacote● Não possui um mecanismo de pesquisa apurado
● Opções comuns à procura
– a● Todos os pacote instalados
– |grep string● Procura por um pacote que possui em seu nome “string”
RPM
● Verificar
– rpm V [Verify] metapacote ...● Verifica se algum arquivo do pacote original foi alterado
● Opções comuns ao verificar
– a● Todos os pacote instalados
DPKG
● dpkg(8)– Padrão desenvolvido pelo Debian
– Capaz:
● Instalar● Remover● Resolver dependências● Atualizar● Procurar● Verificar
APT
● apt(8)– Ferramenta avançada de gerenciamento de
pacotes
– Facilidade de administração de pacotes
– Versátil● Novos repositórios (novos softwares)● Repositório de atualizações de segurança● Independe do gerenciador de pacotes
– http://apt.freshrpms.net/
APT
● aptget(8)– Lista de repositórios:
/etc/apt/sources.list
APT
● aptget update– Atualiza a lista de todos os pacotes disponíveis– Procura a nova lista de pacotes de cada servidor– Recria a árvore de dependências– Deve ser executado periodicamente
APT
● aptget install pacote ...– Instala o pacote– Resolve todas as dependências– Resolve conflitos de versão
APT
● aptget upgrade [u]– Compara a lista de pacotes disponíveis com lista
de pacotes instalados– Mantém o sistema atualizado– Deve ser executado periodicamente
Tarball – tar.gz - tar.bz2
● Pacote criado com o utilitário tar(1)– Descompactar
● tar zxvf pacote.tar.gz● tar jxvf pacote.tar.bz2
– Configurar● cd pacoteversão● ./configure –opções
– Compilar● make
– Instalar● make install
UNIX® Administração
Configuração e Otimização
UNIX® Administração
Rede
Hostname
● hostname(1)– Define ou mostra o hostname do sistema– O hostname é usado por vários programas para
identificar a máquina
● /etc/hosts– Tabela estática para procura de máquina– Única forma de resolver nomes antes do advento
do DNS– 127.0.0.1 localhost deve sempre existir
Configurando a rede
● ifconfig(8) iface [options] addr– Configura interfaces de rede– Configura interfaces virtuais– Exibe as interfaces configuradas– Exibe estatísticas de cada interface
Configurando a rede
● RedHat– /etc/sysconfig/networkscripts/– /etc/sysconfig/network
● FreeBSD– /etc/rc.conf
● OpenBSD– /etc/hostname.iface
● Debian– /etc/network/interfaces
● Slackware– /etc/rc.network
Configurando a rede
● route(8) – Exibe e manipula a tabela de rotas IP– Normalmente usado para configurar rotas estáticas– Usado para definir o default gateway
route add default gw aa.bb.cc.dd
route add host 1.2.3.4 dev eth0
route add net 5.4.3.2/24 gw 1.2.3.4
Configurando a rede
Resolução de nomes
● /etc/resolv.conf(5)– Contém informações que são lidas por rotinas de
resolução de nome– Informa o endereço do servidor de nomes
utilizado pelo sistema
● Opções comunsnameserver ip.do.servidordomain dominio.da.maquinasearch dominio.com.br com.br br edu
Resolução de nomes
● /etc/host.conf(5)– Configuração das rotinas de resolução de nome
● Opções comunsorder bind, host, nismulti on
Name Service Switch
● /etc/nsswitch.conf– Configura várias rotinas da biblioteca C para
funcionarem corretamente– Prioridade sobre o arquivo /etc/host.conf
passwd: nis compatgroup: nis compatshadow: nis compat
hosts: files dns nisnetworks: files nis
UNIX® Administração
Sistema de Logging
Logs do Sistema
● syslogd(8) e klogd(8)– Daemon responsável por logar as mensagens do
sistema– Serviço bem consolidado, existente em todos os
Unices – Permite uma centralização dos logs de toda a
rede– Fácil configuração– Em alguns sistemas syslogd(8) e klogd(8)
são um único daemon sysklogd(8) ou simplemente syslogd(8)
Configuração de Logs do Sistema
● /etc/syslog.conf(5)– Arquivo de configuração para o syslogd(8)– Define onde as mensagens logadas devem ser
armazenadas– Atenção para o uso de espaços neste arquivo
● Sintaxe básica
Seletor;[Seletor] ação
/usr/include/sys/syslog.h
Configuração de Logs do Sistema
● Seletor– Facility.priority– Facility.*– Facility,Facility.priority– Facility.=priority– Facility.!priority– Facility.priority– Facility.priority– *.priority– *.=priority– *.!priority
Configuração de Logs do Sistema
● Ação
– Arquivo regular: []/var/log/file– Named Pipe: |/var/log/file– Terminal e Console: /dev/console– Máquina remota: @maquina– Lista de usuários: root,usuario,..– Todos os logados: *
Configuração de Logs do Sistema
● Facility
– auth /* security/auth messages */– authpriv /*sec/auth msgs (private)*/– cron /* clock daemon */– daemon /* system daemons */– ftp /* ftp daemon */– kern /* kernel messages */– lpr /* line printer subsystem */
Configuração de Logs do Sistema
● Facility
– mail /* mail system */– news /* network news subsystem */– syslog/* msgs internas syslogd */– user /* random userlevel msgs */– uucp /* UUCP subsystem */
Configuração de Logs do Sistema
● Facility– Reservado para uso geral do sistema– local0 /* reserved for local use */– local1 /* reserved for local use */– local2 /* reserved for local use */– local3 /* reserved for local use */– local4 /* reserved for local use */– local5 /* reserved for local use */– local6 /* reserved for local use */– local7 /* reserved for local use */
Configuração de Logs do Sistema
● Priority
– alert /* Intervenção imediata */– crit /* Condição crítica */– debug /* Mensagens debuglevel */– emerg /* Sistema não utilizável */– err /* Condição de erro */– info /* Informativo */– none /* INTERNAL */– notice /* Condição normal*/– warning /* Condição de atenção*/
Configuração de Logs do Sistema
● Exemplo de configuração
auth,authpriv.* /var/log/auth.log*.*;auth,authpriv.none /var/log/syslogdaemon.* /var/log/daemon.logkern.* /var/log/kern.loglpr.* /var/log/lpr.logmail.* /var/log/mail.loguser.* /var/log/user.loguucp.* /var/log/uucp.logmail.info /var/log/mail.infomail.warn /var/log/mail.warnmail.err /var/log/mail.errnews.crit /var/log/news/news.crit
Configuração de Logs do Sistema
*.=debug;\ auth,authpriv.none;\ news.none;mail.none /var/log/debug
*.=info;*.=notice;*.=warn;\ auth,authpriv.none;\ cron,daemon.none;\ mail,news.none /var/log/messages
*.emerg *
daemon.*;mail.*;\ news.crit;news.err;news.notice;\ *.=debug;*.=info;\ *.=notice;*.=warn |/dev/xconsole
UNIX® Administração
Agendamento de tarefas
Cron
● cron(8)– Executa tarefas agendadas do sistema
● /etc/crontab(5)– Arquivo de configuração do cron
● crontab(1)– Ferramenta para manipulação das tarefas
agendadas de usuários
Cron
● /etc/cron.allow– Lista dos usuários que podem executar o
comando crontab(1)– Se não existir todos podem
● /etc/cron.deny– Lista dos usuários que não podem executar o
comando crontab(1)– Se não existir todos podem
Crontab
● Formato do /etc/crontab
1) Minuto em que o comando será executado2) Hora em que o comando será executado3) Dia do mês que o comando deverá ser executado4) Mês em que o comando será ser executado 5) Dia da semana em que o comando será executado6) Usuário que irá executar o comando7) Comando que deverá ser executado
1 2 3 4 5 6 7min hora ddm mês dds usuário comando
Crontab
● Valores permitidos– Minuto 0-59– Hora 0-23– Dia do mês 1-31– Mês 1-12– Dia da semana 0-7
● Ranges– 0-10 (0,1,2,3,4,5,6,7,8,9,10)
● Listas – 2,5,7,6,9,11
Crontab
● Combinações– 0-20/2 (0,2,4,6,8,10,12,14,16,18,20)– 5-8,12-15,19
● Nomes– Dia da semana
● Sun, Mon, Tue, Wed, Thu, Fri, Sat
– Mês● Jan, Feb, Mar, Apr, May, Jun, Jul, Aug, Sep, Oct, Nov,
Dec
Crontab
● Variáves de ambiente do /etc/crontab– SHELL
● Shell que irá executar os comandos– HOME
● Diretório de trabalho de $LOGNAME ou $USER– PATH
● Ordem de procura dos binários por $SHELL– LOGNAME
● Login do usuário que agendou a tarefa (somente leitura)– USER
● Login do usuário que agendou a tarefa (somente leitura)– MAILTO
● Saída do comando é enviada via email para $MAILTO
Crontab
● Formato do /etc/crontab
min hora ddm mês dds usuário comando
01 * * * * root echo "Todo 1 min de hora"17 8 * * * root echo "diário às 8:17am"17 20 * * * root echo "diário às 8:17pm"00 4 * * 0 root echo "domingo às 4:00am"* 4 * * Sun root echo "O mesmo do de cima"42 4 1 * * root echo "todo dia 1 do mês às 4:42am"
Crontab
● crontab(1) [u user][e] [l] [r]
– e● Edita a lista de tarefas agendadas do usuário
– u● Edita a crontab de outro usuário
– l● Lista o conteúdo da crontab do usuário
– r● Remove todas as tarefas da crontab
At
● at(1) HORA– Executa comandos no horário especificado
● HORA– HH:MM– + NUMERO UNIDADEDETEMPO
● UNIDADE-DE-TEMPO– minutes, hours, days, or weeks
● Exemplo:– at 17:00
● reboot
UNIX® Administração
Otimização
UNIX® Administração
System Control
Sysctl – System Control
● sysctl(8)– Permite configurar parâmetros do kernel em
tempo de execução– Os parâmetros disponiveis estão em /proc/sys
● /etc/sysctl.conf(5)– Arquivo de configuração do sysctl(8)
● Exemplo:sysctl asysctl w variavel=valorsysctl p
Sysctl – Variáveis do kernel
● Exemplo:
● net.ipv4.ip_forward● net.ipv4.conf.default.rp_filter ● fs.filemax● kernel.ctrlaltdel● kernel.domainname● kernel.hostname● kernel.panic● net.ipv4.conf.all.send_redirects
/proc
● /proc(5)– Sistema de arquivos virtual que permite acesso
direto as estruturas de dados do kernel
● Visão geral para informações de processos● /proc/[PID]
– Contém informações de cada processo em execução
● /proc/[PID]/cmdline– Linha de comando que iniciou o processo
● /proc/[número]/cwd– Diretório em que o programa foi executado
/proc - continuação
● /proc/[PID]/environ– Variáveis de ambiente do processo
● /proc/[PID]/exe– Link para o binário que foi executado
● /proc/[PID]/fd– Este diretório contém uma entrada para cada
arquivo aberto pelo processo ● /proc/[PID]/maps
– Regiões de memória mapeadas e suas respectivas permissões de acesso
/proc - continuação
● /proc/[PID]/mem– Permite o acesso às páginas de memória do
processo● /proc/[PID]/root
– Para onde aponta o / do processo, alterado se usado chroot(2)
● /proc/[PID]/stat– Informações de status do processo, usado pelos
comandos ps(1) e top(1)● /proc/[PID]/statm
– Informações sobre o status da memória em páginas
/proc - continuação
● /proc/[PID]/status– Mesmas informações de stat e statm porém
em um formato mais legível
● Recursos da Máquina
● /proc/interrupts– Informação sobre o número de interrupções por
cada IRQ ● /proc/iomem
– Mapa de I/0
/proc - continuação
● /proc/ioports– Lista de I/O atualmente em uso
● /proc/kcore– Representa a memória física do sistema
● /proc/kmsg– Mensagens do kernel–
–TERMINAR
UNIX® Administração
Filesystem
Tune2fs
● tune2fs(8) [opções] filesystem– Ajusta os parâmetros do sistema de arquivos
ext2/ext3● Opções comuns
c max-mount-counts● Número máximo de montagens antes do fsck(8)
e error-behavior● remount-ro, continue, panic
i interval-between-checks[d|m|w]● Intervalo caso o número máximo e montagens não
seja alcançado
Tune2fs
● Opções comuns (continuação)
l lista● lista o conteúdo do superbloco
-L volume-label● Nome do volume LABEL=ROOT
m reserved-blocks-percentage● Porcentagem dos blocos que são reservados
Tune2fs
● Opções comuns (continuação)
o [^]opçõesdemontagem[,...]● Opções defaults de montagem que podem ser
sobrescritas ao executar o comando mount
● Opções de Montagemdebugacljournal_datajournal_data_orderedjournal_data_writebackuid16
Tune2fs
● Opções comuns (continuação)
O [^]feature[,...]dir_index
– Usa hashed b-trees para aumentar a velocidade na procura de arquivos em diretórios grandes
filetype– Armazena a informação do tipo de arquivo no
diretóriohas_journal
– Usa o journal para assegurar a consistência do sistema de arquivos mesmo após uma interrupção brusca do sistema
Hdparm
● hdparm(8) [opções] harddisk– Recupera e configura parâmetros em discos
rígidos
– A [0/1]● Manipula a opção read-lookahead
– c [0/1]● Transferência em 32-bit (PCI)
– i● Exibe as informações detectadas na hora do boot
– I● Exibe informações requisitadas diretamente ao disco
Hdparm
● hdparm(8) [opções] harddisk
– k [0/1]● Mantém as configurações após um reset do disco
– K [0/1]● Mantém as features após um reset do disco
– m● Número de setores transferidos
– T● Teste de transferência com uso de cache
– t● Teste de transferência sem uso de cache
UNIX® Administração
O Processo de Boot
Seqüência de boot
● Arquitetura PC IBM/IA32
– Projeto antigo e manutenção de compatibilidade
– Firmware do PC boota o Sistema Operacional de uma forma antiga e bem consolidada
– É atualmente a arquitetura mais usada no mundo
Seqüência de boot
● O Processo pode ser separado em seis estágios lógicos
1. A BIOS seleciona o dispositivo de boot2. A BIOS carrega o "setor de boot" do dispositivo de
boot3. O "Setor de boot" carrega o setup, rotinas de
descompressão e a imagem do kernel comprimida4. O kernel é descomprimido em modo protegido5. Inicialização de baixo nível é realizada pelo código
assembler6. Inicialização em C de Alto nível
Seqüência de boot
Seqüência de boot
● Detecta e inicializa os dispositivos● Opcionalmente carrega o initrd● Monta o root filesystem especificado pelo
gerenciador de boot com o parâmetro root=???– O kernel imprime:
● VFS: Mounted root (ext2 filesystem) readonly. ● Executa /sbin/init (PID=1)
– O init imprime: ● INIT: version 2.85 booting
/sbin/init,/etc/init,/bin/init,/bin/sh
Seqüência de boot
● /sbin/init(8)
– Último passo na seqüência de boot
– Lê o arquivo /etc/inittab(5)
– Se existir a diretiva initdefault, define o runlevel inicial do sistema
– Inicializa os ttys
Seqüência de boot
● /etc/inittab(5)– arquivo de configuração do init(8)– Define que processos serão inicializados na
seqüência de boot
● Formato:
– ID : RUNLEVELS : AÇÃO : PROCESSO
Seqüência de boot
● ID – Identifica uma entrada no inittab (até quatro
caracteres)
● RUNLEVELS – Lista de runlevels nos quais uma determinada
ação deverá ser tomada
● AÇÃO – Ação tomada pelo init(8) ao executar o
processo
Seqüência de boot
● AÇÃO
– RESPAWN● O processo será reiniciado pelo init(8), deve
sempre estar disponível no sistema
– WAIT ● Ao entrar no runlevel o processo é iniciado, e o init(8) aguarda pelo fim da execução do processo para continuar,
– ONCE ● O processo só será executado uma vez
Seqüência de boot
● AÇÃO (continuação)
– SYSINIT ● O processo será iniciado durante o boot (antes de
qualquer entrada com ação boot ou bootwait)
– POWERFAIL ● Executado quando recebe um sinal (SIGPWR) de que
ocorreu uma falha no sistema de alimentação
● PROCESSO– Processo que será executado
Seqüência de boot
● /etc/inittab(5) (continuação)● initdefault
– id: N : initdefault: ● define em qual runlevel (N) o sistema será inicializado
# inittab for linux id:1:initdefault: rc::bootwait:/etc/rc 1:1:respawn:/etc/getty 9600 tty1 2:1:respawn:/etc/getty 9600 tty2 3:1:respawn:/etc/getty 9600 tty3 4:1:respawn:/etc/getty 9600 tty4
Seqüência de boot
● /etc/inittab(5) (continuação)
● Exemplo mais bem elaborado em
– http://jvictor.dyndns.org/linux/inittab-mbe.txt
Seqüência de boot
● /etc/inittab(5) (continuação)
# nível de execução que estamosid:2:initdefault:
# Script de inicialização/configuração do #sistema na hora do bootsi::sysinit:/etc/init.d/rcS
#O que fazer em modo monousuárioS:wait:/sbin/sulogin
Seqüência de boot
● /etc/inittab(5) (continuação)
# /etc/init.d/rc executa os script S e K na # mudança de runlevell0:0:wait:/etc/init.d/rc 0l1:1:wait:/etc/init.d/rc 1l2:2:wait:/etc/init.d/rc 2l3:3:wait:/etc/init.d/rc 3l4:4:wait:/etc/init.d/rc 4l5:5:wait:/etc/init.d/rc 5l6:6:wait:/etc/init.d/rc 6
Seqüência de boot
● /etc/inittab(5) (continuação)
# O que fazer com o "CTRL+ALT+DEL"ca::ctrlaltdel:/sbin/shutdown -t1 -h now
1:23:respawn:/sbin/getty tty1 VC linux2:23:respawn:/sbin/getty tty2 VC linux3:23:respawn:/sbin/getty tty3 VC linux4:23:respawn:/sbin/getty tty4 VC linuxS0:3:respawn:/sbin/getty -L 9600 ttyS0 vt320S1:3:respawn:/sbin/mgetty -x0 -D ttyS1
Seqüência de boot
● Scripts– rc, rc.sysinit, – Em: /etc/init.d, /etc/rc.d/init.d
● Tarefas comuns dos scripts de inicialização– Logar a seqüência de boot– Desmontar e liberar o initrd– Configurar o teclado– Setar as configurações de performance– Checar se os sistemas de arquivos estão ok– Acertar a hora do sistema– Carregar módulos do kernel
Seqüência de boot
● Tarefas comuns dos scripts de inicialização (continuação)
– Ativar a memória swap– Montar os sistemas de arquivos– Checar quotas– Detectar os hardwares que não foram detectados
automaticamente pelo kernel– Setar o hostname da máquina– Levantar as interfaces e conexões de rede– Levantar NIS e NFS
Seqüência de boot
● RUNLEVEL– Modo de execução.
0 - HALT1,s - Single mode (administração)2 - Multiusuário sem opções de rede3 - Multiusuário completo (padrão)4 - reservado para personalização5 - Modo gráfico (Xwindow - xdm)6 - Reboot
Seqüência de boot
● /etc/rcX.d– X é o nível de execução do sistema
● O comando init X é usado para definir o runlevel atual
● Scripts em /etc/rcX.d– Começados por S deverão ser executados como /etc/rcX.d/nomedoscript start
– Começados por K deverão ser executados como /etc/rcX.d/nomedoscript stop
Seqüência de boot
● /etc/rc.d/rc.local– Último script a ser executado na seqüência de
boot– Nele devem existir configurações que não foram
previstas nos scripts de inicialização
● getty(8)– Habilita login de usuários– Abre os tty’s (terminais) e configura seu modo de
operação– Mostra o prompt de login– Inicializa o processo login para o usuário
Seqüência de boot
● login(8)– checa senha– executa o shell do usuário (definido em /etc/ passwd)
Seqüência de boot
● Adicionando um script na inicialização
cd /etc/rc?.d/ln s /etc/init.d/script S??script
● No RedHat
chkconfig script on
– No script devem existir as linhas:#chkconfig: runlevels Snum Knum#description: Script responsável por....
Seqüência de boot
● Removendo um script na inicialização
cd /etc/rc?.d/rm S??script
● No RedHat
chkconfig script off
chkconfig level 235 script off
Seqüência de boot
● Alternando entre runlevels
– init n● n é o runlevel desejado
– runlevel(8)● Informa o runlevel anterior e o atual
– telinit(8) [t segundos]● O mesmo que init(8) porém permite especificar um
delay para a troca do runlevel
UNIX® Administração
Gereciamento de contasde usuários e grupos
UNIX® Administração
Contas de usuários
Administrando contas de usuários
● O arquivo /etc/passwd contém as contas de usuários
– Cada linha descreve um usuário
– Cada linha possui 7 campos separados por :
login:senha:UID:GID:nome:home:shell
Administrando contas de usuários
● Campos de /etc/passwd
– Login● Nome de usuário
– Password● Senha associada ao usuário, se o password shadow
estiver habilitado este campo estará preenchido com um x
– User ID● Número de identificação único associado ao usuário
Administrando contas de usuários
● Campos de /etc/passwd (continuação)
– Group ID● Número de identificação do grupo primário do usuário
– Full Name● Nome completo do usuário mais campos informativos
e especiais
– Shell● Interpretado de comandos padrão do usuário
Administrando contas de usuários
● Administrando contas via linha de comando
– useradd(8)● Cria contas de usuários
– userdel(8)● Remove contas de usuários
– usermod(8)● Modifica contas de usuários já existentes
– chfn(8)● Modifica o nome completo e informações de usuários
– chsh(8)● Troca a shell do usuário
Administrando contas de usuários
● useradd [defgGkmnpsu] usuário– Cria contas de usuários
– c● Comentário - normalmente usado para definir o nome
completo do usuário– d
● Diretório home do usuário– e
● Data da expiração da conta no formato YYYY-MM-DD– f
● Dias após a expiração do password em que a conta será permanentemente desabilitada
Administrando contas de usuários
● useradd [defgGkmnpsu] usuário (continuação)
– g● Grupo primário do usuário
– G● Lista de grupos, separada por vírgula e sem espaços,
que o usuário pertence– k
● define diretório onde estão as configurações iniciais das contas de usuários
Administrando contas de usuários
● useradd [defgGkmnpsu] usuário (continuação)
– m● Informa que o diretório do usuário deverá ser criado
automaticamente– n
● Não criar um grupo separado para o usuário, utilizar um já existente
– p● Define um password para o usuário
Administrando contas de usuários
● useradd [defgGkmnpsu] usuário (continuação)
– s● Define a shell padrão do usuário
– u● Define o número de identificação único do usuário
– o● Permite a criação de um usuário com o mesmo UID de
um já existente
Administrando contas de usuários
● useradd [defgGkmnpsu] usuário (continuação)
– D ● atualiza o arquivo /etc/default/useradd
– Exemplo:# useradd defaults fileGROUP=100HOME=/homeINACTIVE=1EXPIRE=SHELL=/bin/bashSKEL=/etc/skel
Administrando contas de usuários
● userdel(8) [r] usuário
– Remove contas de usuários do sistema
– Se a opção r for passada como parâmetro o diretório do usuário será removido
– Por default os diretórios de usuários são mantidos
Administrando contas de usuários
● usermod(8) [cdefgGklmnpsuLU] usuário
– As opções equivalem às opções do useradd(8)– l novonome
● permite modificar o login do usuário– L
● bloqueia o password do usuário, impedindo o login– U
● desbloqueia a conta do usuário
Administrando contas de usuários
● chsh(8) s shell usuário
– Permite alterar o interpretador de comandos padrão do usuário
– Shell é o caminho da shell
– Somente shells listadas em /etc/shells são permitidas, a menos que invoque o comando como superusuário
UNIX® Administração
Grupos de usuários
Administrando contas de usuários
● Permite o compartilhamento de informações
● O arquivo /etc/group define os grupos de usuários
– cada linha define um grupo– cada linha tem o seguinte formato:
grupo:password:GID:membros
Administrando contas de usuários
● Campos de /etc/group
– grupo● Nome do grupo
– Password● Senha associada ao grupo para fins administrativos,
uso incomum
– Group ID● Número de identificação único associado ao grupo
– Membros● Lista dos usuários que pertencem ao grupo separados
por vírgula e sem espaços
Administrando contas de usuários
● groupadd(8) g gid grupo– Cria um grupo– g
● Define o número de identificação único do grupo
● groupdel(8) grupo– Remove um grupo
● groupmod(8) grupo– Remove um grupo– n novonome– g gid
Administrando contas de usuários
● /etc/shadow(5)– apenas o root pode ler e escrever– maior segurança
login:senha:cp1:cp2:cp3:cp4:cp5:cp6:reservado
cp1 = Dias a partir de 1/1/1970 que a senha foi alteradacp2 = Dias a partir do qual a senha pode ser mudadacp3 = Por quantos dias a senha é válidacp4 = Em quantos dias antes da senha expirar o usuario
deve ser avisadocp5 = Quantos dias depois que a senha expirou a conta é
desabilitadacp6 = Dia (a partir de 1/1/1970) que a conta é desabilitada
UNIX® Administração
Quotas de disco
Administrando contas de usuários
● Limita o consumo de espaço em disco pelo usuário
● Limita número de inodes e blocos utilizados
● Deverá ser aplicada em cada sistema de arquivos que espera-se que o usuário utilize
● Arquivos de quotas são [a]quota.user e [a]guota.group
Administrando contas de usuários
● quotacheck(8)– Checa a utilização de disco de cada usuário em
cada sistema de arquivos com quota– Corrige o arquivo de quotas caso esteja corrompido– Deverá ser executado na inicialização do sistema,
antes do sistema de quotas estar no ar
quotacheck avugn
– Checa as quotas de usuário e grupo de todos os sistemas de arquivos com quota e corrige o aquivo de quotas caso esteja corropido
Administrando contas de usuários
● quotaon(8)– Ativa o sistema de quotas no sistema de arquivos
– O arquivos de registro de quotas devem existir na raiz do sistema de arquivos
quotaon avug
● Ativa o sistema de quotas para usuários e grupos em todos os sistemas de arquivos
Administrando contas de usuários
● Normalmente encontramos no scripts de inicialização algo como:# Checa as quotas e então ativa o sistema de quotas if [ -x /usr/sbin/quotacheck ] then echo "Checando quotas. Isso poder levar algum tempo." /usr/sbin/quotacheck -avug echo " Feito." fi if [ -x /usr/sbin/quotaon ] then echo "Ativando o sistema de quotas." /usr/sbin/quotaon -avug fi
Administrando contas de usuários
● Notas importantes:
– O check de quotas (quotacheck) deve ser feito com os sistema de quotas desligado
– O check de quotas (quotacheck) deverá ser feito com o sistema de arquivo com quotas montado
– A ativação do sistema de quotas (quotaon) deverá ser feito com o sistema de arquivos montado
Administrando contas de usuários
● Para habilitar quotas de disco
– Para usuários adicione usrquota no campo opções do sistema de arquivos desejado em /etc/fstab
– Para grupos adicione grpquota no campo opções do sistema de arquivos desejado em /etc/fstab
/dev/hda2 / ext3 defaults,usrquota,grpquota 0 1
● Ativa quotas de usuário e grupos no sistema de arquivos /
Administrando contas de usuários
● edquota(8)– Ferramenta de edição de quotas de usuários e
grupos
– É possível editar quotas para mais de um usuário ao mesmo tempo
– É possível especificar um usuário com padrão
– Apenas o super-usuário pode editar o arquivo de quotas
Administrando contas de usuários
● edquota(8) (continuação)– Soft Limit
● Indica o máximo de espaço em disco permitido para o usuário, pode ser ultrapassado
– Hard Limit● Indica o máximo de espaço em disco sem concessão de
tempo de estouro, normalmente maior do que o “Soft Limit”
– Grace Period● Número máximo de dias que o “Soft Limit” pode estar
ultrapassado
Administrando contas de usuários
● repquota(8)
– Gera um relatório das quotas de disco
– Imprime o status de cada usuário
– Informa o espaço em disco em kilobytes
UNIX® Administração
NISNetwork Information NameService
NIS
● Padroniza informações compartilhadas pela rede
● Permite compartilhar informações de:
– usuários– grupos– password– redes– hosts
NIS
● Em uma rede deve-se ter pelo menos um servidor NIS
● Podem existir mais de um servidor NIS atuando ao mesmo tempo em domínios diferentes
● Podem existir mais de um servidor atuando cooperativamente em um mesmo domínio (Master, Slave)
NIS
● Master– Possui a lista de contas de usuários– Deve existir apenas um por domínio– Onde alterações no banco de dados NIS devem
ser feito
● Slave– Possuem apenas cópia do banco de dados NIS– Copiam o banco de dados NIS periodicamente do
master
NIS
● portmap(8)
– Transforma chamadas RPC em portas TCP/IP
– Deve estar rodando para que o NIS funcione
– Quando o RPC for executado o portmap será informado de que portas deverá escutar
– Faz a intermediação entre cliente/servidor NIS
NIS – Configurando o cliente
● Configuração possível para clientes
● /etc/yp.conf(5)domain nisdomain server hostnamedomain nisdomain broadcastypserver hostname
as informações nis são armazenadas em /var/yp/etc/nsswitch.confhosts: files nis dns
NIS – Configurando o cliente
● /etc/yp.conf(5)
ypserver 10.10.0.1ypserver 10.0.100.8ypserver 10.3.1.1
domainname lab02.nce.ufrj.br
/sbin/portmap/usr/sbin/ypbind
NIS – Configurando o cliente
● Para manter o banco NIS atualizado
– /etc/crontab
20 * * * * /usr/lib/yp/ypxfr_1perhour40 6 * * * /usr/lib/yp/ypxfr_1perday55 6,18 * * * /usr/lib/yp/ypxfr_2perday
NIS – Configurando o Servidor
● /var/yp/Makefile– Define os arquivos que estarão disponíveis via NIS
● /var/yp/ypservers– Lista de todos os servidores do domínio
● /var/yp/securenets– Lista das redes que possuem permissão de acesso
as informações da rede 255.255.255.0 10.10.0.0 host 10.0.0.1
NIS – Configurando o Servidor
● /etc/ypserv.conf– Configuração de segurança do ypserv
/sbin/portmapypserv#Master/usr/lib/yp/ypinit m#Slave/usr/lib/yp/ypinit s masterhostcd /var/ypmake
UNIX® Administração
NFSNetwork File System
NFS
● Permite maquinas montarem um sistema de arquivos remoto como se fosse um sistema de arquivos local
● Permite compartilhar arquivos através da rede de forma rápida e fácil
● Vantagem sobre outros sistemas de arquivos para rede– Fácil implementação– Código maduro– Considerado um padrão– Suportado por uma variedade de plataformas
NFS – Configurando o Servidor
● /etc/exports(5)– Arquivo de configuração do servidor NFS– define quais sistemas de arquivos serão
exportados– define o controle de acesso aos sistemas de
arquivos exportados–
diretório maquina(permissão,...) ...
/usr *(ro,sync,root_squash)/var/www pc1(rw,sync) pc2(ro,)
NFS – Configurando o Servidor
● /etc/hosts.deny e /etc/hosts.allow
portmap:ALL
lockd:ALL
mountd:ALL
rquotad:ALL
statd:ALL
●
NFS – Configurando o Servidor
● Inicializando o servidor NFS
#/sbin/portmap#/usr/sbin/rpc.mountd#/usr/sbin/rpc.nfsd#/usr/sbin/rpc.statd#/usr/sbin/rpc.lockd#/usr/sbin/rpc.rquotad
#/usr/sbin/rpcinfo p
NFS – Configurando o Servidor
● Alterando o /etc/exports(5) após a inicialização do serviço
#/usr/sbin/exportfs(8) raou#/sbin/kill 1 no PID do nfsd
● As informações são armazendas em /var/lib/nfs
NFS – Configurando o Cliente
● Configuração simples
#/sbin/portmap#/usr/sbin/rpc.lockd#/usr/sbin/rpc.statd
#mount server:/home /mnt/home
#umount /mnt/home
server:/home /home nfs defaults 0 0
UNIX® Administração
Compilando o kernel
Kernel
● O que é o kernel?
● Por que recompilar?– Otimização– Suporte a novos hardwares
● Onde encontrar?– http://www.kernel.org–
● Construo um kernel modular ou monolítico?
Kernel
● Determinando seu hardware
lspci(8)
cat /proc/cpuinfo
● Descompactando os fontes
cd /usr/srctar jxvf linux2.4.26.tar.bz2ln s linux2.4.26 linux
Kernel
● Documentação/usr/src/linux/Documentation
● Limpando os fontescd /usr/src/linuxmake mrproper
● Configurandomake configmake menuconfigmake xconfig
Kernel
● Satisfazendo as dependencias de compilaçãomake dep
● Compilando o kernelmake Image (Sem compactação)make zImage (compactado com gzip)make bzImage (compactado com bzip2)– a imagem gerada estará em /usr/src/linux/arch/i386/boot/bzImage , zImage ou Image
Kernel
● Compilando os módulosmake modulesmake modules_install– Os modulos do kernel residem em /lib/modules/versãodokernel
● Após a compilação– copiar a imagem do kernel para /boot com o
nome vmlinuzversãodokernel– copiar System.map para /boot/System.mapversãodokernel
Kernel
● Criando um initrd(4) (initialized RAM disk)– Permite uma maior portabilidade do kernel– Útil somente em um kernel modular– É necessário que seu kernel tenha suporte a isso
mkinitrd /boot/initrd2.4.26.img 2.4.26
UNIX® Administração
Gerenciador de boot
lilo
● lilo(8)
– Tradicional gerenciador de boot do linux
● /etc/lilo.conf(5)
– Arquivo de configuração do lilo– leitura do manual é recomendável– Sempre que alterar o arquivo de configuração se faz
necessário executar o comando#lilo
lilo
● /etc/lilo.conf(5)– Exemplo:
boot = /dev/hda vga = 0 lba32 image = /boot/vmlinuz2.4.26 root = /dev/hda2 initrd = /boot/initrd2.4.26 label = Linux readonly
other = /dev/hda4 table = /dev/hda label = dos
Grub
● grub(8)– Novo padrão de gerenciador de boot– Configuração simples– Possui mais recursos– “Boota” mais Sistemas Operacionais– Não é necessário executar comando algum ao
alterar o arquivo de configuração
● /boot/grub/menu.lst(5)– Arquivo de configuração do grub– é possivel que esteja em /etc/grub.conf
Grub
● /boot/grub/menu.lst(5) (continuação)
boot=/dev/hdadefault=0timeout=10title Red Hat Linux (2.4.26)root (hd0,1)kernel /boot/vmlinuz2.4.26 ro root=/dev/hda2initrd /boot/initrd2.4.26.img
Top Related