139166004-curso-red-hat

146
Linux System Administration Sumario Histórico..................................................................................................................................................... 4 Distribui ções mai s conhecidas:...................................................................................... ......................6 Instalação............................................................................................................................... ....................7 Passo 1) Boot com o cdrom de instala ção.................................................................................. ..........8 Passo 2) Escolher o teclado... ........................................................................................... ....................8 Passo 4) P articionar o disco r í gido................................................................................. ....................10 Motiv os para particionamento :................................................................................... ...................10 Passo 6) Formatando as parti ções de SWAP.......................................................................... ............15 Passo 7) Formatando as outra s parti ções...................................................................................... ......17 Passo 8) Definindo a mí dia que cont é m os arquivos de instalação...................................................18 Passo 9) Escolhendo os paco tes que ser ão instalados.......................................................................19 Passo 10) Escolha do local do k ernel................................................................................................. .2 1 Passo 11) Gera ção do disco de boot.............................................................................. .....................22 Passo 12) Configuração do modem .......................................................................................... ..........22 Passo 14) Configura ção do LILO .......................................................................................... .............23 Passo 15) Configuração do Mouse....................................................................................... ..............24 Passo 16) Configuraçã o da Rede..................................................................................... ...................25 Passo 17) Confirmação das configurações de R ede............. ....................................................... .......26 Passo 19) Configuração prévia de fonte ............................................................................ .................27 Passo 20) Escolha do tip o de atu aliza ção do relógio da máquina....................................................28 Passo 22) Definir a senha do Administrador do sist ema (root)........................................................28 Passo 23) Finalizando a instala ção.. ..................................................................................... ..............29 Iniciando o Sis tema Opera cional.......................................................................................................... ...30 Comandos Básicos....................................................................................................................... .......30 Mostrar o diret ório atual..................................................................................... ...........................31 Entrar/Sair de diret órios................... .................................................................................. ............31 Criando Diret órios.......................................................................................................................... 3 1 Copiando Arquivos e Diret órios.................. .............................................................. ....................31 Criando Ar quiv os V azios................................................................................................... ............32 Remo vendo Diret órios.................. .............................................................................. ...................32 Remo vendo Arquiv os e Diret órios.................................................................... ............................33 Movendo/Renomeando Arquivos e Diret órios.................. .............................................. ..............33 Comando t ail........................................................................................................................ ..........34 Comando cat ......................................................................................................... .........................34 Comando sor t.................... ................................................................................................. ............34 Comando g rep.............. ........................................................................................................ ..........34 Comandos de Pagina ção ................................................................................................. ...............35 Comando mo re................ ........................................................................................................ .......35 Comando less ................................................................................................................... ..............35 Desligan do o Sistema Oper acional Linux..................................................................... ................36  Seja um Profissional Aprendendo com Profissionais 1

Upload: pablo-verly

Post on 03-Jun-2018

222 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: 139166004-Curso-Red-Hat

8/12/2019 139166004-Curso-Red-Hat

http://slidepdf.com/reader/full/139166004-curso-red-hat 1/146

Linux System Administration

Sumario

Histórico.....................................................................................................................................................4

Distribuições mais conhecidas:............................................................................................................6

Instalação...................................................................................................................................................7

Passo 1) Boot com o cdrom de instalação............................................................................................8

Passo 2) Escolher o teclado..................................................................................................................8

Passo 4) Particionar o disco rí gido.....................................................................................................10

Motivos para particionamento:......................................................................................................10

Passo 6) Formatando as partições de SWAP......................................................................................15

Passo 7) Formatando as outras partições............................................................................................17Passo 8) Definindo a mí dia que contém os arquivos de instalação....................................................18

Passo 9) Escolhendo os pacotes que serão instalados........................................................................19

Passo 10) Escolha do local do kernel..................................................................................................21

Passo 11) Geração do disco de boot...................................................................................................22

Passo 12) Configuração do modem....................................................................................................22

Passo 14) Configuração do LILO.......................................................................................................23

Passo 15) Configuração do Mouse.....................................................................................................24

Passo 16) Configuração da Rede........................................................................................................25

Passo 17) Confirmação das configurações de Rede...........................................................................26

Passo 19) Configuração prévia de fonte.............................................................................................27Passo 20) Escolha do tipo de atualização do relógio da máquina.....................................................28

Passo 22) Definir a senha do Administrador do sistema (root).........................................................28

Passo 23) Finalizando a instalação.....................................................................................................29

Iniciando o Sistema Operacional.............................................................................................................30

Comandos Básicos..............................................................................................................................30

Mostrar o diretório atual................................................................................................................31

Entrar/Sair de diretórios.................................................................................................................31

Criando Diretórios..........................................................................................................................31

Copiando Arquivos e Diretórios....................................................................................................31

Criando Arquivos Vazios...............................................................................................................32Removendo Diretórios...................................................................................................................32

Removendo Arquivos e Diretórios................................................................................................33

Movendo/Renomeando Arquivos e Diretórios..............................................................................33

Comando tail..................................................................................................................................34

Comando cat..................................................................................................................................34

Comando sort.................................................................................................................................34

Comando grep................................................................................................................................34

Comandos de Paginação................................................................................................................35

Comando more...............................................................................................................................35

Comando less.................................................................................................................................35

Desligando o Sistema Operacional Linux.....................................................................................36

  Seja um Profissional Aprendendo com Profissionais 1

Page 2: 139166004-Curso-Red-Hat

8/12/2019 139166004-Curso-Red-Hat

http://slidepdf.com/reader/full/139166004-curso-red-hat 2/146

Linux System Administration

Reiniciando o Sistema Operacional Linux....................................................................................36

Redirecionamento de Entrada e Saida.....................................................................................................36

Redirecionamento de Saí da................................................................................................................38

Redirecionamento de Entrada.............................................................................................................38

Comando sort ................................................................................................................................39

Pipe......................................................................................................................................................39

Metacaracteres....................................................................................................................................40

Estrutura de Diretórios............................................................................................................................42

Dispositivos.............................................................................................................................................43

Consoles Virtuais.....................................................................................................................................45

Editores de Texto.....................................................................................................................................45

Mtools......................................................................................................................................................47

Paginas de Manuais.................................................................................................................................49

Criando Links..........................................................................................................................................49Comandos de Busca................................................................................................................................50

Compactação de Arquivos.......................................................................................................................51

gzip: ....................................................................................................................................................51

bzip2: ..................................................................................................................................................51

compress: ...........................................................................................................................................52

Empacotamento.......................................................................................................................................52

zip: ......................................................................................................................................................52

tar: ......................................................................................................................................................53

Montagem de Dispositivos......................................................................................................................54

Fdisk.........................................................................................................................................................55Gerenciamento de Contas de Usuários...................................................................................................57

Criar / Alterando Senha De Usuário..................................................................................................57

Deletando Usuários.............................................................................................................................58

Adicionando Grupos No Sistema.......................................................................................................58

Mudando o dono de arquivos e diretórios..........................................................................................59

Mudando o grupo de arquivos e diretórios.........................................................................................59

Mudando dono e grupo ao mesmo tempo..........................................................................................59

Permissões de Arquivos e Diretórios.......................................................................................................61

Padrão De Criação..............................................................................................................................62

Gerenciamento de Pacotes RPM.............................................................................................................67

Pacotes TGZ no Slackware......................................................................................................................71

Gerenciamento de Processos...................................................................................................................73

Processo de Inicialização da Máquina.....................................................................................................76

Instalação e configuração do Gestor de Iní cio LILO..............................................................................78

Passando parâmetros para o kernel através do lilo..................................................................................80

Configurações de Segurança...................................................................................................................80

O processo INIT na inicialização do sistema..........................................................................................83

Ní veis de execução ( Runlevel )..........................................................................................................83

Comunicando com o processo INIT

.............................................................................................................................................................85

Outras funções do INIT......................................................................................................................86

  Seja um Profissional Aprendendo com Profissionais 2

Page 3: 139166004-Curso-Red-Hat

8/12/2019 139166004-Curso-Red-Hat

http://slidepdf.com/reader/full/139166004-curso-red-hat 3/146

Linux System Administration

O Arquivo /etc/inittab.........................................................................................................................86

O diretório /etc/rc.d/............................................................................................................................89

Arquivo /etc/issue....................................................................................................................................90

Arquivo /etc/nologin................................................................................................................................90

Arquivo /etc/motd....................................................................................................................................91

Arquivo /etc/securetty..............................................................................................................................91

Comando su.............................................................................................................................................93

Inicialização de Serviços.........................................................................................................................94

O Arquivo /etc/login.defs........................................................................................................................95

Programação Shell...................................................................................................................................96

Programando no Linux .......................................................................................................96

Tipos de interpretadores.......................................................................................................96

Um Script simples ...............................................................................................................97

Utilizando o comando bash................................................................................................................98Sintaxe................................................................................................................................100

Tipos de Variáveis ............................................................................................................................100

Acessando variáveis..........................................................................................................................101

Comando echo ...................................................................................................................101

Caractere de escape...........................................................................................................................102

Passagem de parâmetros...................................................................................................................103

Parâmetro.................................................................................................................................103

Leitura de teclado e variáveis ..........................................................................................................103

Estruturas de Decisão (if).................................................................................................................104

Comando exit....................................................................................................................................106Operadores de comparação...............................................................................................................106

Condição case...................................................................................................................................108

Gerenciamento de Arquivos de LOG.....................................................................................................111

Formatos de arquivos de logs............................................................................................................111

Gerando LOGs..................................................................................................................................111

O Daemon Syslogd...........................................................................................................................112

O Daemon Klogd..............................................................................................................................112

Os principais diretórios e arquivos de log..........................................................................112

Controle de cotas de disco.....................................................................................................................114

Verificando suporte a cota................................................................................................................114

Habilitando quota em uma partição..................................................................................................115

Configurando quota de disco............................................................................................................115

Gerenciando quotas ..........................................................................................................................118

Definindo quota para usuários..........................................................................................................118

Definindo quotas para grupo............................................................................................................122

Agendador de Tarefas............................................................................................................................124

CRON.....................................................................................................................................................124

Arquivos de configuração ................................................................................................................125

Crontab .............................................................................................................................................127

Controlando o acesso cron................................................................................................................129

  Seja um Profissional Aprendendo com Profissionais 3

Page 4: 139166004-Curso-Red-Hat

8/12/2019 139166004-Curso-Red-Hat

http://slidepdf.com/reader/full/139166004-curso-red-hat 4/146

Linux System Administration

Anacron ( Para RedHat )...................................................................................................................130

Configuração dos Dispositivos de Hardware........................................................................................132

Configurando impressora com CUPS...................................................................................................132

Configuração Básica do Servidor NFS ................................................................................................135

Habilitando o acesso remoto via SSH (passo-a-passo).........................................................................138

Compilação do Kernel...........................................................................................................................140

Módulos.............................................................................................................................................140

Configuração GRUB (Isto é apenas um exemplo):..........................................................................145

Configuração do LILO (Isto é apenas um exemplo):.......................................................................146

  Seja um Profissional Aprendendo com Profissionais 4

Page 5: 139166004-Curso-Red-Hat

8/12/2019 139166004-Curso-Red-Hat

http://slidepdf.com/reader/full/139166004-curso-red-hat 5/146

Linux System Administration

Histórico

Em 1965, algumas empresas se uniram (Laboratórios Bell da AT&T, General Eletric e MIT)

para desenvolver um novo sistema operacional chamado MULTICS, que se propunha a oferecer

serviços de time-sharing (Tempo Compartilhado) para uso geral.

Time-sharing: É quando todo processamento e feito por um computador central, cujo tempo de

processamento é então compartilhado pelos vários usuários.

Devido às dificuldades que se encontraram na construção do MULTICS, que se mostrou um

sistema muito grande, complexo e exigia recursos demais para os computadores da época, a AT&T,

acabou se retirando do projeto, 1969, para que mais tarde alguns membros da empresa, liderado por

Ken Thompson, aproveitando a experiência ganha na construção do MULTICS, começaram a

trabalhar por conta própria num sistema menos robusto, que acabou resultando no UNIX.

A primeira versão do UNIX foi desenvolvida para um computador PDP-7 e foi totalmente

escrita em linguagem assembly, em 1971 foi escrito para um PDP-11 e já em 1973 foi reescrito para

linguagem C pelo criador da linguagem, DENIS RITCHIE.

Devido ao fato do UNIX, de estar escrito numa linguagem de alto ní vel, O uso do UNIXdentro do LAB. BELL foi crescendo tanto, que acabou sendo criado um grupo de suporte interno ao

sistema. Nessa mesma época a AT&T fornecia cópias do código fonte as universidades para fins

educacionais.

Com o fornecimento do código fonte, várias corporações modificaram o UNIX de acordo com

suas necessidades e lançaram sua própria versão.

Em 1980, a Universidade da Calif órnia em Berkely foi financiada pelo Departamento de

Defesa para desenvolver uma versão de UNIX voltada para os novos sistemas de computação

distribuí da que resultou no sistema BSD,nesta época a Microsoft lançou o XENIX, baseada em micro

computadores compatí veis com o IBM PC. A Sun Microsystem desenvolveu o SunOS, que

introduziu o conceito de Network File System, NFS, que possibilita o compartilhamento de arquivos

por máquinas ligadas em rede local.

No iní cio dos anos 90, um aluno de ciência da computação, Linus Torvalds, se propôs a

desenvolver sistema operacional, melhor que o S.O. que ele utilizava na faculdade, MINIX, construí do

por Andew Tanembaum para fins didáticos. Melhor porque o SO proposto por ele utilizaria das

Seja um Profissional Aprendendo com Profissionais 5

Page 6: 139166004-Curso-Red-Hat

8/12/2019 139166004-Curso-Red-Hat

http://slidepdf.com/reader/full/139166004-curso-red-hat 6/146

Linux System Administration

facilidades do modo protegido (como multitarefa e memória virtual) também o SO proposto não

carregaria todos os seus dispositivos em memória, visto que existe a necessidade apenas quando na

sua utilização.

Esse sistema, batizado de LINUX e evoluiu para uma versão de UNIX sendo distribuí do pela

rede na modalidade free e open source (código aberto), na qual tanto o código executável quanto o

código fonte podem ser baixados e distribuí dos gratuitamente pela internet. Com isso, o LINUX se

disseminou rapidamente e hoje ocupa uma fatia considerável das grandes e médias corporações em

todo mundo além de surgir várias versões do sistema (distribuições).

Existem grupos de pessoas, empresas e organizações que decidem criar sua própria

distribuição. O que é uma distribuição? É o Kernel do Linux junto com outros programas essenciais

(como por exemplo, editores gráficos, planilhas, bancos de dados, ambientes de programação,

formatação de documentos, Jogos, etc).

Cada distribuição tem suas próprias caracterí sticas de: como o sistema é   instalado, o seu

objetivo, a localização dos programas, nomes de arquivos de configuração, etc. E cabe o

desenvolvedor da distribuição dizer que ela é ou não open source. Mas pra um sistema ser comercial,

ele tem que sofrer mudanças gigantescas, devido o grande numero de distribuições open sourcedistribuidas pelo mundo.

 Distribui ções mais conhecidas:

Slackware – USA

Debian - USA

Suse - EUROPA (distribuição comercializada - voltada para o mercado corporativo)

Mandrake - USA (muito recurso gráfico)

Red Hat -USA (comercializada)

Conectiva - BRASIL

Ocean Pacific - ASIÁTICA

Yellow Dog

Kurumin - (distribuição que roda em CD) Caldeira – USA

Seja um Profissional Aprendendo com Profissionais 6

Page 7: 139166004-Curso-Red-Hat

8/12/2019 139166004-Curso-Red-Hat

http://slidepdf.com/reader/full/139166004-curso-red-hat 7/146

Linux System Administration

Fedora - (versão do RedHat 9)

Mandriva - ( Conectiva com Mandrake )

 Algumas Caracterí  sticas do Linux:

É  livre, e desenvolvido voluntariamente por programadores com o objetivo de contribuição para a

melhoria e crescimento deste sistema operacional;

Convivem sem nenhum tipo de conflito com outros sistemas operacionais (como o DOS, Windows,

OS/2) no mesmo computador;

Multitarefa Real (Várias tarefas rodando ao mesmo tempo);

Multiusuário (Vários usuários logados simultaneamente no sistema);

Suporte a nomes extensos de arquivos e diretórios (suporta até 255 caracteres);

Não há a necessidade de se reiniciar o sistema após a modificação das configurações;

Não é requerida uma licença para seu uso;

Suporta vários sistemas de arquivos (EXT/2/3, NTFS, FAT/16/32, MINIX, etc...);

Roda aplicações DOS e Windows através de emuladores (DOSEMU, WINE);

Vários servidores (WEB, E-MAIL, FTP, SAMBA, DNS, etc..) podem estar localizados no mesmo

computador.

  Seja um Profissional Aprendendo com Profissionais 7

Page 8: 139166004-Curso-Red-Hat

8/12/2019 139166004-Curso-Red-Hat

http://slidepdf.com/reader/full/139166004-curso-red-hat 8/146

Linux System Administration

Instalação

A instalação pode ser feita de diversas formas

− CDROM;

− HD;

− REDE (utilizando protocolos);

− NFS (Network File System);

− SAMBA (integra maquinas windows);

HTTP(faz a transferencia de arquivos pelo browser)− FTP (Faz transferencia de arquivos mais eficiente e mais rápida)

Reiniciar a máquina, entrar no SETUP, mudar o primeiro boot da maquina para CDROM, salvar e

sair.

 NOTA: Estes passos de instalaçã o, sã o exclusivos para a distribuiçã o Slackware.

 Passo 1) Boot com o cdrom de instala çã o

Ao inserir o disco de boot no cdrom, selecione a opção da BIOS para boot através da unidade

de CDROM. Ao iniciar o sistema, a tela de boot do slackware irá solicitar a forma de inicializar o

sistema. Neste caso basta pressionar <enter> .

  Seja um Profissional Aprendendo com Profissionais 8

Page 9: 139166004-Curso-Red-Hat

8/12/2019 139166004-Curso-Red-Hat

http://slidepdf.com/reader/full/139166004-curso-red-hat 9/146

Linux System Administration

 Passo 2) Escolher o teclado

Após pressionar <enter> e definir qual o kernel será inicializado, será disponibilizada uma tela

onde deve-se definir qual o layout de teclado será utilizado. Neste caso basta digitar <1> e pressionar

a tecla <enter>.

Na próxima tela foi escolhido o teclado abnt2 com acentos. Após a escolha do teclado, será 

disponibilizada uma janela para teste do teclado. Caso o teclado esteja correto, basta digitar <1> e

pressionar <enter>. Caso o teclado escolhido não seja o ideal, pressione <2> e <enter> e retorne para

a tela de escolha de teclados.

  Seja um Profissional Aprendendo com Profissionais 9

Page 10: 139166004-Curso-Red-Hat

8/12/2019 139166004-Curso-Red-Hat

http://slidepdf.com/reader/full/139166004-curso-red-hat 10/146

Linux System Administration

 Passo 3) Logar no sistema

Após a escolha do teclado, será solicitado um login de usuário para continuar a instalação do

sistema operacional. Neste caso basta digitar root e pressionar <enter>.

 Passo 4)  Particionar o disco rí  gido

Motivos para particionamento:

Segurança: Existem opções que determinam os modos de funcionamento do sistema de arquivos, e

conseqüentemente o que é possí vel fazer com os dados lá gravados. Diretórios contendo arquivos do

sistema, podem em grande parte funcionar em um modo que permite apenas leitura, evitando

destruição do sistema até mesmo por usuários privilegiados. Outros diretórios, como o responsável

pela inicialização do sistema, não precisam nem mesmo estar disponí vel aos usuários. A separação

destes diretórios em partições separadas garante este ní vel extra de controle e segurança.

Espaço em disco: O funcionamento normal de um sistema Linux depende de uma certa quantidade

livre de espaço em disco. Imagine que um determinado processo, ou usuário, fora de controle, comece

a preencher o espaço disponí vel em disco. Esta simples ação colocaria a estabilidade do sistema em

Seja um Profissional Aprendendo com Profissionais 10

Page 11: 139166004-Curso-Red-Hat

8/12/2019 139166004-Curso-Red-Hat

http://slidepdf.com/reader/full/139166004-curso-red-hat 11/146

Linux System Administration

cheque. Ao dedicar uma partição para usuários ou determinados processos (que têem necessidades

legí timas de gravar dados), o sistema permaneceria sem modificações em uma situação igual à 

apresentada primeiramente.

Velocidade: Caso seu sistema possua mais de um disco, a distribuição de diferentes áreas do sistema

entre os discos trará   melhorias na performance do sistema. Imagine que você   está   iniciando

automaticamente um aplicativo (instalado em uma partição no primeiro disco) ao clicar sobre o í cone

de um documento (armazenado em uma outra partição, em um outro disco). O sistema consegue

enviar ordens de leitura de dados simultaneamente para os dois discos, que colocam o aplicativo e odocumento em memória em um tempo muito menor.

Proteção contra erros f í sicos:  Danos f í sicos ao disco podem causar a corrupção do sistema de

arquivos como um todo, dificultando ou impossibilitando a leitura de todos os dados nele

armazenados. A separação de áreas em partições, e conseqüentemente em sistemas de arquivos

diferentes, diminui o estrago causado por um dano f í sico.

Após o login, devemos criar as partições para a instalação do nosso sistema. Neste servidor serão

criadas 5 partições, seguindo os seguintes passos:

a) acessar o disco

# fdisk /dev/hda

  Seja um Profissional Aprendendo com Profissionais 11

Page 12: 139166004-Curso-Red-Hat

8/12/2019 139166004-Curso-Red-Hat

http://slidepdf.com/reader/full/139166004-curso-red-hat 12/146

Linux System Administration

b)criando novas partições

Command ( m for help ): n

c)definindo se a partição é primaria ou extendida. No nosso caso será primária. Para isto, basta digitar

<p>.

Command action

e extended

p primary partition ( 1-4 ):

Após escolher partição primária, será solicitado o número da partição. Neste caso devemos

digitar <1> para primeira partição.

Partition number ( 1-4 ):

d) definindo o tamanho da partição: logo após a escolha do número da partição, devemos definir qual

será o ponto inicial da partição. Neste caso basta pressionar <enter>.

Nota: Para as nossas instalações, o ponto inicial sempre será definido pressionando a tecla <enter>.

First cylinder (1-4870, default 1):

Devemos definir agora o ponto final da partição.

 Last cylinder or +size ou +sizeM or +sizeK (1-4870, default 4870): +75M 

e) criando partição extendida.

Command ( m for help ): n

Devemos digitar <e> e logo após <2> para indicar o número da partição extendida.

Command action

e extended

 p primary partition ( 1-4 ):

  Seja um Profissional Aprendendo com Profissionais 12

Page 13: 139166004-Curso-Red-Hat

8/12/2019 139166004-Curso-Red-Hat

http://slidepdf.com/reader/full/139166004-curso-red-hat 13/146

Linux System Administration

e

Partition number (1-4) : 2

First cylinder (10-4870, default 10):

Devemos pressionar <enter> para selecionar todo o restante do disco.

 Last cylinder or +size ou +sizeM or +sizeK (10-4870, default 4870):

f) criando a segunda partição do sistema.

Command ( m for help ): n

Command action

  l logical (1 or over):

  p primary partition (1-4):

Devemos escolher <L> de lógica.

