208
UNIX ® Administração João Victor A. Di Stasi [email protected] Núcleo de Computação Eletrônica Universidade Federal do Rio de Janeiro

UNIX® Administração

Embed Size (px)

Citation preview

Page 1: UNIX® Administração

UNIX® Administração

João Victor A. Di Stasi [email protected]

Núcleo de Computação EletrônicaUniversidade Federal do Rio de Janeiro

Page 2: UNIX® Administração

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

Page 3: UNIX® Administração

Carga Horária

● 40 horas teórico / práticas

Page 4: UNIX® Administração

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

Page 5: UNIX® Administração

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

Page 6: UNIX® Administração

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

Page 7: UNIX® Administração

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

Page 8: UNIX® Administração

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

Page 9: UNIX® Administração

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

Page 10: UNIX® Administração

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

Page 11: UNIX® Administração

UNIX® Básico - Revisão

Estrutura de Diretórios

Page 12: UNIX® Administração

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

Page 13: UNIX® Administração

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

Page 14: UNIX® Administração

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

Page 15: UNIX® Administração

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

Page 16: UNIX® Administração

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

Page 17: UNIX® Administração

Estrutura de diretórios - Revisão

● Dotfiles e Dotdirs● file(8)● stat(8)● losetup(8)

Page 18: UNIX® Administração

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."

Page 19: UNIX® Administração

Permissões - Revisão

PermissõesNúmero de arquivos

dono grupo

Data e hora da última modificação

Nome do arquivo

Page 20: UNIX® Administração

Permissões - Revisão

Page 21: UNIX® Administração

Permissões - Revisão

● Tipos de arquivos

- Aquivo comumd Diretóriol Linkc Caractere deviceb Block devices Socketp Named pipe

Page 22: UNIX® Administração

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

Page 23: UNIX® Administração

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

Page 24: UNIX® Administração

UNIX® Básico - Revisão

Gerenciando Sistemas de Arquivos

Page 25: UNIX® Administração

Gerenciando Filesystems - Revisão

Page 26: UNIX® Administração

Gerenciando Filesystems - Revisão

Número Partição Tipo Status Tam. Em Uso Início Fim

Page 27: UNIX® Administração

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

Page 28: UNIX® Administração

Gerenciando Filesystems - Revisão

● mkfs(8) [fs­options] 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

Page 29: UNIX® Administração

Gerenciando Filesystems - Revisão

● fsck(8) [filesys] [­­] [ fs­specific­options ]– 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

Page 30: UNIX® Administração

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”

Page 31: UNIX® Administração

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

Page 32: UNIX® Administração

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.

Page 33: UNIX® Administração

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.

Page 34: UNIX® Administração

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

Page 35: UNIX® Administração

UNIX® Básico - Revisão

Processos

Page 36: UNIX® Administração

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

Page 37: UNIX® Administração

Processos - Revisão

● O comando ps(1)– Informação momentânea do sistema

Page 38: UNIX® Administração

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

Page 39: UNIX® Administração

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

Page 40: UNIX® Administração

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

Page 41: UNIX® Administração

Processos - Revisão

Page 42: UNIX® Administração

Processos - Revisão

● nice(1)● pstree

Page 43: UNIX® Administração

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

Page 44: UNIX® Administração

UNIX® Básico - Revisão

Sinais

Page 45: UNIX® Administração

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)

Page 46: UNIX® Administração

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

Page 47: UNIX® Administração

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

Page 48: UNIX® Administração

UNIX® Básico - Revisão

Shells

Page 49: UNIX® Administração

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

Page 50: UNIX® Administração

UNIX® Básico - Revisão

Editores de Texto

Page 51: UNIX® Administração

Editores de Texto - Revisão

● Diversidade de editores

– vi(1)– ed(1)– joe(1)– pico(1)– nano(1)– mcedit(1)– ee(1)– jed(1)

Page 52: UNIX® Administração

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

Page 53: UNIX® Administração

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)

Page 54: UNIX® Administração

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

Page 55: UNIX® Administração

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

Page 56: UNIX® Administraçã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

