Guia de Estudos LPIC 102 - Luciano Antonio Siqueira
Transcript of Guia de Estudos LPIC 102 - Luciano Antonio Siqueira
-
8/14/2019 Guia de Estudos LPIC 102 - Luciano Antonio Siqueira
1/105
Guia de Estudo
LPIC 102por Luciano Antonio Siqueira
Lanado sob os termos daGnu Free Documentation License
-
8/14/2019 Guia de Estudos LPIC 102 - Luciano Antonio Siqueira
2/105
ndiceIntroduo.............................................................................................................................................5
Porque este documento foi escrito?............................................................................................ 5 Quem se Destina..................................................................................................................... 5Verso Atualizada do Guia......................................................................................................... 5Contribuies.............................................................................................................................. 5Informaes de Copyright...........................................................................................................5Pr-requisitos.............................................................................................................................. 6Convenes usadas neste documento......................................................................................... 6
Tpico 105: Kernel...............................................................................................................................7Objetivo 1.105.1: Manipular/Investigar o Kernel e seus Mdulos em Execuo........................... 7
Kernel..........................................................................................................................................7Mdulos do Kernel......................................................................................................................7
Objetivo 1.105.2: Reconfigurar, Compilar e Instalar um Kernel e Mdulos Personalizados......... 9Configurao...............................................................................................................................9
Compilao e Instalao........................................................................................................... 11Tpico 106: Carregamento (Boot), Incio e Trmino do Sistema e Runlevels.................................. 13Objetivo 1.106.1: Carregamento (Boot) do Sistema......................................................................13Objetivo 1.106.2: Alternando Runlevels, Desligando e Reiniciando o Sistema........................... 14
Tpico 107: Impresso....................................................................................................................... 17Objetivo 1.107.2: Instalar Impressoras e Filas de Impresso........................................................ 17
Administrao de Impressoras pela Linha de Comando...........................................................17Arquivos de Configurao do CUPS........................................................................................ 19Filas de Impresso.....................................................................................................................19/etc/printcap...............................................................................................................................20
Objetivo 1.107.3: Imprimindo Arquivos....................................................................................... 20
Objetivo 1.107.4: Impressoras Locais e Remotas..........................................................................20Impresso Remota.....................................................................................................................20Filtros de Impresso..................................................................................................................21
Tpico 108: Documentao................................................................................................................23Objetivo 1.108.1: Usar e Administrar o Sistema Local de Documentao................................... 23
Pginas Manual.........................................................................................................................23Imprimindo Pginas de Manual................................................................................................ 24Pginas Info...............................................................................................................................24Outras Documentaes............................................................................................................. 24
Objetivo 1.108.2: Encontrar Documentao Linux na Internet.....................................................24Objetivo 1.108.5: Informar o Usurio sobre Questes Pertinentes ao Sistema.............................25
Tpico 109: Shells, Script, Programao e Compilao.................................................................... 27Objetivo 1.109.1: Personalizar e Trabalhar no Ambiente Shell.................................................... 27
Variveis................................................................................................................................... 27Funes..................................................................................................................................... 27Arquivos de configurao do bash:...........................................................................................28
Objetivo 1.109.3: Editar e Escrever Scripts Simples.....................................................................29Variveis Especiais................................................................................................................... 29if then else................................................................................................................................. 29Substituio de Comandos........................................................................................................ 31Instrues de Lao.................................................................................................................... 32Local, Propriedade e Permisso................................................................................................33Scripts para Tarefas Administrativas........................................................................................ 33
Tpico 111: Tarefas Administrativas................................................................................................. 35Objetivo 1.111.1: Administrar Contas de Usurio, Grupos e Arquivos de Sistema Relacionados
-
8/14/2019 Guia de Estudos LPIC 102 - Luciano Antonio Siqueira
3/105
....................................................................................................................................................... 35Conta de Usurio.......................................................................................................................35Grupos de Usurios...................................................................................................................38
Objetivo 1.111.2: Ajustar o Ambiente do Usurio e Variveis de Ambiente de Sistema.............40Objetivo 1.111.3: Configurar e Recorrer a Arquivos de log para Corresponder s NecessidadesAdministrativas e de Segurana.....................................................................................................40
Objetivo 1.111.4: Automatizar Tarefas Administrativas de Sistema Agendando Trabalhos paraExecuo Futura............................................................................................................................ 42at................................................................................................................................................42cron............................................................................................................................................42
Objetivo 1.111.5: Manter uma Estratgia Eficiente de Backup de Dados.................................... 43Objetivo 1.111.6: Manuteno de Data e Hora do Sistema...........................................................44
Relgios e Fuso Horrio........................................................................................................... 44NTP Network Time Protocol.................................................................................................45
Tpico 112: Fundamentos de Redes...................................................................................................47Objetivo 1.112.1: Fundamentos de TCP/IP...................................................................................47
Endereo IP...............................................................................................................................47
Endereo de rede, mscara de rede e endereo broadcast.........................................................47Classes de Redes....................................................................................................................... 48Subredes....................................................................................................................................48IPv4 e IPv6................................................................................................................................50Protocolos de rede.....................................................................................................................50Portas TCP e UDP.....................................................................................................................51Rotas de Endereos...................................................................................................................52
Objetivo 1.112.3: Configurao e Resoluo de Problemas de Redes TCP/IP.............................54Arquivos de configurao......................................................................................................... 54Configurao da interface......................................................................................................... 55Configurao de Rotas..............................................................................................................55Clientes DHCP..........................................................................................................................56Comandos de Configurao e Inspeo.................................................................................... 56
Objetivo 1.112.4: Configurar o Linux como um Cliente PPP.......................................................58Tpico 113: Servios de Rede............................................................................................................61
Objetivo 1.113.1: Configurar e Administrar o inetd, xinetd e Servios Relacionados..................61O daemon inetd.........................................................................................................................61O daemon xinetd.......................................................................................................................62Configurao de Servios......................................................................................................... 62Controle de Pedidos.................................................................................................................. 63
Objetivo 1.113.2: Operao e Configurao Fundamental de MTA.............................................64
sendmail.................................................................................................................................... 64Objetivo 1.113.3: Operao e Configurao Fundamental do Apache......................................... 65Objetivo 1.113.4: Administrao Apropriada dos Daemons NFS e SAMBA...............................66
NFS........................................................................................................................................... 66SAMBA.................................................................................................................................... 67
Objetivo 1.113.5: Configurar um Servio Bsico de DNS............................................................69DNS...........................................................................................................................................69Servidor DNS............................................................................................................................69Cliente DNS..............................................................................................................................70Registro de Domnios................................................................................................................70
Objetivo 1.113.7: Utilizao do Shell Seguro (OpenSSH)............................................................70
Tpico 114: Segurana....................................................................................................................... 73Objetivo 1.114.1: Tarefas Administrativas de Segurana............................................................. 73TCP wrappers............................................................................................................................73
-
8/14/2019 Guia de Estudos LPIC 102 - Luciano Antonio Siqueira
4/105
SUID/SGID...............................................................................................................................74Verificao de pacotes.............................................................................................................. 75Senhas....................................................................................................................................... 75Atualizao de programas.........................................................................................................77Filtragem de Pacotes iptables.................................................................................................78Exemplo de criao de firewall simples................................................................................... 79
Verificando portas abertas no sistema...................................................................................... 80Objetivo 1.114.2: Segurana do Host............................................................................................ 81syslog........................................................................................................................................ 81Sistema de senhas shadow........................................................................................................ 82Desativando servios de rede....................................................................................................82
Objetivo 1.114.3: Segurana a Nvel de Usurio...........................................................................82Apndice 1..........................................................................................................................................85
Objetivos detalhados para o exame 102........................................................................................ 85Exam 102: Detailed Objectives..................................................................................................... 85
Topic 105: Kernel..................................................................................................................... 85Topic 106: Topic 106 Boot, Initialization, Shutdown and Runlevels.......................................86
Topic 107: Printing................................................................................................................... 87Topic 108: Documentation........................................................................................................88Topic 109: Shells, Scripting, Programming and Compiling.....................................................89Topic 111: Administrative Tasks..............................................................................................90Topic 112: Networking Fundamentals......................................................................................92Topic 113: Networking Services...............................................................................................94Topic 114: Security...................................................................................................................96
Apndice 2..........................................................................................................................................99GNU Free Documentation License................................................................................................99
-
8/14/2019 Guia de Estudos LPIC 102 - Luciano Antonio Siqueira
5/105
Introduo
Porque este documento foi escrito?
Este material foi escrito quando da minha prpria preparao para os exames da certificao LPInvel 1. Depois de terminado, considerei que poderia ser til para outras pessoas que buscam acertificao e sentem falta de material especfico em portugus. O exame para obteno docertificado dividido em duas provas, 101 e 102. Este volume especfico para a prova 102 e foiescrito tendo como referncia os objetivos detalhados para prova 102 fornecidos pelo prprio LPI.A lista dos objetivos detalhados para o exame 102 pode ser conferida no primeiro apndice do
presente volume. Mais informaes sobre o LPI e suas certificaes em http://www.lpi.org/.
Todo material contido neste guia foi basicamente retirado de HOWTOs, pginas de manual deprogramas e demais documentos disponveis atravs do Linux Documentation Project. Outraimportante fonte foi o livroLinux System Administration 2, lanado pelo LinuxIT, disponvel emhttp://savannah.nongnu.org/projects/lpi-manuals/ .
Quem se Destina
O presente material destina-se todos que desejam obter a certificao Linux LPI nvel 1. Noentanto, o guia tambm poder ser til a quem no pretende obter a certificao, mas interessa-seem aprofundar seus conhecimentos em administrao de sistemas GNU/Linux.
Verso Atualizada do Guia
Verses atualizadas deste guia podem ser obtidas em http://lcnsqr.byethost15.com/ .
Contribuies
Todos leitores so convidados a contribuir para o guia. Sugestes para aprofundar os tpicos eexerccios para cada objetivo sero muito bem vindos.
Caso identifique informaes incorretas, erros de ortografia ou outros equvocos, informe o autor:
Informaes de CopyrightCopyright (c) Luciano Antonio Siqueira.
Permission is granted to copy, distribute and/or modify this documentunder the terms of the GNU Free Documentation License, Version 1.2or any later version published by the Free Software Foundation;with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts.A copy of the license is included in the section entitled "GNUFree Documentation License".
Leia The GNU Manifesto se voc quiser saber porqu essa licena foi escolhida para esse material.
O guia foi escrito com todo esforo para garantir a confiabilidade das informaes contidas. Noentanto, as informaes aqui contidas so oferecidas sem qualquer garantia, expressa ou implcita.O responsvel pelo material aqui apresentado no se responsabiliza por possveis danos causados ou
alegao do gnero em relao este livro. Tampouco a leitura deste guia garantia de sucesso naobteno da certificao LPI nvel 1.
5
http://www.lpi.org/http://www.tldp.org/http://savannah.nongnu.org/projects/lpi-manuals/http://lcnsqr.byethost15.com/mailto:lcnsqr%20em%20yahooEcomEbrmailto:lcnsqr%20em%20yahooEcomEbrmailto:lcnsqr%20em%20yahooEcomEbrmailto:lcnsqr%20em%20yahooEcomEbrhttp://www.gnu.org/gnu/manifesto.htmlhttp://www.tldp.org/http://savannah.nongnu.org/projects/lpi-manuals/http://lcnsqr.byethost15.com/mailto:lcnsqr%20em%20yahooEcomEbrhttp://www.gnu.org/gnu/manifesto.htmlhttp://www.lpi.org/ -
8/14/2019 Guia de Estudos LPIC 102 - Luciano Antonio Siqueira
6/105
Introduo
Os logotipos, marcas registradas e smbolos usados neste livro so de propriedade de seusrespectivos proprietrios.
Pr-requisitos
Para melhor utilizao deste guia, presume-se que o leitor j esteja familiarizado com o sistemaGNU/Linux. Portanto, os assuntos so abordados de maneira direta, com objetivo de serem apenasreferncia rpida para posterior estudo e exerccio mais aprofundados. O material foi escrito etestado num computador rodandoLinux Slackware 10.2.
Convenes usadas neste documento
Comandos, opes de comandos, caminhos para arquivos/diretrios, sadas de programas einformaes entradas ou tiradas de telas de terminal em geral so apresentados com fonte detamanho fixo:
Exemplo de tabela de rotas mostradas com o comando route:
Kernel IP routing tableDestination Gateway Genmask Flags Metric Ref Use Iface200.228.60.0 0.0.0.0 255.255.255.0 U 0 0 0 eth0127.0.0.0 0.0.0.0 255.0.0.0 U 0 0 0 lo0.0.0.0 200.228.60.1 0.0.0.0 UG 0 0 0 eth0
Argumentos de comandos so geralmente mostrados em itlico, significando que devem sersubstitudos por valor apropriado:
shutdown[opo] horrio [mensagem]
Tambm so mostrados em itlico nomes e termos especficos ao tema:Projetos GNU geralmente incluem documentaes comoFAQ,Readme, ChangeLoge Guia deusurio/administrador. Podem estar no formatoASCII,HTML,LateXoupostscript. Estes arquivos
podem ser encontrados em /usr/share/doc, em diretrios correspondentes aos programas.
Termos em negrito so usados quando introduzidos ou muito relevantes para o assunto:
Uma conta de usurio pode ser apagada com o comando userdel. A opo -r assegura que odiretrio pessoal do usurio tambm seja apagado.
6
-
8/14/2019 Guia de Estudos LPIC 102 - Luciano Antonio Siqueira
7/105
Tpico 105: Kernel
Objetivo 1.105.1: Manipular/Investigar o Kernel e seus
Mdulos em ExecuoPeso: 4
Kernel
OKernel o ncleo do sistema, responsvel pela comunicao entre os programas e as instruesde baixo nvel (basicamente hardware) do sistema. O comando uname utilizado para retornarinformaes a respeito do kernel do sistema. Quando usado apenas com a opo -a retorna todas asinformaes sobre o kernel, na seguinte ordem:
1. NOME-DO-KERNEL
2. NODENAME (nome do host)
3. RELEASE-DO-KERNEL
4. VERSO-DO-KERNEL
5. MQUINA
6. PROCESSADOR
7. PLATAFORMA-DE-HARDWARE
8. SISTEMA-OPERACIONAL
Demais opes do uname:
-i Plataforma de Hardware
-m Hardware da mquina
-n Nome do Host (nodename)
-p Processador
-o Sistema Operacional
-r Release do Kernel
-s Nome do Kernel-v Verso do Kernel
Exemplo de sada do comando uname -a:
$ uname -aLinux slack102 2.6.13 #1 SMP Thu Mar 23 01:57:38 BRT 2006 i686 unknown unknownGNU/Linux
Mdulos do Kernel
Funes especializadas do kernel podem existir na forma de mdulos externos. Mdulos soarmazenados em /lib/modules/x.x.xx/(onde x.x.xx o release do kernel do sistema) e
7
-
8/14/2019 Guia de Estudos LPIC 102 - Luciano Antonio Siqueira
8/105
Tpico 105: Kernel
so carregados e descarregados dinamicamente atravs dos comandosmodprobe ou insmod.Mesmo o comando sendo insmod ainda aceito, o comando padro para manejo de mdulos nasverses mais recentes do kernel o modprobe.
A diferena entre os dois comandos que modprobe carrega o mdulo especificado e os mdulosdos quais depende, conforme listados no arquivo /lib/modules/x.x.xx/modules.dep, einsmod carrega o mdulo sem verificar as dependncias. O arquivo modules.dep armazena asdependncias de cada mdulo e gerado ou atualizado pelo comando depmod -a. Essa tarefa
pode ser realizada manualmente, mas se forem detectados novos mdulos durante o carregamentodo sistema, depmod -a ser executado automaticamente.
O comando lsmodlista os mdulos carregados. Mdulos marcados com (autoclean) podem serdescarregados com o comando modprobe -ra ou rmmod -a. Mdulos marcados com (unused)
podero ser removidos se seus respectivos nomes forem fornecidos como argumento paramodprobe -r ou rmmod. Os demais mdulos esto em uso e no recomendado seu
descarregamento.Exemplo de lista de mdulos carregados:
# lsmodModule Size Used bysnd_pcm_oss 49696 0snd_mixer_oss 18560 2 snd_pcm_ossehci_hcd 30472 0sis900 20352 0ohci_hcd 20356 0snd_cmipci 32800 1gameport 13448 1 snd_cmipcisnd_pcm 84100 2 snd_pcm_oss,snd_cmipcisnd_page_alloc 9608 1 snd_pcmsnd_opl3_lib 10240 1 snd_cmipcisnd_timer 22788 2 snd_pcm,snd_opl3_libsnd_hwdep 8480 1 snd_opl3_libsnd_mpu401_uart 7424 1 snd_cmipcisnd_rawmidi 21792 1 snd_mpu401_uartsnd_seq_device 7948 2 snd_opl3_lib,snd_rawmidisnd 48100 10 snd_pcm_oss,snd_mixer_oss,snd_cmipci,snd_pcm,snd_opl3_lib,snd_timer,snd_hwdep,snd_mpu401_uart,snd_rawmidi,snd_seq_device
O comando modinfo retorna a descrio, autor, licena e parmetros para o mdulo solicitado.Tendo como argumento apenas o nome do mdulo, retorna todas as informaes disponveis:
Informaes do mdulo gameport
# modinfo gameportfilename: /lib/modules/2.6.13/kernel/drivers/input/gameport/gameport.koauthor: Vojtech Pavlik description: Generic gameport layerlicense: GPLvermagic: 2.6.13 SMP preempt PENTIUMIII gcc-3.3depends:
As opes -l e -p mostram, respectivamente, as informaes de licena e parmetros aceitveispara o mdulo solicitado.
Licena do mdulo sis900:
8
-
8/14/2019 Guia de Estudos LPIC 102 - Luciano Antonio Siqueira
9/105
Tpico 105: Kernel
# modinfo -l sis900GPL
Parmetros aceitveis pelo mdulo sis900:
# modinfo -p sis900multicast_filter_limit:SiS 900/7016 maximum number of filtered multicastaddressesmax_interrupt_work:SiS 900/7016 maximum events handled per interruptsis900_debug:SiS 900/7016 bitmapped debugging message level
Para modificar os valores padro de parmetros, basta indic-los quando carregando os mduloscomo modprobe ou insmod:
# modprobe sis900 multicast_filter_limit=valor
Mas o mais comum que os mdulos sejam carregados automaticamente pelo sistema. Por isso, osparmetros podem ser armazenados no arquivo /etc/modules.conf. O mesmo parmetro do
exemplo poderia estar em /etc/modules.conf na forma:options sis900 multicast_filter_limit=valor
Tambm atravs do arquivo /etc/modules.conf possvel criaraliases (cognomes) paramdulos, de forma que possam ser invocados usando um nome convencional. Exemplo de aliasesem /etc/modules.conf:
alias eth0 sis900alias sound-slot-0 snd_cmipci
Aliases e opes tambm podem ser definidos da mesma forma no arquivo/etc/modprobe.conf. Atravs deste arquivo, tambm possvel definir as aes para eventosde carregamento e descarregamento de mdulos, como a execuo de um programa.
Exemplo: Quando solicitado a carregarsis900, carregartun e s depois sis900:
install sis900 modprobe tun; modprobe --ignore-install sis900
A opo --ignore-install necessria para que o modprobe no execute novamente alinha install referente sis900 em /etc/modprobe.conf. possvel usar o mesmo
procedimento quando do descarregamento de mdulos:remove sis900 modprobe --ignore-remove -r sis900; modprobe -r tun
Dessa vez, a opo --ignore-remove aparece para impedir a execuo cclica da linha removereferente ao mdulo sis900 em /etc/modprobe.conf.
Objetivo 1.105.2: Reconfigurar, Compilar e Instalar umKernel e Mdulos Personalizados.Peso: 3
Configurao
O local padro de armazenamento do cdigo fonte do kernel /usr/src/linux, que um linksimblico para /usr/src/linux-x.x.xx/ (onde x.x.xx o release do kernel). Existe mais
de uma interface para configurar o kernel, e todas elas desempenham a mesma funo. As
9
-
8/14/2019 Guia de Estudos LPIC 102 - Luciano Antonio Siqueira
10/105
Tpico 105: Kernel
interfaces de configurao so invocadas atravs do comando make:
make config
Interface em linha de comando. feita uma sequncia de perguntas (bastante extensa) sobre
cada aspecto da configurao.make menuconfig
Interface de menus ncurses.
make xconfig
Interface grfica X, utilizando a biblioteca QT.
make gconfig
Interface grfica X, utilizando a biblioteca Gtk.
make oldconfig
Usa as configurao anteriores como ponto de partida para uma nova configurao.Enquanto que alguns recursos precisam ser compilados como estticos (embutidos no kernel), amaioria pode ser compilada como dinmico (mdulo). O item marcado com asterisco (*) sercompilado como esttico e o item marcado com a letra M ser compilado como mdulo. Itensdeixados em branco no sero compilados. Espaos de escolha [ ] indicam que o item s poderser compilado como esttico e espaos de escolha < > indicam que o item poder ser compiladotanto como esttico quanto mdulo.
A configurao do kernel est dividida nos eixos principais:
Code maturity level options
Mostrar ou no recursos considerados instveis
General setup
Caractersticas gerais do kernel. possvel incluir um termo de verso para o kernelpersonalizado
Loadable module support
Suporte ao sistema de mdulos e define algumas caractersticas.
Processor type and features
Indica o tipo de processador que o kernel utilizar e recursos como multiprocessamento.Power management options (ACPI, APM)
Opes relativas ao controle de energia. Indicado especialmente para laptops
Bus options (PCI, PCMCIA, EISA, MCA, ISA)
Suporte para os diferentes tipos de barramentos
Executable file formats
Tipos de arquivos que o sistema ser capaz de executar
Networking
Suporte e configurao dos diferentes tipos de plataformas de rede
10
-
8/14/2019 Guia de Estudos LPIC 102 - Luciano Antonio Siqueira
11/105
-
8/14/2019 Guia de Estudos LPIC 102 - Luciano Antonio Siqueira
12/105
-
8/14/2019 Guia de Estudos LPIC 102 - Luciano Antonio Siqueira
13/105
Tpico 106: Carregamento (Boot), Incio eTrmino do Sistema e Runlevels
Objetivo 1.106.1: Carregamento (Boot) do SistemaPeso: 3
Antes de carregar o kernel, oLILO apresenta um prompt no qual possvel alterar ocomportamento padro de carregamento do sistema. Esse prompt aparece na forma:boot:
Onde possvel indicar o kernel a carregar, passar parmetros de configurao e alterar o runlevelinicial.
Parmetros so passados no formato item=valor. Exemplo de itens:
acpi liga/Desliga suporte a ACPI
init Programa para executar no lugar de /sbin/init
mem Montante de memria RAM do sistema
root Especificar o dispositivo raiz
Outras opes no precisam de parmetros, por exemplo:
noinitrd No carrega o ramdiskinicial
ro Monta o dispositivo como somente leitura
Carregar o kernel linux, indicando /dev/hda3 como dispositivo raiz, sem ramdisk inicial esomente leitura
boot: linux root=/dev/hda3 noinitrd ro
Dessa mesma forma, possvel passar parmetros para os mdulos compilados estaticamente nokernel. Para que os parmetros sejam automaticamente passados em todo boot, eles podem serincludos na instruo append no arquivo /etc/lilo.conf. O lilo dever ento serreinstalado. Para os mdulos externos, parmetros so passados diretamente pelo comandomodprobe/insmod ou podem constar nos arquivos /etc/modules.conf ou/etc/modprobe.conf.
Outra possibilidade de uso do prompt de boot alterar o runlevelinicial do sistema. Os valoresaceitos so s, single, S, 1, 2, 3, 4, 5. Exemplo:
Iniciar o sistema em modo de usurio nico (Single user)
boot: linux S
Se nenhum parmetro for passado, o runlevel inicial ser o especificado em /etc/inittab.
Para inspecionar o processo de inicilizao do sistema, usado o comando dmesg. As mensagensdo carregamento so armazenadas em /var/log/dmesg, mensagens do kernel podem serchecadas atravs do arquivo /var/log/messages.
13
-
8/14/2019 Guia de Estudos LPIC 102 - Luciano Antonio Siqueira
14/105
Tpico 106: Carregamento (Boot), Incio e Trmino do Sistema e Runlevels
Objetivo 1.106.2: Alternando Runlevels, Desligando eReiniciando o Sistema
Peso: 3Runlevels (nveis de execuo do sistema) so numerados de 0 a 6 e suas funes podem variar deuma distribuio para outra. Via de regra o prprio arquivo /etc/inittab, que define osrunlevels, traz tambm informaes a respeito de cada um.
Formato de entrada em /etc/initttab:
id:runlevels:ao:processo| | | || | | `--> O comando a ser acionado| | || | `--> O tipo da ao a ser tomada| || `--> Lista dos runlevels para os quais a| ao da entrada dever ser executada|`--> Nome de at 4 caracteres para identificar
a entrada no inittab
Os tipos mais comuns para ao so:
sysinit Processo executado durante o boot do sistema
wait O processo ser executado e init aguardar seu trmino
ctrlaltdel O processo ser executado quando o init receber o sinal SIGINT, o
que significa que as teclas Ctrl+Alt+Delforam pressionas no console.
Trecho exemplo de /etc/inittab:
# System initialization (runs when system boots).si:S:sysinit:/etc/rc.d/rc.S# Script to run when going single user (runlevel 1).su:1S:wait:/etc/rc.d/rc.K# Script to run when going multi user.rc:2345:wait:/etc/rc.d/rc.M
Na maioria dos casos, os runlevels so assim definidos:
0 Desligar o sistema1 Usurio nico (super usurio)
2 Multiusurio sem servios de rede
3 Multiusurio com servios de rede
4 Livre (no definido)
5 Multiusurio, servios de rede e login grfico
6 Reiniciar o sistema
Os nicos runlevels comuns toda distribuio Linux so 0, 1 e 6. O runlevel padro definido no/etc/inittab, na entrada:
14
-
8/14/2019 Guia de Estudos LPIC 102 - Luciano Antonio Siqueira
15/105
Tpico 106: Carregamento (Boot), Incio e Trmino do Sistema e Runlevels
id:x:initdefault
Onde x o nmero do runlevel padro ao iniciar o sistema. Esse nmero jamais pode ser0 ou 6,por razes bvias.
O programa que realiza o procedimento de incio e troca de um runlevel /sbin/init. O init o primeiro programa disparado aps kernel acessar o dispositivo raiz, portanto oPID de initser sempre 1.
Para alternar de runlevel, usa-se o prprio init ou o comando telinit, fornecendo comoargumento o nmero do runlevel desejado. O comando runlevel mostra dois nmeros, o
primeiro mostra o runlevel anterior e o segundo o runlevel atual.
Para desligar ou reiniciar o sistema, o comando shutdown oferece mais funcionalidades. Todos osusurios no sistema so notificados e novos logins so bloqueados. Todos os processos recebem osinal SIGTERM seguido de SIGKILL antes do sistema desligar ou alternar o runlevel. O padro,caso no sejam usadas as opes -h ou -r que o sistema alterne para runlevel 1.
shutdown[opo] horrio [mensagem]
Apenas o argumento horrio obrigatrio. Ele indica quando efetuar a ao requisitada e seuformato pode ser:
hh:mm (horrio para execuo)
+m (minutos restantes)
now ou +0 (imediatamente)
Algumas das opes mais usadas:
-a Usar o arquivo de permisso /etc/shutdown.allow-r Reiniciar a mquina
-h Desligar a mquina
-tsegundos Tempo de espera antes do shutdown executar a ao solicitada.
O argumento mensagem ser o aviso enviado a todos usurios no sistema.
Para impedir que qualquer usurio reinicie a mquina apertando Ctrl+Alt+Del, a opo -a deveconstar para o comando shutdown referente a ao ctrlaltdel em /etc/inittab e osusurio liberados para realizar a ao devem constar no arquivo /etc/shutdown.allow.
15
-
8/14/2019 Guia de Estudos LPIC 102 - Luciano Antonio Siqueira
16/105
-
8/14/2019 Guia de Estudos LPIC 102 - Luciano Antonio Siqueira
17/105
Tpico 107: Impresso
Objetivo 1.107.2: Instalar Impressoras e Filas de Impresso
Peso: 1O sistema impresso mais comum em Linux o CUPS (Common Unix Printing System). O CUPS
prov controle sobre impressoras, filas de impresso, impresso remota e compatibilidade com asferramentas do sistema lpd. A configurao do CUPS pode ser feita atravs da linha de comando ouatravs de uma interface WEB, em http://localhost:631/. Para configurao e uso do CUPS, fundamental que o servidor de impresso (daemon /usr/sbin/cupsd) esteja ativo. A maioriadas distribuies inicia o servidor de impresso no boot do sistema.
Administrao de Impressoras pela Linha de Comando
O comando lpinfo usado para obter uma lista dos dispositivos de impresso e modelos deimpressoras disponveis.
Listando dispositivos disponveis:
# lpinfo -vnetwork socketnetwork httpnetwork ippnetwork lpddirect canon:/dev/lp0direct epson:/dev/lp0direct parallel:/dev/lp0
direct scsiserial serial:/dev/ttyS0?baud=115200serial serial:/dev/ttyS1?baud=115200serial serial:/dev/ttyS2?baud=115200serial serial:/dev/ttyS3?baud=115200direct usb:/dev/usb/lp0direct usb:/dev/usb/lp1direct usb:/dev/usb/lp2(...)
A primeira palavra da lista identifica o tipo do dispositivo. Para impressoras locais, importanteque o mdulo do respectivo dispositivo esteja carregado (porta paralela, usb, etc).
Listando Modelos de Impressoras Disponveis:
17
-
8/14/2019 Guia de Estudos LPIC 102 - Luciano Antonio Siqueira
18/105
-
8/14/2019 Guia de Estudos LPIC 102 - Luciano Antonio Siqueira
19/105
Tpico 107: Impresso
# lpadmin -p HP_DeskJet_600 -E -v parallel:/dev/lp0 -D "HP DeskJet 600" \-L "Impressora Local" -m foomatic-ppds/HP/HP-DeskJet_600-hpijs.ppd.gz
A impressora foi adicionada com suas opes padro (tamanho da folha, qualidade de impresso,etc). Para alterar esse valores, usa-se o comando lpoptions.
Listar as opes possveis para a impressora recm instalada:
# lpoptions -p HP_DeskJet_600 -lPageSize/Page Size: Custom Letter *A4 Photo PhotoTearOff 3x5 5x8 A5 A6A6TearOff B5JIS Env10 EnvC5 EnvC6 EnvDL EnvISOB5 EnvMonarch Executive FLSAHagaki Legal Oufuku w558h774 w612h935PageRegion/PageRegion: Letter A4 Photo PhotoTearOff 3x5 5x8 A5 A6 A6TearOffB5JIS Env10 EnvC5 EnvC6 EnvDL EnvISOB5 EnvMonarch Executive FLSA Hagaki LegalOufuku w558h774 w612h935PrintoutMode/Printout Mode: Draft Draft.Gray *Normal Normal.Gray High.GrayQuality/Resolution, Quality, Ink Type, Media Type: *FromPrintoutMode300ColorCMYK 300DraftColorCMYK 300DraftGrayscaleCMYK 300GrayscaleCMYK
600x300BestGrayscaleCMYK
Definir a opo PrintoutMode como Draft:
# lpoptions -p HP_DeskJet_600 -o PrintoutMode=Draft
Para remover a impressora:
# lpadmin -x HP_DeskJet_600
O estado das impressoras e filas pode ser checado com o comando lpstat -a. Para ativar aimpressora, so utilizados os comandos /usr/bin/enable ou /usr/sbin/accept.
Arquivos de Configurao do CUPSOs arquivos de configurao do CUPS encontram-se em /etc/cups/:
classes.conf
Define as classes para as impressoras locais.
cupsd.conf
Configuraes do daemon cupsd
mime.convs
Define os filtros disponveis para converso de formatos de arquivos
mime.types
Define os tipos de arquivos conhecidos
printers.conf
Define as impressoras locais disponveis
lpoptions
Configuraes especficas para cada impressora
19
-
8/14/2019 Guia de Estudos LPIC 102 - Luciano Antonio Siqueira
20/105
Tpico 107: Impresso
Filas de Impresso
Fila de impresso o diretrio temporrio onde ficam os trabalhos antes de serem impressos. Porpadro, a fila no sistema lpd /var/spool/lpd/ e no CUPS /var/spool/cups/.
O comando lpc (em desuso) um utilitrio interativo de controle de fila de impresso. Atravsdele possvel bloquear/liberar filas e impressoras e alterar a seqncia de impresso de trabalhos.
Para apenas listar os trabalhos numa fila de impresso, usado o comando lpq.
/etc/printcap
O arquivo /etc/printcap o principal arquivo de configurao do antigo sistema lpde defineas filas de impresso disponveis no sistema e suas caractersticas. Este arquivo gerado pelo CUPS
para manter a compatibilidade com o sistema antecessor. Cada definio de impressora feita emuma linha e os campos de configurao so delimitados por :. O primeiro nome, na primeira
coluna do arquivo, indica o nome da impressora. possvel criaraliases para a impressora,separados por barra vertical |. Os demais campos so parmetros de controle da impressora.
Exemplo de /etc/printcap:
HP_DeskJet_600|HP DeskJet 600:rm=localhost:rp=HP_DeskJet_600:
Objetivo 1.107.3: Imprimindo ArquivosPeso: 1
A maioria dos aplicativos j imprime diretamente no formato compatvel para impresso
(PostScript). Porm, tambm possvel converter manualmente o arquivo para o formatopostscript. Um dos programas usados para essa tarefa o a2ps. Dessa forma, possvel ter umcontrole maior sobre o resultado final da impresso.
O comando lpr envia o documento indicado para a fila de impresso. Opes comuns so -Pxxx,envia o arquivo para a fila xxx, -#x, imprime o documentos x vezes e -s, que no copia odocumento para a fila de impresso, mas cria um link simblico na mesma.
Para listar os trabalhos numa fila de impresso, usado o comando lpq.lpq -a mostra ostrabalhos em todas as filas do sistema. lpq -P mostra os trabalhos no host especificado. A cadatrabalho associado um nmero. Esse nmero pode ser usado pelo comando lprmpara cancelar
um trabalho na fila de impresso. O comando lprm sem argumentos ir cancelar o ltimo trabalhoenviado. Informando o nome de um usurio como argumento cancelar todos os trabalhos deimpresso deste usurio na fila. Para cancelar todos os trabalhos, lprm -a ou lprm -.
Objetivo 1.107.4: Impressoras Locais e RemotasPeso: 1
Impresso Remota
Impressoras instaladas e configuradas na mquina local podero estar disponveis para outras
mquinas na rede automaticamente. Para tanto, basta especificar no host da impressora a rede da
20
-
8/14/2019 Guia de Estudos LPIC 102 - Luciano Antonio Siqueira
21/105
Tpico 107: Impresso
qual aceitar pedidos e no(s) terminal(is) , o host da impressora.
Supondo ser o host da impressoraslack102 e a rede na qual compartilhar a impressora192.168.1.0/24, a configurao pode ser feita da seguinte forma:
No host da impressora, no arquivo /etc/cups/cupsd.confOrder Deny,AllowDeny From AllAllow From 127.0.0.1
Allow From 192.168.1.0/24 # Liberar para a rede 192.168.1.0/24
No(s) terminal(is), no arquivo /etc/cups/client.conf
ServerName slack102 # host da impressora necessrio reiniciar o daemon cupsd para utilizar as novas configuraes. A impressora remota
pode ser verificada no terminal com o comando lpstat -a:
# lpstat -aHP_DeskJet_600 accepting requests since Jan 01 00:00
Para que os documentos sejam automaticamente impressos nessa impressora, esta tornada padrocom o comando:lpoptions -d HP_DeskJet_600
Atravs do sistema SAMBA, possvel imprimir com uma impressora num host MS-Windows.
Para faz-lo, ao adicionar uma impressora o dispositivo escolhido dever ser Windows Printer viaSAMBA e a URIsmb://servidor/impressora , substituindo pelos valores apropriados. Se o servidorexigir autenticao, a URI dever ser smb://usurio:senha@grupo/servidor/impressora .
Filtros de Impresso
Mesmo que arquivos sejam mandados sem terem sido convertidos para impresso, possvel usarfiltros para realizar essa tarefa. A identificao do tipo de arquivos feita consultando o arquivo/etc/cups/mime.types. Identificado o tipo do arquivo, a ferramenta de converso adequada indicada atravs do arquivo /etc/cups/mime.convs, tornando-o apto para converso.
21
-
8/14/2019 Guia de Estudos LPIC 102 - Luciano Antonio Siqueira
22/105
-
8/14/2019 Guia de Estudos LPIC 102 - Luciano Antonio Siqueira
23/105
Tpico 108: Documentao
Objetivo 1.108.1: Usar e Administrar o Sistema Local de
DocumentaoPeso: 4
Pginas Manual
Praticamente todos os comandos e arquivos de configurao no Linux tm uma pgina manual, quedemonstra de maneira detalhada as funes e como usar o item em questo. Para ver uma pginamanual, basta usar o comandoman tendo o comando/arquivo como argumento.
Em sua maioria, as pginas manual tm a seguinte organizao:
NomeAssunto da pgina manual seguido por uma descrio breve.
Sinopse
A sintaxe do comando
Descrio
Descrio detalhada
Opes
Reviso de todas as opes e suas funes
ArquivosArquivos relacionados ao assunto
Vejatambm
Outras pginas de manual relacionadas ao tpico
possvel buscar por ocorrncias de um termo na seo nome das pginas manual atravs docomando apropos, retornando a descrio breve para cada ocorrncia:
$ apropos pop3Net::POP3 (3) - Post Office Protocol 3 Client class (RFC1939)getmail (1) - retrieve mail from one or more POP3 accounts
popa3d (8) - Post Office Protocol (POP3) server
O banco de dados do comando whatis armazena a seo nome das pginas manual do sistema. Obanco de dados geralmente atualizado por um agendamento cron. Um recurso fornecido comoargumento para whatis retorna a descrio breve para o mesmo:
$ whatis manman (1) - format and display the on-line manual pagesman (7) - macros to format man pagesman.conf [man] (5) - configuration data for man
Os nmeros entre parnteses referem-se seo a qual pertence a pgina manual.
Definio das sees:
23
-
8/14/2019 Guia de Estudos LPIC 102 - Luciano Antonio Siqueira
24/105
Tpico 108: Documentao
Seo 1 Programas disponveis ao usurio
Seo 2 Rotinas de Sistema Unix e C
Seo 3 Rotinas de bibliotecas C
Seo 4 Arquivos especiais (dispositivos em /dev)Seo 5 Convenes e formatos de arquivos
Seo 6 Jogos
Seo 7 Diversos (macros textuais, etc)
Seo 8 Procedimentos Administrativos (daemons, etc)
Para acessar um item em uma seo especfica, o nmero da seo precede o nome do item.
Acessar o manual do recurso man na seo 7:
$ man 7 manPor padro, as pginas manual geralmente so armazenadas em /usr/man e /usr/share/man,em subdiretrios correspondentes seo. Outros locais podem ser especificados atravs davarivel MANPATH, definida no arquivo de configurao do man/usr/lib/man.conf ou/etc/man.conf.
Imprimindo Pginas de Manual
Pginas manual podem ser impressas como texto sem formatao direcionando a sada do comandoman para um arquivo ou comando de impresso.
Para no perder a formatao, a pgina pode ser convertida usando o comando groff:Gravando o manual de find para um arquivo postscript:
$ zcat /usr/man/man1/find.1.gz | groff -man -Tps > find.ps
Para imprimir diretamente:
$ zcat /usr/man/man1/find.1.gz | groff -man -Tps | lpr
Pginas Info
Formato alternativo ao das pginas manual. So acessveis atravs do comando info. Em geral,informaes disponveis em pginas info tambm esto disponveis em pginas manual, porm deforma menos detalhada.
Por padro so armazenadas em /usr/share/info.
Outras Documentaes
Projetos GNU geralmente incluem documentaes comoFAQ,Readme, ChangeLoge Guia deusurio/administrador. Podem estar no formatoASCII,HTML,LateXoupostscript. Estes arquivos
podem ser encontrados em /usr/share/doc, em diretrios correspondentes aos programas.
24
-
8/14/2019 Guia de Estudos LPIC 102 - Luciano Antonio Siqueira
25/105
Tpico 108: Documentao
Objetivo 1.108.2: Encontrar Documentao Linux na InternetPeso: 3
O LDP Linux Documentation Project- http://www.tldp.org fornece documentos detalhadossobre muitas tarefas. Os documentos esto organizados na forma de HOWTOs (receitas passo-a-
passo) e guias, que abordam temas de forma mais abrangente e aprofundada. H tambm links paraartigos sazonais.
Respostas para perguntas recorrentes podem ser encontradas e novos questionamentos podem serfeitos em sites de fruns e em newsgroups. Um site com fruns diversos e voltados para tpicosespecficos http://www.linuxquestions.org/. Newsgroups podem ser acessados atravs do GoogleGroups http://groups.google.com/. Os grupos tradicionais para discusso de Linux so os derivadosdo comp.os.linux.*.
Como cada distribuio tem suas particularidades, os respectivos sites fornecem documentao degrande valia, sobre administrao, configurao e uso de cada aspecto do sistema. Tambm os sitesdos desenvolvedores de programas costumam fornecer documentao extra. Alguns sites dedistribuies populares:
http://www.slackware.com/
http://www.debian.org/
http://www.redhat.com/
Objetivo 1.108.5: Informar o Usurio sobre QuestesPertinentes ao SistemaPeso: 1
Informaes teis podem ser mostradas durante o login do usurio. Contato do administrador,informes de manuteno, etc.
O programa de controle de terminal agetty mostra o contedo do arquivo /etc/issue noprompt de login. Para sesses telnet, o arquivo /etc/issue.net desempenha a mesma funo.
Para exibir uma mensagem aps um login bem sucedido, utiliza-se do arquivo /etc/motd(message of the day).
25
-
8/14/2019 Guia de Estudos LPIC 102 - Luciano Antonio Siqueira
26/105
-
8/14/2019 Guia de Estudos LPIC 102 - Luciano Antonio Siqueira
27/105
Tpico 109: Shells, Script, Programao eCompilao
Objetivo 1.109.1: Personalizar e Trabalhar no Ambiente ShellPeso: 5
O shell ao mesmo tempo uma interface de interao com o computador e um ambiente deprogramao. H diferentes opes de shell, como o bash, csh ouzsh. O mais utilizado, devido asuas muitas qualidades, e que ser aqui abordado o bash. H quem prefira o csh, que possuisintaxe semelhante a da linguagem C.
Variveis
Variveis so utilizadas para fornecer informaes teis e necessrias programas e usurios. Sodefinidas na forma nome=valor. No deve haver espaos na definio. Variveis podem serglobais ou locais.
Variveis globais so aquelas acessveis todos os processos. Exemplos de variveis globais soPATH, que define os diretrios de programas; HOME, o diretrio pessoal do usurio; SHELL, o shell
padro para o usurio. Por convenincia, os nomes de variveis globais so em maisculas. Asvariveis globais podem ser listadas com o comando env. Todas as variveis so listadas usandoset.
As variveis globais so definidas no login, para todo o sistema atravs do arquivo/etc/profile ou por usurio, atravs do arquivo ~/.bash_profile.
Variveis locais so acessveis apenas sesso atual do shell. Podem ser definidas em scripts ou naprpria linha de comando. Para tornar uma varivel acessvel aos processos filhos subseqentes, usada a instruo export:
$ export BASH='Bourne Again Shell'
Os valor da varivel retornado com uso de $:
$ echo $BASHBourne Again Shell
Para excluir uma varivel, usada a instruo unset:
$ unset BASH
Funes
Para simplificar tarefas corriqueiras, possvel escrever funes que aglutinam comandos. Podemser escritas diretamente pela linha de comando ou serem definidas em scripts ou nos arquivos deconfigurao do bash.
Exemplo: Mostrar algumas informaes a respeito do nome de programa fornecido.
Definir a funo no prompt, interativamente:
27
-
8/14/2019 Guia de Estudos LPIC 102 - Luciano Antonio Siqueira
28/105
Tpico 109: Shells, Script, Programao e Compilao
$ function pinfo () {> echo "Localizao de $1:"> which $1> echo "Processos referentes a $1:"> ps x | grep $1
> }
Em uma s linha:
$ function pinfo () { echo "Localizao de $1:"; \which $1; echo "Processos referentes a $1:"; ps x | grep $1; }
Atravs do arquivo~/.bashrc:
function pinfo () {echo "Localizao de $1:"which $1echo "Processos referentes a $1:"
ps x | grep $1}
Assim, a funo pinfo poder ser utilizada como um comando:
$ pinfo sofficeLocalizao de soffice:/usr/bin/sofficeProcessos referentes a soffice:5163 ? Ss 0:00 /bin/sh /usr/bin/soffice5179 ? Sl 2:20 /opt/openoffice.org2.0/program/soffice.bin5735 pts/0 S+ 0:00 grep soffice
Arquivos de configurao do bash: possvel automatizar a criao de variveis, aliases, funes e outras personalizaes do bash,tanto para quando o usurio entra no sistema quanto para cada nova instncia do bash. Para cada
propsito, seja para todos ou por usurio em particular, existe o arquivo apropriado:
/etc/profile
Arquivo de configurao para o sistema, executado durante o login. Contm definies devariveis globais de ambiente, como PATH.
/etc/bashrc
Arquivo com funes e aliases comuns, para ser chamado pelos ~/.bashrc e cada
usurio.~/.bash_profile
Se o arquivo existir, ser executado aps /etc/profile aps o login.
~/.bash_login
Se ~/.bash_profile no existir, este ser procurado.
~/.profile
Se nem ~/.bash_profile ou ~/.bash_login existirem, este ser procurado.
~/.bashrc
28
-
8/14/2019 Guia de Estudos LPIC 102 - Luciano Antonio Siqueira
29/105
Tpico 109: Shells, Script, Programao e Compilao
Arquivo executado aps o login e em toda sesso, interativa ou no, do bash.
~/.bash_logout
Executado no logout do sistema.
~/.inputrcDefine as opes de entrada de teclado. Por padro, combinaes estiloEmacs so usadas.Para alterar para o estilo do vi, adiciona-se a linha set editing-mode vi. Paraeliminar o aviso de erro sonoro, adiciona-se set bell-style none. O arquivo deconfigurao global /etc/inputrc.
Objetivo 1.109.3: Editar e Escrever Scripts SimplesPeso: 3
Scripts so arquivos que passam instrues a um interpretador. Diferente de programas compilados,scripts so arquivos de texto que podem ser editados em qualquer editor.
A primeira linha de um script deve especificar o interpretador para o script, que indicado peloscaracteres #! (she-bang). Para um script com instrues para o bash, a primeira linha dever ser#!/bin/bash. Assim, o interpretador padro ser o shell bash.
O script dever ter permisso de execuo para rodar diretamente, ou ser invocado como argumentodo comando bash ou sh.
Variveis Especiais
Os argumentos passados para um script e outras informaes teis so retornados atravs davarivel especial $x, onde x determina que valor retornar:
$* Todos os valores passados como argumentos
$# O nmero de argumentos
$0 O nome do script
$n O valor do argumento na posio n
$! PID do ltimo programa executado
$$ PID do shell atual
$? Cdigo de sada do ltimo comando
Para requisitar valores do usurio durante a execuo do script, usada a instruo read:
echo Entrar valor solicitado:read RESPOSTA
O valor retornado ser armazenado na varivel RESPOSTA. Caso uma varivel de retorno no sejaespecificada, o nome padro da varivel de retorno, REPLY, ser utilizado.
if then else
A estrutura lgica if executa um comando ou uma lista de comandos se uma afirmao for
29
-
8/14/2019 Guia de Estudos LPIC 102 - Luciano Antonio Siqueira
30/105
Tpico 109: Shells, Script, Programao e Compilao
verdadeira. A instruo test avalia a afirmao e retorna se verdadeira ou falsa. Seu uso geralmente associado instruo condicional if:
Retornar ok se o arquivo /bin/bash for executvel
if test -x /bin/bash ; thenecho ok
fi
Maneira mais prtica para testar:
if [ -x /bin/bash ] ; thenecho ok
fi
A instruo else um apndice estrutura if, e determina o bloco de instrues a executar casoa afirmao avaliada seja falsa. Exemplo:if [ -x /bin/bash ] ; then
echo okelse
echo no okfi
O final da estrutura if deve ser sempre sinalizado com fi.
Uma variao da instruo if case. A instruo case executar a instruo se um itemindicado for encontrado em uma lista de itens divididos pelo caracter |. Exemplo:
case 3 in (1|2|3|4|5)echo "Nmero 3 encontrado na lista,";echo "portanto case finalizou e";
echo "executou esses comandos";esac
O final da estrutura case deve ser sempre sinalizado com esac.
Opes de avaliao de test para arquivos e diretrios:
-dcaminho
Verdadeiro se o caminho existir e for um diretrio
-ccaminho
Verdadeiro se o caminho existir
-fcaminho
Verdadeiro se o caminho existir e for um arquivo comum
-Lcaminho
Verdadeiro se o caminho existir e for um link simblico
-rcaminho
Verdadeiro se o caminho existir e puder ser lido (acessado)
-scaminho
Verdadeiro se o caminho existir e seu tamanho for maior que zero
30
-
8/14/2019 Guia de Estudos LPIC 102 - Luciano Antonio Siqueira
31/105
Tpico 109: Shells, Script, Programao e Compilao
-wcaminho
Verdadeiro se o caminho existir e puder ser escrito
-xcaminho
Verdadeiro se o caminho existir e for executvelcaminho1-otcaminho2
Verdadeiro se caminho1 for outro que no caminho2
Opes de avaliao de test para texto:
-nescrito
Verdadeiro se o tamanho de escrito for diferente de zero
-zescrito
Verdadeiro se o tamanho de escrito for zeroescrito1==escrito2
Verdadeiro se escrito1 for igual a escrito2
escrito1!=escrito2
Verdadeiro se escrito1 for diferente de escrito2
Opes de avaliao de test para nmeros:
num1-ltnum2
Verdadeiro se num1 for menor que num2num1-gtnum2
Verdadeiro se num1 for maior que num2
num1-lenum2
Verdadeiro se num1 for menor ou igual a num2
num1-gtnum2
Verdadeiro se num1 for maior ou igual a num2
num1-eqnum2
Verdadeiro se num1 for igual a num2
num1-nenum2
Verdadeiro se num1 for diferente de num2
Substituio de Comandos
Um dos principais propsitos de um script trabalhar com os dados produzidos por outroscomandos. Para retornar a sada de um comando, o mesmo colocado entre aspas simplesinvertidas ` ` ou entre $(). Exemplo:
31
-
8/14/2019 Guia de Estudos LPIC 102 - Luciano Antonio Siqueira
32/105
Tpico 109: Shells, Script, Programao e Compilao
TRESLINHAS=`cat -n3 /etc/inputrc`echo As trs primeiras linhas de /etc/inputrc:echo $TRESLINHAS
Resultado idntico ser produzido na forma:
TRESLINHAS=$(cat -n3 /etc/inputrc)echo As trs primeiras linhas de /etc/inputrc:echo $TRESLINHAS
Operaes matemticas com nmeros inteiros so feitas atravs da instruo expr:
SOMA=`expr $VALOR1 + $VALOR2`
Produz resultado idntico:SOMA=$(($VALOR1 + $VALOR2))
Instrues de Lao
for
A instruo for executa ao para cada elemento de uma lista. Neste caso, para cada nmerogerado pelo comando seq:
for i in $(seq -w 5); doecho Baixando foto_$i.jpg;echo wget http://www.fotos.com/foto_$i.jpg;
done
Produzir a sada:Baixando foto_1wget http://www.fotos.com/foto_1.jpg
Baixando foto_2wget http://www.fotos.com/foto_2.jpgBaixando foto_3wget http://www.fotos.com/foto_3.jpgBaixando foto_4wget http://www.fotos.com/foto_4.jpgBaixando foto_5wget http://www.fotos.com/foto_5.jpg
until
A instruo until Executa um ao at que uma afirmao seja verdadeira. Por exemplo,adicionar uma linha ao arquivo texto_simples at que alcance 10 linhas:
LENTEXTO=$(wc -l texto_simples)
until [ ${LENTEXTO%% *} -eq 10 ]; doecho "Mais uma linha" >> texto_simplesLENTEXTO=$(wc -l texto_simples)
done
while
A instruo while semelhante a instruo until, mas executa uma ao enquanto a afirmaofor verdadeira. Por exemplo, adicionar uma linha ao arquivo texto_simples at que alcance 20linhas (em outras palavras, enquanto for inferior a vinte linhas):
32
-
8/14/2019 Guia de Estudos LPIC 102 - Luciano Antonio Siqueira
33/105
Tpico 109: Shells, Script, Programao e Compilao
LENTEXTO=$(wc -l texto_simples)
while [ ${LENTEXTO%% *} -lt 20 ]; doecho "E d-lhe linha" >> texto_simplesLENTEXTO=$(wc -l texto_simples)
done
Local, Propriedade e Permisso
Para que um script possa ser usado por todos os usurios, importante que ele seja executvel e queesteja num diretrio includo na varivel PATH. Direito de escrita deve ser retirado para todosexceto o dono (root). Por ser um arquivo mais vulnervel, o sistema no aceitar o bit SUID paraarquivos script.
Scripts para Tarefas Administrativas
Scripts so comumente utilizados para realizar tarefas morosas de administrao de sistemas, comobackup de dados e atualizaes. Para facilitar o acompanhamento dessas tarefas, o prprio scriptpode enviar um email ao administrador, geralmente informando sobre falhas. Se a sada do ltimocomando ($!) foi diferente de 0, porque houve uma falha.
Enviar email para o administrador informando sobre um erro:
mail -s Erro em $HOSTNAME [email protected] < backup.log
33
-
8/14/2019 Guia de Estudos LPIC 102 - Luciano Antonio Siqueira
34/105
-
8/14/2019 Guia de Estudos LPIC 102 - Luciano Antonio Siqueira
35/105
Tpico 111: Tarefas Administrativas
Objetivo 1.111.1: Administrar Contas de Usurio, Grupos e
Arquivos de Sistema RelacionadosPeso: 4
Conta de Usurio
O comando /usr/sbin/useradd cria uma nova conta no sistema. /usr/sbin/adduser um link para useradd.Valores padro so usados quando nenhum argumento fornecido ouatravs de useradd -D. Em algumas distribuies essas informaes podem ser verificadas ealteradas em /etc/default/useradd.
Opes comuns deuseradd
:
-ccomentrio
Comentrio (geralmente o nome completo do usurio).
-ddiretrio
Caminho para o diretrio pessoal do usurio.
-ggrupo
Grupo inicial (GID). Precisa existir no sistema.
-Ggrupo1,grupo2
Grupos adicionais, separados por vrgula.
-uUID
UID (user ID) do usurio.
-sshell
Shell padro para o usurio.
-psenha
Senha (entre aspas).
-edataData de validade da conta.
-k
Copia o diretrio modelo /etc/skel.
-m
Cria o diretrio pessoal, se no existir.
Para que o usurio possa acessar sua conta, o administrador precisar definir uma senha para ele, oque pode ser feito atravs do comandopasswdusurio. Usado sem argumentos, passwd altera a
senha para o usurio atual. O campo de descrio pode ser alterado com o comando chfn e o shell
35
-
8/14/2019 Guia de Estudos LPIC 102 - Luciano Antonio Siqueira
36/105
Tpico 111: Tarefas Administrativas
inicial com chsh. Usurios comuns podem usar estes comandos para alterar apenas suas prpriascontas.
Uma conta de usurio pode ser apagada com o comando userdel. A opo -r assegura que odiretrio pessoal do usurio tambm seja apagado.
As informaes de conta dos usurios do sistema so armazenadas no arquivo /etc/passwd.
Exemplo de usurios em /etc/passwd:
root:x:0:0::/root:/bin/bashluciano:x:1000:100:Luciano Antonio Siqueira:/home/luciano:/bin/bash
Cada usurio definido em uma linha, em campos separados por : representandorespectivamente:
1. Nome de Login
2. Senha (x se usando o arquivo /etc/shadow)
3. Nmero de identificao do usurio (UID)
4. Nmero do grupo efetivo do usurio (GID)
5. Descrio breve do usurio (opcional)
6. Diretrio pessoal para o usurio
7. Shell inicial do usurio (se vazio, /bin/sh ser usado)
Para editar diretamente o arquivo /etc/passwd, altamente indicado usar o comandovipw, quebloqueia o arquivo /etc/passwd contra possveis alteraes externas, evitando corrupo doarquivo. O editor utilizado ser o determinado pela varivel de ambiente
VISUALou
EDITOR.Se
ambas no existirem, o editor utilizado ser o vi. Usado com a opo -s, vipw abrir para edioo /etc/shadow.
O arquivo /etc/passwd legvel por qualquer usurio (-rw-r--r--), o que pode tornar assenhas criptografadas passveis de serem decodificadas. Para evitar essa possibilidade, usado umsegundo arquivo, acessvel apenas ao super-usurio, /etc/shadow (-rw-r-----). Paraconverter as senhas de arquivos /etc/passwd antigos para /etc/shadow, utiliza-se ocomando pwconv. Para retornar as senhas para o formato /etc/passwd antigo, utiliza-sepwunconv.
Como no arquivo /etc/passwd, os campos no aquivo /etc/shadow so separados por :,
correspondendo respectivamente:1. Nome de usurio, que deve corresponder a um nome vlido em /etc/passwd
2. A senha, criptografada numa sequncia de 13 caracteres. Em branco permite login semsenha. Com um asterisco * indica que a conta est bloqueada.
3. O nmero de dias (desde 01/01/1970) desde que a senha foi alterada.
4. Nmero mnimo de dias at que uma senha possa ser novamente alterada. 0 permite alterar asenha sem esperar.
5. Nmero de dias depois do qual a senha dever ser alterada. Por padro 99999, ou 274 anos.
6. Nmero de dias para advertir o usurio sobre a senha a expirar.
36
-
8/14/2019 Guia de Estudos LPIC 102 - Luciano Antonio Siqueira
37/105
Tpico 111: Tarefas Administrativas
7. Nmero de dias depois da senha expirar aps o qual a conta ser bloqueada.
8. O nmero de dias, a partir de 01/01/1970, desde que a conta foi bloqueada.
9. Campo reservado.
Essas informaes referentes validade da senha podem ser modificadas atravs do programachage, com as seguintes opes:
-mdias
Mnimo de dias at que o usurio possa trocar uma senha modificada.
-Mdias
Nmero mximo de dias que a senha permanecer vlida.
-ddias
Nmero de dias decorridos em relao a 01/01/1970 em que a senha foi mudada. Tambm
pode ser expresso no formato de data local (dia/ms/ano).-Edias
Nmero de dias decorridos em relao a 01/01/1970 a partir do qual a conta no estar maisdisponvel. Tambm pode ser expresso no formato de data local (dia/ms/ano).
-Idias
Inatividade, tolerncia de dias aps a senha ter expirado at que a conta seja bloqueada.
-Wdias
Dias anteriores ao fim da validade da senha nos quais ser emitido um aviso a respeito.
Para usurios comuns, chage s pode ser usado com a opo -lusurio, que mostra as restriesreferentes ao usurio em questo.
O comando usermod agrega as funes de alterao de conta de usurio, atravs das opes:
-cdescrio
Descrio do usurio
-ddiretrio
Altera diretrio do usurio. Com o argumento -m move o contedo do diretrio atual para onovo
-evalor
Prazo de validade da conta, especificada no formato dd/mm/aaaa
-fvalor
Nmero de dias aps a senha ter expirado at que a conta seja bloqueada. Um valor-1cancela essa funo.
-ggrupo
Grupo efetivo do usurio
-Ggrupo1,grupo2
37
-
8/14/2019 Guia de Estudos LPIC 102 - Luciano Antonio Siqueira
38/105
Tpico 111: Tarefas Administrativas
Grupos adicionais para o usurio
-lnome
Nome de login do usurio
-psenhaSenha
-uUID
Nmero de identificao (UID) do usurio
-sshell
Shell padro do usurio
-L
Bloqueia a conta do usurio, colocando um sinal ! na frente da senha criptografada. Umaalternativa substituir o shell padro do usurio por um script ou programa que informe asrazes do bloqueio.
-U
Desbloqueia a conta do usurio, retirando o sinal ! na frente da senha criptografada
Grupos de Usurios
Para criar um grupo, usado o comando groupadd:
# groupadd estudo_c
O nmero de identificao do grupo (GID) pode ser especificado atravs da opo -g. Para apagarum grupo, o comando groupdel:
# groupdel estudo_c
Um usurio poder ser includo/excludo de um grupo atravs do comando gpasswd, utilizando-seo argumento adequado:
gpasswdgrupo
Cria uma senha paragrupo
gpasswd -r grupo
Apaga a senha paragrupo
gpasswd -a usurio grupo
Associa usurio agrupo
gpasswd -d usurio grupo
Exclui usurio degrupo
gpasswd -A usurio grupo
Torna usurio administrador degrupo.
Um usurio pode pertencer a mais de um grupo, mas apenas um grupo deve ser o grupo principal.
38
-
8/14/2019 Guia de Estudos LPIC 102 - Luciano Antonio Siqueira
39/105
Tpico 111: Tarefas Administrativas
Para mostrar os grupos aos quais um usurio pertence, usado o comando groups:
# groups rootroot : root bin daemon sys adm disk wheel floppy video
groups sem argumentos mostra os grupos para o usurio atual. O comando id mostra os grupospara o usurio, mostrando tambm o nmero de identificao do usurio e dos grupos:# id rootuid=0(root) gid=0(root) grupos=0(root),1(bin),2(daemon),3(sys),4(adm),6(disk),10(wheel),11(floppy),18(video)
O comando newgrp usado para alterar o grupo efetivo do usurio para o grupo solicitado emuma nova sesso de login:$ groupsusers disk lp floppy audio video cdrom$ newgrp video$ groups
video disk lp floppy audio cdrom users$ exit$ groupsusers disk lp floppy audio video cdrom
Caso o usurio no pertena ao grupo em questo, ser associado.
As informaes sobre os grupos existentes no sistema so armazenadas em /etc/group.Exemplo de /etc/group:
ftp::50:pop::90:popscanner::93:nobody::98:nobody
nogroup::99:users::100:console::101:messagebus:x:102:estudo_c:x:104:luciano
Cada grupo definido em uma linha, em campos separados por : representando respectivamente:
1. Nome do grupo
2. Senha para o grupo (x se utilizar/etc/gshadow)
3. Nmero de identificao do grupo (GID)
4. Lista de membros do grupo, separados por vrgulaPara editar diretamente o arquivo /etc/group, altamente indicado usar o comandovigr, quebloqueia o arquivo /etc/group contra possveis alteraes externas, evitando corrupo doarquivo. O editor utilizado ser o determinado pela varivel de ambiente VISUAL ou EDITOR. Seambas no existirem, o editor utilizado ser o vi. Usado com a opo -s, vigr abrir para edioo arquivo /etc/gshadow.
Como o caso do arquivo /etc/passwd, possvel usar um segundo arquivo para armazenarinformaes referentes senha dos grupos, chamado /etc/gshadow. O comando grpconvconverte as senhas no formato antigo /etc/group para /etc/gshadow e grpunconvrealizao procedimento inverso.
39
-
8/14/2019 Guia de Estudos LPIC 102 - Luciano Antonio Siqueira
40/105
-
8/14/2019 Guia de Estudos LPIC 102 - Luciano Antonio Siqueira
41/105
Tpico 111: Tarefas Administrativas
Objetivo 1.111.3: Configurar e Recorrer a Arquivos de logpara Corresponder s Necessidades Administrativas e deSeguranaPeso: 3
A maioria dos arquivos de log so armazenados no diretrio /var/log/. Enquanto algunsprogramas geram os prprios arquivos de log, como o Xorg e o samba, a maioria dos logs dosistema so controlados pelo daemon syslogd.
Logs de sistema comuns:
/var/log/cron
Rastreia as mensagens de execuo do cron.
/var/log/mailMensagens relacionadas ao envio de mensagens de email.
/var/log/messages
Todas as mensagens do kernel, exceto authpriv, cron, mail e news.
/var/log/secure
Logins fracassados, incluso/remoo de usurios ou grupos, etc.
O daemon syslogd configurado atravs do arquivo /etc/syslog.conf. Cada regra deconfigurao separada em dois campos, seletor e ao, separados por espao(s) ou tabulao(es).
O campo seletor dividido em duas partes:facilidade eprioridade, separadas por um ponto.Facilidade indica o sub-sistema originrio da mensagem, e pode ser um dos seguintes termos:auth, authpriv, cron, daemon, ftp, kern, lpr, mail, news, syslog, user, uucp elocal0 at local7.
Prioridade define a gravidade da mensagem e pode ser um dos termos, em ordem crescente degravidade: debug, info, notice, warning, err, crit, alert, emerg. O termo noneindica que no h prioridade para a facilidade em questo.
O caracter asterisco * indica que a regra vale para qualquer facilidade ou prioridade, dependendode que lado do ponto est. Mais de uma facilidade pode ser especificada para a prioridade na mesmaregra, separando-as por vrgula.
O sinal = confere exclusividade facilidade/prioridade que precede. Em contrapartida, o sinal! faz ignorar a facilidade/prioridade que precede.
O sinal ; pode ser usado para separar mais de um seletor para a mesma ao.
O campo ao determina o destino dado mensagem em questo. Geralmente as mensagens soenviadas para arquivos em /var/log/, mas podem ser direcionadaspipes, consoles, mquinaremota, usurio(s) especfico(s), e para todos os usurios no sistema.
Exemplo de /etc/syslog.conf:
41
-
8/14/2019 Guia de Estudos LPIC 102 - Luciano Antonio Siqueira
42/105
Tpico 111: Tarefas Administrativas
# Todas mensagens do kernel iro para o arquivo kernel.# Mensagens crticas e maiores iro para o host finlandia# e para o console. Mensagens info e maiores, a exceo de# mensagens de erro e maiores, iro para o arquivo kernel-info.#
kern.* /var/adm/kernelkern.crit @finlandiakern.crit /dev/consolekern.info;kern.!err /var/adm/kernel-info
Aps alterar o arquivo /etc/syslog.conf, necessrio reiniciar o daemon syslogd para queutilize as novas configuraes.
Atravs do comando logger possvel criar mensagens de log manualmente, indicadas comoargumento do comando. A opo -p permite de terminar afacilidade.prioridade para a mensagem.
Para acompanhar continuamente a atualizao de arquivos de log, interessante o uso de tail -farquivo de log, que mostrar novas mensagens medida que forem acrescentadas.
Como os arquivos de log so continuamente ampliados, bastante indicado que as mensagens maisantigas sejam movidas, para evitar que o arquivo de log inche demais. Essa tarefa realizadaatravs do programa logrotate. Normalmente, logrotate agendado para execuo diria.
Seu arquivo de configurao /etc/logrotate.conf, onde regras de corte, compresso,envio por email e outras podem ser especificadas para cada arquivo de log.
Objetivo 1.111.4: Automatizar Tarefas Administrativas deSistema Agendando Trabalhos para Execuo Futura
Peso: 4Existem dois sistemas principais de agendamento de tarefas no Linux, o at e o cron. O at maisutilizado para agendamentos simples de comandos, enquanto o cron mais utilizado para agendar
procedimentos recorrentes do sistema.
at
Essas tarefas so agendadas via linha de comando, atravs do comando at, no formato:
atquandocomando
Onde quando pode ser, por exemplo:now
3am + 2 days
midnight
10:15 april 12
teatime
Outras opes de datas e formatos podem ser consultados em /usr/share/doc/at-xxx/timespec.
Os agendamentos ficam armazenados em /var/spool/at/*. Para conferir os agendamentos do
42
-
8/14/2019 Guia de Estudos LPIC 102 - Luciano Antonio Siqueira
43/105
Tpico 111: Tarefas Administrativas
usurio atual, usa-se at -l ou atq. Um agendamento pode ser apagado atravs de seu nmeroespecfico, fornecido para o comando atrm.
Usurios comuns podero usarat se constarem no arquivo /etc/at.allow. Se
/etc/at.allow no existir, o arquivo /etc/at.deny ser consultado e sero bloqueados aouso do at os usurios que nele constarem. Se nenhum dos arquivos existir, apenas o usurio rootpoder usar o at.
cron
A cada minuto, o daemon crondl as tabelas de agendamento (crontabs) contendo tarefas a seremexecutadas em data e hora especficas. Crontabs de usurios ficam em /var/spool/cron/*. Ocrontab do sistema /etc/crontab. Esses arquivos no devem ser editados diretamente, masatravs do comando crontab.
Opes de crontab:
crontab -l usurio
Mostra as tarefas agendadas porusurio
crontab -e usurio
Edita o crontab de usurio no editor padro do sistema
crontab -d usurio
Apaga o crontab de usurio
Se no fornecido, ser assumido como usurio o usurio atual.
Cada linha no arquivo crontab representa uma tarefa, no formato:0-59 0-23 0-31 1-12 0-6 comando| | | | || | | | `--> Dia da Semana| | | || | | `--> Ms| | || | `--> Dia| || `--> Hora|`--> Minuto
O trao - delimita um perodo para execuo. O caractere asterisco * em um campo determinaa execuo do comando sempre que o agendamento corresponder a qualquer marcao para ocampo em questo. O caracter barra / estabelece um passo para a execuo.
Executarscript_backup a cada quatro horas, de segunda sexta, nos meses de maio e junho:
* */4 * 5,6 1-5 /usr/local/bin/script_backup
importante especificar o caminho completo para o comando, pois a tarefa ter apenas as variveisde ambiente USER, HOME e SHELL.
Se a tarefa produzir alguma sada, esta ser enviada por email para o usurio. Para evitar essecomportamento, basta redirecionar a sada da tarefa para /dev/null ou para um arquivo.
43
-
8/14/2019 Guia de Estudos LPIC 102 - Luciano Antonio Siqueira
44/105
Tpico 111: Tarefas Administrativas
possvel controlar o uso do crontab atravs dos arquivos /etc/cron.allow e/etc/cron.deny. Se /etc/cron.allow existir, apenas os usurios que nele constarem
podero agendar tarefas. Se /etc/cron.deny existir, os usurios nele existentes sero proibidosde agendar tarefas. Se nenhum dos arquivos existirem, todos usurio podero agendar tarefas.
Objetivo 1.111.5: Manter uma Estratgia Eficiente de Backupde DadosPeso: 3
As ferramentas de backup mais tradicionais so tar, cpio e dump.tar e cpio sosemalhantes, aglutinam arquivos em arquivos ou fitas e podem extrair e atualizar estes arquivos.dump age de forma diferente, lidando diretamente com o sistema de arquivos monoltico.
Em linhas gerais, tar e cpio so utilizados para arquivar grupos de arquivos especficos, dentro
de um ou mais sistemas de arquivos.Um esquema simples de backup arquivar todos os dados na primeira vez e depois arquivar apenasos dados modificados. O primeiro passo chama-se backup completo e o segundo backupincremental. O backup completo leva mais tempo devido a necessidade de copiar todos os dados.
No entanto, apesar do backup incremental ser mais rpido, o procedimento de recuperar os arquivosde um backup incremental mais moroso, uma vez que ser necessrio mais de um procedimentode restaurao.
Fazer backup de /etc em mltiplos disquetes usando tar:
# tar cMf /dev/fd0 /etc
Fazer backup de /etc em um drive de fita usando tar:
# tar cf /dev/ftape /etc
Verificar se h diferena entre os dados copiados e os originais:
# tar dvf /dev/ftape
O backup incremental realizado informando a data base com a opo -newer (-N). Apenas osarquivos criados a partir da data fornecida sero arquivados.# tar cf /dev/ftape -newer '12 apr 2006' /etc
Verificando se h erros no backup:# tar tvf /dev/ftape
Arquivos apagados dos dados atuais no sero apagados no backup incremental atravs do tar.
Dessa forma, podero haver diversos nveis de backup, a partir de um nvel 0 (backup completo).Enquanto que com o tar e cpio a criao e recuperao de nveis de backup feita manualmente,com o comando dump ela nativa, a recuperao de um nvel automaticamente recuperar osnveis anteriores. Utilizando-se do dump, as informaes referentes ao backup so armazenadas/etc/dumpdates. O comando restore utilizado para restaurar o backup. Arquivos de
backup dump podem ser testados com o comando restore -tarquivo.
Outra possibilidade criar uma imagem de um dispositivo, utilizando o comando dd:
44
-
8/14/2019 Guia de Estudos LPIC 102 - Luciano Antonio Siqueira
45/105
Tpico 111: Tarefas Administrativas
# dd if=/dev/hda of=backup-hda.img
A imagem preservar o sistema de arquivos e at a MBR (se houver) do dispositivo /dev/hda.Para restaurar o backup, basta inverter os argumentos:
# dd if=backup-hda.img of=/dev/hdaO dispositivo em questo dever estar desmontado ou montado como somente-leitura.
Objetivo 1.111.6: Manuteno de Data e Hora do SistemaPeso: 4
Relgios e Fuso Horrio
O kernel do Linux mantm um relgio separado do relgio do hardware (BIOS). Durante o boot, orelgio do kernel l o relgio do hardware e a partir da roda distintamente. Esse procedimento se
justifica pois ler o relgio do hardware lento e complicado. O relgio do kernel guarda a horauniversal, de modo que fusos horrios so calculados por cada processo atravs das ferramentastimezone.
O relgio do hardware pode estar em hora local ou em hora universal. prefervel que esteja emhora universal, assim no ser necessrio modific-lo no perodo de horrio de vero.
O fuso horrio do sistema determinado pelo arquivo /etc/localtime, que geralmente umlink simblico apontando para o arquivo real em /usr/share/zoneinfo/ ou em/usr/lib/zoneinfo/. Um usurio poder alterar o fuso horrio para si definindo a varivel deambiente TZ. O formato da varivel TZ est elucidado no manual do comando tzset.
O comando date usado para mostrar a hora e data do sistema:$ dateQua Abr 12 18:38:05 BRT 2006
date -u mostra a hora universal:
$ date -uQua Abr 12 21:38:09 UTC 2006
O prprio comando date usado para alterar o relgio de software (do kernel).
# date MMDDhhmmCCYY.ss| | | | | | || | | | | | `--> segundos (opcional)| | | | | || | | | | `--> Ano, poro da dcada (opcional)| | | | || | | | `--> Ano, poro do sculo (opcional)| | | || | | `--> Minutos| | || | `--> Horas| || `--> Dia|`--> Ms
A opo -u especifica que a data informada refere-se hora universal.
45
-
8/14/2019 Guia de Estudos LPIC 102 - Luciano Antonio Siqueira
46/105
Tpico 111: Tarefas Administrativas
Para mostrar ou alterar o relgio do hardware, usado o comando hwclock. Com o argumento -watualiza o relgio de hardware pelo relgio de software. Com o argumento -s atualiza o relgio desoftware com o relgio de hardware. Como no comando date, o argumento -u indica horauniversal.
NTP Network Time Protocol
Um computador em rede pode manter seu relgio atualizado comparando a hora com um outrocomputador na rede que tenha um relgio preciso. Isso possvel atravs do protocolo NTP.
Para um sistema usar o NTP, o arquivo /etc/ntp.conf deve estar configurado adequadamentee o daemon ntpd deve estar ativo. O ntpd utiliza o protocolo UDP, atravs da porta decomunicao 123.
Exemplo bsico de /etc/ntp.conf:
server br.pool.ntp.orgserver 0.pool.ntp.orgserver 1.pool.ntp.orgserver 2.pool.ntp.org
driftfile /etc/ntp.drift
Neste arquivo /etc/ntp.conf mnimo, foram definidos apenas os servidores NTP e o arquivodrift. Servidores NTP pblicos podem ser encontrados em http://www.pool.ntp.org/. Outras opes,como restrio de acesso ao servidor NTP local, podem ser consultadas na documentaoencontrada em /usr/doc/ntp-x.x.x/.
A indicao do arquivo /etc/ntp.drift importante pois nele que o ntpd armazenar asestatsticas de erro, projetando o intervalo de erro do relgio do sistema e atualizando-o ao passodessa projeo.
Se j estiver rodando, o daemon ntpd dever ser reiniciado para utilizar as novas configuraes.Em execuo, o ntpd poder funcionar como servidor NTP para outras mquinas na rede.
Para conferir o andamento do ntpd, pode ser usado o comando ntpq:
# ntpq -npremote refid st t when poll reach delay offset jitter
==============================================================================+200.218.160.160 200.20.186.75 2 u 80 128 177 203.427 76.433 68.727+72.21.46.202 67.52.51.34 3 u 1 256 377 187.361 29.718 79.019
+24.123.66.139 192.168.1.231 2 u 1 256 337 210.402 39.727 120.724*64.136.200.96 .WWVB. 1 u 200 128 36 235.761 43.737 75.380
Caso os valores locais de hora difiram do servidor, o ntpd ir aproximar lentamente a hora at quese corresponda, para evitar mudanas bruscas que podem causar confuso no sistema.
Para forar o ajuste imediato do relgio, utilizado o comando ntpdateservidor.
46
-
8/14/2019 Guia de Estudos LPIC 102 - Luciano Antonio Siqueira
47/105
Tpico 112: Fundamentos de Redes
Objetivo 1.112.1: Fundamentos de TCP/IP
Peso: 4
Endereo IP
Endereos IP no formato xxx.xxx.xxx.xxx (dotted quad) so a expresso em nmerosdecimais de um endereo de rede binrio. Cada um dos quatro campos separados por pontoscorresponde a um byte, geralmente chamados octetos. Por exemplo, o nmero ip:
192.168.1.1
Corresponde forma binria:
11000000.10101000.00000001.00000001Tabela simples para converso de valores binrios para decimal:
00000001 20 1
00000010 21 2
00000100 22 4
00001000 23 8
00010000 24 16
00100000 25 32
01000000 26 64
10000000 27 128
Cada interface de rede numa mesma rede dever ter um endereo IP nico.
Endereo de rede, mscara de rede e endereo broadcast
Alm do endereo da interface, um nmero IP contm o endereo de sua rede, que determinadoatravs da mscara de rede ou mscara de sub-rede. O clculo feito a partir da forma binrio dosnmeros IP.
Mscara de 16bit:
11111111.11111111.00000000.00000000 255.255.0.0
Mscara de 17bit:
11111111.11111111.10000000.00000000 255.255.128.0
Na primeira mscara (16bit), pertencero a mesma rede os IPs cujos dois primeiros octetos doendereo no difiram. Na segunda mscara (17bit), pertencero a mesma rede os IPs cujos dois
primeiros octetos e o primeiro bit do terceiro octeto do endereo no difiram.
Dessa forma, dois endereos de interface 172.16.33.8 e 172.16.170.3 estariam na mesma
rede se a mscara for de 16bit, mas no se a mscara for de 17bit. As mscaras de rede variam
47
-
8/14/2019 Guia de Estudos LPIC 102 - Luciano Antonio Siqueira
48/105
Tpico 112: Fundamentos de Redes
dependendo do contexto da rede.
Conseqentemente, o endereo da rede corresponde parte do nmero IP determinado pelos bitsmarcados da mscara de rede. Para um host 172.16.33.8 com mscara de rede 255.255.0.0,o endereo da rede ser 172.16.0.0.
O endereo broadcast o nmero IP que designa todas as interfaces numa rede. Para um endereode rede 172.16.0.0, o endereo broadcast ser 172.16.255.255.
Atravs de equaes com operadores matemticos lgicos (AND, OR e NOT) os endereos binriosso calculados bit a bit:
IP de rede = IP de interface AND mscara de rede
Broadcast = IP de rede OR NOT mscara de rede
Classes de Redes
Para redes privadas (LANs) h uma certa gama especficas de IPs que podem ser usados e que nodevem ser aplicados a interfaces ligadas internet.
Endereos reservados a redes privadas:
Classe A
1.0.0.0 at 127.0.0.0. Endereos de rede de 8bit e endereos de interfaces de 24bit. Oprimeiro octeto do nmero IP representa o endereo da rede. A mscara padro ser 255.0.0.0.Permite aproximadamente 1.6 milho de IPs de interface por rede.
Classe B
128.0.0.0 at 191.255.0.0. Endereos de rede de 16bit e endereos de interfaces de 16bit.Os dois primeiros octetos representam o endereo da rede. A mscara padro 255.255.0.0.Permite 16.320 redes com 65.024 IPs de interface para cada uma.
Classe C
192.0.0.0 at 223.255.255.0. Endereos de rede de 24bit e endereos de interfaces de 8bit.Os trs primeiros octetos representam o endereo da rede. A mscara padro 255.255.255.0.Permite aproximadamente 2 milhes de redes com 254 IPs de interface cada.
Subredes
Subredes podem ser definidas atravs da mscara de rede, avanando sobre os bits referentes interface. Dessa forma, uma rede pode ser dividida em redes menores, sem classe, chamadas CIDR Classless InterDomain Rounting.
Por exemplo, uma rede classe C 192.168.1.0. Ativando o primeiro bit do quarto octeto namscara de rede, os primeiros 25bit do IP seriam referentes ao endereo da rede:
Mscara de rede:
11111111.11111111.11111111.10000000
255.255.255.128
Conseqentemente, a rede classe C foi subdividida em duas subredes sem classe, de 25bit:
48
-
8/14/2019 Guia de Estudos LPIC 102 - Luciano Antonio Siqueira
49/105
Tpico 112: Fundamentos de Redes
Primeira SubRede: 192.168.1.0
Os caracteres x correspondem aos bits de interfaces nessa subrede:
11000000.10101000.00000001.0xxxxxxx
192.168.1.1 at 192.168.1.126
Endereo de broadcast:
11000000.10101000.00000001.01111111
192.168.1.127
Segunda SubRede: 192.168.1.128
Os caracteres x correspondem aos bits de interfaces nessa subrede:
11000000.10101000.00000001.1xxxxxxx
192.168.1.129 at 192.168.1.254Endereo de broadcast:
11000000.10101000.00000001.11111111
192.168.1.255
Uma rede de 26bit resultaria no seguinte cenrio:
Mscara de rede:
11111111.11111111.11111111.11000000
255.255.255.192
Subredes resultantes:
Primeira SubRede: 192.168.1.0
Interfaces:
11000000.10101000.00000001.00xxxxxx
192.168.1.1 at 192.168.1.62
Broadcast:
11000000.10101000.00000001.00111111
192.168.1.63
Segunda SubRede: 192.168.1.64
Interfaces:
11000000.10101000.00