First cylinder (11-4870, default 4870):

 Last cylinder or +size ou +sizeM or +sizeK (11-4870, default 4870):+256M 

g) criando a terceira partição do sistema.

Command ( m for help ): n

Devemos escolher <L> de lógica.

Command action

  l logical (2 or over):

  p primary partition (1-4):

Devemos escolher <L> de lógica.

First cylinder (43-4870, default 4870):

 Last cylinder or +size ou +sizeM or +sizeK (43-4870, default 4870):+256M 

h) criando a quarta partição do sistema.

Command ( m for help ): n

Devemos escolher <L> de lógica.

  Seja um Profissional Aprendendo com Profissionais 13

Page 14: 139166004-Curso-Red-Hat

8/12/2019 139166004-Curso-Red-Hat

http://slidepdf.com/reader/full/139166004-curso-red-hat 14/146

Linux System Administration

Command action

  l logical (3 or over):

  p primary partition (1-4):

Devemos escolher <L> de lógica.

First cylinder (75-4870, default 4870):

 Last cylinder or +size ou +sizeM or +sizeK (75-4870, default 4870):+30000M 

i) criando a quinta e última partição do sistema.

Command ( m for help ): n

Devemos escolher <L> de lógica.

Command action

  l logical (4 or over):

  p primary partition (1-4):

Devemos escolher <L> de lógica.

First cylinder (3723-4870, default 4870):

Devemos pressionar <enter> para selecionar todo o restante do disco. Last cylinder or +size ou +sizeM or +sizeK (3722-4870, default 4870):

Após finalizar as partições, devemos escolher tipo do sistema de arquivos. Neste caso iremos

mudar o sistema das partições 5 e 6 para swap.

Definindo o tipo da partição 5.

Command ( m for help ): t

Partition number(1-8): 5

 Hex code (type L to list codes): 82

Definindo o tipo da partição 6.

Command ( m for help ): t

Partition number(1-8): 6

 Hex code (type L to list codes): 82

Seja um Profissional Aprendendo com Profissionais 14

Page 15: 139166004-Curso-Red-Hat

8/12/2019 139166004-Curso-Red-Hat

http://slidepdf.com/reader/full/139166004-curso-red-hat 15/146

Linux System Administration

Após todas as configurações podemos visualizar se esta tudo correto através da opção <p>

Command ( m for help ): p

 Disk /dev/hda: 40.0 GB, 40060403712 bytes

255 heads, 63 sectors/track, 4870 cylinders

Units = cylinders of 16065 * 512 = 8225280 bytes

  Device Boot Start End Blocks Id System

/dev/hda1 1 10 80293+ 83 Linux

/dev/hda2 11 4870 39037950 5 Extended

/dev/hda5 11 42 257008+ 82 Linux swap

/dev/hda6 43 74 257008+ 82 Linux

swap/dev/hda7 75 3722 29302528+ 83 Linux

/dev/hda8 3723 4870 9221278+ 83 Linux

 j) Salvar todas as configurações.

Para salvar todas as configurações devemos escolher a opção <w>.

Command ( m for help ): w 

Calling ioctl() to re-read partition table.

Syncing disks.

 Passo 5) Iniciando a instala çã o atravé s do software de instala çã o do slackware

Devemos agora digitar <setup>, para iniciar o software de instalação.

  Seja um Profissional Aprendendo com Profissionais 15

Page 16: 139166004-Curso-Red-Hat

8/12/2019 139166004-Curso-Red-Hat

http://slidepdf.com/reader/full/139166004-curso-red-hat 16/146

Linux System Administration

 Passo 6) Formatando as parti ções de SWAP

Neste passo, escolha direto a 3ª opção ADDSWAP .

Após feita a escolha da partição confirme com <yes> a formatação das partições de SWAP.

  Seja um Profissional Aprendendo com Profissionais 16

Page 17: 139166004-Curso-Red-Hat

8/12/2019 139166004-Curso-Red-Hat

http://slidepdf.com/reader/full/139166004-curso-red-hat 17/146

Linux System Administration

 Passo 7) Formatando as outras parti ções.

Após o término da formatação das partições de SWAP, teremos que indicar em qual partição

devemos instalar a partição raiz ( / ). Neste caso devemos escolher a partição /dev/hda8.

Na próxima tela devemos confirmar se desejamos formatar a partição indicada. Devemos

confirmar pressionando <enter> .

A próxima tela solicita que nós indique-mos qual é o tipo de sistemas de arquivos que iremos

utilizar para esta partição. Neste caso vamos utilizar o sistema de arquivos ext3 .

Seja um Profissional Aprendendo com Profissionais 17

Page 18: 139166004-Curso-Red-Hat

8/12/2019 139166004-Curso-Red-Hat

http://slidepdf.com/reader/full/139166004-curso-red-hat 18/146

Linux System Administration

Após esta escolha uma tela com o tamanho dos blocos de alocação de arquivos será disponibilizada.

Devemos utilizar a opção de 4096 blocks.

Após a formatação da partição raiz, o software de instalação irá retornar a tela de escolha das

partições. Escolha a partição /dev/hda1 e defina como /boot ; partição /dev/hda7  e defina como /var .

 Passo 8) Definindo a mí  dia que conté m os arquivos de instala çã o.

Após a formatação de todas as partições o programa de instalação disponibilizada uma tela

onde devemos informar a fonte que contém os arquivos para instalação. Neste caso devemos escolher

a primeira opção.

  Seja um Profissional Aprendendo com Profissionais 18

Page 19: 139166004-Curso-Red-Hat

8/12/2019 139166004-Curso-Red-Hat

http://slidepdf.com/reader/full/139166004-curso-red-hat 19/146

Linux System Administration

Logo após devemos definir se a busca pela mí dia é automática ou manual. Neste caso devemos

definir como manual.

 Passo 9) Escolhendo os pacotes que ser ã o instalados

Após o sistema detectar os arquivos de instalação, será  disponibilizada uma tela com os

aplicativos que podem ser instalados.

  Seja um Profissional Aprendendo com Profissionais 19

Page 20: 139166004-Curso-Red-Hat

8/12/2019 139166004-Curso-Red-Hat

http://slidepdf.com/reader/full/139166004-curso-red-hat 20/146

Linux System Administration

Devemos escolher todos os pacotes dos grupos:

[A]: base do sistema linux

[D]: pacotes de desenvolvimento

[F]: pacotes com a listas de FAQ's

[K]: pacotes de desenvolvimento do Kernel

[KDE]: pacotes do ambiente gráfico KDE

[L]: pacotes com as bibliotecas

[N]: pacotes dos aplicativos de rede

Após a escolha dos pacotes, será disponibilizada uma tela com o tipo de instalação, escolha a

opção menu, e pressione <enter> nas próximas telas de confirmação e aguardar a cópia dos arquivos.

  Seja um Profissional Aprendendo com Profissionais 20

Page 21: 139166004-Curso-Red-Hat

8/12/2019 139166004-Curso-Red-Hat

http://slidepdf.com/reader/full/139166004-curso-red-hat 21/146

Linux System Administration

 Passo 10) Escolha do local do kernel 

Após a instalação dos pacotes escolhidos, uma nova tela será disponibilizada para que possa-

mos informar qual a ordem de busca pelo kernel. Neste caso iremos escolher a última opção skip.

Seja um Profissional Aprendendo com Profissionais 21

Page 22: 139166004-Curso-Red-Hat

8/12/2019 139166004-Curso-Red-Hat

http://slidepdf.com/reader/full/139166004-curso-red-hat 22/146

Linux System Administration

 Passo 11) Gera çã o do disco de boot

Nesta tela será questionado se desejamos criar um disco de boot. Neste caso não iremos criar

este disco de boot. Iremos escolher a opção skip.

 Passo 12) Configura çã o do modem

Nesta tela é disponibilizada a configuração do modem, caso ele exista na máquina. No nosso

caso iremos marcar a opção no modem, pois não existe modem em nosso servidor.

 Passo 13) Habilitar HotPlug

Nesta tela devemos informar se queremos que o sistema linux ao inicializar carregue os

dispositivos HotPlugs (dispositivos USB em geral). Neste caso, vamos marcar a opção <yes>.

  Seja um Profissional Aprendendo com Profissionais 22

Page 23: 139166004-Curso-Red-Hat

8/12/2019 139166004-Curso-Red-Hat

http://slidepdf.com/reader/full/139166004-curso-red-hat 23/146

Linux System Administration

 Passo 14) Configura çã o do LILO

A próxima tela de configuração é a do lilo, neste caso vamos marcar a opção simple.

Em seguida, uma tela de comandos especiais para o LILO será mostrada, neste nosso caso

vamos simplesmente confirmar com <enter>

  Seja um Profissional Aprendendo com Profissionais 23

Page 24: 139166004-Curso-Red-Hat

8/12/2019 139166004-Curso-Red-Hat

http://slidepdf.com/reader/full/139166004-curso-red-hat 24/146

Linux System Administration

Após a escolha do lilo, uma nova tela mostra que devemos escolher onde o lilo dever ser

gravado. Iremos gravá-lo na MBR, para isto basta marcar a opção MBR.

 Passo 15) Configura çã o do Mouse

Nesta opção devemos escolher o tipo do mouse utilizado. Podemos marcar a primeira opção,

mesmo não tendo um mouse presente em nossa máquina. Basta pressionar <enter> em ps2.

  Seja um Profissional Aprendendo com Profissionais 24

Page 25: 139166004-Curso-Red-Hat

8/12/2019 139166004-Curso-Red-Hat

http://slidepdf.com/reader/full/139166004-curso-red-hat 25/146

Linux System Administration

Na próxima tela devemos configurar se o mouse será inicializado em modo texto. Neste caso

vamos marcar a opção yes.

 Passo 16) Configura çã o da Rede

A próxima tela irá permitir que seja realizado a configuração da rede. Neste caso vamos

confirmar marcando a opção <yes>.

a) Na primeira opção iremos definir o nome da máquina. Nosso caso: server.

  Seja um Profissional Aprendendo com Profissionais 25

Page 26: 139166004-Curso-Red-Hat

8/12/2019 139166004-Curso-Red-Hat

http://slidepdf.com/reader/full/139166004-curso-red-hat 26/146

Page 27: 139166004-Curso-Red-Hat

8/12/2019 139166004-Curso-Red-Hat

http://slidepdf.com/reader/full/139166004-curso-red-hat 27/146

Linux System Administration

 Passo 18) Definindo os servi ç os que dever ã o ser carregados ao iniciar o sistema

Neste caso somente confirme com <enter>

 Passo 19) Configura çã o prévia de fonte

Neste caso marque a opção <No>.

  Seja um Profissional Aprendendo com Profissionais 27

Page 28: 139166004-Curso-Red-Hat

8/12/2019 139166004-Curso-Red-Hat

http://slidepdf.com/reader/full/139166004-curso-red-hat 28/146

Linux System Administration

 Passo 20) Escolha do tipo de atualiza çã o do rel  ó gio da m áquina

Neste caso vamos marcar <No> .

 Passo 21) Escolha do Fuso Hor á rio

No nosso caso vamos escolher o América/São_Paulo e confirmar com <enter>

 Passo 22) Definir a senha do Administrador do sistema (root)

Basta confirmar com <enter> para definir a senha do root.

  Seja um Profissional Aprendendo com Profissionais 28

Page 29: 139166004-Curso-Red-Hat

8/12/2019 139166004-Curso-Red-Hat

http://slidepdf.com/reader/full/139166004-curso-red-hat 29/146

Linux System Administration

 Passo 23) Finalizando a instala çã o

A instalação do Slackware-Linux foi finalizada, basta confirmar com <enter> e reiniciar o

sistema, digitando <ctrl>+<alt>+<del>, ou digitando reboot.

  Seja um Profissional Aprendendo com Profissionais 29

Page 30: 139166004-Curso-Red-Hat

8/12/2019 139166004-Curso-Red-Hat

http://slidepdf.com/reader/full/139166004-curso-red-hat 30/146

Linux System Administration

Iniciando o Sistema Operacional

Para ter acesso ao sistema, entre com:

login: <informar um login do sistema>

password: <informar a senha do login>

Após o logon, o prompt de comandos é iniciado, e ficará aguardando por comandos digitados por nós

usuários, da seguinte forma:

[root@host /root]#Onde:

root: Mostra o usuário que está logado no sistema.

host: Mostra o nome da máquina.

 /root: Indica o diretório atual .

#: Indica que é o super-usuário que está logado.

NOTA: Quando qualquer usuário comum está logado no sistema a sua indicação é o caractere “$” (além do nome de usuário) como

alternativa ao caractere ‘#’.

Comandos B á sicos

No linux, todos os comandos terão a seguinte forma:

[COMANDO] -[OPÇÕES] [PARAMETROS]

Listar conteúdo de diretórios

Sintaxe: ls [opção] [arquivo]

# ls -a: lista arquivos ocultos. 

# ls -l: lista detalhadamente;

# ls -F: lista mostrando o tipo do arquivo

# ls -la: lista todo conteúdo do diretório no formato longo (detalhando).

  Seja um Profissional Aprendendo com Profissionais 30

Page 31: 139166004-Curso-Red-Hat

8/12/2019 139166004-Curso-Red-Hat

http://slidepdf.com/reader/full/139166004-curso-red-hat 31/146

Page 32: 139166004-Curso-Red-Hat

8/12/2019 139166004-Curso-Red-Hat

http://slidepdf.com/reader/full/139166004-curso-red-hat 32/146

Linux System Administration

Sintaxe: cp [opção] <origem> <destino>

# cp /etc/passwd /root : copia o arquivo de senhas passwd para o dir. /root.

# cp /root/passwd /root/passwd.bkp : copia o arquivo passwd para passwd.bkp

# cp /etc/shadow /etc/group /tmp : copia os arquivos shadow e group para o dir.

/tmp.

# cp /etc/*.conf /tmp : copia todos arquivos com extensão .conf para /tmp.

# cp /etc/* /tmp : copia todos arquivos (não diretórios) para /tmp.

# cp -f /etc/* /tmp: copia todos arquivos com extensão .conf para /tmp. -f =

forca a cópia de arquivos. Não copia diretórios.

# cp -rf /etc/* /tmp: copia todo conteudo do diretório /etc para /tmp. -r =

cópia recursiva.

Incluir arquivos e diretórios

Criando Arquivos Vazios

Usado para criar arquivos de log (usado por aplicações), por exemplo.

Sintaxe: touch [arquivo] ou cat > [arquivo]

# touch ~/arquivo.txt

# cat > ~/teste.txt : Pressione Ctrl+D para salva e sair.

Removendo Diretórios

Sintaxe: rmdir [opção] <nome-diretório>

# rmdir 3way : remove a pasta 3way no diretório atual.

# rmdir /etc : Erro! diretório não vazio.

# rmdir p1/p2/p3/p4/ : Erro! é necessário uma opção.

# rmdir -p p1/p2/p3/p4/ : remove a árvores de diretórios na ordem p4/p3/p2/p1

-p: remove as pastas relacionadas.

# rmdir d1 d2 d3 : remove os diretórios d1, d2 e d3 do nível atual.

NOTA: O comando rmdir não é  usado na pratica porque remove apenas diretórios vazios. Uma alternativa a este comando é  a

utilização do comando rm, mostrado abaixo.

  Seja um Profissional Aprendendo com Profissionais 32

Page 33: 139166004-Curso-Red-Hat

8/12/2019 139166004-Curso-Red-Hat

http://slidepdf.com/reader/full/139166004-curso-red-hat 33/146

Linux System Administration

Removendo Arquivos e Diretórios

Sintaxe: rm [opção] <arquivo/diretório>

# rm /tmp/*.conf : remove todos arquivos com extensão .conf do dir. /tmp.

Solicita confirmação.

# rm -f /tmp/*.conf : força a remoção de todos arquivos .conf do dir. /tmp. Não

solicita confirmação (-f).

# rm -rf /tmp/* : remove recursivamente (-r) todo o conteúdo de /tmp sem

confirmação (f).

CUIDADO! A utiliza çã o do comando rm com a op çã o -rf , pois geralmente é muito dificil realizar

 a recupera çã o de arquivos no sistema Linux.

Movendo/Renomeando Arquivos e Diretórios

Sintaxe: mv <opção> <origem> <destino># mv ~/teste.txt /tmp : move o arquivo para o dir. /tmp. (~/ = indica o

diretório pessoal do usuário)

# mv /tmp/teste.txt ~/ : move o arquivo para o dir. pessoal do usuário (~/)

# mv /tmp/shadow . : move o arquivo para o dir. Atual (.)

# mv ~/arquivo.txt ~/arq.txt : renomeia o arquivo.txt para arq.txt

Visualização do conteúdo de arquivos

Comando head

visualiza as primeiras 10 linhas do arquivo, por padrão.

Sintaxe: head <opção> <arquivo>

# head /etc/passwd : mostra as 10 primeiras linhas do arquivo passwd por padrão.

# head -n20 /etc/passwd : mostra as 20 primeiras linhas do arquivo passwd.

  Seja um Profissional Aprendendo com Profissionais 33

Page 34: 139166004-Curso-Red-Hat

8/12/2019 139166004-Curso-Red-Hat

http://slidepdf.com/reader/full/139166004-curso-red-hat 34/146

Linux System Administration

Comando tail

Visualiza as ultimas 10 linhas do arquivo, por padrão.

Sintaxe: tail <opção> <arquivo>

# tail /etc/passwd: mostra as 10 ultimas linhas do arquivo passwd por padrão.

# tail -n20 /etc/passwd: mostra as 20 primeiras linhas do arquivo passwd.

# tail -f /var/log/messages: fica lendo o arquivo ininterruptamente (-f). Usada

para arquivos de log.

Comando cat

Este comando pode ser utilizado para criar arquivos, mas ele também pode ser utilizado para mostrar

conteúdo de arquivos, veja no exemplo:

Sintaxe: cat <opção> <nome do arquivo>

# cat /etc/termcap: mostra o conteúdo do arquivo /etc/termcap.

# cat -n /etc/termcap: mostra o conteúdo e conta as linhas do arquivo incluindo

linhas em branco.

# cat -b /etc/termcap: idem ao anterior. Porém não conta linhas em branco do

arquivo.

Comando sort

Sintaxe: sort <opção> <arquivo>

# sort -d /etc/group : ordena as linhas do arquivo /etc/group na ordem de

dicionário. (a,b,c,d,...,aa,ab,ac...)

# sort -r /etc/group : ordena as linhas do arquivo /etc/group na ordem inversa

de dicionario. (z, x, v...;zz,zx,zv...)

Comando grep

Procura pela ocorrência de uma string no arquivo especificado

Sintaxe: grep <opção> <expressão> <arquivo>

# grep -in go cidades.txt : procura as linhas do arquivo que aparecem à 

expressão ‘go’ e indica a linha que estes estão na tela.

-i = ignora a diferença de tamanho dos caracteres (g == G)

-v = mostra as linhas que não aparece a string

Seja um Profissional Aprendendo com Profissionais 34

Page 35: 139166004-Curso-Red-Hat

8/12/2019 139166004-Curso-Red-Hat

http://slidepdf.com/reader/full/139166004-curso-red-hat 35/146

Linux System Administration

-c = mostra o número de vezes que foi encontrada a expressão -n coloca o número da linha em

que foi encontrada a expressão.

No exemplo acima o arquivo cidades.txt existe e é buscado ocorrências da sí laba go dentro do arquivo.

Comandos de Paginação

Os comandos de paginação são necessários quando desejamos ler um determinado arquivo

pausadamente. São eles: more e less.

Comando more

# more /etc/termcap: mostra o conteúdo do arquivo termcap. O comando é finalizado automaticamente ao seu final.

Este comando possui vários recursos:

[enter]; anda linha a linha no arquivo;

[barra de espaço]: anda página a página no arquivo;

[h] ou [?] : visualiza o help;

[b]: retorna a tela anterior;

[q]: sai do paginador more.

Comando less

# less /etc/termcap : mostra o conteúdo do arquivo termcap. O comando não é 

finalizado automaticamente ao seu final, para sair pressione <q>.

Este comando possui vários recursos:

[enter]; anda linha a linha no arquivo;

[barra de espaço]: anda página a página no arquivo;

[h] : visualiza o help;

[b]: retorna a tela anterior;

[q]: sai do paginador more.

 /nome : busca a palavra nome no arquivo.

  Seja um Profissional Aprendendo com Profissionais 35

Page 36: 139166004-Curso-Red-Hat

8/12/2019 139166004-Curso-Red-Hat

http://slidepdf.com/reader/full/139166004-curso-red-hat 36/146

Linux System Administration

Desligando o Sistema Operacional Linux

# halt: desliga o sistema imediatamente.

# shutdown -h now: desliga o sistema imediatamente. Envia uma mensagem pra todos

os usuários logados no sistema.

# shutdown -h 30 “Atenção: O Sistema será desligado dentro de 30 minutos!” :

envia a mensagem entre aspas duplas para todos usuários logados.

Reiniciando o Sistema Operacional Linux

# reboot: reinicia imediatamente.

# shutdown -r now: reinicia imediatamente. Envia uma mensagem pra todos os

usuários logados no sistema. (-r == reboot)

# shutdown -r 30 “Atenção: o Sistema será reiniciado dentro de 30 minutos”

# <Ctrl+Alt+Del>: reinicia o sistema. Essa opção pode ser desabilitada no

arquivo /etc/inittab.

Redirecionamento de Entrada e Saida

O computador é formado por diversos componentes, muitas vezes conhecidos como perif éricos, sendo

os seus principais o monitor e o teclado, que sem estes não teria saí da ou entrada, respectivamente,

para o sistema.

Estes dois componentes formam o principal meio de comunicação entre usuário e o computador, com

funções bem distintas entre eles. O teclado fornece a entrada de um determinado dado inicial para o

sistema, e o monitor a saí da da informação.

Existem outros meios de comunicação entre o usuário e o computador, mas estas são as principais,

podem servir de entrada de dados o mouse (em diversos programas, em maioria gráficos), scanner, a

rede, CD-ROM ou disquete, e como saí da (além do monitor) a impressora, a rede, CD-ROM ou

disquete, existem muitos outros tanto para a entrada quanto para a saí da, mas estes são os mais

Seja um Profissional Aprendendo com Profissionais 36

Page 37: 139166004-Curso-Red-Hat

8/12/2019 139166004-Curso-Red-Hat

http://slidepdf.com/reader/full/139166004-curso-red-hat 37/146

Linux System Administration

conhecidos.

Os sistemas UNIX, incluindo o Linux, lidam com 3 dispositivos básicos:

● Entrada padrão, também conhecido por STDIN

● Saí da padrão, também conhecido por STDOUT

● Saí da de erro padrão, também conhecido por STDERR

Os sistemas UNIX também possuem um conceito interessante, onde “tudo é  um arquivo”. Este

conceito permite escrever em dispositivos externos exatamente da mesma maneira que se escreve em

arquivos. Conseqüentemente, os dispositivos básicos mencionados acima são também arquivos.

Programas UNIX, incluindo o shell, lidam com arquivos através de descriptores, números que

representam um determinado arquivo que está aberto para leitura e/ou escrita.

A entrada padrão, a saí da padrão e a saí da de erro padrão, também possuem estes descriptores. Segue

uma tabela com o resumo destes dispositivos, incluindo o número dos descriptores de arquivo.

Dispositivo Apelido Número do Descriptor

de Arquivo

Mapeado por Padrão

Para:

Entrada padrão STDIN 0 Teclado

Saí da padrão STDOUT 1 Monitor