Page 57: UNIX® Administração

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

Page 58: UNIX® Administração

UNIX® Básico - Revisão

Devices

Page 59: UNIX® Administração

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

Page 60: UNIX® Administração

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

Page 61: UNIX® Administração

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

Page 62: UNIX® Administração

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

Page 63: UNIX® Administração

Devices - Revisão

Maior Menor

Page 64: UNIX® Administração

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

Page 65: UNIX® Administração

UNIX® Administração

Administração de Software

Page 66: UNIX® Administração

UNIX® Administração

● Instalando pacotes

– rpm (RedHat, Fedora, Mandrake, Conectiva, ...)

– dpkg (Debian, knoppix, Kurumin)

– tar.gz (todos os Unixes que a aplicação suportar)

Page 67: UNIX® Administração

Gerenciadores de pacotes - RPM

● RPM(8)– RPM Package Manager – Padrão desenvolvido pela RedHat

– Capaz:

● Instalar● Remover● Atualizar● Procurar● Verificar

Page 68: UNIX® Administração

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

Page 69: UNIX® Administração

RPM

● Remover

– rpm ­e [­­erase] meta­pacote ...● 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

Page 70: UNIX® Administração

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

Page 71: UNIX® Administração

RPM

● Procurar

– rpm ­q [­­query] meta­pacote ...● 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”

Page 72: UNIX® Administração

RPM

● Verificar

– rpm ­V [­­Verify] meta­pacote ...● Verifica se algum arquivo do pacote original foi alterado

● Opções comuns ao verificar

– a● Todos os pacote instalados

Page 73: UNIX® Administração

DPKG

● dpkg(8)– Padrão desenvolvido pelo Debian

– Capaz:

● Instalar● Remover● Resolver dependências● Atualizar● Procurar● Verificar

Page 74: UNIX® Administração

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/

Page 75: UNIX® Administração

APT

● apt­get(8)– Lista de repositórios:

/etc/apt/sources.list

Page 76: UNIX® Administração

APT

● apt­get 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

Page 77: UNIX® Administração

APT

● apt­get install pacote ...– Instala o pacote– Resolve todas as dependências– Resolve conflitos de versão

Page 78: UNIX® Administração

APT

● apt­get upgrade [­u]– Compara a lista de pacotes disponíveis com lista

de pacotes instalados– Mantém o sistema atualizado– Deve ser executado periodicamente

Page 79: UNIX® Administração

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 pacote­versão● ./configure –opções

– Compilar● make

– Instalar● make install

Page 80: UNIX® Administração

UNIX® Administração

Configuração e Otimização

Page 81: UNIX® Administração

UNIX® Administração

Rede

Page 82: UNIX® Administração

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

Page 83: UNIX® Administração

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

Page 84: UNIX® Administração

Configurando a rede

● RedHat– /etc/sysconfig/network­scripts/– /etc/sysconfig/network

● FreeBSD– /etc/rc.conf

● OpenBSD– /etc/hostname.iface

● Debian– /etc/network/interfaces

● Slackware– /etc/rc.network

Page 85: UNIX® Administração

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

Page 86: UNIX® Administração

Configurando a rede

Page 87: UNIX® Administração

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

Page 88: UNIX® Administração

Resolução de nomes

● /etc/host.conf(5)– Configuração das rotinas de resolução de nome

● Opções comunsorder bind, host, nismulti on

Page 89: UNIX® Administração

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

Page 90: UNIX® Administração

UNIX® Administração

Sistema de Logging

Page 91: UNIX® Administração

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)

Page 92: UNIX® Administração

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

Page 93: UNIX® Administração

Configuração de Logs do Sistema

● Seletor– Facility.priority– Facility.*– Facility,Facility.priority– Facility.=priority– Facility.!priority– Facility.priority– Facility.priority– *.priority– *.=priority– *.!priority

Page 94: UNIX® Administração

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: *

Page 95: UNIX® Administração

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 */

Page 96: UNIX® Administração

Configuração de Logs do Sistema

● Facility