Saí da de erro padrão STDERR 2 Monitor

O uso do redirecionamento é muito simples, enquanto que o monitor é a forma padrão de saí da de

informações, e o teclado a forma padrão de entrada, um outro arquivo ou dispositivo podem assumir o

papel destes dispositivos de entrada e saí da padrão.

Executar determinadas operações e direcionar o resultado para um arquivo pode ser bem mais

conveniente que ter que copiá-las manualmente da tela para um arquivo. O conteúdo destes arquivos

(o resultado gerado por determinado comando), pode então ser manipulado normalmente, sendo

Seja um Profissional Aprendendo com Profissionais 37

Page 38: 139166004-Curso-Red-Hat

8/12/2019 139166004-Curso-Red-Hat

http://slidepdf.com/reader/full/139166004-curso-red-hat 38/146

Linux System Administration

possí vel, por exemplo, a pesquisa de algum valor.

 Redirecionamento de Saí  da

Um exemplo de redirecionamento de saí da é utilizando o comando ls -la; este comando, por padrão,

lista todo conteúdo contidos dentro do diretório atual incluindo detalhes sobre cada arquivo ou

diretório e mostra o resultado na tela, certo? Ao invés de utilizarmos a saí da padrão, o monitor, do

comando ls –la, iremos utilizar um arquivo como alternativa. Para isso utilizamos o redirecionador de

saí da que é indicado com um sinal de maior que, >. Veja o exemplo:

# ls –la > saida.txt

Observe que, com a execução deste comando não apareceu nenhuma saí da no monitor, que é a saí da

padrão. Observe também que um arquivo com o nome saida.txt foi criada no diretório atual. Execute o

comando cat saida.txt, a saí da que era para aparecer na tela foi redirecionada para este arquivo.

 Redirecionamento de Entrada

Antes de exemplificar um redirecionamento de entrada, vamos fazer o seguinte:

Crie um arquivo com o nome cidades.txt contendo o conteúdo: Goiânia, Anápolis, Damolândia, Nova

Era, Aparecida, Goianésia. Cada cidade em uma linha!

O arquivo deverá ficar da seguinte forma:

Goiânia

Anápolis

Damolândia

Nova Era

Aparecida

  Seja um Profissional Aprendendo com Profissionais 38

Page 39: 139166004-Curso-Red-Hat

8/12/2019 139166004-Curso-Red-Hat

http://slidepdf.com/reader/full/139166004-curso-red-hat 39/146

Linux System Administration

Goianésia

Comando sort 

Ordena as linhas do arquivo.

Execute e verifique a saí da do comando.

#sort cidades.txt

Após a visualização do comando acima, vamos ver um exemplo de redirecionamento de entrada. Para

isso, podemos utilizar como entrada o arquivo cidades.txt para a criação de um outro arquivo – de

saí da, por exemplo. O redirecionamento de entrada é indicado com um sinal de menor que, <.

Veja o exemplo:

# sort < cidades.txt > cidadessordenadas.txt

O comando acima recebe o arquivo cidades.txt como entrada e redireciona para um arquivo de saí da,

cidadesordenadas.txt.

 Pipe

A idéia principal do uso do comando pipe ("|") é fazer com que os comandos trabalhem em conjunto.

Um comando trabalhando sozinho geralmente é limitado quanto sua funcionalidade, revelando uma

outra caracterí stica dos sistemas operacionais UNIX: “faça apenas uma coisa, mas faça-a bem”.

Os pipes facilitam o trabalho em equipe dos utilitários UNIX. Neste cenário, cada aplicativo executa

determinada operação no arquivo, e passa o resultado para o próximo utilitário. Pense em pipes como

uma linha de produção, onde as determinadas etapas são realizadas por diferentes utilitários UNIX.

  Seja um Profissional Aprendendo com Profissionais 39

Page 40: 139166004-Curso-Red-Hat

8/12/2019 139166004-Curso-Red-Hat

http://slidepdf.com/reader/full/139166004-curso-red-hat 40/146

Page 41: 139166004-Curso-Red-Hat

8/12/2019 139166004-Curso-Red-Hat

http://slidepdf.com/reader/full/139166004-curso-red-hat 41/146

Page 42: 139166004-Curso-Red-Hat

8/12/2019 139166004-Curso-Red-Hat

http://slidepdf.com/reader/full/139166004-curso-red-hat 42/146

Linux System Administration

Estrutura de Diretórios

A estrutura de diretórios é organizada em forma de uma árvore, para uma melhor organização dos

arquivos de configuração do sistema e facilitar a busca dos mesmos. Cada diretório possui uma

finalidade, são elas:

 / : É o diretório raiz do sistema. Todos os outros diretórios estão abaixo dele. Os mais importantes são:

 /bin: diretório que contém todos os comandos do sistema operacional, caso um comando não

funcione, seu arquivo não está no diretório ou o arquivo está corrompido ou ainda o comando só  pode

ser executado somente pelo root.

 /boot: É o diretório que contém o kernel e todos arquivos necessários para a inicialização.

 /dev: diretório que contém todos os arquivos dos dispositivos de hardware do S.O (pl. de rede, ví deo,

hd, floppy, mouse, impressora, etc).

 /etc: É o diretório que contém os arquivos de configuração local da máquina. Um administrador de

uma rede 90% do tempo ele estará neste diretório.

 /home: É o diretório que contem as pastas de trabalho de todos usuários comuns do sistema.

 /lib: diretório que contém as bibliotecas do sistemas operacional linux.

 /mnt: diretório recomendado para a montagem dos dispositivos (floppy, cdrom, etc)

 /opt: diretório recomendado para instalação de aplicativos. semelhante ao diretórios "Arquivos de

Programas" do Windows.

  Seja um Profissional Aprendendo com Profissionais  42

Page 43: 139166004-Curso-Red-Hat

8/12/2019 139166004-Curso-Red-Hat

http://slidepdf.com/reader/full/139166004-curso-red-hat 43/146

Linux System Administration

 /proc: diretório especial do linux. Nele, possui todos os processos em execução do sistema. Este

diretório fica armazenado somente memória volátio (RAM), não fisicamente no disco.

 /root: É o diretório de trabalho do administrador do sistema (superusuário).

 /sbin: diretório que contém as ferramentas de configuração do sistema. Ex.: fdisk (particionador), fsck

(scandisk), mkbootdisk (cria disco de boot), ifconfig (configura pl. de rede), lilo (gerencia ordem de

boot), lspci (lista os dispositivos de hardware detectados), etc.

 /tmp: diretório que possui os arquivos temporários gerados pelas aplicações/utilitários.

 /usr: diretório que contém os principais aplicativos do sistema (ambientes gráfico, jogos, etc).

semelhante a pasta "windows" do win98.

 /var: possui os arquivos variáveis, que modificam com o passar do tempo (spool de impressão, arq. de

log, etc).

Dispositivos

Já verificamos que no diretório /dev possui todos os arquivos de configuração dos dispositivos de

hardware, mas caso precise configurar uma placa de rede, por exemplo, qual arquivo (dispositivo)

referenciar? Serão citados os principais arquivos de configuração dos dispositivos de hardware. São

eles:

Portas Seriais

Windows Linux

COM1 ttyS0

COM2 ttyS1

COM3 ttyS2

  Seja um Profissional Aprendendo com Profissionais 43

Page 44: 139166004-Curso-Red-Hat

8/12/2019 139166004-Curso-Red-Hat

http://slidepdf.com/reader/full/139166004-curso-red-hat 44/146

Linux System Administration

Portas Paralelas

Windows Linux

LTP1 lp0

LTP2 lp1

Discos Flexí veis

Windows Linux

A: fd0

B: fd1

Hard Disk 

Windows Linux

C: hda: master IDE1

D: hdb: slave IDE1

E: hdc: master IDE2

F: hdd: slave IDE2

Placa de Rede

Windows Linux

Ethernet Adapter 1 eth0

Ethernet Adapter 2 eth1

Ethernet Adapter 3 eth2

  Seja um Profissional Aprendendo com Profissionais 44

Page 45: 139166004-Curso-Red-Hat

8/12/2019 139166004-Curso-Red-Hat

http://slidepdf.com/reader/full/139166004-curso-red-hat 45/146

Linux System Administration

Consoles Virtuais

Por ser um Sistema Operacional multiusuário e multitarefa, o linux trabalha com consoles virtuais,

que são nada mais que terminais de trabalho, seja ele gráfico ou texto. Por padrão, existem 6 consoles

texto, e 6 consoles gráficas, como mostra abaixo:

<F1> <F2> <F3> <F4> <F5> <F6> <F7> <F8> <F9> <F10> <F11> <F12>

|---------------------------------------------| |--------------------------------------------------|

Consoles Texto Consoles Gráficas

Para alternar entre as consoles, texto ou gráfica, basta pressionar simultaneamente as teclas

CTRL+ALT+Fx. Onde x é um número de 1 a 12, ou seja, F1 à F12.

Cada ambiente gráfico, possui outros sub-ambientes (4 precisametente), além de diversos shells

(xterm) que funciona como o prompt de comandos do windows. Ou seja, o linux simula o ambiente

texto através de prompt de comandos que se chama xterm (esse nome pode variar entre as

distribuições).

Para carregar um ambiente gráfico digite: startx. Se desejar carregar mais de 1 ambiente gráfico

digite: startx -- :2, caso seja o 2° ambiente gráfico; startx - - :3, caso seja o 3° e assim por diante.

Editores de Texto

No linux há vários editores de texto, entre eles estão:

JoeElvis

Emacs

mcedit

vi

Qual utilizar? Isso, você decide. O mais utilizado é o vi porque ele é mais rápido, eficiente e possui

vários recursos.

  Seja um Profissional Aprendendo com Profissionais 45

Page 46: 139166004-Curso-Red-Hat

8/12/2019 139166004-Curso-Red-Hat

http://slidepdf.com/reader/full/139166004-curso-red-hat 46/146

Page 47: 139166004-Curso-Red-Hat

8/12/2019 139166004-Curso-Red-Hat

http://slidepdf.com/reader/full/139166004-curso-red-hat 47/146

Linux System Administration

10yy = copia as 10 primeiras linhas abaixo do cursor.

10dd = deleta as 10 primeiras linhas abaixo do cursor.

/3way = procura as ocorrências da palavra "3way" no texto.

n = procura novas ocorrências da palavra “3way” no texto..

:!comando = executa comandos dentro do vi. Ex.: :! ls /home

:50 = caminha para linha 50.

:1,n s/3way/3WAY = substitui todas as ocorrências da linha 1 a linha n a

palavra 3way por 3WAY.

:%s/Fone/Telefone = substitui todas as ocorrências da palavra Fone por

Telefone.

Mtools

Mtools são ferramentas DOS para UNIX. Só servem para manipulação de discos flexí veis. Para a

utilização dessa ferramenta o disco flexí vel não deve estar montado. Para visualizar os comandos

suportados pela ferramenta digite: mtools.

Os comandos mais utilizados são:

mtools: mostra quais os comandos existentes.

#mtools

mdir : lista o conteúdo do disco.

# mdir a: : lista o conteúdo do disquete.

mcopy : copia um conteúdo.

# mcopy /etc/passwd a: : copia o arquivo passwd para o disquete.

# mcopy a:\teste.txt /tmp/ : copia do disquete o arquivo teste.txt para o /tmp.

mdel : apaga arquivos dentro do disquete.

# mdel a:\teste.txt : apaga do a: o arquivo teste.txt

  Seja um Profissional Aprendendo com Profissionais 47

Page 48: 139166004-Curso-Red-Hat

8/12/2019 139166004-Curso-Red-Hat

http://slidepdf.com/reader/full/139166004-curso-red-hat 48/146

Linux System Administration

mmd <nome-diretório> : cria diretórios dentro do disquete.

# mmd a:\3way : cria o diretório 3way no disquete.

mformat : formata o conteúdo do disquete.

# mformat a:

mdeltree : deleta arvore de diretórios.

# mdeltree 3way : apaga o diretório 3way e todo seu conteúdo.

mmove: move um arquivo do disquete.

# mmove a:\passwd a:\usuarios : move o arquivo “passwd” do disquete para

“usuarios”

mren : renomeia arquivos do disquete.

# mren usuarios passwd

mtype: visualiza o conteúdo de arquivo contidos no disquete.

# mtype a:\passwd : mostra o conteúdo do arquivo a:\passwd

  Seja um Profissional Aprendendo com Profissionais 48

Page 49: 139166004-Curso-Red-Hat

8/12/2019 139166004-Curso-Red-Hat

http://slidepdf.com/reader/full/139166004-curso-red-hat 49/146

Linux System Administration

Paginas de Manuais

Permite obter informações sobre os comandos no linux. Representa uma ajuda importante para os

comandos.

Comando man

Sintaxe: man <comando> : manuais de informações sobre os comandos.

# man cp : mostra o manual do comando cp

Comando info

Sintaxe: info <comando> : mostra o manual eletronico de informações sobre o comando. (É mais

completo que os man's. Possui atualizações mais rescentes).

# info cp

Comando help

help : mostra uma ajuda do comando. Mostra somente as opções para o comando.

Sintaxe: <comando> --help

# cp -- help

Criando Links

Existem dois tipos de links: hard-link e simbolic link.

Hard-link: Ao criar um hard-link de um arquivo, o arquivo é copiado no diretório atual e a cada

modificação que é feita em um dos arquivos (original ou hard-link) será  repercutida, também, no

arquivo oposto. Por exemplo: Se temos o arquivo /tmp/teste com o conteúdo “teste de hard-link”, e um

hard-link que aponte pra esse arquivo (que terá o mesmo conteúdo) qualquer modificação que ser

feita, tanto no arquivo teste como no hard-link serão repercutidas no arquivo oposto. Ou seja, se eu

abrir o arquivo /tmp/teste e acrescentar a frase

  Seja um Profissional Aprendendo com Profissionais 49

Page 50: 139166004-Curso-Red-Hat

8/12/2019 139166004-Curso-Red-Hat

http://slidepdf.com/reader/full/139166004-curso-red-hat 50/146

Linux System Administration

“Ola mundo” e salvar, ao abrir o hard-link este terá o mesmo conteúdo que seria “teste de hard-link.

Ola Mundo”.

NOTA: Não é possí vel criar hard-links de diretórios, somente de arquivos!

Sintaxe do comando: ln <arquivo-original> <nome-do-hardlink>

# ln /tmp/teste hardlink-teste

Simbolic Link: Funciona como um atalho para o arquivo.

Sintaxe do comando: ln -s <arquivo-original> <nome-do-link>

# ln -s /tmp/teste atalho-teste-s : indica que é um link simbólico.

Comandos de Busca

Comando find : localiza strings no linux.

Sintaxe: find [diretório onde inicia a busca] <opção> [arquivo/diretório]

# find / -iname “*lilo.conf*” : busca uma string (name) (arquivo/diretório)

lilo.conf apartir do diretório raiz (/) do sistema. Ignorando o tamando

maiusculas e minúsculas (i).

-i : ignora maiusculas e minúsculas

name : indica que será buscado uma string.

# find / -iname “*lilo.conf*” > saida.txt : grava todas as saídas da busca

dentro arquivo “saida.txt”.

# find / -iname “*lilo.conf*” 2> erros.log : grava somente as saídas de erro

dentro do arquivo “erros.log”.

# find / -iname “*lilo.conf*” 1> validas.log : grava somente as saídas válidas

dentro do arquivo “validas.log”.

Comando whereis: localiza strings no linux.

  Seja um Profissional Aprendendo com Profissionais 50

Page 51: 139166004-Curso-Red-Hat

8/12/2019 139166004-Curso-Red-Hat

http://slidepdf.com/reader/full/139166004-curso-red-hat 51/146

Linux System Administration

Sintaxe: whereis <palavra-a-ser-buscada>

# whereis passwd : localiza a string passwd no linux.

Comando locate/updatedb: O comando locate utiliza um banco de dados. Para se utilizar esse

comando é   necessário estar atualizando seu banco com os novos arquivos/diretórios que foram

criados. Para isto deve-se executar o comando updatedb (como root)

#updatedb

Sintaxe: locate <palavra-a-ser-buscada>.

# locate passwd : localiza todas as strings que contenha a palavra passwd no

Banco de Dados.

Compactação de Arquivos

O linux possui diversos aplicativos para compressão de aquivos, sendo que cada um deles utiliza um

algoritmo diferente. Entre eles estão:

 gzip:

O comando gzip é usado para compactar/descompactar arquivos. O arquivo original é substituí do por

um arquivo compactado com a extensão .gz

Sintaxe: gzip <opções> <arquivos> : compacta

gunzip <opções> <arquivos.gz> : descompacta

# gzip /tmp/termcap : o arquivo termcap será compactado.

# gunzip /tmp/termcap.gz : o arquivo termcap.gz será descompactado.

 bzip2:

O comando bzip2 é usado para compactar/descompactar arquivos. O arquivo original é substituí do por

um arquivo compactado com a extensão .bz2

  Seja um Profissional Aprendendo com Profissionais 51

Page 52: 139166004-Curso-Red-Hat

8/12/2019 139166004-Curso-Red-Hat

http://slidepdf.com/reader/full/139166004-curso-red-hat 52/146

Linux System Administration

Sintaxe: bzip2 <opções> <arquivos> : compacta

bunzip2 <opções> <arquivos.bz2> : descompacta

# bzip2 /tmp/termicap : O arquivo termcap será compactado.

# bunzip2 /tmp/termcap.bz2 : O arquivo termcap será descompactado.

 compress:

O comando compress é usado para compactar/descompactar arquivos. O arquivo original é substituí do

por um arquivo compactado com a extensão .Z. A ferramenta gzip pode ser usada para descompactar

arquivos com esta extensão.

Sintaxe: compress <opções> <arquivos> : compacta

uncompress <opções> <arquivos.Z> : descompacta

# compress /tmp/shadow : Compacta o arquivo shadow.

# uncompress /tmp/shadow.Z : Descompadta o arquivo shadow.Z

Empacotamento

 zip:

O comando zip é usado para compactar e empacotar arquivos. É útil para empacotamento de uma

série de arquivos para distribuição. Não substitui os arquivos originais após o empacotamento.

Sintaxe: zip <opções> <arquivo_zip> <arquivos>

unzip <opções> <arquivo_zip>

# zip arquivo.zip /tmp/* : empacota todos arquivos do /tmp para aquiivo.zip

# unzip arquivo.zip : desempacota o arquivo arquivos.zip

  Seja um Profissional Aprendendo com Profissionais 52

Page 53: 139166004-Curso-Red-Hat

8/12/2019 139166004-Curso-Red-Hat

http://slidepdf.com/reader/full/139166004-curso-red-hat 53/146

Linux System Administration

tar: 

Permite copiar arquivos e depois restaura-los, para efeito de backup de segurança e/ou transporte de

dados através de um meio f í sico (CD's, Floppy's, Fitas, etc...).

O comando tar permite que crie, atualize ou recupere backups.

Sintaxe: tar <opção> <arquivos>

# tar -cvf arquivo.tar /tmp/* : empacota os arquivos de /tmp.

c: cria um novo arquivo .tar

v: mostra o que está acontecendo na tela.

f: indica que o nome do aquivo será especificado (arquivo.tar)

# tar -tf arquivo.tar : lista todos os arquivos empacotados no arquivo .tar

t: lista arquivos empacotados

f: indica que será especificado o nome do arquivo.

# tar -rvf arquvo.tar teste.txt : acrescenta o arquivo teste.txt no aquivo

arquivo.tar

r: indica que será acrescentado um novo ao arquivo .tar.

v: mostra o que está acontecendo na tela.

f : indica que o nome do arquivo será indicado

# tar -xvf arquivo.tar : desempacota o arquivo.tar

x: indica que o arquivo será desempacotado.

# tar -cvfz arquivo.tar.gz /tmp/* : empacota e compacta todos os arquivos do

diretório /tmp e cria um arquivo.tar.gz. Utiliza o gzip para a compactação dos

arquivos.

z: compacta o arquivo.tar com gzip (.gz).

# tar -xvfz arquivo.tar.gz : descompacta e desempacota o arquivo.tar.gz

x: indica que o arquivo será desempacotado.

z: Indica que o arquivo está compactado com gzip

# tar -cvfj arquivo.tar.bz2 /tmp/* : empacota e compacta todos os arquivos do

Seja um Profissional Aprendendo com Profissionais 53

Page 54: 139166004-Curso-Red-Hat

8/12/2019 139166004-Curso-Red-Hat

http://slidepdf.com/reader/full/139166004-curso-red-hat 54/146

Page 55: 139166004-Curso-Red-Hat

8/12/2019 139166004-Curso-Red-Hat

http://slidepdf.com/reader/full/139166004-curso-red-hat 55/146

Page 56: 139166004-Curso-Red-Hat

8/12/2019 139166004-Curso-Red-Hat

http://slidepdf.com/reader/full/139166004-curso-red-hat 56/146

Linux System Administration

Quando aparecer à  linha “comando (m para ajuda):” significa que o comando foi executado com

sucesso e o fdisk está aberto, podendo agora utilizar as funcionalidades do fdisk.

Pressione a tecla <m>, logo após pressione <enter> pra visualizar as opções do fdisk.

comando (m para ajuda): m

Comando A ção

¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨

a alterna as opções de boot em cada partição.

d deleta uma partição.

l lista os tipos conhecidos de partições

m visualização do help.

n cria uma nova partição.

p = partição prim ária.

e = partição estendida.

l = lógica.

p lista a tabela de partições existentes.q sai do fdisk sem salvar

t muda a identificação de uma partição no sistema.

u modifica a identificação das unidades.

v faz verificação da tabela de partições

 w grava as modificações e sai.

Vamos criar algumas partições. Para isso pressione a tela <n> de “new” para criar uma nova partição

no dispositivo fd0.

comando (m para ajuda): n

Comando - ação

e estendida

p partição prim ária (1-4)

p

Número da partição (1-4): 1 (1° partição que estamos criando)

  Seja um Profissional Aprendendo com Profissionais 56

Page 57: 139166004-Curso-Red-Hat

8/12/2019 139166004-Curso-Red-Hat

http://slidepdf.com/reader/full/139166004-curso-red-hat 57/146

Linux System Administration

Escolha o cilindro de inicio (1-80): <enter> seleciona o 1° cilindro.

Escolha o ultimo cilindro (1-80): +100K <enter> (“K” em maiúsculo)

Pressione p de “print” para visualizar as partições criadas.

Para criar outras partições repita o processo acima, lembrando que só podem ser criadas, no máximo,

4 partições no dispositivo se estas forem do tipo primária. Para criar mais de 4 partições, crie uma

partição estendida e dentro dela crie n partições lógicas, sendo n <=12 quando o dispositivo for o HD.

Gerenciamento de Contas de Usuários

O linux é um S.O. Multiusuário, portanto, é necessário que todos os usuários sejam cadastrados no

sistema.

Criando Usuários

Sintaxe: useradd <nome-do-usuário> ou adduser

#useradd aluno

Ao executar o comando, vários arquivos são manipulados ou utilizados. São eles:

1- O usuário é adicionado no arquivo /etc/passwd, /etc/shadow e /etc/group.

2- É criado seu diretório pessoal /home/aluno com suas permissões de acesso (drwx------)

3- São copiados alguns arquivos do /etc/skel/ : .bashrc, .bash_profile, .bash_logout, para

 /home/aluno.

Obs.: Ainda o usuário “aluno” não pode logar no sistema. O usuário não possui senha!

Criar / Alterando Senha De Usu á rio

Sintaxe: passwd <nome-do-usuário>

#passwd aluno

Ao executar o comando será pedido para que o usuário entre com a senha 2 vezes. Logo após a senha

é criptografada e inserida no arquivo /etc/shadow.

Para um usuário comum alterar sua senha basta efetuar o logon no sistema e digitar o comando

Seja um Profissional Aprendendo com Profissionais 57

Page 58: 139166004-Curso-Red-Hat

8/12/2019 139166004-Curso-Red-Hat

http://slidepdf.com/reader/full/139166004-curso-red-hat 58/146

Linux System Administration

passwd, sem nenhum parâmetro.

Apenas o root pode executar o comando passwd <parâmetro>, onde parâmetro é o nome do usuário

que o root deseja alterar a senha.

 Deletando Usu á rios

Sintaxe: userdel <opção> <nome-do-usuário>

# userdel aluno

Este comando deleta as entradas nos arquivos /etc/passwd, /etc/shadow e /etc/group. Este comando

não deleta a pasta pessoal do usuário /home/aluno.

# userdel -r aluno

Este comando deleta as entradas nos arquivos /etc/passwd, /etc/shadow e /etc/group também remove

toda seu diretório de trabalho recursivamente. (rm -rf /home/aluno)

 Adicionando Grupos No Sistema

Maneira utilizada pelo administrador do sistema para definir perfis semelhantes entre os usuários

cadastrados no sistema.

Sintaxe: groupadd <opção> <nome-do-grupo>

# groupadd cpd :Cria o grupo cpd no sistema, desde que ele não exista.

# groupadd -f cpd :Cria o grupo cpd forçadamente mesmo que ele já exista no

sistema.

Ao executar o comando groupadd este insere a entrada do novo grupo dentro do arquivo /etc/group.

Para visualizar digite: cat /etc/group.

Exemplo do conteúdo deste arquivo:

  Seja um Profissional Aprendendo com Profissionais 58

Page 59: 139166004-Curso-Red-Hat

8/12/2019 139166004-Curso-Red-Hat

http://slidepdf.com/reader/full/139166004-curso-red-hat 59/146

Linux System Administration

...

cpd:x:507:

srh:x:508:...

Para indicar que os usuários pertencem a tal grupo, basta inserir no final da linha relativa ao grupo o

nome dos usuários separados por virgula. Ex:

...

cpd:x:507:fulano, beltrano,maria, joao, rafael

srh:x:508: junior, jorge, claudio, jose

...

 Mudando o dono de arquivos e diret ó rios

Sintaxe do comando: chown <opção> <novo-dono> <arquivo/diretório>

#chown fulano arquivo.txt : muda o dono do arquivo para fulano.

#chown beltrano diretorio/ : muda o dono do diretório para beltrano.

#chown -R beltrano diretorio/ : muda o dono da arvore de diretório

(recursivamente) para beltrano.

 Mudando o grupo de arquivos e diret ó rios

Sintaxe do comando: chgrp <opção> <arquivo/diretório>

#chgrp cpd arquivo.txt : muda o grupo do arquivo para cpd.

#chgrp srh diretorio-srh/ : muda o grupo da pasta dretório-srh para srh.

#chgrp -R cpd diretorio-cpd/ : muda toda arvore do diretorio-cpd para cpd

recursivamente.

 Mudando dono e grupo ao mesmo tempo

Sintaxe do comando: chown <novo-dono> <:novo-grupo> <arquivo/diretório>

# chown fulano:cpd arquivo.txt

# chown beltrano:srh diretorio-srh/

  Seja um Profissional Aprendendo com Profissionais 59

Page 60: 139166004-Curso-Red-Hat

8/12/2019 139166004-Curso-Red-Hat

http://slidepdf.com/reader/full/139166004-curso-red-hat 60/146

Linux System Administration

# chown -R rafael:cpd diretorio-cpd/

Verificando Informa ções dos Usu á rios

Comando id

Sintaxe: id <opção> <nome-do-usuário>

# id aluno : mostra informações do usuário (UID, GID, Grupos que pertence)

Comando fingerSintaxe do comando: finger <opção> <nome-do-usuário>

# finger aluno : mostra informações do usuário (Login, Nome, Diretório Pessoal,

Shell)

  Seja um Profissional Aprendendo com Profissionais 60

Page 61: 139166004-Curso-Red-Hat

8/12/2019 139166004-Curso-Red-Hat

http://slidepdf.com/reader/full/139166004-curso-red-hat 61/146

Linux System Administration

Permissões de Arquivos e Diretórios

A respeito deste assunto, devemos saber que:

• O root tem permissões para acessar/modificar qualquer diretório ou arquivo no linux.

• Cada arquivo ou diretório no linux está   associado a um dono e um grupo com suas

respectivas permissões de acesso (r,w,x).

Para visualizar as permissões de um arquivo ou diretório no linux, o melhor comando para se digitar é 

o comando ls -l.

# ls -l- rw- r - - r - - L/SD D G T M/D H arquivo/diretório

0123 456 78 9

Onde:

0: Indica o tipo do arquivo. Se “-” é um arquivo comum. Se “d” é um diretório.

123: indica as permissões do dono do arquivo (D)

456: indica as permissões do grupo do arquivo (G).

789: indica as permissões dos outros usuários do sistema.

L/SD: se L indica o número de links que apontam para o arquivo se SD indica o número de

sub-diretórios dentro do diretório.

D: indica o dono do arquivo.

G: indica o grupo do arquivo.

M/D: Indica o Mês e Dia que o arquivo/diretório foi criado/modificado.

H: indica hora de criação do arquivo/diretório.

Arquivo/diretório: nome do arquivo/diretório.

Os modos de acesso de arquivos e diretórios são interpretados de maneira diferente. Veja a tabela

abaixo:

  Seja um Profissional Aprendendo com Profissionais 61

Page 62: 139166004-Curso-Red-Hat

8/12/2019 139166004-Curso-Red-Hat

http://slidepdf.com/reader/full/139166004-curso-red-hat 62/146

Linux System Administration

Modos de Acesso Arquivos Diretórios

r Pode ler o conteúdo do arquivo Pode visualizar o conteúdo do

diretório.

w Pode editar o arquivo Pode modificar o conteúdo do

diretório

x Pode executar o arquivo Pode entrar no diretório

 Padr ã o De Cria çã o

Todo arquivo/diretórios no linux possui um padrão de criação, que é chamado de umask. Para saber o

padrão de criação de seus arquivos digite: umask e pressione enter. Veremos que o padrão de criação é 

0022 (ignore o primeiro zero). Isso indica que as permissões iniciais serão: -rw-r--r-- para arquivos e

drwx-r-xr-x para diretórios – será tratado mais a frente o padrão de criação umask.

Para termos certeza disso, vamos criar um arquivo e um diretório. Execute os comando:

#touch arquivo.txt

#mkdir diretorio

#ls -l

Veja as permissões. Caso as permissões não forem às mesmas citadas acima, o problema com certeza

está com o padrão de criação dos arquivos. Verifique se o umask é 0022. Se não for digite umask 022

para torna-lo e execute os comandos novamente.

Alterando Permissões de Arquivos e Diretórios

Comando chmod

Sintaxe: chmod <opção> <arquivo/diretorio>

Finalidade: permitir que altere as permissões de um ou mais arquivos ou diretórios.

NOTA: Somente o superusuário ou o dono do arquivo/diretório podem alterar suas permissões.

Crie o arquivo: chmod.txt. Para isso execute o comando:

  Seja um Profissional Aprendendo com Profissionais 62

Page 63: 139166004-Curso-Red-Hat

8/12/2019 139166004-Curso-Red-Hat

http://slidepdf.com/reader/full/139166004-curso-red-hat 63/146

Linux System Administration

# touch chmod.txt; ls -l

Existem duas formas para alterar as permissões de arquivos / diretórios. Uma é utilizando sí mbolos

para referenciar as permissões do dono, grupo e outros usuários. Esses sí mbolos são respectivamente:

u, g, o. Uma outra forma é utilizando valores octais para fazer essas referencias.

Sí mbolo Descrição

u indica permissões do dono do arquivo.

g indica permissões do grupo para o arquivo.

o indica permissões dos outros usuários para o arquivo.

a indica todos ( u, g, o )

Operadores Descrição

+ Concede Permissão

- Remove Permissão

= Atribui Permissão

Permissões Descrição

r Leitura

w Escrita

x Execução

O arquivo chmod.txt criado anteriormente possui as seguintes permissões: -rw-r--r--.Vamos alterar

essas permissões para: -rw-rw---- , ou seja, o dono e o grupo podem ler e escrever (rw) e os outros

não podem fazer nada, pois eles não possuem permissão. Quando se deseja alterar as permissões deum arquivo ou diretórios é importante visualizar as permissões atuais deste (usando o comando ls –l)

para saber o que deve ser acrescentado e/ou retirado.

#ls -l

#chmod g+w,o-r chmod.txt

A 1° opção acima (g+w) significa que a permissão de escrita (w) está sendo acrescentada/concedida

(+) para o grupo (g), então o grupo alem de ler poderá, também, escrever no arquivo chmod.txt.

  Seja um Profissional Aprendendo com Profissionais 63

Page 64: 139166004-Curso-Red-Hat

8/12/2019 139166004-Curso-Red-Hat

http://slidepdf.com/reader/full/139166004-curso-red-hat 64/146

Linux System Administration

A 2° opção (o-r) significa que a permissão de leitura (r), para os outros usuários do sistema (o), está 

sendo removida (-) , então estes não terão permissão para executar nenhum tipo de operação no

arquivo chmod.txt.

Agora altere as permissões deste arquivo para: -rw-rw-rw, ou seja, o dono, grupo e outros podem

ler/escrever no arquivo chmod.txt.

Alguns exemplos possí veis:

# chmod o+rw chmod.txt

# chmod u+rw,g+rw,o+rw chmod.txt

# chmod o=u chmod.txt

# chmod a=rw chmod.txt

Exercí cios:

1- crie os seguintes arquivos: modo1, modo2, modo3 e modo4.

2- mude as permissões destes, respectivamente, para:

a) -r--r--rwx

b) -rw-r-x---c) ----rwx--x

d) -rw-rw-rw

2° forma: Utilizando valores octais

Simbolo Valor Equivalente

r 4

w 2

x 1

Por exemplo, temos o arquivo teste.txt com as seguintes permissões: -rw-r--r--. Que valor

representaria essas permissões em octal ? A resposta é 644.

Nas permissões do arquivo texte.txt, sabemos que u=rw, g=r e o=r. Sabemos também que r=4, w=2 e

Seja um Profissional Aprendendo com Profissionais 64

Page 65: 139166004-Curso-Red-Hat

8/12/2019 139166004-Curso-Red-Hat

http://slidepdf.com/reader/full/139166004-curso-red-hat 65/146

Page 66: 139166004-Curso-Red-Hat

8/12/2019 139166004-Curso-Red-Hat

http://slidepdf.com/reader/full/139166004-curso-red-hat 66/146

Linux System Administration

 Padr ã o de Cria çã o

umask 

022 == -rw-r--r-- == 644. Esses valores indicam as mesmas permissões, mas totalmente diferentes.

Para definir o padrão de criação (umask) indicamos os valores que estão faltando na permissão. Como

por exemplo: -rw-r--r-- nas permissões do dono está faltando o x=1, no grupo faltam w=2 e x=1, e

para outros usuários faltam w=2 e x =1 não é mesmo? Então pegamos os valores que estão faltando

que seria 133. Como não é possí vel, por padrão, definir a permissão de execução (x=1) para arquivos,

então decrementamos o valor 1 de cada permissão, ou seja, 133 -111 que nos dá o resultado igual a

022.

  Seja um Profissional Aprendendo com Profissionais 66

Page 67: 139166004-Curso-Red-Hat

8/12/2019 139166004-Curso-Red-Hat

http://slidepdf.com/reader/full/139166004-curso-red-hat 67/146

Linux System Administration

Gerenciamento de Pacotes RPM

Entendendo os Pacotes

Na maioria dos casos, um aplicativo não é formado apenas por um único arquivo executável, mas sim

por um grande número de arquivos, como arquivos de tradução (potfiles), arquivos auxiliares,

arquivos de documentação e arquivos de configuração. Assim, é   bastante complexa a tarefa de

instalação de um aplicativo manualmente; ainda mais dif í cil é a manutenção de seus arquivos. Muitas

vezes uma nova versão do aplicativo torna alguns de seus arquivos obsoletos e então o administrador

do sistema tem de apagar o arquivo antigo para evitar um acúmulo de arquivos inúteis. Um pacote é 

um arquivo que, além de conter os arquivos necessários para a instalação de um determinado

aplicativo, contém também as informações necessárias para que o gerenciador de pacotes possa

instalar, manter e remover programas.

Um arquivo tí pico de pacote se parece com o seguinte: emacs-20.7-11cl.i386.rpm

Estes nomes de arquivos seguem um padrão. Os nomes dos arquivos de pacotes RPM contém

informações sobre a versão e a arquitetura às quais se destinam. No caso acima, o arquivo diz que se

trata do pacote do "Emacs", versão 20.7, release 11cl e que ele foi criado para plataforma Intel 386.

Todos os arquivos de pacotes RPM têm o formado NomeDoPacote-versao-release.arquitetura.rpm

para permitir reconhecer visualmente o arquivo. Você poderá encontrar também pacotes com nomes

no formato NomeDoPacote-

versao.src.rpm. Esses pacotes não contêm os binários de um aplicativo para serem instalados mas sim

os seus arquivos fontes e são (na grande maioria dos casos) independentes de arquitetura.

Apesar de várias distribuições de Linux utilizarem pacotes do tipo RPM, isso não significa que eles

sejam iguais e que um pacote feito originalmente para uma distribuição irá funcionar perfeitamente

em outra. Além dos arquivos que compõem um determinado aplicativo, o pacote RPM contém

também informações de como instalar, em que local copiar os arquivos, como configurar, etc. Essas

informações adicionais podem ser diferentes de uma distribuição para outra, então, para evitar

problemas, o administrador deve procurar sempre utilizar pacotes feitos especificamente para a sua

Seja um Profissional Aprendendo com Profissionais 67

Page 68: 139166004-Curso-Red-Hat

8/12/2019 139166004-Curso-Red-Hat

http://slidepdf.com/reader/full/139166004-curso-red-hat 68/146

Linux System Administration

distribuição.

Utilizando o RPM é possí vel: Instalar, Atualizar, Remover e Consultar pacotes na Base de Dados

RPM.

Instalando um pacote RPM (opção i)

# rpm -ivh emacs-20.7-11cl.i386.rpm 

i : Indica que o pacote será instalado.

v : Mostra informações do processo de instalação

h: Indica a porcentagem da instalação utilizando # como indicador.

A instalação de pacotes foi desenvolvida para ser o mais simples possí vel, porém eventualmente

alguns erros podem ocorrer. São eles:

Pacote já instalado: Irá aparecer a mensagem: package pacote.rpm já está instalado! Para ignorar a

mensagem e instalar o pacote novamente você deve indicar essa decisão ao RPM. Para isso acrescente

o parametro --force ao comando, como no exemplo:

# rpm -ivh emacs-20.7-11cl.i386.rpm –force

Arquivos com conflitos: se existir um arquivo já instalado por outro pacote, aparecerá a seguinte

mensagem: Este pacote não pode ser instalado... Para ignorar esta mensagem e instalar o pacote deve

– se acrescentar o parâmetro --replacefiles no comando, como no exemplo:

# rpm -ivh emacs-20.7-11cl.i386.rpm –replacefiles

Dependência: O pacote.rpm que está sendo instalado depende de outro pacote previamente instalado.

Aparecerá   a seguinte mensagem: falha de dependência: pacoteXYZ.rpm é   necessário para

pacote.rpm. Para ignorar essa mensagem deve-se usar o parametro --nodeps para instalar o pacote.rpm

sem checar as dependências.

Observe o exemplo:

  Seja um Profissional Aprendendo com Profissionais 68

Page 69: 139166004-Curso-Red-Hat

8/12/2019 139166004-Curso-Red-Hat

http://slidepdf.com/reader/full/139166004-curso-red-hat 69/146

Linux System Administration

# rpm -ivh emacs-20.7-11cl.i386.rpm --nodeps

Atualizando um pacote RPM (opção U em maiusculo)

# rpm -Uvh emacs-20.7-11cl.i386.rpm 

U: Indica que o pacote será Atualizado.

v : Mostra informações do processo de instalação

h: Indica a porcentagem da instalação utilizando # como indicador.

A atualização de um pacote.rpm normalmente é feita para uma versão posterior da versão que está 

instalada, mas pode acontecer que a nova versão não satisfaz suas necessidades, então você sabe que a

versão mais antiga deste pacote possui as funcionalidades de que você precisa, certo? então basta

atualizar a versão atual para a antiga que seu problema é resolvido! ok ? Em partes sim. Veja abaixo.

Para que o RPM concorde em atualizar uma versão mais antiga do pacote, você deve informar ao

RPM que a versão que deseja Atualizar é  mais antiga. Para isso você  deve usar o parametro --

oldpackage. Como no exemplo:

# rpm -Uvh emacs-20.7-11cl.i386.rpm --oldpackge

Desintalando um pacote RPM (opção e)

# rpm -e emacs

e : indica que o pacote será desinstalado. Observe que para desinstalar um pacote deve ser

informado apenas o NomeDoPadote "emacs". Isso porque o pacote já  está   instalado. Por isso é 

importante conhecer o formato padrão de um arquivo RPM.

Se um outro pacote instalado depender do pacote que está sendo desinstalado, aparecerá o seguinte

erro: a remoção deste pacote quebraria dependência: pacote.rpm é necessário para pacoteXYZ.rpm.

Seja um Profissional Aprendendo com Profissionais 69

Page 70: 139166004-Curso-Red-Hat

8/12/2019 139166004-Curso-Red-Hat

http://slidepdf.com/reader/full/139166004-curso-red-hat 70/146

Linux System Administration

Para remover assim mesmo, acrescente o parâmetro --nodeps.

# rpm -e emacs --nodeps

Consultando um pacote RPM (opção q)

# rpm -q emacs : mostra apenas o pacote com o nome emacs.

# rpm -qa | grep emacs : mostra todos os pacotes que contenha o nome emacs. Este

é o melhor comando (entre estes) para ser utilizado quando deseja consultar um

pacote já instalado.

  Seja um Profissional Aprendendo com Profissionais 70

Page 71: 139166004-Curso-Red-Hat

8/12/2019 139166004-Curso-Red-Hat

http://slidepdf.com/reader/full/139166004-curso-red-hat 71/146

Linux System Administration

Pacotes TGZ no Slackware

Os pacotes TGZ do Slackware são bem mais simples que os outros tipos de pacotes. Eles são arquivos

empacotados e compactados em formato .tar.gz, com a estrutura de diretórios igual ao do sistema e

alguns scripts adicionais com informações sobre o pacote. Você pode ver o conteúdo do arquivo

 justamente descompactando em um diretório qualquer que você tenha criado.

Além disso, nesse tipo de pacote, não há   resolução automática de dependências (quer dizer, há 

gerenciadores tratados mais a frente que fazem isso, mas não de uma forma perfeita). Vamos aprender

agora como usar algumas coisas essenciais para os pacotes do Slackware.

No Slackware, você  pode utilizar um menu centralizado ou utilizar os comandos separados para

manipular os pacotes do sistema. Para acessar o menu centralizado, digite:

# pkgtool

No menu, você poderá fazer determinadas ações dependendo da opção que você escolher:

Opção Ação

Current Instala todos os arquivos pacotes (.tgz) do diretório atual (onde você executou o comando

pkgtool).

Other Instala todos os pacotes contidos em um outro diretório (você irá especificar)

Floppy Instala todos os pacotes contidos em um disquete que você fornecer

Remove Remove um pacote já instalado do sistema (ele lhe dará a lista de pacotes)

View Mostra uma lista dos pacotes do sistema e seus detalhes

Setup Configura alguns pacotes que possuem scripts pra isso

Seja um Profissional Aprendendo com Profissionais 71

Page 72: 139166004-Curso-Red-Hat

8/12/2019 139166004-Curso-Red-Hat

http://slidepdf.com/reader/full/139166004-curso-red-hat 72/146

Linux System Administration

Opções do comando pkgtool

Ou você pode utilizar os comandos individuais para essas tarefas. Por exemplo, se você quiser instalar

um pacote .tgz, faça:

# installpkg pacote.tgz

O comando installpkg apenas instala um pacote, mesmo tendo uma versão antiga deste mesmo pacote

 já instalado. Nesse caso, se você instalar com o installpkg, seu sistema ficará com duas versões do

pacote. Para evitar isso quando for fazer uma atualização de versão de um certo pacote, faça:

# upgradepkg pacote.tgz

Para remover um pacote do sistema, use:

# removepkg pacote

Se por acaso você  tiver problemas com o pacote e deseja descompactá-lo de forma correta para

analisar (o que poderá não ser muito comum e necessário fazer), você pode utilizar o comando:

# explodepkg pacote.tgz

E esses são os comandos individuais. Existe também o makepkg, que cria pacotes .tgz de forma

simples.

Seja um Profissional Aprendendo com Profissionais 72

Page 73: 139166004-Curso-Red-Hat

8/12/2019 139166004-Curso-Red-Hat

http://slidepdf.com/reader/full/139166004-curso-red-hat 73/146

Linux System Administration

Gerenciamento de Processos

Para cada processo existente, o sistema operacional fornece um código (PID) que o identificará. Há 

também uma hierarquia de processos, ou seja, um processo pode chamar outro, que por sua vez chama

um terceiro, e assim por diante.

Um processo que executa em segundo plano é   chamado de processo "pai", e o novo processo,

chamado de "filho".

Como já foi dito, o Linux é um sistema multitarefa, o que lhe permite executar mais de um processo

ou sistema. Portanto é possí vel ter processos em primeiro plano, chamado de foreground, bem como

em segundo plano, chamado de background.

Serão mostrados aqui, alguns comandos para trabalhar com processos, são eles:

O comando ps: mostra os processos ativos no sistema.

Sintaxe: ps -[opção]

# ps –aux

a: mostra todos os processos;

u: inclui na lista os usuários e hora do inicio do processo;

x: inclui processos não associados a um terminal.

O comando kill: permite que o superusuário ou os donos dos processos possa eliminar processos

ativos no sistema.

Sintaxe: kill [opção] -[sinal] [PID]

# kill -l : exibe os sinais que podem enviar para um processo.

Sinal:

(9) SIGKILL: Quando enviado para um processo, termina a sua execução.

Suponhamos que exista um processo no sistema com o PID igual a 3784, ou seja, o identificador do

Seja um Profissional Aprendendo com Profissionais 73

Page 74: 139166004-Curso-Red-Hat

8/12/2019 139166004-Curso-Red-Hat

http://slidepdf.com/reader/full/139166004-curso-red-hat 74/146

Linux System Administration

processo é 3784. Para que o processo seja eliminado, deve-se executar o comando kill de forma que o

sinal enviado ao processo elimine-o. Segue exemplo:

# kill - 9 3784

9 : sinal para eliminar um processo;

3784: Identificador de um determinado processo (PID).

Top

O comando top mostra os processos em execução ( tempo real ). O mesmo comando apresenta

informações sobre tempo ativo da máquina, quantidade de ususarios logados, porcentagem de

memória, processador e sistema utilizado.

# top