– mail /* mail system */– news /* network news subsystem */– syslog/* msgs internas syslogd */– user /* random user­level msgs */– uucp /* UUCP subsystem */

Page 97: UNIX® Administração

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 */

Page 98: UNIX® Administração

Configuração de Logs do Sistema

● Priority

– alert /* Intervenção imediata */– crit /* Condição crítica */– debug /* Mensagens debug­level */– 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*/

Page 99: UNIX® Administraçã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

Page 100: UNIX® Administração

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

Page 101: UNIX® Administração

UNIX® Administração

Agendamento de tarefas

Page 102: UNIX® Administração

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

Page 103: UNIX® Administração

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

Page 104: UNIX® Administração

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

Page 105: UNIX® Administração

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

Page 106: UNIX® Administração

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

Page 107: UNIX® Administração

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

Page 108: UNIX® Administração

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"

Page 109: UNIX® Administração

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

Page 110: UNIX® Administração

At

● at(1) HORA– Executa comandos no horário especificado

● HORA– HH:MM– + NUMERO UNIDADE­DE­TEMPO

● UNIDADE-DE-TEMPO– minutes, hours, days, or weeks

● Exemplo:– at 17:00

● reboot

Page 111: UNIX® Administração

UNIX® Administração

Otimização

Page 112: UNIX® Administração

UNIX® Administração

System Control

Page 113: UNIX® Administração

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

Page 114: UNIX® Administração

Sysctl – Variáveis do kernel

● Exemplo:

● net.ipv4.ip_forward● net.ipv4.conf.default.rp_filter ● fs.file­max● kernel.ctrl­alt­del● kernel.domainname● kernel.hostname● kernel.panic● net.ipv4.conf.all.send_redirects

Page 115: UNIX® Administração

/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

Page 116: UNIX® Administração

/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

Page 117: UNIX® Administração

/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

Page 118: UNIX® Administração

/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

Page 119: UNIX® Administração

/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

Page 120: UNIX® Administração

UNIX® Administração

Filesystem

Page 121: UNIX® Administração

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

Page 122: UNIX® Administração

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

Page 123: UNIX® Administração

Tune2fs

● Opções comuns (continuação)

­o [^]opções­de­montagem[,...]● Opções defaults de montagem que podem ser

sobrescritas ao executar o comando mount

● Opções de Montagemdebugacljournal_datajournal_data_orderedjournal_data_writebackuid16

Page 124: UNIX® Administração

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

Page 125: UNIX® Administração

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

Page 126: UNIX® Administração

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

Page 127: UNIX® Administração

UNIX® Administração

O Processo de Boot

Page 128: UNIX® Administração

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

Page 129: UNIX® Administração

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

Page 130: UNIX® Administração

Seqüência de boot

Page 131: UNIX® Administração

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

Page 132: UNIX® Administração

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

Page 133: UNIX® Administração

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

Page 134: UNIX® Administração

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

Page 135: UNIX® Administração

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

Page 136: UNIX® Administração

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

Page 137: UNIX® Administração

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

Page 138: UNIX® Administração

Seqüência de boot

● /etc/inittab(5) (continuação)

● Exemplo mais bem elaborado em

– http://jvictor.dyndns.org/linux/inittab-mbe.txt

Page 139: UNIX® Administração

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

Page 140: UNIX® Administração

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

Page 141: UNIX® Administração

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

Page 142: UNIX® Administração

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

Page 143: UNIX® Administração

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

Page 144: UNIX® Administração

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

Page 145: UNIX® Administração

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

Page 146: UNIX® Administração

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

Page 147: UNIX® Administração

Seqüência de boot

● login(8)– checa senha– executa o shell do usuário (definido em /etc/ passwd)

Page 148: UNIX® Administração

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....

Page 149: UNIX® Administração

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

Page 150: UNIX® Administração

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

Page 151: UNIX® Administração

UNIX® Administração

Gereciamento de contasde usuários e grupos

Page 152: UNIX® Administração

UNIX® Administração

Contas de usuários

Page 153: UNIX® Administração

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

Page 154: UNIX® Administração

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

Page 155: UNIX® Administração

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

Page 156: UNIX® Administração

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