top - 08:36:38 up 20 min, 2 users, load average: 0.00, 0.00, 0.00

Tasks: 30 total, 1 running, 29 sleeping, 0 stopped, 0 zombie

Cpu(s): 1.7% user, 0.7% system, 0.0% nice, 97.5% idle

Mem: 482308k total, 46464k used, 435844k free, 4020k buffers

Swap: 1012016k total, 0k used, 1012016k free, 28692k cached

  PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND

  1 root 9 0 260 260 232 S 0.0 0.1 0:03.77 init

  2 root 8 0 0 0 0 S 0.0 0.0 0:00.00 keventd

  3 root 19 19 0 0 0 S 0.0 0.0 0:00.00 ksoftirqd_CPU0

  4 root 9 0 0 0 0 S 0.0 0.0 0:00.00 kswapd

  5 root 9 0 0 0 0 S 0.0 0.0 0:00.00 bdflush

  6 root 9 0 0 0 0 S 0.0 0.0 0:00.00 kupdated

  7 root 9 0 0 0 0 S 0.0 0.0 0:00.00 scsi_eh_0

  8 root 9 0 0 0 0 S 0.0 0.0 0:00.00 scsi_eh_1

  9 root -1 -20 0 0 0 S 0.0 0.0 0:00.00 mdrecoveryd

  10 root 9 0 0 0 0 S 0.0 0.0 0:00.00 kjournald

  46 root 9 0 0 0 0 S 0.0 0.0 0:00.00 kjournald

  72 root 9 0 620 620 532 S 0.0 0.1 0:00.02 syslogd

  75 root 9 0 460 460 404 S 0.0 0.1 0:00.03 klogd

  318 root 9 0 0 0 0 S 0.0 0.0 0:00.00 khubd

  Seja um Profissional Aprendendo com Profissionais 74

Page 75: 139166004-Curso-Red-Hat

8/12/2019 139166004-Curso-Red-Hat

http://slidepdf.com/reader/full/139166004-curso-red-hat 75/146

Linux System Administration

 4665 root 9 0 524 524 464 S 0.0 0.1 0:00.00 inetd

 4669 root 10 0 1604 1604 1324 S 0.0 0.3 0:00.03 sshd

 4682 root 9 0 600 600 516 S 0.0 0.1 0:00.00 crond 4684 daemon 9 0 688 688 596 S 0.0 0.1 0:00.00 atd

 4687 root 9 0 2868 2864 1888 S 0.0 0.6 0:00.01 sendmail

 4690 smmsp 9 0 2444 2432 1632 S 0.0 0.5 0:00.00 sendmail

  Seja um Profissional Aprendendo com Profissionais 75

Page 76: 139166004-Curso-Red-Hat

8/12/2019 139166004-Curso-Red-Hat

http://slidepdf.com/reader/full/139166004-curso-red-hat 76/146

Linux System Administration

Processo de Inicialização da Máquina

BIOS MBR(lilo/grub) KERNEL INIT GETTY LOGIN SHELL

Quando ligamos o computador o primeiro programa que é carregado é o que está na BIOS

( SETUP ), este programa testa os dispositivos de hardware presentes (HD, Mem., CPU, Cdrom, etc).

Após estes testes, a BIOS carrega o Gestor de Iní cio que está localizado na MBR (primeiros 1024

bytes) – Master Boot Record ou Setor de Boot Mestre, que tem como objetivo carregar o kernel do

Sistema Operacional escolhido na lista de S.O. mostrados no Gestor de Iní cio. Os Gestores de Iní cio

mais conhecidos são o GRUB e o LILO.

NOTA: Daqui em diante vamos supor que o Gestor de In í cio que encontra-se na MBR é o LILO e o Sistema Operacional escolhido

pelo usuário é o LINUX.

Ao carregar o LILO este passa por duas fases. A primeira é  executar o setor de boot para

permitir o multiboot, caso exista vários kernels diferentes; e a segunda é  carregar a imagem do

kernel escolhido. No ponto que o KERNEL é carregado, ele assume o controle da inicialização do

sistema. Sua responsabilidade é detectar os dispositivos de hardware suportados por ele e carregar

seus módulos. Após ter feito toda essa tarefa, o kernel passa o controle para o INIT que por sua vez

irá montar os sistemas de arquivos suportados pelo kernel, inicializar os serviços básicos da máquina

(serviços do mouse, rede, teclado, etc. (seria os [OKs ] que aparecem na tela)) outros serviços que

podem ser carregados na inicialização da máquina seria dos servidores: web, e-mail, samba, entre

outros – caso estes estejam instalados e configurados, é claro!

Após o INIT  o próximo passo é a execução do GETTY que por sua vez disponibiliza a tela de

LOGIN (mingetty para o modo texto e k dm do kde, gdm do gnome ou xdm do XFree86  para o modo

gráfico) que por sua vez aguarda uma interação do usuário que é a digitação do login e senha. Após

ser passada essas informações é feito a checagem nos arquivos  /etc/passwd   e  /etc/shadow. Caso os

dados informados (login e senha) sejam corretos, alguns outros arquivos são lidos/executados. São

eles:

Seja um Profissional Aprendendo com Profissionais 76

Page 77: 139166004-Curso-Red-Hat

8/12/2019 139166004-Curso-Red-Hat

http://slidepdf.com/reader/full/139166004-curso-red-hat 77/146

Linux System Administration

/etc/profile  - arquivo que indica caminhos de binários-comandos (PATH), manuais das

ferramentas (MANPATH), configuração de permissões, identificação do usuário e do grupo. Ele é 

indicado para passar caminhos de ferramentas que são necessárias a mais de um usuário, evitando

assim a configuração personalizada para cada usuário;

~/.bash_profile: arquivo pessoal que tipicamente possui os caminhos dos binários de usuário e ou

ferramentas/scripts que devem ser executados somente por tal usuário;

~/.bashrc: este arquivo armazena as aliases para comandos no linux (aliases são apelidos para os

comandos) que surtem efeito somente para o usuário que possui tal arquivo, ou seja, as aliases do

usuário X não surtem efeito para o usuário Y e vice-versa.

Após a execução destes três arquivos nesta sequencia, é   então disponibilizado um SHELL

(interpretador de comandos) para o usuário.

  Seja um Profissional Aprendendo com Profissionais 77

Page 78: 139166004-Curso-Red-Hat

8/12/2019 139166004-Curso-Red-Hat

http://slidepdf.com/reader/full/139166004-curso-red-hat 78/146

Page 79: 139166004-Curso-Red-Hat

8/12/2019 139166004-Curso-Red-Hat

http://slidepdf.com/reader/full/139166004-curso-red-hat 79/146

Linux System Administration

2° passo: Criar e editar o arquivo /boot/message

#vi /boot/message

3° passo: Para escrever as opções do arquivo /etc/lilo.conf no setor de boot digite:

# lilo -v

4° passo: Instalar o LILO na MBR:

# lilo

Inserir outros parâmetros no arquivo /etc/lilo.conf :

prompt força a interação do usuário com o lilo.

default=linux indica a S.O. padrão para ser carregado

timeout 1200 tempo em décimo de segundos para poder escolher o S.O

vga=791 resolução 1024x768.

O arquivo ficará da seguinte forma:

boot=/dev/hda

map=/boot/map

install=/boot/boot.b

lba32

message=/boot/message

vga=791

default=linuxprompt

timeout=1200

image=/boot/vmlinuz

root=/dev/hdaX

  label=linux

  read-only

  Seja um Profissional Aprendendo com Profissionais 79

Page 80: 139166004-Curso-Red-Hat

8/12/2019 139166004-Curso-Red-Hat

http://slidepdf.com/reader/full/139166004-curso-red-hat 80/146

Linux System Administration

other=/dev/hdaY

label=windows

table=/dev/hda

Passando parâmetros para o kernel através do lilo

linux single: permite que o Linux seja iniciado no modo monousuário (init 1). Este é o modo de

manutenção do sistema.

linux init=/bin/bash: indica o tipo de interpretador de comandos que deverá ser utilizado.

linux root=/dev/hda9: indica a partição em que encontra-se montado o diretório raiz do sistema.

Neste caso é a partição 9 do HD master que encontra-se na 1° IDE– hda9.

Configurações de Segurança

A utilização do gerenciador lilo pode comprometer a segurança do sistema caso o administrador não

saiba a correta configuração do seu arquivo de configuração /etc/lilo.conf, deixando uma lacuna para

que as pessoas mal intencionadas acessem o sistema. O parâmetro linux single (ou linux -s) permitem

que as pessoas acessem o sistema como monousuário (init 1). Neste modo não é solicitado login e

senha de administrador para logar no sistema como root, basta apenas digitar linux single ou linux -s

para acessar o sistema e ter permissões para fazer o que quiser (mudar a senha do root, deletar os

arquivos de configuração do sistema como os arquivos /etc/passwd e /etc/shadow , entre outros).

Para barrar este acesso é utilizado o parâmetro  password=senha  (que solicitará uma senha

sempre após a escolha do sistema operacional a ser carregado) – Exemplo1; e o parametro restricted

usado em conjunto com o password=senha (fazendo com que a senha, seja solicitada apenas para o

modo monousuário (linux single)) - Exemplo2.

1 - password=123456 password que será solicitado sempre após a escolha do S.O. 

2 - restricted solicita a senha somente para o modo de manutenção (linux single)

  Seja um Profissional Aprendendo com Profissionais 80

Page 81: 139166004-Curso-Red-Hat

8/12/2019 139166004-Curso-Red-Hat

http://slidepdf.com/reader/full/139166004-curso-red-hat 81/146

Linux System Administration

O arquivo ficará da seguinte forma:

Exemplo 01 Exemplo 02

boot=/dev/hda

map=/boot/map

install=/boot/boot.b

message=/boot/message

vga=791

default=linuxprompt

timeout=1200

password=123456

image=/boot/vmlinuz

root=/dev/hdaX

label=linux

read-only

other=/dev/hdaY

label=windows

table=/dev/hda

boot=/dev/hda

map=/boot/map

install=/boot/boot.b

message=/boot/message

vga=791

default=linuxprompt

timeout=1200

password=123456

restricted

image=/boot/vmlinuz

root=/dev/hdaX

label=linux

read-only

other=/dev/hdaY

label=windows

table=/dev/hda

Quando é utilizada está configuração (password) outra configuração de segurança é muito

importante para impedir que os outros usuários do sistema tenham acesso de leitura sobre o arquivo

 /etc/lilo.conf. Para isso altere as permissões relativas ao grupo e outros usuários do sistema,

executando o comando chmod com os modos 600 (-rw-------). Fazendo assim, com que apenas o root

possa ler e alterar o conteúdo deste arquivo.

#chmod 600 /etc/lilo.conf

Senha para uma partição especí fica

É possí vel setar uma senha para uma partição especí fica ou para um determinado Sistema

Seja um Profissional Aprendendo com Profissionais 81

Page 82: 139166004-Curso-Red-Hat

8/12/2019 139166004-Curso-Red-Hat

http://slidepdf.com/reader/full/139166004-curso-red-hat 82/146

Linux System Administration

Operacional. Suponhamos que estejam instalados na mesma máquina o Windows e o Linux e o

arquivo /etc/lilo.conf tenha a seguinte configuração:

boot=/dev/hda

map=/boot/map

install=/boot/boot.b

lba32

message=/boot/message

prompt

timeout=100

image=/boot/vmlinuz

root=/dev/hda5

  label=linux

  read-only

other=/dev/hda1

label=windows

table=/dev/hda

É   de seu interesse bloquear o acesso ao Sistema Operacional Windows por exemplo, que está 

instalado na partição hda1. Então basta acrescentar o parâmetro  password=senha dentro da sessão

outros (other), o arquivo /etc/lilo.conf ficará da seguinte forma:

...

...

...

other=/dev/hda1

label=windowspassword=12345

table=/dev/hda

  Seja um Profissional Aprendendo com Profissionais 82

Page 83: 139166004-Curso-Red-Hat

8/12/2019 139166004-Curso-Red-Hat

http://slidepdf.com/reader/full/139166004-curso-red-hat 83/146

Linux System Administration

O processo INIT na inicialização do sistema

Note que após da carga dos módulos do kernel, o controle do sistema passa para o processo

INIT. O init é executado pelo próprio kernel, quando executa o arquivo /sbin/init.

O INIT executa todos os scripts localizados no diretório /etc/rc.d/ que são: rc, rc.local  e rc.sysinit

(estes serão detalhados mais a frente), realizando assim a inicialização de todo o sistema.

O init realiza as seguintes funções:

Configuração básica do sistema: carga do mapa de teclado, nome de host, ativação da área

de swap.

Configuração final dos Hardwares: usb, placa de rede, etc; carga de módulos;

Configuração de rede: interfaces de rede, roteadores, firewall;

Inicialização dos serviços: configuração dos servidores;

Executar e disponibilizar as consoles virtuais: que promove a interação dos usuários no

sistema.

 N í veis de execu çã o ( Runlevel )

 

Os runlevels são ní veis ou formas de inicialização do sistema operacional linux.

Cada ní vel de execução possui seus arquivos que serão executados para inicialização da

máquina. Cada ní vel de execução é identificado por um número que vai de 0 a 6 (0-1-2-3-4-5-6).

Ní veis de execução em distro baseadas no Red Hat (Conectiva, Mandrake, Suse, Fedora, Linux)

Ní vel Descrição

0 Desliga o sistema (nunca definir como initdefault)

1 Mono-usuário

2 Multi-usuário sem acesso a rede

3 Multi-usuário com acesso a rede

4 Não é utilizado

  Seja um Profissional Aprendendo com Profissionais 83

Page 84: 139166004-Curso-Red-Hat

8/12/2019 139166004-Curso-Red-Hat

http://slidepdf.com/reader/full/139166004-curso-red-hat 84/146

Linux System Administration

5 Modo gráfico

6 Reinicia o sistema (nunca definir como initdefault)

Os ní veis de 2 a 5 diferem entre as distribuições. Por exemplo: no Debian o nivel 2 por padrão

é multi-usuário com suporte a rede e no Red Hat o ní vel 2 por parão é multi-usuário sem suporte a

rede.

Para saber o ní vel de execução atual, execute:

# runlevel

O INIT  sempre será o processo de número 1 do sistema, uma vez que é o primeiro a ser

executado.

Visualize a saí da do comando ps da forma:

# ps aux | grep init

NOTA: Este comando filtra apenas os processos que contém a palavra init na lista de processos do ps aux. 

Observe que o PID no processo init [nivel de execução] é igual a 1. ou seja, ele é o primeiro

processo a ser executado no sistema.

O INIT é também um processo “monitorador ”, pois não responde a nenhum sinal de kill:

SIGKILL, executado por kill -9 <PID> ou pelo SIGTERM executado por kill -15 <PID>. Portanto

sempre estará ativo, ele é o pai de todos os processos.

#kill -9 1#kill -15 1

#ps aux | grep init

NOTA: Observe que o processo INIT ainda está ativo!

  Seja um Profissional Aprendendo com Profissionais 84

Page 85: 139166004-Curso-Red-Hat

8/12/2019 139166004-Curso-Red-Hat

http://slidepdf.com/reader/full/139166004-curso-red-hat 85/146

Linux System Administration

Comunicando com o processo INIT 

É   possí vel comunicar com o processo init através do comando homônimo init   ou pelo

comando telinit . Observe que o comando telinit  é um link simbólico para o arquivo init que encontra-

se em /sbin. Execute: ls -l /sbin/telinit para visualizar.

Sintaxe do comando:

#init <nível de execução>

De modo que, se desejar carregar outro ní vel de execução, basta digitar o comando init ou telinit da

seguinte forma:

#init 5 carrega o modo grafico

#telinit 3  carrega o mogo texto

#runlevel mostra o ní vel de execução

N 5 3

Observe que o comando mostra o ní vel de execução anterior e o atual. Se o ní vel atual é o que

foi carregado no processo de inicialização, ou seja, não foi alterado com o comando init ou telinit

aparecerá a letra 'N' no lugar do ní vel anterior, da seguinte forma:

# runlevel

N 3 caso o ní vel de execução padrão seja o ní vel 3

Se o ní vel anterior for o ní vel 1 (mono-usuário) aparecerá a letra 'S' indicando que estava como linux

single.

# runlevel

S 3 caso o nível de execução anterior seja 1

  Seja um Profissional Aprendendo com Profissionais 85

Page 86: 139166004-Curso-Red-Hat

8/12/2019 139166004-Curso-Red-Hat

http://slidepdf.com/reader/full/139166004-curso-red-hat 86/146

Linux System Administration

Outras fun ções do INIT 

Como foi falado anteriormente o  init  é   o único processo que sempre está  “vivo”; estas

caracterí sticas o fazem o único capaz de realizar várias outras tarefas além da inicialização do sistema,

sendo:

− Monitoramento do sistema: alguns processos podem ser marcados como “sempre vivos” mas se

por alguma razão este processo “morre” o init tem a responsabilidade de re-executar o processo

tornando-o “vivo” novamente. Um bom exemplo de processo que não pode morrer são os

terminais, pois eles que dão acesso ao sistema.

− Desligamento automático: quando há   uma queda de energia muito prolongada os no-breaks

mandam um sinal SIGPWR (30) ao processo init comunicando que a sua carga de energia é baixa,

fazendo assim com que o init desligue corretamente a máquina, após algum tempo (shutdown -f -h

+2 “Será desligado em 2 minutos”). Caso a energia volte antes que a máquina seja desligada, o no-

break manda essa informação ao processo init para abortar o processo de desligamento enviando o

sinal -c no comando shutdown (shutdown -c “mensagem”) , fazendo assim com que seja abortadoqualquer sinal de shutdown anterior.

O Arquivo /etc/inittab

A configuração deste arquivo é feita através de quatro campos separados por dois pontos (:).

identificação : niveis-de-execução : ação : processo

1) identificação:  representa a identificação da linha. O ideal é   usar duas letras por questões de

compatibilidade, nas versões mais recentes pode-se utilizar ate 4 caracteres. Este valor é totalmente

arbitrário, podendo ser escolhido qualquer combinação de caracteres, desde que seja único.

2) ní veis de execução: informa o ní vel de execução, caso o campo esteja vazio será executado para

todos os ní veis; se for 'S' indica que deve ser executado somente no ní vel monousuário.

  Seja um Profissional Aprendendo com Profissionais 86

Page 87: 139166004-Curso-Red-Hat

8/12/2019 139166004-Curso-Red-Hat

http://slidepdf.com/reader/full/139166004-curso-red-hat 87/146

Linux System Administration

3) ação: indica o tipo de ação que será executada, as mais utilizadas são:

Ação  Descricao 

respawn O respawn faz com que o init re-execute o processo caso ele seja morto.

wait O init aguarda por uma decisão anterior para prosseguir

once O processo será executado apenas uma vez, na inicialização do ní vel.

initdefault Indica o ní vel que deve ser inicializado por padrão

sysinit Indica o script de inicialização geral do sistema (/etc/rc.d/rc.sysinit)

powerfail O processo será executado quando o init receber o sinal SIGPWR (30), falha de energia.

powerokwait Indicador de restabelecimento de energia (é chamado somente após um powerfail)

ctrlaltdel Indica o processo ou comando que será executado após pressionar as teclas ctrl+alt+del

• processo: indica o processo ou comando a ser executado.

Segue abaixo o conteúdo do arquivo /etc/inittab:

# Default runlevel. (Do not set to 0 or 6)  - Seleciona o tipo do ní vel que deve ser executado por

padrão (initdefault)

id:3:initdefault:

# System initialization (runs when system boots) - Indica que o script rc.S deve ser executado. Este

será sempre executado e somente uma vez (sysinit), e apenas na inicialização, pois possui informações

gerais que devem ser carregadas para qualquer ní vel de execução.

si:S:sysinit:/etc/rc.d/rc.S

# Script to run when going single user (runlevel 1) – Script utilizando quando o lilo envia o sinal de

inicialização no modo monousuário. Este script solicita a senha do usuário durante o processo de

inicialização. Torna-se uma medida de segurança contra ataques de força bruta. ( mais detalhes sobre

segurança no inittab no curso de Segurança em Redes Linux )

su:1S:wait:/etc/rc.d/rc.K

  Seja um Profissional Aprendendo com Profissionais 87

Page 88: 139166004-Curso-Red-Hat

8/12/2019 139166004-Curso-Red-Hat

http://slidepdf.com/reader/full/139166004-curso-red-hat 88/146

Linux System Administration

# Script to run when going multi user – Script utilizado para inicializar os runlevels 2, 3, 4 e 5.

rc:2345:wait:/etc/rc.d/rc.M

# What to do at the "Three Finger Salute" - esta ação é definida para informar qual comando é 

executado quando as teclas CTRL+ALT+DEL são acionadas.

ca::ctrlaltdel:/sbin/shutdown -t5 -r now 

Vamos substituir a linha atual por:

ca : : ctrlaltdel : echo "nao e possivel reiniciar desta forma digite reboot"

# Runlevel 0 halts the system – Script que é executado quando o ní vel 0 é solicitado. Neste ní vel o

sistema operacional é desligado.

l0:0:wait:/etc/rc.d/rc.0

# Runlevel 6 reboots the system - Script que é executado quando o ní vel 6 é solicitado. Neste ní vel

o sistema operacional é reiniciado.

l6:6:wait:/etc/rc.d/rc.6

# What to do when power fails – quando o init recebe um sinal SIGPWR (30) de um processo que

monitora uma interface serial ligada do computador a um no-break denominado UPS (Uninterrupted

Power Supply – Suprimento Ininterrupito de Energia) ele executa o comando shutdown.

pf::powerfail:/sbin/genpowerfail start

# If power is back, cancel the running shutdown – caso a energia seja reestabelecida o init recebeum sinal SIGPWR alertando que há um arquivo chamado /etc/powerstatus contendo a palavra OK.

Isso significa que a energia elétrica voltou. Então o shutdown anterior deve ser cancelado.

pg::powerokwait:/sbin/genpowerfail stop

# caso a energia seja reestabelecida o init recebe um sinal SIGPWR alertando que há um arquivo

chamado /etc/powerstatus contendo a palavra OK. Isso significa que a energia elétrica voltou. Então o

shutdown anterior deve ser cancelado.

  Seja um Profissional Aprendendo com Profissionais 88

Page 89: 139166004-Curso-Red-Hat

8/12/2019 139166004-Curso-Red-Hat

http://slidepdf.com/reader/full/139166004-curso-red-hat 89/146

Page 90: 139166004-Curso-Red-Hat

8/12/2019 139166004-Curso-Red-Hat

http://slidepdf.com/reader/full/139166004-curso-red-hat 90/146

Linux System Administration

Liste o conteúdo do diretório  /etc/rc.d/rc3.d/ por exemplo. Observe que existem vários

arquivos e estes começam com a letra 'K' ou com a letra 'S' para indidar se o processo deve ser

parado (kill) ou iniciado (start), respectivamente. Observe também, que após uma dessas letras possue

um número que varia de 00 até 99 que determina a prioridade de execução dos arquivos contidos

neste diretório.

Para estes serviços podem ser utilizadas as ferramentas ntsysv e chkconfig nas distribuições

baseadas em RedHat®

NOTA: o diretório de cada ní vel de execução pode variar de distribuição para distribuição. O exemplo acima retrata o diretório dasdistribuições baseadas em Red Hat®.

Arquivo /etc/issue

Este arquivo contém a mensagem de cabeçalho que é apresentada na tela de login do modo

texto (mingetty). Para visualizar o arquivo digite:

# cat /etc/issue  (Este comando irá apresentar a seguinte saida:)Slackware Linux

Entre com Login e Senha.

Altere o conteúdo deste arquivo! Agora abra uma outra console texto (CTRL+ALT+F3 por

exemplo). Observe que a mensagem que você colocou no arquivo /etc/issue aparece na tela de login.

Este arquivo é utilizado para auxiliar os usuários informando o que eles devem fazer nesta tela.

Arquivo /etc/nologin

Este arquivo é utilizado quando o administrador decide fazer uma manutenção no servidor.

Este arquivo impede que os usuários comuns loguem no sistema. Por padrão este arquivo não existe.

Sempre que a existencia dele for necessária, o administrador deve cria-lo manualmente com o

comando touch por exemplo (touch /etc/nologin). Observe que a funcionalidade desse arquivo

é válida apenas dentro do diretório /etc.

  Seja um Profissional Aprendendo com Profissionais 90

Page 91: 139166004-Curso-Red-Hat

8/12/2019 139166004-Curso-Red-Hat

http://slidepdf.com/reader/full/139166004-curso-red-hat 91/146

Linux System Administration

Para testar a funcionalidade deste, execute o comando:

#touch /etc/nologin

Agora tente logar no sistema (com conta de usuário comun). Observe que isso não é possí vel,

porém o usuário não sabe o que está acontecendo, ele apenas não loga. Ele pode pensar que está 

digitando a senha errada ou que sua senha foi alterada.

Para eliminar essas possí veis dúvidas por parte dos usuários, o administrador deve digitar um

texto dentro do arquivo /etc/nologin, informando aos usuários a indisponibilidade do sistema por

determinado motivo. Para isso execute:

#vi /etc/nologin (Insira uma mensagem informativa). Por exemplo:

“SERVIDOR EM MANUTENÇÃO! ESTE ESTARÁ   DISPONÍVEL AS 15:00 HORAS.

OBRIGADO PELA COMPREENSÃO! CPD/3WAY.”

Dessa forma nenhum usuário irá incomodar.

Observe também que apenas a conta do superusuário, root, pode acessar o sistema com a existência

deste arquivo.

Arquivo /etc/motd

Este arquivo é usado para passar alguma informação após o logon para todos os usuários do

sistema, como por exemplo: “LOGIN EFETUADO COM SUCESSO!”

Altere o conteúdo deste arquivo e visualize sua saí da após o logon.

Arquivo /etc/securetty

  Seja um Profissional Aprendendo com Profissionais 91

Page 92: 139166004-Curso-Red-Hat

8/12/2019 139166004-Curso-Red-Hat

http://slidepdf.com/reader/full/139166004-curso-red-hat 92/146

Linux System Administration

Este arquivo mantém as consoles virtuais que o superusuário (root) pode efetuar logon no

sistema. É   uma polí tica de segurança que é   feita em servidores para impedir que pessoas que

eventualmente conseguem descobrir a senha de root efetuem logon no sistema.

Para prevenir esta situação, abra o arquivo /etc/securetty , e comente todas as linhas deste

arquivo usando o caractere '#'. Caso optar por deixar a console tty5 (5° console – CTRL+ALT+F5),

por exemplo, descomentada, o root poderá logar apenas nesta.

#vi /etc/securetty 

Exemplo do conteúdo, com algumas entradas comentadas:

# tty1

# tty2

# tty3

# tty4

  ...

# tty12

No exemplo acima o root não conseguirá realizar login nas consoles 1, 2, 3 e 4.

Exercí cio

Se forem comentadas todas as linhas deste arquivo, o que fazer para efetuar o login no sistema

com a conta de root, visto que sua entrada está bloqueada?

Essa resposta é bem simples. Você pode efetuar o logon de sua conta pessoal no sistema, logo

após é executado o comando su - <usuário>. Este comando fará com que a senha do <usuário>seja solicitada.

Vamos fazer um teste. Siga os passos:

7) Efetue logon no sistema com sua conta pessoa;

8) Agora digite $su - root;

9) Agora digite a senha de root. Observe que agora está logado com a senha de root;

10)Execute o comando exit para voltar à conta anterior.

  Seja um Profissional Aprendendo com Profissionais 92

Page 93: 139166004-Curso-Red-Hat

8/12/2019 139166004-Curso-Red-Hat

http://slidepdf.com/reader/full/139166004-curso-red-hat 93/146

Linux System Administration

Comando su

O comando su é utilizado para se promover como sendo outro usuário no linux.

Por exemplo: Você está logado no sistema como fulano e deseja acessar o sistema como beltrano. Não

necessariamente deve ser efetuado logoff de fulano e logon de beltrano, basta utilizar o comando su -

beltrano e logo após digitar a senha para este usuário. Assim que terminar de fazer a tarefa usando o

usuário beltrano, deve ser digitado o comando exit fazendo com que o logon de beltrano seja

encerrado, e é retornado, então, para o logon fulano.

Faça este procedimento. Crie duas contas de usuário uma fulano e outra beltrano com senhas

123. logue como fulano e depois se promova como beltrano. Depois execute o comando exit. Observe

que a conta do beltrano é encerrada e a conta atual é fulano.

Este comando é   útil quando são comentadas todas entradas no arquivo /etc/securetty

(apresentado acima) e se deseja efetuar alguma configuração no sistema com a conta de root.

  Seja um Profissional Aprendendo com Profissionais 93

Page 94: 139166004-Curso-Red-Hat

8/12/2019 139166004-Curso-Red-Hat

http://slidepdf.com/reader/full/139166004-curso-red-hat 94/146

Linux System Administration

Inicialização de Serviços

O local dos arquivos scripts para inicialização dos serviços difere de uma distribuição para

outra. Nas distribuições baseadas no Red Hat (Fedora, Conectiva, Suse, etc) os scripts de inicialização

dos serviços se encontram dentro do diretório /etc/rc.d/init.d/ ou /etc/init.d/,

 já no Slackware eles ficam dentro de /etc/rc.d/, por exemplo.

Estes serviços são chamados também de daemons. Um serviço  ou um daemon  é 

necessáriamente um processo, podendo ser: serviços de rede - como httpd (servidor de páginas Web),crond (agendador de tarefas), sendmail (servidor para envio de e-mails) ; ou não - como network

(configuração de rede) e keytable (configuração de teclado), gpm (serviço do mouse), etc.

É costume incluir a letra 'd' no final do nome de cada script para indicar os daemons, como

httpd (HTTP daemon - servidor de páginas web), named (name daemon - servidor de nomes internet),

etc.

Todos estes serviços ou daemons são padronizados de forma que suportam as opçõesstart e

stop; e opcionalmente as opções status, restart e reload.

Opção  Funcao 

start Inicia o daemon / serviço

stop Pára o daemon / serviço

restart Pára e inicializa o daemon / serviço

reload Recarrega o arquivo de configuração sem parar o daemon / serviço

status Exibe se o status do daemon / serviço - parado, rodando, travado, etc...

Nem todos os daemons suportam todas as opções citadas.

Para executar um daemon, basta indicar o camindo completo deste (/etc/rc.d/daemon) e

informar o que você deseja fazer com tal (start, stop, status, restart ou reload).

Por exemplo: Se desejar utilizar o recurso do mouse, a primeira coisa a fazer é identificar o daemon

relativo ao mouse (gpm), depois é so executar o comando. Este fica da seguinte forma

#/etc/rc.d/rc.gpm stop

  Seja um Profissional Aprendendo com Profissionais 94

Page 95: 139166004-Curso-Red-Hat

8/12/2019 139166004-Curso-Red-Hat

http://slidepdf.com/reader/full/139166004-curso-red-hat 95/146

Linux System Administration

#/etc/rc.d/rc.gpm start

#/etc/rc.d/rc.inet1 stop

#/etc/rc.d/rc.inet1 start

O Arquivo /etc/login.defs

Este arquivo armazena as principais configurações para a geração dos usuários (quando se

executa o comando adduser <user>), indo desde o gerenciamento de senha, até a criação do diretório

padrão do usuário.

Exemplo do conteúdo do arquivo:

MAIL_DIR /var/spool/mail local padrão para os e-mail dos usuários.

PASS_MAX_DAYS 99999 número de dias para a utilização da senha

PASS_MIN_DAYS 0 quantidade m ínima de dias que o usuário deverá 

ficar com a senha sem altera-la.

PASS_MIN_LEN 5 tamanho m ínimo da senha para usuários comuns qdo

for alterada

PASS_WARN_AGE 7 dias restantes que o usuário será informado da

expiração da senha.

UID_MIN 500 Início do UID para usuários comuns

UID_MAX 60000 Fim do UID para usuários comuns

GID_MIN 500 Início do GID para usuários comuns

GID_MAX 60000 Fim do GID para usuários comuns

CREATE_HOME yes É criado o diretório home no momento da criação do

login

  Seja um Profissional Aprendendo com Profissionais 95

Page 96: 139166004-Curso-Red-Hat

8/12/2019 139166004-Curso-Red-Hat

http://slidepdf.com/reader/full/139166004-curso-red-hat 96/146

Linux System Administration

Programação Shell

Programando no Linux

Todos os sistemas operacionais da famí lia Unix possuem shell (interpretador de comandos)

programáveis; ou seja, permite a criação de scripts interpretados, com funcionalidades próximas de

uma linguagem completa, como C ou Pascal.

Os scripts shell permitem ao administrador do sistema automatizar tarefas, criar novos

comandos para o seu auxilio, entre outras vantagens. A sua utilização é muito variada, sendo que eleestá presente em todo o sistema, pois a maioria dos arquivos utilizados pelo sistema são scripts, assim

conhecer a sua sintaxe e compreender o que ele pode vir a fazer dentro de um arquivo é fundamental

para o administrador.

Nota: O intuito deste material não é ensinar programação, mas sim apresentar os detalhes de script shell. Portanto, para se ter bom

proveito, é necessário que o leitor conheça os fundamentos de lógica de programação.

Tipos de interpretadores

Existem vários tipos de interpretadores para o sistema Linux, sendo os principais: bash (mais

popular e mais utilizado), sh (o sh não existe mais, foi superado e substituí do pelo bash, por isso,

geralmente sh é um link simbólico para bash), csh (sintaxe parecida com C e é o mais utilizado no

Unix Solaris), tcsh (semelhante ao csh, porém mais completo).

Todos os scripts criados devem começar com uma linha de comando especí fica informando aosistema operacional o tipo de interpretador de comandos a ser utilizado. O mais comum é o bash.

O nome do interpretador atualmente utilizado fica armazenado em uma variável de ambiente

chamada SHELL ou shell (dependerá do interpretador). Para saber qual está sendo utilizado, basta

utilizar o comando abaixo:

# set | grep -i shell

SHELL=/bin/bash

Seja um Profissional Aprendendo com Profissionais 96

Page 97: 139166004-Curso-Red-Hat

8/12/2019 139166004-Curso-Red-Hat

http://slidepdf.com/reader/full/139166004-curso-red-hat 97/146

Linux System Administration

Neste caso o comando utilizado foi: set para listar as variáveis de ambiente, o pipe (para

concatenar a saí da do último comando com a entrada do próximo), grep para fazer a filtragem de

saí da juntamente com a opção -i (desativa o case sensitive para esta filtragem) e o nome da variável a

ser pesquisada e oomo resultado obtido foi o nome do interpretador utilizado, que neste caso é o bash.

Quando o usuário possui um interpretador de comandos e uma senha válida ele está apto a

fazer login no sistema, porém algumas vezes não é interessante que ele faça acesso, mas que possua

uma conta para acessar outros tipos de serviços do sistema, como internet, SAMBA e outros serviços.

A remoção do acesso ao sistema pode ser feita no arquivo de configuração de usuários /etc/passwd,

devendo ser alterado o valor do último campo de /bin/bash (ou outro interpretador) para /bin/false ou

 /bin/nologin.

Para este material será utilizado o interpretador de comandos bash, pois além de ser o mais

comum as distribuíções ele é mais simples para trabalhar.

Um Script simples

Os scripts são arquivos regulares do sistema, não havendo necessidade de extensões

especí ficas ou detalhes a mais, ele funciona simplesmente com a sua permissão de execução ativada.

A extensão seria usada para destacar o arquivo como um script. Um exemplo seria a extensão .sh

representando shell ou bash.

Os comandos dentro de um script podem ser os mesmos utilizados em uma linha de comando,

pois o arquivo é   lido de forma sequêncial (de cima para baixo) e lido conforme seria digitado

diretamente pelo usuário. Poderia ser criado um script para escrever uma mensagem na tela para o

usuário quando o script for executado, podemos fazer acesso a banco de dados como o MySQL, filtrar

dados de comandos etc...

Iremos inicialmente gerar um script simples com o comando echo, que permite escrever na

saí da padrão, enviando uma mensagem simples, como: Olá Mundo!

Exemplo:

  Seja um Profissional Aprendendo com Profissionais 97

Page 98: 139166004-Curso-Red-Hat

8/12/2019 139166004-Curso-Red-Hat

http://slidepdf.com/reader/full/139166004-curso-red-hat 98/146

Linux System Administration

Crie e edite um arquivo chamado script1.sh dentro do seu diretório $HOME, com o seguinte

conteúdo:

# vi ~/script1.sh

Conteúdo:

#!/bin/bash

echo "Olá Mundo!”

 

O cabeçalho #!/bin/bash serve para informar o tipo de interpretador a ser utilizado. Caso não

seja informado o tipo do interpretador não tem problema. A extensão .sh não é necessária, mas ela é 

colocada para facilitar sua indentificação pelo usuário, que também pode recorrer ao comando file.

Após a edição basta salvar o arquivo e alterar a sua permissão para executável:

# chmod 755 script1.sh 

Para executa-lo, existem várias formas diferentes:

Utilizando o comando bash

# bash script1.sh

Ola Mundo!

Neste caso não é necessário alterar as permissões do arquivo, mas toda veze que é digitado o

comando bash é aberto um processo filho sobre o interpretador utilizado.

Passando todo o caminho desde o raí z até o nome do arquivo com a permissão de execução:

# /tmp/script1.sh

Ola Mundo!

  Seja um Profissional Aprendendo com Profissionais 98

Page 99: 139166004-Curso-Red-Hat

8/12/2019 139166004-Curso-Red-Hat

http://slidepdf.com/reader/full/139166004-curso-red-hat 99/146

Linux System Administration

Utilizando o comando "ponto espaco script" 

#. script1.sh

Olá Mundo!

 

Utilizando o comando “./”

O ponto barra serve para indicar ao sistema que o arquivo está localizado no diretorio corrente,

logo após ele deverá ser executádo, desde que o arquivo esteja com a permissão habilitada para isso.

# ./script1.sh

Olá Mundo!

 

NOTA: Neste dois últimos casos é obrigatório que o usuário esteja dentro do diretório onde está armazenado o script shell. 

Outras opções do interpretador bash

No momento da execução podem ser feitos testes para verificar o funcionamento do script e

saber se ele foi corretamente criado. O teste pode ser feito passando uma das opções conforme a

chamada.

Sintaxe:

# bash [opção] script-shell

opção:

-x é apresentado o comando e depois a sua saí da

-n apenas faz um teste de verificação, não o executa.

-v apresenta todo o script e depois o executa

Exemplo:

#bash -x script1.sh

  Seja um Profissional Aprendendo com Profissionais 99

Page 100: 139166004-Curso-Red-Hat

8/12/2019 139166004-Curso-Red-Hat

http://slidepdf.com/reader/full/139166004-curso-red-hat 100/146

Linux System Administration

echo "Olá Mundo!”

Olá Mundo!

#bash -n script1.sh

#bash -v script1.sh

#!/bin/bash

echo "Olá Mundo!”

Olá Mundo!

Sintaxe

A programação shell é  muito simples comparada as linguagens de comparação, mas ela

também possui a sua própria caracterí stica, muito semelhante a linguagemC. Nela é possí vel declarar

variável, escrever mensagens, utilizar estruturas de condição e repetição, uso de funções modulares,

uso de comandos do próprio interpretador, entre outros.

Comentários

Os comentários dentro de scripts são feitos utilizando o caractere #. Do ponto de onde ele

estiver presente até o final da linha será  interpretado como comentário. No script shell não existe

declaração para um comentário em várias linhas, devendo o mesmo ser colocado uma por uma,

portanto não existe bloco de comentários, como em algumas linguagens de programação.

Exemplo:#!/bin/bash

# Programa simples de Script Shell

echo "Olá Mundo!" # Imprime Olá Mundo!!

Tipos de Vari áveis

Seja um Profissional Aprendendo com Profissionais 100

Page 101: 139166004-Curso-Red-Hat

8/12/2019 139166004-Curso-Red-Hat

http://slidepdf.com/reader/full/139166004-curso-red-hat 101/146

Linux System Administration

Variável Simples

A variável dentro do sistema só  pode assumir o valor de string. Sua declaração se dá no

momento do recebimento de qualquer valor, de acordo com a estrutura: variável=valor

Não precisa ter ";" ao final da linha e também não pode ter espaços entre a variável e o sinal

de igual, e o sinal de igual e o valor a ser recebido.

As regras para a criação são muito semelhante às outras linguagens de programação, vide os

seguintes pontos:

1. Usar caracteres alfanuméricos e underline;

2. Começar com letra ou underline;

3. Não pode conter espaços em branco ou acento.

4. A variável gerada dentro do script é apagada ao final da execução do mesmo.

 Acessando vari áveis

O conteúdo da variável pode ser lido com a inserção do sinal "$" antes da variável: $variável

Exemplo:

Criar um novo arquivo chamado script2.sh com o conteúdo:

#!/bin/bash

Var=“Teste de conteúdo"

echo $Var

Salve o arquivo e o execute, a saí da será o conteúdo da variável Var.

Comando echo

Como visto anteriormente o comando echo permite a escrita na saí da padrão, quando o

mesmo não é redirecionado para um arquivo, dispositivo, etc.

Seja um Profissional Aprendendo com Profissionais 101

Page 102: 139166004-Curso-Red-Hat

8/12/2019 139166004-Curso-Red-Hat

http://slidepdf.com/reader/full/139166004-curso-red-hat 102/146

Linux System Administration

Abaixo serão mostradas algumas opções do comando echo:

Opção:

-n Não pula a linha após o echo

-e Permite o uso dos caracteres de escape (tabulação, quebra de linha, bip, etc).

Um exemplo do uso das opções acima podem ser feitas na linha de comando:

#echo -n "testando o uso do -n"

testando o uso do -n

NOTA: O uso do -e será melhor visto após o próximo tópico. 

Caractere de escape

Os caracteres de escape permitem a utilização de organização (como tabulação), saltar linha,

chamar uma sinalização sonora para o usuário, entre outras funções, assim ela sempre será 

acompanhada de uma barra-invertida para indicar o tipo do caractere.

Quadro de funções do caractere de escape:

Comando Função 

 \a Alerta (sinal)

 \b Retorno de espaço (backspace)

 \n Nova linha

 \r Retorno do carro

 \t Tabulação horizontal

 \v Tabulação vertical

 \\ Apresenta o "\"

 \" Apresenta aspas duplas

Exemplo:

  Seja um Profissional Aprendendo com Profissionais 102

Page 103: 139166004-Curso-Red-Hat

8/12/2019 139166004-Curso-Red-Hat

http://slidepdf.com/reader/full/139166004-curso-red-hat 103/146

Linux System Administration

#echo -e "testando o uso \n dos \"caracteres de escape\" \n"

testando o uso dos "caracteres de escape"

Caso o exemplo acima fosse escrito sem a opção -e o resultado seria:

#echo "testando o uso \n dos \"caracteres de escape\" \a \n" 

testando o uso \n dos "caracteres de escape \a \n

 Passagem de par â metrosNo momento de executar o script é possí vel passar parâmetros, que são informações extras

necessárias para o desenvolvimento do código, por exemplo, capturar uma senha, ela poderia ser

passada como parâmetro e fazer comparações dentro do código.

Os parâmetros podem ser:

Parâmetro Descrição 

$0 Nome do script, juntamente com o seu caminho completo

$1 a $9 Valores passados como parametros**

$$ Número do PID do script

$? Valor de retorno do teste do último comando

$# Quantidade de parametros existentes

** Para valores acima de 9 devem estar entre chaves, por exemplo, o parametro 15 seria descrito

assim: ${15}

 Leitura de teclado e vari áveis

Durante o andamento da interpretação pode ser solicitado a passagem de informações, para

estes casos existe o comando read que permite fazer a sua leitura e armazenar em uma variável.

Sintaxe:

a. read variável

b. read [opção] "mensagem: " variável

Opção Descricao 

Seja um Profissional Aprendendo com Profissionais 103

Page 104: 139166004-Curso-Red-Hat

8/12/2019 139166004-Curso-Red-Hat

http://slidepdf.com/reader/full/139166004-curso-red-hat 104/146

Linux System Administration

-p Solicita a infirmação e permite a visualização do que está sendo digitado

-s Solicita a informação, mas não permite a sua visualização; utilizado para pedir senhas

-n X Permite informar a quantidade de caracteres a serem lidos, X é a quantidade em inteiro.

Exemplo:

Criar um novo arquivo chamado script3.sh

Conteúdo:

#!/bin/bash

echo -n "Digite algo: "

read resposta

echo "Foi digitado: $resposta ; o primeiro parametro e $1 o segundo parametro é 

$2"

Execute o script passando parâmetros para o mesmo:

# ./script3.sh AAA BBB

A saí da será:

Digite algo: ALGO

Foi digitado: ALGO; o primeiro parâmetro e AAA o segundo parâmetro é BBB.

 Estruturas de Decis ã o (if)

A estrutura condicional permite definir uma decisão do programa; através de uma condição,

que pode ser uma comparação entre dois valores, por exemplo.

Sintaxe:

if [ condição ]; then

comandos

fi

A estrutura if permite o uso de else para o tratamento de erro na condição sem detalhes para a

programação. Porém existe uma diferença para o uso de um novo tratamento de condição, caso ele

Seja um Profissional Aprendendo com Profissionais 104

Page 105: 139166004-Curso-Red-Hat

8/12/2019 139166004-Curso-Red-Hat

http://slidepdf.com/reader/full/139166004-curso-red-hat 105/146

Page 106: 139166004-Curso-Red-Hat

8/12/2019 139166004-Curso-Red-Hat

http://slidepdf.com/reader/full/139166004-curso-red-hat 106/146

Linux System Administration

Comando exit

Caso fosse necessário para o sistema sair em qualquer ponto do script por falta de alguma

informação ou informação errada pode ser utilizado o comando exit 0. Assim quando o script o ler

sairá automaticamente do código.

O script script4.sh poderia ser reescrito assim:

#!/bin/bash

#Faz a leitura da senha do usuário

echo “Digite a sua senha:”

read -s resposta

senha="12345"

if [ $resposta = $senha ]; then

echo “Senha correta!”

  else

echo “Senha Incorreta!”exit 0

fi

Na estrutura acima caso o usuário informe a senha errada o script invocará o exit que serve

para sair do código e retornar o resultado para a saí da de erro padrão (STDERR). A insersão do exit

nesta linha de código, parece não ter serventia. Isso acontece porque o comando está no final do

código. Nos próximos exemplos, a utilização do comando exit será mais clara.

Operadores de compara çã o

As condições podem ser tratadas de acordo com as tabelas:

Entre valores inteiros

  Seja um Profissional Aprendendo com Profissionais 106