Page 157: UNIX® Administração

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

Page 158: UNIX® Administração

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

Page 159: UNIX® Administração

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

Page 160: UNIX® Administração

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

Page 161: UNIX® Administração

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

Page 162: UNIX® Administração

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

Page 163: UNIX® Administração

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

Page 164: UNIX® Administração

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

Page 165: UNIX® Administração

UNIX® Administração

Grupos de usuários

Page 166: UNIX® Administração

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

Page 167: UNIX® Administração

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

Page 168: UNIX® Administração

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

Page 169: UNIX® Administração

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

Page 170: UNIX® Administração

UNIX® Administração

Quotas de disco

Page 171: UNIX® Administração

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

Page 172: UNIX® Administração

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

Page 173: UNIX® Administração

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

Page 174: UNIX® Administração

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

Page 175: UNIX® Administração

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

Page 176: UNIX® Administração

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 /

Page 177: UNIX® Administração

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

Page 178: UNIX® Administração

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

Page 179: UNIX® Administração

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

Page 180: UNIX® Administração

UNIX® Administração

NISNetwork Information NameService

Page 181: UNIX® Administração

NIS

● Padroniza informações compartilhadas pela rede

● Permite compartilhar informações de:

– usuários– grupos– password– redes– hosts

Page 182: UNIX® Administração

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)

Page 183: UNIX® Administração

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

Page 184: UNIX® Administração

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

Page 185: UNIX® Administração

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

Page 186: UNIX® Administração

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

Page 187: UNIX® Administração

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

Page 188: UNIX® Administração

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

Page 189: UNIX® Administração

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

Page 190: UNIX® Administração

UNIX® Administração

NFSNetwork File System

Page 191: UNIX® Administração

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

Page 192: UNIX® Administração

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,)

Page 193: UNIX® Administração

NFS – Configurando o Servidor

● /etc/hosts.deny e /etc/hosts.allow

portmap:ALL

lockd:ALL

mountd:ALL

rquotad:ALL

statd:ALL

Page 194: UNIX® Administração

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

Page 195: UNIX® Administração

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

Page 196: UNIX® Administração

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

Page 197: UNIX® Administração

UNIX® Administração

Compilando o kernel

Page 198: UNIX® Administração

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?

Page 199: UNIX® Administração

Kernel

● Determinando seu hardware

lspci(8)

cat /proc/cpuinfo

● Descompactando os fontes

cd /usr/srctar ­jxvf linux­2.4.26.tar.bz2ln ­s linux­2.4.26 linux

Page 200: UNIX® Administração

Kernel

● Documentação/usr/src/linux/Documentation

● Limpando os fontescd /usr/src/linuxmake mrproper

● Configurandomake configmake menuconfigmake xconfig

Page 201: UNIX® Administração

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

Page 202: UNIX® Administração

Kernel

● Compilando os módulosmake modulesmake modules_install– Os modulos do kernel residem em  /lib/modules/versão­do­kernel

● Após a compilação– copiar a imagem do kernel para /boot com o

nome vmlinuz­versão­do­kernel– copiar System.map para  /boot/System.map­versão­do­kernel

Page 203: UNIX® Administração

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/initrd­2.4.26.img 2.4.26

Page 204: UNIX® Administração

UNIX® Administração

Gerenciador de boot

Page 205: UNIX® Administração

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

Page 206: UNIX® Administração

lilo

● /etc/lilo.conf(5)– Exemplo:

boot = /dev/hda  vga = 0      lba32    image = /boot/vmlinuz­2.4.26  root = /dev/hda2  initrd = /boot/initrd­2.4.26  label = Linux  read­only    

other = /dev/hda4  table = /dev/hda  label = dos

Page 207: UNIX® Administração

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

Page 208: UNIX® Administração

Grub

● /boot/grub/menu.lst(5) (continuação)

boot=/dev/hdadefault=0timeout=10title Red Hat Linux (2.4.26)root (hd0,1)kernel /boot/vmlinuz­2.4.26 ro root=/dev/hda2initrd /boot/initrd­2.4.26.img