Page 107: 139166004-Curso-Red-Hat

8/12/2019 139166004-Curso-Red-Hat

http://slidepdf.com/reader/full/139166004-curso-red-hat 107/146

Linux System Administration

Condição  Significado 

$a -eq $b $a = $b (igual)

$a -le $b $a <= $b (menor ou igual)$a -ge $b $a >= $b (maior ou igual)

$a -lt $b $a < $b (menor que)

$a -gt $b $a > $b (maior que)

$a -ne $b $a <> $b (diferente)

O uso dos sinais <, >, <=, >=, = e != podem ser usados para inteiros, desde que sejam

executados entre dois parenteses (( )) ou pelo comando let.

O comando let permite o uso de códigos parecidos com a linguagem C, permitindo várias

coisas, como por exemplo à interação de uma variável (++ ou --):

let var++

let var—

Entre strings

Condição  Verdadeiro se -z $a Não existir mensagem

-n $a O mensagem existir

$a = $b O conteúdo de ambas as variáveis são iguais

$a != $b O conteúdo das variáveis forem diferentes

Arquivos

Condição  Verdadeiro se 

-e arquivo é um arquivo regular

-x arquivo arquivo é executável-d arquivo é um diretório

-l arquivo for um link

-s arquivo o arquivo existe e tem tamanho maior que zero

Valores booleanos

Condição  Verdadeiro se 

exprA -a exprB ambas as expressões são verdadeiras (operador e)

exprA -o expreB uma das expressões for verdadeira (operador ou)

!exprA a expressão for falsa

Seja um Profissional Aprendendo com Profissionais 107

Page 108: 139166004-Curso-Red-Hat

8/12/2019 139166004-Curso-Red-Hat

http://slidepdf.com/reader/full/139166004-curso-red-hat 108/146

Linux System Administration

Abra o arquivo script4.sh e adicione novas linhas a este, sendo:

# vi ~/script4.sh

#!/bin/bash

#Faz a leitura da senha do usuário

echo “Digite a sua senha:”

read -s resposta

senha="12345"

if [ $resposta = $senha ]; then

echo “Senha correta!”

  else

echo “Senha Incorreta!”

exit 0

fi

echo -n "Informe o caminho do diretório para backup:”

read diretorio

if [ -d $diretorio ]; then

echo “Diretório encontrado. Aguarde... fazendo o backup!”

else

echo “Diretório não encontrado!”

exit 0

if

tar cvfz backup.tar.gz $diretorio/*

Condi çã o case

Permite a seleção de comandos especí ficos a partir de uma chave de seleção, ou seja, o usuário

informa o que deseja fazer a partir de uma chave e os comando associados ao mesmo serão

executádos. O seu uso é  mais frequente em menus para a indicação de um item e a tomada de

comandos para esta opção.

Sintaxe:

case chave in 

Seja um Profissional Aprendendo com Profissionais 108

Page 109: 139166004-Curso-Red-Hat

8/12/2019 139166004-Curso-Red-Hat

http://slidepdf.com/reader/full/139166004-curso-red-hat 109/146

Linux System Administration

teste1) comandos;;

teste2) comandos;;

*) comandos;;esac

teste1 e teste2 são opções que o conteúdo de chave pode ter, mas caso chave possuia outro conteúdo *

assumirá esta opção, ou seja, * só será utilizado caso o conteúdo de chave não encontre uma opção

existente. Quando for necessário utilizar os mesmos comandos para chaves diferentes pode ser

utilizado o | (pipe) para separa-los. Uma linha das opções ficaria assim:

teste3 | teste4 | teste5) comandos;;

Será inserido ao código do script4.sh um menu para auxiliar o usuário, sendo:• adicionar um diretório;

• fazer um backup;

• descompactar arquivo (tar.bz2);

Abra o arquivo script4.sh para editar seu código:

#vi ~/script4.sh

  Seja um Profissional Aprendendo com Profissionais 109

Page 110: 139166004-Curso-Red-Hat

8/12/2019 139166004-Curso-Red-Hat

http://slidepdf.com/reader/full/139166004-curso-red-hat 110/146

Linux System Administration

#!/bin/bash

echo –e “\nMENU\n”

echo –e “(1) Cria diretório”

echo –e “(2) Cria Back-up”

echo –e “(3) Descompacta arquivo.tar.bz2”

echo –n –e “\nDigite a opção escolhida: ”

read –n1 op

case $op in

1)

echo –n –e “\nInforma o nome do diretório: ”

read nome_dir

if [ -d $nome_dir ];

  then

  echo –e “\nEste diretório ja existe...”

  else

  mkdir $nome_dir

  echo –e “\nDiretório criado com sucesso...”

fi;;

2)

echo –n –e “\nInforme o diretório para back-up: ”

read dir_bkp

if [ -d $dir_bkp ];

  then

tar cvfj $dir_bkp.tar.bz2 $dir_bkp

  echo –e “\nBack-up criado com sucesso!”

  else

  echo –e “\nDiretódio não encontrado!”

fi;;

3)

echo –n –e “\nInforme o arquivo .tar.bz2: ”

  read arq_tar.bz2

if [ -d $arq_tar.bz2 ];

  then

tar xvfj $arq_tar.bz2

  echo –e “\nArquivo descompactado em `pwd`”

  else

  echo –e “\nArquivo não encontrado!”

fi;; 

Seja um Profissional Aprendendo com Profissionais 110

Page 111: 139166004-Curso-Red-Hat

8/12/2019 139166004-Curso-Red-Hat

http://slidepdf.com/reader/full/139166004-curso-red-hat 111/146

Linux System Administration

Gerenciamento de Arquivos de LOG

O que sao Logs?

Logs são registros de eventos que têm como objetivo fornecer informação do comportamento

do sistema. Os eventos registrados podem ser normais, como: login de usuário, acesso à uma página

Internet, execução de um comando, etc. Também podem ser de eventos anormais, como: falta de

espaço em disco, travamento de um aplicativo, invasão do sistema, etc. Assim, através da análise dos

logs, o técnico pode orientar suas ações para corrigir ou melhorar a configuração do sistema.

 Formatos de arquivos de logs

O diretório padrão dos logs é  /var/log/ e geralmente utiliza dois formatos de arquivos:

texto - por exemplo, /var/log/messages ou /var/log/syslog que são visualizados com comandos como

tail.

#tail -f /var/log/messages

-f : fica lendo o arquivo repetidamente, ou seja, qdo o arquivo é modificado a tela é 

atualizada.

binário - por exemplo, /var/log/wtmp. que é visualizado com o comando especí fico last

#last -f /var/log/wtmp

Gerando LOGs

A geração de logs pode ser feita por qualquer daemon ou programa instalado no sistema. Os

daemons mais comuns para a geração de logs são o syslogd e o klogd.

  Seja um Profissional Aprendendo com Profissionais 111

Page 112: 139166004-Curso-Red-Hat

8/12/2019 139166004-Curso-Red-Hat

http://slidepdf.com/reader/full/139166004-curso-red-hat 112/146

Linux System Administration

O Daemon Syslogd 

O syslogd é responsável pelas mensagens de log do sistema. Uma das principais vantagens de

possuir daemon de logs é a centralização das informações geradas, evitando assim a leitura de dezenas

ou centenas de arquivos.

O Daemon Klogd 

O klogd monitora as mensagens de log do kernel. Ele realiza o monitoramento e envia as

informações por padrão para o syslogd.

O klogd registra as mensagens dentro do arquivo /proc/kmsg.

Os principais diretórios e arquivos de log

Nas tabelas a seguir serão apresentados os principais arquivos e diretórios de log com uma breve

apresentação sobre os mesmos:

Diretórios

Diretório Descrição

 /var/log/ Armazena a maioria dos logs gerados no sistema.

 /proc/ Armazena alguns arquivos de log gerados pelo kernel.

Arquivos do /var/log

Arquivo Descrição

messages Armazena as principais mensagens do kernel.

dmesg Armazena a mensagem de inicialização dos dispositivos do sistema

secure Armazena mensagem a ní vel do usuário, login, alteração, tipos de acessos.

boot.log Armazena mensagens de inicialização de ferramentas do sistema.

kdm.log Armazena mensagens de abertura do ambiente gráfico

lastlog Armazena informações de acesso do usuário. Arquivo binário.

Arquivos do /proc

  Seja um Profissional Aprendendo com Profissionais 112

Page 113: 139166004-Curso-Red-Hat

8/12/2019 139166004-Curso-Red-Hat

http://slidepdf.com/reader/full/139166004-curso-red-hat 113/146

Page 114: 139166004-Curso-Red-Hat

8/12/2019 139166004-Curso-Red-Hat

http://slidepdf.com/reader/full/139166004-curso-red-hat 114/146

Linux System Administration

Controle de cotas de disco

É importante que o administrador de uma rede linux, tenha controle do espaço que é utilizado

no servidor para garantir uma melhor performance e consistência do mesmo. A criação de quotas de

disco especifica o tamanho que cada usuário ou grupo poderá utilizar, garantindo assim que um

usuário não ocupe todo o espaço do servidor com arquivos pessoais (mp3, filmes, jogos, etc).

O controle de espaço pode ser especificado tanto para cada usuário como para grupo. Se o

limite é ultrapassado o usuário perde a atribuição de criação de novos recursos (neste caso, arquivos e

diretórios) dentro do sistema, ou seja, nada que ocupe espaço.

Existem duas formas de controle do armazenamento de dados no Linux:

• Controle de espaço em disco; e/ou

• Quantidades de arquivos (ou diretórios) criados.

A primeira forma de controle, é  importante para a manutenção do disco, pois o recurso de

armazenamento possui um determinado espaço f í sico, não permitindo assim a gravação de nenhum

bit a mais da capacidade.

A segunda, auxilia no controle da quantidade de arquivos presentes no sistema, embora não

pareça ser útil, serve para forçar o usuário manter seus arquivos sempre atualizados, e os que não

forem mais utilizados sejam deletados.

Verificando suporte a cota

Para utilizarmos o recurso de cotas de disco, o kernel do S.O. a ser utilizado dever á ter a opção para

quota de disco habilitada. Para isso, digite:

# less /lib/modules/{versão_kernel}/build/configs/{versão_kernel}-i386.config

  Seja um Profissional Aprendendo com Profissionais 114

Page 115: 139166004-Curso-Red-Hat

8/12/2019 139166004-Curso-Red-Hat

http://slidepdf.com/reader/full/139166004-curso-red-hat 115/146

Linux System Administration

Digite: uname -r para saber a versão do kernel.

Verifique se a linha CONFIG_QUOTA está descomentada e marcada com a opção 'y'.

Exemplo:

CONFIG_QUOTA=y

Se esta linha estiver comentada (#) e/ou estiver marcada com a opção 'n'. O kernel não está dando

suporte a quotas de disco, sendo necessário a re-compilação deste.

Verificando a instalação da ferramenta para quota de disco

 Habilitando quota em uma parti çã o

As quotas são aplicadas sobre as partições, devendo estas estarem habilidadas para usuário ou grupos,

nas seguintes entradas:

usrquota: quota para usuários;

grpquota:  quota para grupos;

Configurando quota de disco

Abrir o arquivo /etc/fstab e marcar as partições que receberão quota com o seu tipo (usuário e/ou

grupos). Como no exemplo:

<dispositivo> <pto_montagem> <tipo> <opção> <outras>

  Seja um Profissional Aprendendo com Profissionais 115

Page 116: 139166004-Curso-Red-Hat

8/12/2019 139166004-Curso-Red-Hat

http://slidepdf.com/reader/full/139166004-curso-red-hat 116/146

Linux System Administration

/dev/hda2 /boot ext3 defaults 0 0

/de/hda7 / ext3 defaults,usrquota,grpquota 0 0

Neste exemplo é marcado o dispositivo /dev/hda7, raiz do sistema, como o receptor de quota de disco

tanto para usuários quanto para grupos.

Criar dois arquivos dentro do dispositivo marcado para utilização de quota (/dev/hda7). Neste caso é a

raiz do sistema. Os arquivos deverão ter os nomes quota.user e quota.group para usuários e grupos

respectivamente.

# cd /

# touch quota.user quota.group

É   recomandado mudar as permissões destes arquivos, afim de não serem alterados por outros

usuários.

# chmod 600 quota.*

# ls -l quota.*-rw------- 1 root root 0 Jul 15 14:14 quota.group

-rw------- 1 root root 0 Jul 15 14:14 quota.user

Agora devemos refazer a leitura do sistema de arquivo que irá  receber a quota de disco, ou seja,

remontar o dispositivo /dev/hda7, /, com as novas alterações que foram feitas no arquivo /etc/fstab.

Para isso digite:

# mount -o remount /

Digite mount para visualizar as novas alterações:

# mount

/dev/hda7 on / type ext3 (rw,usrquota,grpquota)

none on /proc type proc (rw)

none on /sys type sysfs (rw)

  Seja um Profissional Aprendendo com Profissionais 116

Page 117: 139166004-Curso-Red-Hat

8/12/2019 139166004-Curso-Red-Hat

http://slidepdf.com/reader/full/139166004-curso-red-hat 117/146

Linux System Administration

Execute o comando quotacheck   na partição selecionada, /, gerando assim a leitura do mesmo e

marcando dentro dos arquivos quota.user e quota.group.

#quotacheck -augvm 

Onde:

a: checa todos os sistemas de arquivos registrados no /etc/fstab como dispositivo de quota;

u: checa os arquivos e diretórios dos usuários;

g: checa os arquivos e diretórios dos grupos;

v: apresenta o andamento da verificação;

m: força a checagem.

Depois de terminar a varredura do dispositivo, iremos ativar as quotas de disco. Para isso execute:

# quotaon -augv

/dev/hda6 [/]: group quotas turned on

/dev/hda6 [/]: user quotas turned on

Após esses passos o sistema estará com as quotas ativas, mas isso ainda não implica em

limites de utilização para os usuários, sendo necessário realizar estas configurações manualmente,

conforme próxima seção.

Para desativar as quotas de disco basta usar o comando quotaoff  com as mesmas opções utilizadas

para ativá-las:

# quotaoff -augv

/dev/hda6 [/]: group quotas turned off

/dev/hda6 [/]: user quotas turned off

  Seja um Profissional Aprendendo com Profissionais 117

Page 118: 139166004-Curso-Red-Hat

8/12/2019 139166004-Curso-Red-Hat

http://slidepdf.com/reader/full/139166004-curso-red-hat 118/146

Linux System Administration

Gerenciando quotas 

Para habilitar o controle de cota de disco o administrador da rede deve definir, antes de mais

nada, o tamanho que será disponibilizado para cada usuário. A regra geral é que todos os usuários

tenham uma quota definida, de maneira que a soma dos limites de espaço de todos os usuários não

ultrapasse o espaço disponí vel da partição que está com o sistema de quotas ativado.

 Definindo quota para usu á rios

Uma vez ativado as quotas será necessário o gerenciamento delas, definindo o tamanho de

quota para cada usuário, tanto para o espaço em disco quanto para a quantidade de arquivos.

Por segurança, as quotas só podem ser editadas pelo root, com o seguinte comando:

# edquota [opção] [usuário/grupo]

opção:

-g: define quota para um determinado grupo; 

-u: define quota para um determinado usuário. 

#edquota -u pedrohenrique

Exemplo do conteúdo deste arquivo:

Disk quotas for user pedrohenrique (uid 505):

Filesystem blocks soft hard inodes soft hard

/dev/hda6 44 0 0 12 0 0

O seu conteúdo apresenta as seguintes colunas:

  Seja um Profissional Aprendendo com Profissionais 118

Page 119: 139166004-Curso-Red-Hat

8/12/2019 139166004-Curso-Red-Hat

http://slidepdf.com/reader/full/139166004-curso-red-hat 119/146

Linux System Administration

Filesystems: especifica a partição que é possí vel ativar quotas.

Blocks: especifica a soma em kilobytes de todos os arquivos do usuário na partição em questão (neste

caso, o usuário rafael possui atualmente 44 KB de dados em /dev/hda6).

Soft: é o limite lógico do usuário, ou seja, a partir do momento que o usuário ultrapassa esse limite,

ele será alertado pela ferramenta quota para que diminua a quantidade de dados (por um perí odo

“Grace Period” – explicado mais abaixo) porém ainda conseguirá gravar dados no disco, até o limite

hard.

Hard: é o limite f í sico, o limite pelo qual o usuário não consegue passar.

Inodes:  é   a quantidade atual de arquivos do usuário (o usuário rafael possui 12 arquivos em

 /dev/hda6).

 NOTA: Se os valores para a coluna soft e hard  estiverem com o valor igual a zero, 0, isso indica que nã o est ã o

definidos o tamanho má ximo para utilizaçã o do usuário e que este pode gravar o que quiser do tanto que

quiser.

Edite o arquivo. Exemplo:

#edquota -u pedrohenrique

Disk quotas for user pedrohenrique (uid 505):

  Filesystem blocks soft hard inodes soft hard 

  /dev/hda6 44 2048  3072 12 0 0

Agora o usuário rafael possui as seguintes configurações de quota:

Em disco:

  Seja um Profissional Aprendendo com Profissionais 119

Page 120: 139166004-Curso-Red-Hat

8/12/2019 139166004-Curso-Red-Hat

http://slidepdf.com/reader/full/139166004-curso-red-hat 120/146

Linux System Administration

Limite lógico: 2.048Kb = 2Mb

Limite f í sico: 3.072Kb = 3Mb

Número de Arquivos:

Ilimitado. Até atingir sua quota máxima, é claro!

Definindo quota para outros usuários

Para definir quotas de disco para outros usuários, não necessariamente, deve ser executado ocomando edquota -u <user> para cada usuário cadastrado no sistema, até porque, isso leva um tempo

considerável, caso o número de usuários seja grande.

Uma maneira f ácil e rápida para definir quotas para os outros usuários é executando o seguinte

comando: edquota -p <usuario_model> <lista_de_usuários>. Para isso deve existir um usuário

com as quotas definidas para servir de modelo. Ou seja, todos os outros usuários terão as mesmas

configurações de quota que está sendo usada pelo usuário_modelo.

# edquota -p pedrohenrique leandro rubia angela jose maria ...

-p: indica que a lista_de_usuários deve possuir as mesmas configurações que o usuário_modelo

Após a execução do comando acima execute:

# edquota -u leandro

# edquota -u rubia

# edquota -u angela

# edquota -u jose

# edquota -u maria

Observe que as mesmas configurações de quotas definidas para o usuário rafael, agora estão

Seja um Profissional Aprendendo com Profissionais 120

Page 121: 139166004-Curso-Red-Hat

8/12/2019 139166004-Curso-Red-Hat

http://slidepdf.com/reader/full/139166004-curso-red-hat 121/146

Page 122: 139166004-Curso-Red-Hat

8/12/2019 139166004-Curso-Red-Hat

http://slidepdf.com/reader/full/139166004-curso-red-hat 122/146

Linux System Administration

mais nenhum arquivo, mesmo que o limite f í sico (hard) ainda não estiver se esgotado.

Se isso acontecer o usuário terá que eliminar alguns arquivos até ficar com o espaço menor

que o espaço lógico, definido pela coluna soft.

 Definindo quotas para grupo

A quota de grupo é útil quando se trabalha em determinados setores dentro da empresa e por

sua vez dentro do sistema. Por exemplo, em uma empresa que possui um grupo chamado financeiro e

um outro grupo chamado programação, ambos os grupos devem ter direitos de gravação dentro do

sistema, mas é   interessante repassar uma quota para ambos os grupos, pois senão cada usuário

presente dentro dos grupos irá aproveitar a quota de grupo para armazenar seus arquivos pessoais,

para não ocupar seu espaço no disco.

Para editar quotas de grupos, basta executar:

#edquota -g <grupo>

#edquota -g cpd

As configurações de quotas para grupos são feitas da mesma forma que são definidas para os

usuários.

Suponhamos que a configuração do arquivo seja a seguinte:

Disk quotas for group cpd (gid 505):

Filesystem blocks soft hard inodes soft hard

/dev/hda6 5000 19000 20000 30 0 0

No exemplo os grupo possui 5.000kb em disco, seu limite lógico (soft) é 19.000kb e seu limite

f í sico (hard) é 20.000kb.

  Seja um Profissional Aprendendo com Profissionais 122

Page 123: 139166004-Curso-Red-Hat

8/12/2019 139166004-Curso-Red-Hat

http://slidepdf.com/reader/full/139166004-curso-red-hat 123/146

Linux System Administration

O ponto mais importante de se frizar é que a quota de grupo é um limite de utilização para

todos os usuários do grupo. Ou seja, vamos supor o seguinte caso:

cpd:x:507:pedrohenrique, fulano, beltrano, ciclano

Utilizando o exemplo acima, os usuários do grupo cpd (pedrohenrique, fulano, beltrano,

ciclano) podem utilizar juntos no máximo 20.000kb. Ou seja, se o usuário pedrohenrique utilizar

19500kb os outros usuários (fulano, beltrano, ciclano) poderão usar no máximo 500kb.A confuração “Grace Period” é válida tanto para usuários quanto para grupos.

  Seja um Profissional Aprendendo com Profissionais 123

Page 124: 139166004-Curso-Red-Hat

8/12/2019 139166004-Curso-Red-Hat

http://slidepdf.com/reader/full/139166004-curso-red-hat 124/146

Linux System Administration

Agendador de Tarefas

A administração de um servidor exige executar tarefas periódicas, como: realizar backup no

final do turno de trabalho, checagem e atualização de banco de dados, leitura de informações em e-

mail, entre outras tarefas. Neste sentido, foi criada# ls /var/log/packages/ uma ferramenta de

agendamento de tarefas denominado cron.

O agendador cron, que é   o agendador padrão do UNIX, vem no pacote crontabs. A

configuração pode ser feita por várias ferramentas e arquivos de várias autorias, neste material será 

abordada a ferramenta de autoria de Paul Vixie, que é a mais popular entre os administradores de

sistemas, o nome deste pacote é vixie-cron.

Consulta na Base de Dados packages .

#ls /var/log/packages/

CRON

Essa ferramenta possui como daemon o serviço crond, responsável pela verificação dos

arquivos de configuração do agendador. Ele verifica a cada minuto se houve mudança na data de seu

diretório de serviços (ou na data do arquivo em /etc/crontab). Se tiver ocorrido mudança, o cron irá 

examinar a data de todos os arquivos crontab e recarregar aqueles que foram alterados. Por isso o

serviço crond não precisa ser reativado quando houver alteração em qualquer um de seus arquivos de

configuração.

Pode se usar a consulta aos processos para saber se o serviço crond está  rodando, como

apresentado a baixo:

#ps ax | grep crond

crond (pid 8478) está rodando...

NOTA: para não ter que inicializar o crond toda vez que for necessário reiniciar o sistema, utilize a ferramenta ntsysv.

  Seja um Profissional Aprendendo com Profissionais 124

Page 125: 139166004-Curso-Red-Hat

8/12/2019 139166004-Curso-Red-Hat

http://slidepdf.com/reader/full/139166004-curso-red-hat 125/146

Page 126: 139166004-Curso-Red-Hat

8/12/2019 139166004-Curso-Red-Hat

http://slidepdf.com/reader/full/139166004-curso-red-hat 126/146

Linux System Administration

HOME é usado como o diretório padrão quando se executa comandos ou scripts.

 

 NOTA: Se o campo da variável MAILTO estiver definido como uma string vazia (MAILTO=""), o e-mail nã o ser á enviado.

Cada linha do arquivo /etc/crontab representa a tarefa e tem o formato:

<minuto> <hora> <dia> <mês> <dia_da_semana> <comando>

Os campos são descritos da seguinte maneira:

Cam o  Valores Validos minuto ual uer inteiro de 0 a 59

hora ual uer inteiro de 0 a 23

dia ual uer inteiro de 1 a 31

mês ual uer inteiro de 1 a 12

dia da semana ual uer inteiro de 0 a 7

Se um campo tiver indicado com asterisco (*) , significa que aceitará toda a faixa de valores válidos.

Pode-se usar intervalos de números. O intervalo é   um par de números separado por hí fen. Por

exemplo, no intervalo 15-19 em uma entrada “horas” especifica execução as 15 , 16 , 17 , 18 e 19horas.

Listas são válidas também. Listas são números separados por ví rgulas. Exemplo: “1-5,8,12”. Ou sena,

1, 2, 3, 4, 5, 8, 12.

Também existe a possibilidade de se usar frações de tempo, por exemplo de 10 em 10 minutos, o

formato da fração é */tempo, assim para o caso apresentado seria */10 no campo de minutos.

Nomes (em inglês) também podem ser usados nos campos “mês” e “ dia_da_semana”. Deve-se usar

as três primeiras letras do dia ou mês. (Segunda = mon = 1)

O sexto campo (o restante da linha) determina o comando a ser executado. Deve-se utilizar

todo o caminho até o comando. Para saber onde está o comando a ferramenta whereis pode auxiliar.

As distribuições baseadas na Red Hat utilizam o arquivo /etc/crontab para organizar diretórios

de tarefas, como em dias, horas, semanas e meses. O arquivo /etc/crontab pode utilizar o script run-

parts para executar os scripts nos diretórios /etc/cron.hourly, /etc/cron.daily, /etc/cron.weekly, e

 /etc/cron.monthly. Os arquivos nesses diretórios devem estar escritos em shell script. Para adicionar

Seja um Profissional Aprendendo com Profissionais 126

Page 127: 139166004-Curso-Red-Hat

8/12/2019 139166004-Curso-Red-Hat

http://slidepdf.com/reader/full/139166004-curso-red-hat 127/146

Page 128: 139166004-Curso-Red-Hat

8/12/2019 139166004-Curso-Red-Hat

http://slidepdf.com/reader/full/139166004-curso-red-hat 128/146

Linux System Administration

# crontab -e

O comando acima irá abrir um arquivo com o editor padrão do usuário. Acrescentar à linha a ser

executada:

0 18 * * * /bin/cp -rf /var/log/* /root/logs

<minuto> <hora> <dia> <mês> <dia_da_semana> <comando>

Acima foi passado para que às 18 horas de todos os dias ele faça uma cópia do diretório

 /var/log. A utilidade de se fazer a cópia deste diretório é porque dentro dele ficam armazenadas

informações do sistema e acessos ao mesmo, além de outras informações.

 

Fazer a cópia ajuda, porém não é interessante apenas fazer a cópia, pois um dia que se esqueça

de realiza-la, todas as informações do dia anterior serão perdidas. Assim é aconselhável criar um

script shell para fazer a cópia, empacotar e compactar os arquivos. Portanto deverá ser criado um

arquivo com o nome de script.sh dentro do diretório do root, além de um diretório chamado logs. O

código do script pode ser:

#vi /root/script.sh

#!/bin/bash

cd /var/log

tar cvfz backup`date + %m%d`.tar.gz * 

mv backup* /root/logs

O script acima irá executar os seguintes comandos:

• entrar no diretório /var/log (após a finalização do script ele retornará para o diretório antes da sua

chamada).

• empacotar e compactar todo o conteúdo do diretório /var/log com o nome de backup e

complementada pela data do dia.

• mover o backup gerado para dentro do diretório /root/logs.

Seja um Profissional Aprendendo com Profissionais 128

Page 129: 139166004-Curso-Red-Hat

8/12/2019 139166004-Curso-Red-Hat

http://slidepdf.com/reader/full/139166004-curso-red-hat 129/146

Page 130: 139166004-Curso-Red-Hat

8/12/2019 139166004-Curso-Red-Hat

http://slidepdf.com/reader/full/139166004-curso-red-hat 130/146

Linux System Administration

 Anacron ( Para RedHat )

O anacron é um executor de tarefas agendadas que por algum motivo não foram executadas.

Quando o computador necessita ser desligado e já  existe alguma tarefa agendada justamente no

horário que ela está desligado, ao inicializar o sistema o anacron verifica a tabela do /etc/anacrontab, e

caso alguma não tenha sido executada ele o fará imediatamente.

O seu uso é recomendado quando o sistema pode não estar executando no momento de tarefas

agendadas, mas se o sistema permanece ligado 24 horas por dia e 7 dias na semana é melhor utilizar o

cron.

Sintaxe:

anacron [opções] [jobs]

opções:

-f força a utilização do anacron, ignorando o horário de execução

-u apenas atualiza a data de execução para a data corrente, porém sem realizar nada

-n executa o comando imediatamente após a sua chamada

-d não lança o anacron para executar em backgroud, retorna também a versão, o horário de

ativação e a quantidade de jobs para serem executados

-h chama o help do comando. Exemplo: agendar uma tarefa com o cron para ser executado às

2:00 da manhã todos os dias.

Chamar o agendador do cron:

#crontab -e

Acrescentar a tarefa para o anacron, neste caso será uma cópia do arquivo /var/log/messages

para dentro do diretório do root:

0 2 * * * /bin/cp -Rf /var/log/messages /root/anacron_log

Seja um Profissional Aprendendo com Profissionais 130

Page 131: 139166004-Curso-Red-Hat

8/12/2019 139166004-Curso-Red-Hat

http://slidepdf.com/reader/full/139166004-curso-red-hat 131/146

Page 132: 139166004-Curso-Red-Hat

8/12/2019 139166004-Curso-Red-Hat

http://slidepdf.com/reader/full/139166004-curso-red-hat 132/146

Linux System Administration

Configuração dos Dispositivos de Hardware

Para efetuar configurações de hardware é necessário e importante fazer uma pesquisa sobre o tipo de

cada um deles e verificar as ferramentas que auxiliam na sua configuração. Cada distribuição linux

possui suas ferramentas especí ficas.

Neste material serão abordados configurações de hardware para distribuição Slackware 10.2.

Ferramentas:  Alem dessas, existe a ferramenta PKGTOOL, para auxiliar a configuração de alguns dispositivos em

modo texto. Para visualizá-la execute o comando:

Configurando impressora com CUPS

1) Passo: Habilitar servidor de impressao

# /etc/rc.d/rc.cups stop# /etc/rc.d/rc.cups start

2) Passo: Logar no servidor CUPS através do browser

  Seja um Profissional Aprendendo com Profissionais 132

Page 133: 139166004-Curso-Red-Hat

8/12/2019 139166004-Curso-Red-Hat

http://slidepdf.com/reader/full/139166004-curso-red-hat 133/146

Linux System Administration

Existem vários comandos afins de gerenciar a fila de impressão, alguns deles serão comentados

abaixo:

#lpq -a

Rank Owner Job File(s) Total Size

active root 6 testpage.asc 1024 bytes

1st root 7 testpage-a4.ps 18432 bytes

Este comando é usado para mostrar a fila de impressão de todas as impressoras que estão em atividade

na máquina local.

#lpstat

hp840-6 root 1024 Ter 03 Ago 2004 19:32:11 BRT

hp840-7 root 18432 Ter 03 Ago 2004 19:32:21 BRT

Este comando mostra com menos detalhes a fila de impressão.

#lpq –a lista a fila de impressão

Rank Owner Job File(s) Total Size

active root 6 testpage.asc 1024 bytes

1st root 7 testpage-a4.ps 18432 bytes

# lprm 7 remove da fila a impressão de job 7

# lpq –a mostra a nova fila de impressão

Rank Owner Job File(s) Total Size

active root 6 testpage.asc 1024 bytes

Este comando, lprm <job>, remove um arquivo identificado por <job> da fila de impressão. É 

interessante visualizar-mos o identificador (job) do arquivo para removê-lo. Entretanto a execução

desse comando sem o job, lprm, fará com que o próximo da fila seja removido.

# lpr /etc/passwd

  Seja um Profissional Aprendendo com Profissionais 133

Page 134: 139166004-Curso-Red-Hat

8/12/2019 139166004-Curso-Red-Hat

http://slidepdf.com/reader/full/139166004-curso-red-hat 134/146

Linux System Administration

O comando acima envia um job (arquivo para impressão) para fila de impressão. Verifique com o

comando lpq -a.

# lpq -a

Rank Owner Job File(s) Total Size

active root 6 testpage.asc 1024 bytes

1st root 8 passwd 2048 bytes

É   possí vel remover vários arquivos da fila de impressão. Para isso usamos o comando lprm

identificando todos os jobs que devem ser removidos da fila. Observe os comandos:

# lprm 6 8

# lpq -a

no entries

O primeiro comando remove os arquivo de job 6 e 8 respectivamente; o segundo lista a fila de

impressão com nenhum job em atividade.

  Seja um Profissional Aprendendo com Profissionais 134

Page 135: 139166004-Curso-Red-Hat

8/12/2019 139166004-Curso-Red-Hat

http://slidepdf.com/reader/full/139166004-curso-red-hat 135/146

Linux System Administration

Configuração Básica do Servidor NFS

Lado Servidor

1° passo: Verificar se alguns pacotes estão instalados no sistema: portmap e nfs.

# ls /var/log/packages | grep portmap

portmap-5.0

# ls /var/log/packages | grep nfs

nfs-utils

2° passo: Verifique se o daemon portmap está rodando. Para isso execute:

# ps ax | grep portmap

portmap (pid 1515) está rodando...

Caso esteja parado, inicie-o.

# /etc/rc.d/portmap start

3° passo: Editar o arquivo /etc/exports de forma a identificar os diretórios/arquivos que deverão ser

compartilhados publicamente ou não. Ele é configurado identificando duas colunas, a primeira deve

possuir o caminho absoluto do diretório/arquivo que será compartilhado; a segunda deve possuir

informações sobre as máquinas que poderão utilizar este compartilhamento (IP/MASCARA) e suas

devidas permissões.

  Seja um Profissional Aprendendo com Profissionais 135

Page 136: 139166004-Curso-Red-Hat

8/12/2019 139166004-Curso-Red-Hat

http://slidepdf.com/reader/full/139166004-curso-red-hat 136/146

Linux System Administration

#vi /etc/exports

Exemplo de conteúdo deste arquivo:

/publico 10.62.0.0/255.255.0.0(rw,no_root_squash)

Neste exemplo o diretório que está sendo compartilhado é  publico que encontra-se no / . Este está 

disponí vel para rede 10.62.0.0  de mascara casse B, 255.255.0.0, ou seja, todos computados, com

permissões de leitura e escrita (rw) e que o root das máquinas cliente terão privilégios de root no

diretório compartilhado do servidor que está definido pela opção no_root_squash. Se desejar que

isso não seja possí vel, substitua no_root_squash por root_squash, o mesmo vale para a opção rw

podendo ser substituí da por ro (read-only – somente leitura).

4° passo: reiniciar o daemon do nfs

# /etc/rc.d/nfs stop

5° passo: Verifique os compartilhamentos existentes

#exportfs -v

/publico 10.62.0.0/255.255.0.0(rw,wdelay,no_root_squash)

Lado Cliente

1° passo: Efetuar a montagem do compartilhamento indicando o IP do Servidor. Por exemplo;

# mount -t nfs 10.62.0.104:/publico /opt

Sintaxe do comando acima:

  Seja um Profissional Aprendendo com Profissionais 136

Page 137: 139166004-Curso-Red-Hat

8/12/2019 139166004-Curso-Red-Hat

http://slidepdf.com/reader/full/139166004-curso-red-hat 137/146

Linux System Administration

# mount -t nfs IP_Server:Caminho_do_copartilhamento ponto_de_montagem 

2° passo: Digite o comando mount para verificar todos dispositivos montados atualmente.

# mount

/dev/hda5 on / type ext3 (rw,usrquota,grpquota)

/dev/hda2 on /boot type ext3 (rw)

nfsd on /proc/fs/nfsd type nfsd (rw)

...

10.62.0.102:/publico on /opt type nfs (rw,addr=10.62.0.102)

login: <entre com login>

Password: <entre com a senha>

$ um Shell é disponibilizado.

NOTA: deve previamente existir um usuário cadastrado no servidor que saiba login e senha para acessa-lo via telnet.

OBS.: O root não loga via telnet por padrão. Deve-se editar o arquivo /etc/securetty para que essa opção seja habilitada,

adicionando consoles virtuais do tipo pts/x.

#vi /etc/securetty

Exemplo de conteúdo deste arquivo:

console

vc/1

...

vc/11

tty1

...

tty11

  Seja um Profissional Aprendendo com Profissionais 137

Page 138: 139166004-Curso-Red-Hat

8/12/2019 139166004-Curso-Red-Hat

http://slidepdf.com/reader/full/139166004-curso-red-hat 138/146

Page 139: 139166004-Curso-Red-Hat

8/12/2019 139166004-Curso-Red-Hat

http://slidepdf.com/reader/full/139166004-curso-red-hat 139/146

Linux System Administration

Are you sure you want to continue connecting (yes/no)?

3° passo: Digite yes para efetivar a conexão e logo depois a senha para o usuário informado.

Warning: Permanently added '10.62.0.102' (RSA) to the list of known hosts.

[email protected]'s password:

Se a senha informada estiver correta um shell será exibido.

$

  Seja um Profissional Aprendendo com Profissionais 139

Page 140: 139166004-Curso-Red-Hat

8/12/2019 139166004-Curso-Red-Hat

http://slidepdf.com/reader/full/139166004-curso-red-hat 140/146

Linux System Administration

Compilação do Kernel

Por que recompilar o kernel ? A primeira intenção é otimizar o kernel para o seu hardware a fim de

melhorar a performance e suportar todos os dispositivos.

Você também pode querer atualizar o sistema obtendo suporte a novos resursos e dispositivos de

hardware.

Ou você pode querer se livrar de BUG's.

O que é o kernel? O kernel Linux é o centro do sistema operacional. A parte do sistema responsável

pelo gerenciamento de baixo ní vel do hardware e software.

Quais são os requerimentos mí nimos de hardware? Isso varia muito de acordo com a arquitetura e

a versão do kernel. Mas tenha em mente o seguinte para ter um sistema mí nimo funcional:

16MB de RAM (memória f í sica), 100MHz de clock de processamento e 100MB de espaço em disco

(memória virtual).

#Verificando o clock e a arquitetura

#cat /proc/cpuinfo

 M  ó dulos

Módulos são os drivers disponiveis junto ao kernel do sistema operacional. No sistema Linux

podemos manipular estes drivers da seguinte forma:

Listar os módulos carregados em memória

#lsmod

Module Size Used by Not tainted

cls_route 4344 0 (unused)

cls_u32 4892 1

cls_fw 2584 0 (unused)

  Seja um Profissional Aprendendo com Profissionais 140

Page 141: 139166004-Curso-Red-Hat

8/12/2019 139166004-Curso-Red-Hat

http://slidepdf.com/reader/full/139166004-curso-red-hat 141/146

Linux System Administration

sch_prio 2816 0 (unused)

sch_sfq 3360 0 (unused)

sch_tbf 2880 5sch_cbq 12640 1

via-rhine 12464 1

mii 2272 0 [8139too via-rhine]

crc32 2880 0 [8139too via-rhine]

pcmcia_core 39972 0

ide-scsi 9328 0

Descarregar os módulos carregados em memória

# rmmod <nome_m ódulo>

# rmmod via-rhine

Carregar módulos em memória

# insmod < nome_m ódulo>

# insmod vfat

# insmod fat

Carregar módulos e suas dependências

#modprobe <sintaxe>

#modprobe vfat

Compilando o kernel

1) Passo: Baixe o pacote que contém o código fonte mais atualizado do kernel Linux da série 2.6 em

http://www.kernel.org

Abrindo a página no navegador web, clique no link F para fazer o download do pacote que contém os

fontes.

Você também poderá fazer o download com o comando wget como no exemplo abaixo:

  Seja um Profissional Aprendendo com Profissionais 141

Page 142: 139166004-Curso-Red-Hat

8/12/2019 139166004-Curso-Red-Hat

http://slidepdf.com/reader/full/139166004-curso-red-hat 142/146

Linux System Administration

$wget http://www.kernel.org/pub/linux/kernel/v2.6/linux-2.6.7.tar.bz2

2) Passo: Instalar o kernel - Como superusuário (faça o login no sistema com o usuário root),

descompacte e desempacote o arquivo assim:

# tar xjvf linux-2.6.7.tar.bz2 -C /usr/src

3) Passo: Crie o link simbólico /usr/src/linux apontando para /usr/src/linux-2.6.7 assim:

# ln -sf /usr/src/linux-2.6.7 /usr/src/linux

4) Passo: Diretório Fonte - Este será o diretório raiz de compilação, ou seja, o diretório base para os

passos seguintes.

# cd /usr/src/linux

O arquivo /usr/src/linux/.config armazena a configuração do kernel. Basicamente, este arquivo

descreve o que deverá ser incorporado ao kernel (y) e o que deverá ser criado como módulo (m).

Incorpore ao kernel apenas o necessário. O restante necessário, configure como módulo. O que não

for necessário, retire. Por exemplo, se você não tem dispositivos pcmcia em sua máquina, retire da

configuração o suporte a pcmcia. Isto possibilita uma maior performance por parte do sistema.

O kernel Linux pode ser modular, ou seja, o suporte básico fica incorporado ao kernel constantemente

e o suporte a outros dispositivos, como por exemplo, uma placa de som, pode ser configurado como

módulo. Assim sendo, este módulo da placa de som é carregado na memória e plugado ao kernel

apenas quando for necessário, ou seja, apenas quando o usuário estiver utilizando som no sistema.

Isto otimiza o sistema, utilizando seus recursos sabiamente.

Existe uma configuração padrão para cada tipo de arquitetura de harware no diretório

 /usr/src/linux/arch. O nome do arquivo é defconfig. Supondo que sua arquitetura de harware seja i386,

Seja um Profissional Aprendendo com Profissionais 142

Page 143: 139166004-Curso-Red-Hat

8/12/2019 139166004-Curso-Red-Hat

http://slidepdf.com/reader/full/139166004-curso-red-hat 143/146

Linux System Administration

a mais comum, faça uma cópia do arquivo defconfig para o diretório raiz de compilação com o nome

.config assim:

6) Passo: Copiar arquivo de configuração

# cp -f /usr/src/linux/arch/i386/defconfig /usr/src/linux/.config

Em alguns casos de arquitetura, pode existir um diretório configs contendo configurações especí ficas

e testadas para cada modelo de máquina.

Sendo assim, ao iniciar a ferramenta de configuração, você já terá alguns itens marcados. Não será 

necessário iniciar do zero uma configuração.

7) Passo: Ferramenta de configuração

# make menuconfig

ou

# make xconfig (modo gráfico)

Perceba a existência de uma configuração já pré-definida. Isto se deve ao fato de você ter copiado o

arquivo defconfig para o

diretório raiz de compilação com o nome de .config.

Algumas dicas:

1) Marque com * itens que serão incorporados ao arquivo do kernel como por exemplo,

sistemas de arquivos que você utiliza ou

vai utilizar em suas partições.

2) Marque com m itens que serão criados como módulo, ou seja, serão plugados ao kernel

apenas quando houver necessidade de uso.

  Seja um Profissional Aprendendo com Profissionais 143

Page 144: 139166004-Curso-Red-Hat

8/12/2019 139166004-Curso-Red-Hat

http://slidepdf.com/reader/full/139166004-curso-red-hat 144/146

Linux System Administration

Este é um passo demorado e deve ser feito com atenção. Acompanhe o help de cada

item para saber o que está incluindo ou não.

8) Passo: Após a configuração do kernel, vamos compilá-lo realmente. Para isto, execute o comando:

# make

Este passo pode levar minutos ou de um dia para o outro. Depende do poder da máquina onda você 

vai compilar.

9) Passo: Após a compilação do kernel, vamos instalar os módulos com o seguinte comando:

# make modules_install

10) Passo : Agora vamos copiar o kernel (bzImage) para o diretório /boot. O arquivo está no diretório

de acordo com a arquitetura que você 

estiver utilizando. Se você compilou o kernel em um PC, o que é mais comum, então o comando para

copiar é o seguinte:

# cp /usr/src/linux/arch/i386/boot/bzImage /boot/vmlinuz-2.6.7-i386-1

Nomeie os arquivos de acordo com a versão do kernel que está   compilando e de acordo com a

arquitetura de hardware.

Agora vamos copiar o arquivo System.map para /boot:

# cp /usr/src/linux/System.map /boot/System.map-2.6.7-i386-1

Criando um link simbólico para System.map:

  Seja um Profissional Aprendendo com Profissionais 144

Page 145: 139166004-Curso-Red-Hat

8/12/2019 139166004-Curso-Red-Hat

http://slidepdf.com/reader/full/139166004-curso-red-hat 145/146

Linux System Administration

# ln -sf /boot/System.map-2.6.7-i386-1 /boot/System.map

Agora vamos copiar o .config para /boot:

# cp /usr/src/linux/.config /boot/config-2.6.7-i386-1

11) Passo: Vamos criar um arquivo initrd assim:

# mkinitrd -o /boot/initrd-2.6.7-i386-1.img 2.6.7-i386-1

A opção (-o arquivo) diz onde salvar o arquivo initrd gerado.

A próxima opção de parâmetro é a versão do kernel que você compilou.

Na verdade, o initrd não é   necessário caso você   tenha incorporado ao kernel todo a hardware

necessário para sua inicialização

e o restante que não é necessário para a inicialização como módulo. Ou seja, você não deve configurar

como módulo o chipset da sua

placa mãe, suporte a IDE e todos os sistemas de arquivos que estiver utilizando, como ext3, jfs, xfs e

reiserfs.

11) Passo: Vamos configurar o gerenciador de boot, GRUB ou LILO, qual você utiliza?

Configura çã o GRUB (Isto é apenas um exemplo):

# Note que você não precisa regravar o GRUB no MBR ou partição especí fica após feitas as alterações.

boot=/dev/hda

default=0

timeout=10

title Debian GNU/Linux (2.4.25-i386-c4)

root (hd0,1)

kernel /boot/vmlinuz-2.4.25-i386-c4 ro root=LABEL=/

  Seja um Profissional Aprendendo com Profissionais 145

Page 146: 139166004-Curso-Red-Hat

8/12/2019 139166004-Curso-Red-Hat

http://slidepdf.com/reader/full/139166004-curso-red-hat 146/146

Linux System Administration

initrd /boot/initrd-2.4.25-i386-c4.img

title Debian GNU/Linux (2.6.7-i386-1)

root (hd0,1)kernel /boot/vmlinuz-2.6.7-i386-1 ro root=LABEL=/

initrd /boot/initrd-2.6.7-i386-1.img

Configura çã o do LILO (Isto é apenas um exemplo):

# Note que você precisa regravar o LILO no MBR ou partição especí fica após feitas as alterações.

boot=/dev/hda

map=/boot/mapinstall=/boot/boot.b

default=2.6.7

lba32

prompt

timeout=50

message=/boot/message

menu-scheme=wb:bw:wb:bw 

image=/boot/vmlinuz

label=2.4.25