Logo Passei Direto
Buscar
Material
páginas com resultados encontrados.
páginas com resultados encontrados.
left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

Prévia do material em texto

Sistema operacional II 
Ederson Cruz Marques dos Santos
Dados Internacionais de Catalogação na Publicação (CIP)
(Jeane Passos de Souza - CRB 8a/6189)
Santos, Ederson Cruz Marques dos
 Sistema operacional II / Ederson Cruz Marques dos Santos. – São 
Paulo : Editora Senac São Paulo, 2020. (Série Universitária)
	 Bibliografia.		
 e-ISBN 978-65-5536-396-8 (ePub/2020)
 e-ISBN 978-65-5536-397-5 (PDF/2020)
	 1.	 Sistema	 operacional	 (Computadores) 2.	 Serviços	 de	 rede I.	
Título. II. Série.
20-1202t CDD – 005.43 
 BISAC COM046000
Índice para catálogo sistemático
1. Sistema operacional (Computadores) 005.43
M
at
er
ia
l p
ar
a 
us
o 
ex
cl
us
ivo
 d
e 
al
un
o 
m
at
ric
ul
ad
o 
em
 c
ur
so
 d
e 
Ed
uc
aç
ão
 a
 D
ist
ân
ci
a 
da
 R
ed
e 
Se
na
c 
EA
D,
 d
a 
di
sc
ip
lin
a 
co
rre
sp
on
de
nt
e.
 P
ro
ib
id
a 
a 
re
pr
od
uç
ão
 e
 o
 c
om
pa
rti
lh
am
en
to
 d
ig
ita
l, 
so
b 
as
 p
en
as
 d
a 
Le
i. 
©
 E
di
to
ra
 S
en
ac
 S
ão
 P
au
lo
.
SISTEMA OPERACIONAL II 
Ederson Cruz Marques dos Santos
M
aterial para uso exclusivo de aluno m
atriculado em
 curso de Educação a Distância da Rede Senac EAD, da disciplina correspondente. Proibida a reprodução e o com
partilham
ento digital, sob as penas da Lei. ©
 Editora Senac São Paulo.
Administração Regional do Senac no Estado de São Paulo
Presidente do Conselho Regional
Abram Szajman
Diretor do Departamento Regional
Luiz Francisco de A. Salgado
Superintendente Universitário e de Desenvolvimento
Luiz Carlos Dourado
M
at
er
ia
l p
ar
a 
us
o 
ex
cl
us
ivo
 d
e 
al
un
o 
m
at
ric
ul
ad
o 
em
 c
ur
so
 d
e 
Ed
uc
aç
ão
 a
 D
ist
ân
ci
a 
da
 R
ed
e 
Se
na
c 
EA
D,
 d
a 
di
sc
ip
lin
a 
co
rre
sp
on
de
nt
e.
 P
ro
ib
id
a 
a 
re
pr
od
uç
ão
 e
 o
 c
om
pa
rti
lh
am
en
to
 d
ig
ita
l, 
so
b 
as
 p
en
as
 d
a 
Le
i. 
©
 E
di
to
ra
 S
en
ac
 S
ão
 P
au
lo
.
Editora Senac São Paulo
Conselho Editorial
Luiz Francisco de A. Salgado 
Luiz Carlos Dourado 
Darcio Sayad Maia 
Lucila Mara Sbrana Sciotti 
Jeane Passos de Souza
Gerente/Publisher
Jeane Passos de Souza (jpassos@sp.senac.br)
Coordenação Editorial/Prospecção
Luís Américo Tousi Botelho (luis.tbotelho@sp.senac.br) 
Dolores Crisci Manzano (dolores.cmanzano@sp.senac.br)
Administrativo
grupoedsadministrativo@sp.senac.br 
Comercial
comercial@editorasenacsp.com.br
Acompanhamento Pedagógico
Otacília da Paz Pereira
Designer Educacional
Diogo Maxwell Santos Felizardo
Revisão Técnica
Fabio Brussolo de Oliveira
Preparação e Revisão de Texto
Vanessa Rodrigues
Projeto Gráfico
Alexandre Lemes da Silva 
Emília Corrêa Abreu
Capa
Antonio Carlos De Angelis
Editoração Eletrônica
Michel Iuiti Navarro Moreno
Ilustrações
Michel Iuiti Navarro Moreno
Imagens
Ederson Cruz Marques dos Santos
E-pub
Ricardo Diana
Proibida	a	reprodução	sem	autorização	expressa.
Todos	os	direitos	desta	edição	reservados	à
Editora Senac São Paulo
Rua 24 de Maio, 208 – 3o andar 
Centro – CEP 01041-000 – São Paulo – SP
Caixa Postal 1120 – CEP 01032-970 – São Paulo – SP
Tel. (11) 2187-4450 – Fax (11) 2187-4486
E-mail: editora@sp.senac.br 
Home page: http://www.livrariasenac.com.br
© Editora Senac São Paulo, 2020
Sumário
M
aterial para uso exclusivo de aluno m
atriculado em
 curso de Educação a Distância da Rede Senac EAD, da disciplina correspondente. Proibida a reprodução e o com
partilham
ento digital, sob as penas da Lei. ©
 Editora Senac São Paulo.
Capítulo 1
Fundamentos de sistemas 
operacionais Linux, 7
1	Introdução	ao	Linux,	8
2 Máquinas virtuais, 17
Considerações	finais,	31
Referências, 31
Capítulo 2
Linux – administração de 
sistema, 33
1	Instalação	de	programas,	34
2 Editores de texto, 38
3 CUPS – servidor de impressão, 45
4 Gerenciamento de usuários e 
grupos, 47
5	Privilégios	e	permissões	de	 
acesso, 49
6 Comando de privilégios e 
permissões	de	acesso,	52
Considerações	finais,	54
Referências, 54
Capítulo 3
Administração de redes e 
serviços, 55
1	Configuração	IP	no	Linux,	56
2	Serviços	IP	fixo	e	dinâmico,	58
3	NAT	–	tradutor	de	endereço	de	 
rede, 60
4 Roteamento, 60
5	Serviço	DNS,	61
6	Serviço	FTP,	65
7	Serviço	SSH,	66
8	Configuração	da	rede	cabeada,	69
9	Configuração	da	rede	wireless,	72
Considerações	finais,	74
Referências, 75
Capítulo 4
Administração de serviços – 
comandos de shell, 77
1 Comandos de shell script, 78
2 Quotes (aspas, acento grave e barra 
invertida), 80
3	Expressões	aritméticas	e	 
regulares, 81
4	Funções,	84
5 Acesso remoto, 91
Considerações	finais,	92
Referência, 92
Capítulo 5
Administração de serviços de 
rede, 93
1 Cliente-servidor, 94
2	Autenticação,	94
3 Backup, 97
4 Servidor NTP, 98
5 Samba – servidor de arquivos, 100
6 LTSP – servidor de terminal, 103
7	LDAP	–	servidor	de	autenticação,	105
Considerações	finais,	110
Referências, 111
Capítulo 6
Serviços de rede avançada, 113
1 Zabbix – monitoramento, 114
2	Snort	(IDS	–	sistema	de	detecção	
de intrusão), 122
Considerações	finais,	125
Referências, 125
6 Sistema operacional II M
at
er
ia
l p
ar
a 
us
o 
ex
cl
us
ivo
 d
e 
al
un
o 
m
at
ric
ul
ad
o 
em
 c
ur
so
 d
e 
Ed
uc
aç
ão
 a
 D
ist
ân
ci
a 
da
 R
ed
e 
Se
na
c 
EA
D,
 d
a 
di
sc
ip
lin
a 
co
rre
sp
on
de
nt
e.
 P
ro
ib
id
a 
a 
re
pr
od
uç
ão
 e
 o
 c
om
pa
rti
lh
am
en
to
 d
ig
ita
l, 
so
b 
as
 p
en
as
 d
a 
Le
i. 
©
 E
di
to
ra
 S
en
ac
 S
ão
 P
au
lo
.
M
at
er
ia
l p
ar
a 
us
o 
ex
cl
us
ivo
 d
e 
al
un
o 
m
at
ric
ul
ad
o 
em
 c
ur
so
 d
e 
Ed
uc
aç
ão
 a
 D
ist
ân
ci
a 
da
 R
ed
e 
Se
na
c 
EA
D,
 d
a 
di
sc
ip
lin
a 
co
rre
sp
on
de
nt
e.
 P
ro
ib
id
a 
a 
re
pr
od
uç
ão
 e
 o
 c
om
pa
rti
lh
am
en
to
 d
ig
ita
l, 
so
b 
as
 p
en
as
 d
a 
Le
i. 
©
 E
di
to
ra
 S
en
ac
 S
ão
 P
au
lo
.
Capítulo 7
Serviço de rede avançada, 127
1 Servidor web, 128
2	Serviços	VPN,	131
3 Servidor de e-mail, 133
Considerações	finais,	138
Referências, 138
Capítulo 8
Serviços em redes e firewall, 139
1	Instalação	do	servidor	LAMP	
(Linux, Apache, MySQL, PHP e 
phpMyAdmin), 140
2	Instalação	do	pfSense®, 147
3 IPTables, 154
Considerações	finais,	155
Referências, 156
Sobre o autor, 159
7
M
aterial para uso exclusivo de aluno m
atriculado em
 curso de Educação a Distância da Rede Senac EAD, da disciplina correspondente. Proibida a reprodução e o com
partilham
ento digital, sob as penas da Lei. ©
 Editora Senac São Paulo.
Capítulo 1
Fundamentos 
de sistemas 
operacionais Linux
A	finalidade	deste	capítulo	é	introduzir	o	sistema	operacional	Linux	e	
suas	funções.	Nele,	teremos	uma	breve	introdução	ao	mundo	do	softwa-
re	livre.	Entre	as	mais	conhecidas	distribuições	do	Linux,	iremos	abordar	
o Debian, o Red Hat, o CentOS, o Ubuntu e o Kubuntu, entre outras.
Falaremos sobre dispositivos de entrada e saída, estrutura de dire-
tórios, sistema de arquivos, sistema de armazenamento de dados no 
computador, máquinas virtuais e suas funcionalidades e abordaremos 
os	ambientes	gráficos	para	trabalhar	no	Linux,	bem	como	a	instalação	e	
a	administração	do	sistema	de	arquivos	e	pastas.
8 Sistema operacional II M
at
er
ia
l p
ar
a 
us
o 
ex
cl
us
ivo
 d
e 
al
un
o 
m
at
ric
ul
ad
o 
em
 c
ur
so
 d
e 
Ed
uc
aç
ão
 a
 D
ist
ân
ci
a 
da
 R
ed
e 
Se
na
c 
EA
D,
 d
a 
di
sc
ip
lin
a 
co
rre
sp
on
de
nt
e.
 P
ro
ib
id
a 
a 
re
pr
od
uç
ão
 e
 o
 c
om
pa
rti
lh
am
en
to
 d
ig
ita
l, 
so
b 
as
 p
en
as
 d
a 
Le
i. 
©
 E
di
to
ra
 S
en
ac
 S
ão
 P
au
lo
.
1 Introdução ao Linux
O GNU/Linux é um sistema operacional derivado do Unix e escrito 
por	Linus	Torvalds	no	começo	da	década	de	1990.	O	termo	“GNU”	signi-
fica	“GNU’s	not	Unix”	(GNU	não	é	Unix).	Torvalds	era	estudante	de	ciên-
cia	da	computação	na	Universidade	de	Helsinki	(Finlândia)	quando	teve	
a	 ideia	de	criar	uma	versão	acadêmica	do	Unix.	O	lançamento	da	pri-
meira versão (0.01) do Linux aconteceu em 1991 (TANENBAUM, 2016).
A	versão	1.0guia do 
administrador. 2. ed. São Paulo: Pearson, 2007.
55
M
aterial para uso exclusivo de aluno m
atriculado em
 curso de Educação a Distância da Rede Senac EAD, da disciplina correspondente. Proibida a reprodução e o com
partilham
ento digital, sob as penas da Lei. ©
 Editora Senac São Paulo.
Capítulo 3
Administração de 
redes e serviços
Neste capítulo iremos abordar a estrutura de redes no Linux: como 
configurar uma rede cabeada ou rede wireless (sem fio), como são ins-
talados e utilizados os serviços de DNS, FTP e SSH e como criar um 
roteador.
56 Sistema operacional II M
at
er
ia
l p
ar
a 
us
o 
ex
cl
us
ivo
 d
e 
al
un
o 
m
at
ric
ul
ad
o 
em
 c
ur
so
 d
e 
Ed
uc
aç
ão
 a
 D
is
tâ
nc
ia
 d
a 
Re
de
 S
en
ac
 E
AD
, d
a 
di
sc
ip
lin
a 
co
rre
sp
on
de
nt
e.
 P
ro
ib
id
a 
a 
re
pr
od
uç
ão
 e
 o
 c
om
pa
rti
lh
am
en
to
 d
ig
ita
l, s
ob
 a
s 
pe
na
s 
da
 L
ei
. ©
 E
di
to
ra
 S
en
ac
 S
ão
 P
au
lo
.
1 Configuração IP no Linux
O IP (Internet Protocol) é um número atribuído a cada dispositivo co-
nectado em uma rede. Cada aparelho conectado na rede deve possuir 
um endereçamento único, e esse número é conhecido como endereço 
IP. Podemos configurar o endereço de forma automática (IP dinâmico) 
ou manual (IP fixo).
Para configurar uma interface de rede no Linux é necessário saber, 
pelo menos, o nome da interface de rede. No caso de IP fixo, endereço 
IP da máquina, máscara da rede, endereço do gateway e endereço do 
DNS; no caso de IP dinâmico, basta o nome da interface.
Nas distribuições baseadas em Debian, como o Ubuntu, o arquivo de 
configuração está no diretório “/etc/network/interfaces”. Nesse arquivo 
são configuradas todas as interfaces de rede.
Observe um exemplo de configuração com IP fixo, em que “eth0” é o 
nome da interface de rede:
auto eth0
iface eth0 inet static
 address 192.168.56.164
 netmask 255.255.255.0
 gateway 192.168.56.1
 dns-nameservers 8.8.8.8
Na primeira linha, “auto eth0” significa que a interface de rede “eth0” 
será iniciada automaticamente quando o Linux estiver sendo iniciado; 
“iface eth0 inet static” significa que a interface de rede “eth0” terá um 
endereço IP estático (fixo); “address” é o endereço IP que será atribuído; 
“netmask” é a máscara de rede, “gateway” é o endereço IP do roteador, 
e “dns-nameservers” é o endereço IP do servidor DNS (Domain Name 
System – serviço de nomes de domínio).
57Administração de redes e serviços
M
aterial para uso exclusivo de aluno m
atriculado em
 curso de Educação a Distância da Rede Senac EAD, da disciplina correspondente. Proibida a reprodução e o com
partilham
ento digital, sob as penas da Lei. ©
 Editora Senac São Paulo.
Veja abaixo exemplo de configuração com IP dinâmico:
auto eth0
iface eth0 inet dhcp
Nesse exemplo, “auto eth0” significa que a interface de rede “eth0” será 
iniciada automaticamente quando o Linux estiver sendo iniciado, e “iface 
eth0 inet dhcp” significa que a interface de rede “eth0” terá um endereço 
IP dinâmico que será fornecido por um servidor DHCP (Dynamic Host 
Configuration Protocol – protocolo de configuração de host dinâmico).
Já nas distribuições baseadas no Red Hat, como o CentOS, o arquivo 
de configuração está no diretório “/etc/sysconfig/network-script/ifcfg-
-XXXX.conf”, em que “XXXX” é o nome da interface de rede. Cada inter-
face tem o seu próprio arquivo de configuração.
Observe exemplo de configuração com IP fixo na distribuição Red Hat:
DEVICE=eth0
TYPE=Ethernet
BOOTPROTO=none
ONBOOT=yes
PREFIX=24
IPADDR=192.168.56.164
GATEWAY=192.168.56.1
DNS1=192.168.56.1
Exemplo de configuração com IP dinâmico:
DEVICE=”eth0”
TYPE=Ethernet
BOOTPROTO=dhcp
ONBOOT=yes
58 Sistema operacional II M
at
er
ia
l p
ar
a 
us
o 
ex
cl
us
ivo
 d
e 
al
un
o 
m
at
ric
ul
ad
o 
em
 c
ur
so
 d
e 
Ed
uc
aç
ão
 a
 D
is
tâ
nc
ia
 d
a 
Re
de
 S
en
ac
 E
AD
, d
a 
di
sc
ip
lin
a 
co
rre
sp
on
de
nt
e.
 P
ro
ib
id
a 
a 
re
pr
od
uç
ão
 e
 o
 c
om
pa
rti
lh
am
en
to
 d
ig
ita
l, s
ob
 a
s 
pe
na
s 
da
 L
ei
. ©
 E
di
to
ra
 S
en
ac
 S
ão
 P
au
lo
.
2 Serviços IP fixo e dinâmico
O IP fixo, como o nome já diz, é um endereço estático. Ele é configu-
rado diretamente no computador ou equipamento e, sempre que seu 
dispositivo acessar a rede, ele irá conectar com o mesmo endereço IP, a 
não ser que o endereço seja alterado manualmente pelo usuário. É mais 
utilizado em ambientes empresariais, que possuem servidores, switchs 
gerenciáveis, impressoras de rede, etc.
O IP dinâmico, diferentemente do fixo, é um endereço que mudará 
sempre que o dispositivo for conectado ou iniciado na rede. Sempre que 
o dispositivo se conectar à rede, ele irá negociar um IP com o servidor 
DHCP, que é o responsável pelo envio de informações de endereço IP 
disponível, máscara de rede, gateway e DNS.
3 NAT – tradutor de endereço de rede
O NAT (Network Address Translation – tradutor de endereço de rede) 
é utilizado quando queremos acessar um dispositivo que não está liga-
do diretamente na internet e está dentro da nossa rede.
PARA SABER MAIS 
A RFC 3022 é um documento oficial que explica em detalhes o conceito 
e o funcionamento de um NAT. Esse documento pode ser encontrado 
no portal IETF Tools.
 
Segundo Tanenbaum (2011), o IPv4 possui um número limitado de 
endereços e já estamos chegando ao seu limite. Para resolver esse pro-
blema, foi criado o IPv6, que tem endereços de 128 bits, mas sua ado-
ção ainda está lenta. Para contornar esse problema a curto prazo, foi 
criado o NAT, que com um único IP público permite o acesso a diversos 
59Administração de redes e serviços
M
aterial para uso exclusivo de aluno m
atriculado em
 curso de Educação a Distância da Rede Senac EAD, da disciplina correspondente. Proibida a reprodução e o com
partilham
ento digital, sob as penas da Lei. ©
 Editora Senac São Paulo.
serviços privados. Por exemplo, se na nossa rede interna temos um ser-
vidor de FTP, um outro servidor de páginas web e um servidor DNS, não 
necessitamos de um endereço público para cada serviço. Com o NAT 
podemos dizer que, ao receber conexões externas para acesso de pági-
nas web, essa requisição seja encaminhada ao servidor de páginas web, 
requisições de serviço FTP sejam encaminhadas ao servidor FTP e re-
quisições de DNS sejam encaminhadas para o servidor DNS, conforme 
mostra a figura 1.
Figura 1 – Exemplo de NAT em uma empresa
Servidor DNS
Servidor FTP
NAT
Servidor de páginas web
Rede da empresa
Usuário
final
IP público da empresa:
187.51.127.254
IP: 192.168.1.10
Porta: 80/TCP
IP: 192.168.1.12
Porta: 53/UDP
IP: 192.168.1.11
Porta: 21/TCP
No Linux, para criarmos um NAT, podemos utilizar o Iptables. Vamos 
fazer uma demonstração utilizando o exemplo da figura 1.
Em primeiro lugar, devemos informar ao Linux que permita o redire-
cionamento. Para isso, devemos executar o comando:
$ sudo sysctl net.ipv4.ip_forward=1
Em seguida, criamos as regras de redirecionamento NAT:
60 Sistema operacional II M
at
er
ia
l p
ar
a 
us
o 
ex
cl
us
ivo
 d
e 
al
un
o 
m
at
ric
ul
ad
o 
em
 c
ur
so
 d
e 
Ed
uc
aç
ão
 a
 D
is
tâ
nc
ia
 d
a 
Re
de
 S
en
ac
 E
AD
, d
a 
di
sc
ip
lin
a 
co
rre
sp
on
de
nt
e.
 P
ro
ib
id
a 
a 
re
pr
od
uç
ão
 e
 o
 c
om
pa
rti
lh
am
en
to
 d
ig
ita
l, s
ob
 a
s 
pe
na
s 
da
 L
ei
. ©
 E
di
to
ra
 S
en
ac
 S
ão
 P
au
lo
.
$ sudo iptables -t nat -A PREROUTING -p tcp --dport 80 -j 
DNAT --to-destination 192.168.1.10:80
$ sudo iptables -t nat -A PREROUTING -p tcp --dport 21 -j 
DNAT --to-destination 192.168.1.11:21
$ sudo iptables -t nat -A PREROUTING -p udp --dport 53 -j 
DNAT --to-destination 192.168.1.12:53
E, por último, a regra para mascarar os endereços:
$ sudo iptables -t nat -A POSTROUTING -j MASQUERADE
4 Roteamento
O roteamento é utilizado quando queremos acessar um recurso que 
está fora da nossa rede – por exemplo, quando queremos acessar um 
site da internet, a solicitaçãoé encaminhada ao modem do provedor de 
internet; este encaminha a requisição para o próximo roteador, e assim 
por diante, até chegar ao destino. Outro exemplo ocorre quando temos 
redes separadas de estações de trabalho e redes de servidores: nesse 
caso, temos um roteador que se comunica com as duas redes e faz a 
intermediação dessa comunicação. Vamos imaginar o seguinte: a rede 
das estações de trabalho fica na rede 192.168.0.0/24, e a rede de servi-
dores fica na rede 10.90.0.0/24. Para que haja comunicação, é necessá-
rio um roteador que converse com as duas redes, conforme a figura 2.
61Administração de redes e serviços
M
aterial para uso exclusivo de aluno m
atriculado em
 curso de Educação a Distância da Rede Senac EAD, da disciplina correspondente. Proibida a reprodução e o com
partilham
ento digital, sob as penas da Lei. ©
 Editora Senac São Paulo.
Figura 2 – Exemplo de roteamento
Roteador
Placa de rede eth0
IP: 192.168.0.254
Placa de rede eth1
IP: 10.90.0.254
Servidores
Rede: 10.90.0.0/24
Estações de trabalho
Rede: 192.168.0.0/24
Para que haja comunicação, temos que configurar uma rota estática 
em cada dispositivo. Nas estações de trabalho, podemos digitar o se-
guinte comando:
$ sudo ip route add 10.90.0.0/24 via 192.168.0.254
E, nos servidores, temos que configurar a rota de retorno com o 
comando:
$ sudo ip route add 192.168.0.0/24 via 10.90.0.254
Com isso, as duas redes são capazes de se comunicarem.
5 Serviço DNS 
Embora o DNS tenha surgido para atender a diversos propósitos, 
sua tarefa principal é a de associar nomes de hosts a endereços 
IP. Usuários e programas no nível de usuário adoram se referir a 
máquinas pelo nome, mas o software de rede de baixo nível enten-
de somente números. O DNS fornece o elo que faz com que todo 
o mundo fique contente. (NEMETH; SNYDER; HEIN, 2007, p. 260)
62 Sistema operacional II M
at
er
ia
l p
ar
a 
us
o 
ex
cl
us
ivo
 d
e 
al
un
o 
m
at
ric
ul
ad
o 
em
 c
ur
so
 d
e 
Ed
uc
aç
ão
 a
 D
is
tâ
nc
ia
 d
a 
Re
de
 S
en
ac
 E
AD
, d
a 
di
sc
ip
lin
a 
co
rre
sp
on
de
nt
e.
 P
ro
ib
id
a 
a 
re
pr
od
uç
ão
 e
 o
 c
om
pa
rti
lh
am
en
to
 d
ig
ita
l, s
ob
 a
s 
pe
na
s 
da
 L
ei
. ©
 E
di
to
ra
 S
en
ac
 S
ão
 P
au
lo
.
O DNS (como vimos anteriormente, sigla de serviço de nomes de 
domínio) consiste no sistema que traduz o nome dos domínios para 
endereços IP. Seu papel é fundamental para acesso de servidores web 
e roteamento de e-mails, entre outros serviços. Por padrão, é utilizada a 
porta 53/UDP.
Quando o DNS é consultado sobre um hostname, ele verifica se está 
presente na sua base de dados. Caso esteja, ele retorna o endereço IP 
daquele hostname; caso não esteja na base de dados, ele pode enca-
minhar a solicitação para outro servidor DNS que esteja configurado. 
Esse procedimento de encaminhar é conhecido como DNS fowarder. 
Isso é muito comum quando o usuário quer acessar um site da internet. 
Nessa situação, é solicitado ao DNS local; quando não há o endereço do 
site cadastrado, é encaminhado ao DNS do provedor de internet e este 
responde à requisição com o endereço IP daquele site.
A estrutura do DNS é hierárquica. Tomemos como exemplo o site 
“www.sp.senac.br”: quando é efetuada a consulta, em primeiro lugar é 
consultado o domínio “br”, que pertence ao Comitê Gestor da Internet no 
Brasil (CGI.br); em seguida, é consultado o domínio “senac”; dentro do 
domínio “senac”, é consultado o domínio “sp”, e por último é consultado 
o hostname “www”, o qual retorna um endereço IP.
O FQDN (Fully Qualified Domain Name) é o nome do domínio com-
pleto. O FQDN de um computador da rede é composto do hostname e 
do seu domínio – por exemplo, no caso de um computador que possui o 
hostname “servidor1” e está no domínio “empresa.corp”, seu FQDN será 
“servidor1.empresa.corp”.
Para instalar um servidor DNS conforme Bind9 (2020), digite o 
comando:
$ sudo apt-get install bind9
63Administração de redes e serviços
M
aterial para uso exclusivo de aluno m
atriculado em
 curso de Educação a Distância da Rede Senac EAD, da disciplina correspondente. Proibida a reprodução e o com
partilham
ento digital, sob as penas da Lei. ©
 Editora Senac São Paulo.
Após a instalação, para criar uma zona para a rede 192.168.1.0 (utiliza-
da na figura 1), vamos editar o arquivo de configuração de zonas do bind:
$ sudo gedit /etc/bind/named.conf.local
No final do arquivo, vamos adicionar as seguintes informações:
zone “empresa.corp” {
 type master;
 file “/etc/bind/db.empresa.corp”;
};
Salvamos o arquivo e criaremos um arquivo “db.empresa.corp” a par-
tir de um arquivo de modelo do próprio bind, com o comando:
$ sudo cp /etc/bind/db.local /etc/bind/db.empresa.corp
Agora, vamos editar o nosso novo arquivo:
$ sudo gedit /etc/bind/db.empresa.corp
Na 5a linha, altere para:
@ IN SOA ns.empresa.corp. root.empresa.
corp. (
64 Sistema operacional II M
at
er
ia
l p
ar
a 
us
o 
ex
cl
us
ivo
 d
e 
al
un
o 
m
at
ric
ul
ad
o 
em
 c
ur
so
 d
e 
Ed
uc
aç
ão
 a
 D
is
tâ
nc
ia
 d
a 
Re
de
 S
en
ac
 E
AD
, d
a 
di
sc
ip
lin
a 
co
rre
sp
on
de
nt
e.
 P
ro
ib
id
a 
a 
re
pr
od
uç
ão
 e
 o
 c
om
pa
rti
lh
am
en
to
 d
ig
ita
l, s
ob
 a
s 
pe
na
s 
da
 L
ei
. ©
 E
di
to
ra
 S
en
ac
 S
ão
 P
au
lo
.
A partir da 12a linha, altere para:
@ IN NS ns.empresa.corp.
ns IN A 192.168.1.12
Em seguida, vamos inserir estas informações dos demais servidores:
webserver IN A 192.168.1.10
ftpserver IN A 192.168.1.11
dnsserver IN A 192.168.1.12
Após salvar o arquivo, vamos reiniciar o serviço do DNS com o 
comando:
$ sudo systemctl restart bind9
Para testar se a configuração está correta, vamos utilizar o comando 
“nslookup” no mesmo servidor DNS que acabamos de configurar:
$ nslookup – localhost
Uma vez dentro do nslookup, vamos fazer uma consulta ao 
webserver:
> webserver.empresa.corp
65Administração de redes e serviços
M
aterial para uso exclusivo de aluno m
atriculado em
 curso de Educação a Distância da Rede Senac EAD, da disciplina correspondente. Proibida a reprodução e o com
partilham
ento digital, sob as penas da Lei. ©
 Editora Senac São Paulo.
A resposta será:
Name: webserver.empresa.corp
Address: 192.168.1.10
Para sair do nslookup, digite:
> exit
6 Serviço FTP
O FTP (File Transfer Protocol – protocolo de transferência de ar-
quivos), que como o nome diz é um protocolo utilizado para transferir 
arquivos entre computadores, funciona no modelo cliente-servidor. Por 
padrão usamos a porta 21/TCP. O FTP é muito utilizado em empresas de 
hospedagem de sites, em que o usuário pode fazer upload dos arquivos.
PARA SABER MAIS 
A RFC 959 é um documento oficial que explica em detalhes o conceito e 
funcionamento de um FTP.
 
Temos diversos aplicativos que utilizam o protocolo FTP como servi-
dor, e os mais conhecidos são vsftpd e ProFTPD.
Para instalar o vsftpd, podemos utilizar o comando:
66 Sistema operacional II M
at
er
ia
l p
ar
a 
us
o 
ex
cl
us
ivo
 d
e 
al
un
o 
m
at
ric
ul
ad
o 
em
 c
ur
so
 d
e 
Ed
uc
aç
ão
 a
 D
is
tâ
nc
ia
 d
a 
Re
de
 S
en
ac
 E
AD
, d
a 
di
sc
ip
lin
a 
co
rre
sp
on
de
nt
e.
 P
ro
ib
id
a 
a 
re
pr
od
uç
ão
 e
 o
 c
om
pa
rti
lh
am
en
to
 d
ig
ita
l, s
ob
 a
s 
pe
na
s 
da
 L
ei
. ©
 E
di
to
ra
 S
en
ac
 S
ão
 P
au
lo
.
$ sudo apt-get install vsftpd
Depois de instalado, é necessário verificar se o serviço SSH está 
ativo:
$ systemctl status vsftpd
Para testar o acesso FTP localmente, podemos executar o comando:
$ ftp localhost
Serão solicitados usuário e senha. Vamos digitar nosso usuário e 
nossa senha criados na instalação.
Uma vez conectado, você pode listar o conteúdo da pasta com o co-
mando “ls”. Para saber o diretório em que está, digite o comando “pwd”.
Para efetuar download de algum arquivo, utilizamos o comando 
“get”; para fazer o upload (enviar) de algum arquivo, utilizamos o co-
mando “put”.
Para sair, basta digitar ocomando “quit”.
7 Serviço SSH
O SSH (Secure Shell) é um protocolo que utiliza criptografia para co-
nexões entre cliente e servidor. Por padrão, é utilizada a porta 22/TCP. 
Por meio desse protocolo conseguimos acessar o terminal do Linux re-
motamente de forma segura.
67Administração de redes e serviços
M
aterial para uso exclusivo de aluno m
atriculado em
 curso de Educação a Distância da Rede Senac EAD, da disciplina correspondente. Proibida a reprodução e o com
partilham
ento digital, sob as penas da Lei. ©
 Editora Senac São Paulo.
A fim de acessar o Linux de forma remota, acessar o Linux remo-
tamente, podemos utilizar o pacote openssh-server, o qual permite a 
utilização do protocolo SSH. Para instalar esse pacote, utilizamos o 
comando:
$ sudo apt-get install openssh-server
Depois de instalado, é necessário verificar se o serviço SSH está 
ativo:
$ systemctl status ssh
Uma vez instalado e ativo, precisamos de um cliente SSH em outro 
computador para acessar o Linux que acabamos de instalar. Existem 
diversos aplicativos de cliente SSH, e entre eles temos o openssh-client, 
para Linux, e o PuTTY, para Windows.
Em um segundo computador com Linux, vamos instalar o 
openssh-client:
$ sudo apt-get install openssh-client
Estando no segundo computador, vamos conectar ao primeiro; “su-
porte” é um usuário cadastrado no primeiro computador que tem o 
endereço IP “192.168.56.2” (podemos utilizar o hostname, caso esteja 
cadastrado no DNS):
$ ssh suporte@192.168.56.2
68 Sistema operacional II M
at
er
ia
l p
ar
a 
us
o 
ex
cl
us
ivo
 d
e 
al
un
o 
m
at
ric
ul
ad
o 
em
 c
ur
so
 d
e 
Ed
uc
aç
ão
 a
 D
is
tâ
nc
ia
 d
a 
Re
de
 S
en
ac
 E
AD
, d
a 
di
sc
ip
lin
a 
co
rre
sp
on
de
nt
e.
 P
ro
ib
id
a 
a 
re
pr
od
uç
ão
 e
 o
 c
om
pa
rti
lh
am
en
to
 d
ig
ita
l, s
ob
 a
s 
pe
na
s 
da
 L
ei
. ©
 E
di
to
ra
 S
en
ac
 S
ão
 P
au
lo
.
Será solicitada a senha do usuário “suporte”. Depois de inserida a se-
nha, teremos acesso ao terminal do primeiro computador. Todos os co-
mandos que forem digitados serão executados no primeiro computador.
Para fechar a conexão, basta digitar o comando “exit” ou pressionar 
Ctrl+D.
Agora, para fazer o mesmo acesso utilizando o Windows, vamos uti-
lizar o PuTTY. Para isso, basta informar o endereço IP (ou o hostname, 
caso esteja cadastrado no DNS) e clicar em “Open”, conforme mostra a 
figura 3.
Figura 3 – Cliente SSH no Windows utilizando PuTTY
69Administração de redes e serviços
M
aterial para uso exclusivo de aluno m
atriculado em
 curso de Educação a Distância da Rede Senac EAD, da disciplina correspondente. Proibida a reprodução e o com
partilham
ento digital, sob as penas da Lei. ©
 Editora Senac São Paulo.
Serão solicitados o usuário e a senha do computador 192.168.56.2. 
Depois de digitados, teremos acesso ao terminal. Todos os coman-
dos que forem digitados serão executados no Linux do computador 
192.168.56.2.
Para fechar a conexão, basta digitar o comando “exit” ou pressionar 
Ctrl+D.
8 Configuração da rede cabeada
Iremos utilizar o Ubuntu para demonstrar as configurações a seguir.
Para efetuar a configuração de endereço IP na rede cabeada, vamos 
abrir as configurações, que podem ser acessadas no ícone “Mostrar 
aplicativos”, conforme a figura 4.
Figura 4 – Abrir configurações
Em seguida, selecionamos “Rede” no menu à esquerda; à direta, te-
mos a conexão de rede “Cabeada”, ilustrada na figura 5.
70 Sistema operacional II M
at
er
ia
l p
ar
a 
us
o 
ex
cl
us
ivo
 d
e 
al
un
o 
m
at
ric
ul
ad
o 
em
 c
ur
so
 d
e 
Ed
uc
aç
ão
 a
 D
is
tâ
nc
ia
 d
a 
Re
de
 S
en
ac
 E
AD
, d
a 
di
sc
ip
lin
a 
co
rre
sp
on
de
nt
e.
 P
ro
ib
id
a 
a 
re
pr
od
uç
ão
 e
 o
 c
om
pa
rti
lh
am
en
to
 d
ig
ita
l, s
ob
 a
s 
pe
na
s 
da
 L
ei
. ©
 E
di
to
ra
 S
en
ac
 S
ão
 P
au
lo
.
Figura 5 – Configurações de rede
Para configurar a conexão cabeada, clicamos no botão da engrena-
gem. Surgirá a janela com os detalhes da conexão, como mostra a figura 6.
Figura 6 – Detalhes da conexão cabeada
71Administração de redes e serviços
M
aterial para uso exclusivo de aluno m
atriculado em
 curso de Educação a Distância da Rede Senac EAD, da disciplina correspondente. Proibida a reprodução e o com
partilham
ento digital, sob as penas da Lei. ©
 Editora Senac São Paulo.
Vamos entrar na aba “IPv4” para efetuar a configuração de endere-
ços IP.
Figura 7 – Configuração de endereço IP dinâmico
Nas opções demonstradas na figura 7, temos as configurações de 
IP dinâmico. Para configurar IP fixo, selecionamos a opção “Manual” no 
método IPv4. Ao selecionarmos, será aberta uma caixa para que sejam 
inseridos endereço IP, máscara de rede e gateway, conforme a figura 8.
72 Sistema operacional II M
at
er
ia
l p
ar
a 
us
o 
ex
cl
us
ivo
 d
e 
al
un
o 
m
at
ric
ul
ad
o 
em
 c
ur
so
 d
e 
Ed
uc
aç
ão
 a
 D
is
tâ
nc
ia
 d
a 
Re
de
 S
en
ac
 E
AD
, d
a 
di
sc
ip
lin
a 
co
rre
sp
on
de
nt
e.
 P
ro
ib
id
a 
a 
re
pr
od
uç
ão
 e
 o
 c
om
pa
rti
lh
am
en
to
 d
ig
ita
l, s
ob
 a
s 
pe
na
s 
da
 L
ei
. ©
 E
di
to
ra
 S
en
ac
 S
ão
 P
au
lo
.
Figura 8 – Configuração de endereço IP fixo
9 Configuração da rede wireless
Para efetuar a configuração de endereço IP na rede cabeada, vamos 
abrir as configurações, que podem ser acessadas no ícone “Mostrar 
aplicativos”, conforme a figura 9.
Figura 9 – Abrir “Configurações”
73Administração de redes e serviços
M
aterial para uso exclusivo de aluno m
atriculado em
 curso de Educação a Distância da Rede Senac EAD, da disciplina correspondente. Proibida a reprodução e o com
partilham
ento digital, sob as penas da Lei. ©
 Editora Senac São Paulo.
Em seguida, selecionamos “Wi-Fi” no menu à esquerda; à direita, te-
mos as redes visíveis, demonstradas na figura 10.
Figura 10 – Configurações de rede Wi-Fi
Ao clicarmos na rede disponível, caso ela possua o ícone de cade-
ado, será solicitado que digitemos uma senha de conexão dessa rede, 
como mostra a figura 11.
Figura 11 – Solicitação de senha para rede Wi-Fi
74 Sistema operacional II M
at
er
ia
l p
ar
a 
us
o 
ex
cl
us
ivo
 d
e 
al
un
o 
m
at
ric
ul
ad
o 
em
 c
ur
so
 d
e 
Ed
uc
aç
ão
 a
 D
is
tâ
nc
ia
 d
a 
Re
de
 S
en
ac
 E
AD
, d
a 
di
sc
ip
lin
a 
co
rre
sp
on
de
nt
e.
 P
ro
ib
id
a 
a 
re
pr
od
uç
ão
 e
 o
 c
om
pa
rti
lh
am
en
to
 d
ig
ita
l, s
ob
 a
s 
pe
na
s 
da
 L
ei
. ©
 E
di
to
ra
 S
en
ac
 S
ão
 P
au
lo
.
Após digitarmos a senha, a janela irá fechar e o computador estará 
conectado à rede sem fio. Para confirmar, verifique o ícone com a inten-
sidade do sinal no canto superior direito, conforme a figura 12.
Figura 12 – Conexão Wi-Fi conectada
Considerações finais
Conhecer a estrutura da rede no Linux é fundamental para o seu uso, 
pois o ponto forte do Linux são os seus serviços que utilizam a rede 
para fornecê-los. Como o Linux é versátil, podemos utilizá-lo como um 
firewall, como um roteador, como servidor de páginas web, servidor de 
FTP, banco de dados, DNS, arquivos, etc. Existem inúmeras funcionali-
dades para o Linux; basta pesquisar como fazê-lo.
75Administração de redes e serviços
M
aterial para uso exclusivo de aluno m
atriculado em
 curso de Educação a Distância da Rede Senac EAD, da disciplina correspondente. Proibida a reprodução e o com
partilham
ento digital, sob as penas da Lei. ©
 Editora Senac São Paulo.
Referências
 Bind9. BIND9ServerHowto. Community Help Wiki. Disponível em: https://help.
ubuntu.com/community/BIND9ServerHowto. Acesso em: 16 fev. 2020.
NEMETH, Evi; SNYDER, Gary; HEIN, Trent. Manual completo do Linux: guia do 
administrador. 2. ed. São Paulo: Pearson, 2007.
POSTEL, J.; REYNOLDS, J. RFC 959. File Transfer Protocol (FTP). Network 
Working Group, out. 1985. Disponível em: https://tools.ietf.org/html/rfc959. 
Acesso em: 15 fev. 2020.
SRISURESH, Pyda; EGEVANG, K. RFC 3022. Traditional IP NetworkAddress 
Translator (Traditional NAT). Network Working Group, jan. 2001. Disponível em: 
https://tools.ietf.org/html/rfc3022. Acesso em: 15 fev. 2020.
TANENBAUM, Andrew S. Redes de computadores. 5. ed. São Paulo: Pearson, 
2011.
77
M
aterial para uso exclusivo de aluno m
atriculado em
 curso de Educação a Distância da Rede Senac EAD, da disciplina correspondente. Proibida a reprodução e o com
partilham
ento digital, sob as penas da Lei. ©
 Editora Senac São Paulo.
Capítulo 4
Administração 
de serviços – 
comandos de shell
Um dos recursos mais interessantes que o Linux nos oferece é a 
possibilidade de automatizar praticamente tudo. Para que isso aconte-
ça, utilizamos o shell script.
Por exemplo: você tem a tarefa rotineira de efetuar uma cópia de se-
gurança (backup) de um banco de dados. Em vez de executar todos os 
comandos manualmente, você pode criar um script que automatize sua 
tarefa, adicionando a esse script variáveis como usuário, senha, nome 
do banco de dados, etc.
78 Sistema operacional II M
at
er
ia
l p
ar
a 
us
o 
ex
cl
us
ivo
 d
e 
al
un
o 
m
at
ric
ul
ad
o 
em
 c
ur
so
 d
e 
Ed
uc
aç
ão
 a
 D
is
tâ
nc
ia
 d
a 
Re
de
 S
en
ac
 E
AD
, d
a 
di
sc
ip
lin
a 
co
rre
sp
on
de
nt
e.
 P
ro
ib
id
a 
a 
re
pr
od
uç
ão
 e
 o
 c
om
pa
rti
lh
am
en
to
 d
ig
ita
l, s
ob
 a
s 
pe
na
s 
da
 L
ei
. ©
 E
di
to
ra
 S
en
ac
 S
ão
 P
au
lo
.
1 Comandos de shell script
Os comandos de shell script são utilizados para viabilizar a execu-
ção de tarefas, desde as repetitivas do dia a dia até as mais complexas, 
como automatizar backups e limpar erros de um arquivo de texto, entre 
outras. 
Um script nada mais é do que um algoritmo desenvolvido para reali-
zar uma tarefa utilizando comandos específicos do bash (shell padrão 
de muitas distribuições Linux, como é o caso do Ubuntu) e os executá-
veis do sistema operacional.
O comando “echo” exibe textos na tela. Para exemplificar, abra o ter-
minal e digite o seguinte comando:
$ echo “Meu primeiro comando”
Teremos este resultado na tela:
Meu primeiro comando
Também podemos utilizar o comando “echo” para exibir o conteúdo 
de alguma variável, como mostra o exemplo a seguir. Nesse exemplo, 
estamos exibindo o conteúdo da variável de ambiente PATH, que con-
tém os diretórios com os executáveis do sistema:
$ echo $PATH
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/
bin:/usr/games:/usr/local/games:/snap/bin
79Administração de serviços – comandos de shell
M
aterial para uso exclusivo de aluno m
atriculado em
 curso de Educação a Distância da Rede Senac EAD, da disciplina correspondente. Proibida a reprodução e o com
partilham
ento digital, sob as penas da Lei. ©
 Editora Senac São Paulo.
O comando “sleep” pausa o sistema na quantidade de segundos que 
foi informada. Esse comando é útil para scripts que precisem de um 
tempo entre um comando e outro. O seu uso é simples, como podemos 
observar no exemplo a seguir. De acordo com esse exemplo, o “sleep” 
irá pausar o terminal em 5 segundos:
$ sleep 5
O comando “clear” limpa a tela. É usado quando precisamos de uma 
tela limpa para executar nosso script, esteticamente falando. Para utili-
zá-lo, basta digitar conforme abaixo:
$ clear
O comando “read” registra o que o usuário digita dentro de uma variá-
vel. Esse comando é útil quando existe a necessidade de o usuário infor-
mar algo ao script que não foi informado nos parâmetros. No exemplo a 
seguir, após a execução do comando “read”, o que o usuário digitar será 
armazenado na variável VAR.
$ read VAR
Quando executamos comandos no terminal, é comum digitarmos 
parâmetros complementando o comando que queremos executar. 
Esses parâmetros são representados por “$0” até “$n”, e para saber a 
quantidade de parâmetros digitados utilizamos o “$#”.
Para praticar os parâmetros, podemos criar um script “parametros.
sh” com o seguinte conteúdo:
80 Sistema operacional II M
at
er
ia
l p
ar
a 
us
o 
ex
cl
us
ivo
 d
e 
al
un
o 
m
at
ric
ul
ad
o 
em
 c
ur
so
 d
e 
Ed
uc
aç
ão
 a
 D
is
tâ
nc
ia
 d
a 
Re
de
 S
en
ac
 E
AD
, d
a 
di
sc
ip
lin
a 
co
rre
sp
on
de
nt
e.
 P
ro
ib
id
a 
a 
re
pr
od
uç
ão
 e
 o
 c
om
pa
rti
lh
am
en
to
 d
ig
ita
l, s
ob
 a
s 
pe
na
s 
da
 L
ei
. ©
 E
di
to
ra
 S
en
ac
 S
ão
 P
au
lo
.
#!/bin/bash
echo “Comando executado: $0”
echo “Primeiro parâmetro: $1”
echo “Segundo parâmetro: $2”
echo “Terceiro parâmetro: $3”
echo “Você digitou $# parâmetros”
Note que a primeira linha do shell script é “#!/bin/bash”, o qual infor-
ma ao Linux o interpretador de comandos que será utilizado no script. 
No caso, utilizaremos o bash.
A saída desse comando pode ser observada na figura 1.
Figura 1 – Exemplo de uso dos parâmetros
2 Quotes (aspas, acento grave e barra 
invertida)
As aspas duplas (“ ”) servem para delimitar um parâmetro. Tudo o 
que estiver entre as aspas será considerado um único parâmetro, como 
mostra a figura 2.
Figura 2 – Exemplo de utilização das aspas
81Administração de serviços – comandos de shell
M
aterial para uso exclusivo de aluno m
atriculado em
 curso de Educação a Distância da Rede Senac EAD, da disciplina correspondente. Proibida a reprodução e o com
partilham
ento digital, sob as penas da Lei. ©
 Editora Senac São Paulo.
O acento grave (`) executa comandos dentro do shell script e normal-
mente é utilizado para armazenar em uma variável a saída do comando 
executado, como mostra o exemplo:
#!/bin/bash
VERSAO=`uname -r`
echo “Versão do kernel instalado: $VERSAO”
Figura 3 – Exemplo de utilização do acento grave
A barra invertida (\) é utilizada para proteger o caractere seguinte, ou 
seja, para que ele não seja interpretado pelo bash. Por exemplo, queremos 
utilizar o comando “echo” para exibir um caractere especial, como cerquilha 
(#). No shell script, essa cerquilha é interpretada como comentário, então 
tudo o que estiver após a cerquilha será ignorado, conforme a figura 4.
Figura 4 – Exemplo de utilização da barra invertida
3 Expressões aritméticas e regulares
Para efetuar expressões aritméticas na linha de comando, utilizamos 
o comando “expr”. 
Para efetuar uma soma de dois números inteiros, podemos fazer da 
seguinte forma:
82 Sistema operacional II M
at
er
ia
l p
ar
a 
us
o 
ex
cl
us
ivo
 d
e 
al
un
o 
m
at
ric
ul
ad
o 
em
 c
ur
so
 d
e 
Ed
uc
aç
ão
 a
 D
is
tâ
nc
ia
 d
a 
Re
de
 S
en
ac
 E
AD
, d
a 
di
sc
ip
lin
a 
co
rre
sp
on
de
nt
e.
 P
ro
ib
id
a 
a 
re
pr
od
uç
ão
 e
 o
 c
om
pa
rti
lh
am
en
to
 d
ig
ita
l, s
ob
 a
s 
pe
na
s 
da
 L
ei
. ©
 E
di
to
ra
 S
en
ac
 S
ão
 P
au
lo
.
$ expr 5 + 2
7
No caso de subtração, vamos utilizar o símbolo de “-”:
$ expr 8 - 3
5
Para multiplicação, vamos utilizar o símbolo de “*”, lembrando que é 
preciso proteger o caractere com uma barra invertida, conforme falado 
no tópico anterior:
$ expr 5 \* 2
10
Para divisão, utilizamos o símbolo de “/”:
$ expr 5 / 2
2
Como o comando “expr” trabalha com números inteiros, a resposta 
também será inteira.
Para exibir o resto da divisão de dois números inteiros, utilizamos o 
símbolo “%”:
$ expr 5 % 2
1
83Administração de serviços – comandos de shell
M
aterial para uso exclusivo de aluno m
atriculado em
 curso de Educação a Distância da Rede Senac EAD, da disciplina correspondente. Proibida a reprodução e o com
partilham
ento digital, sob as penas da Lei. ©
 Editora Senac São Paulo.
Agora, vamos falar de expressões regulares ou ERs. Elas são muito 
utilizadas quando queremos efetuar uma busca. Por exemplo, quere-
mos procurar a palavra “administrador” dentro de um arquivo de texto, 
mas não sabemos ao certo se está escrita em português (“administra-
dor”) ou em inglês (“administrator”). Para isso, podemos usar a expres-
são “administra[dt]or”. As letras que estão entre colchetes indicam que 
pode haver essa variação.
Na figura 5, temos o exemplo do comando “egrep” realizando uma 
busca utilizando expressãoregular que comentamos há pouco.
Figura 5 – Exemplo do uso de expressão regular
Vários programas e linguagens de programação têm suporte para 
ERs, como grep, egrep, find, sed, awk, lex, perl, tcl e python e também 
alguns editores de texto, como ed, vi e emacs. (NEVES, 2005, p. 296)
O quadro 1 apresenta os símbolos básicos na expressão regular.
Quadro 1 – Símbolos básicos
. Qualquer caractere uma única vez.
[ ] Qualquer caractere que estiver dentro dos colchetes uma única vez.
* Quantificador que ocorre de zero a infinitas vezes.
+ Quantificador que ocorre de uma a infinitas vezes.
{ } Quantificador que é definido pelo usuário.
- Indica intervalo.
84 Sistema operacional II M
at
er
ia
l p
ar
a 
us
o 
ex
cl
us
ivo
 d
e 
al
un
o 
m
at
ric
ul
ad
o 
em
 c
ur
so
 d
e 
Ed
uc
aç
ão
 a
 D
is
tâ
nc
ia
 d
a 
Re
de
 S
en
ac
 E
AD
, d
a 
di
sc
ip
lin
a 
co
rre
sp
on
de
nt
e.
 P
ro
ib
id
a 
a 
re
pr
od
uç
ão
 e
 o
 c
om
pa
rti
lh
am
en
to
 d
ig
ita
l, s
ob
 a
s 
pe
na
s 
da
 L
ei
. ©
 E
di
to
ra
 S
en
ac
 S
ão
 P
au
lo
.
Para exemplificar, vamos montar uma expressão regular para procu-
rar horas e minutos, sabendo que as horas vão de 00 a 23 e os minutos 
vão de 00 até 59.
(0[0-9]|1[0-9]|2[0-3]):[0-5][0-9]
Em que:
0[0-9] = horas de 00 até 09.
1[0-9] = horas de 10 até 19.
2[0-3] = horas de 20 até 23.
: = separação de hora e minuto.
[0-5] = minutos em que a dezena vai de 0x até 5x.
[0-9] = minutos em que a unidade vai de 0 até 9.
4 Funções
Para efetuarmos os scripts, normalmente utilizamos diversas fun-
ções. As mais utilizadas são as funções de condição (“if” e “case”) e de 
repetição (“for” e “while”).
Estrutura do “if”:
if [ CONDIÇÃO ]; then
 Código a ser executado se a condição for verdadeira
else
 Código a ser executado se a condição for falsa
fi
Note que, para finalizar o comando “if”, utilizamos o comando de for-
ma invertida (“fi”).
85Administração de serviços – comandos de shell
M
aterial para uso exclusivo de aluno m
atriculado em
 curso de Educação a Distância da Rede Senac EAD, da disciplina correspondente. Proibida a reprodução e o com
partilham
ento digital, sob as penas da Lei. ©
 Editora Senac São Paulo.
Temos diversos tipos de condições no ”if”:
if [ $VAR1 -eq 256 ]; then
 • -eq: igual (“equal”). Verifica se dois valores são iguais. Nesse 
exemplo, estamos comparando se o conteúdo da variável “VAR1” 
é igual a 256.
if [ $VAR1 -ne 2 ]; then
 • -ne: diferente (“not equal”). Verifica se dois valores não são iguais. 
Nesse exemplo, estamos comparando se o conteúdo da variável 
“VAR1” é diferente de 2.
if [ $VAR1 -lt 10 ]; then
 • lt: menor que (“less than”). Verifica se o primeiro valor é menor 
que o segundo. Nesse exemplo, estamos comparando se o con-
teúdo da variável “VAR1” é menor que 10.
if [ $VAR1 -gt 5 ]; then
 • -gt: maior que (greater than). Verifica se o primeiro valor é maior 
que o segundo. Nesse exemplo, estamos comparando se o con-
teúdo da variável “VAR1” é maior que 5.
86 Sistema operacional II M
at
er
ia
l p
ar
a 
us
o 
ex
cl
us
ivo
 d
e 
al
un
o 
m
at
ric
ul
ad
o 
em
 c
ur
so
 d
e 
Ed
uc
aç
ão
 a
 D
is
tâ
nc
ia
 d
a 
Re
de
 S
en
ac
 E
AD
, d
a 
di
sc
ip
lin
a 
co
rre
sp
on
de
nt
e.
 P
ro
ib
id
a 
a 
re
pr
od
uç
ão
 e
 o
 c
om
pa
rti
lh
am
en
to
 d
ig
ita
l, s
ob
 a
s 
pe
na
s 
da
 L
ei
. ©
 E
di
to
ra
 S
en
ac
 S
ão
 P
au
lo
.
if [ $VAR1 -le 15 ]; then
 • -le: menor ou igual (less than or equal). Verifica se o primeiro valor 
é inferior ou igual ao segundo. Nesse exemplo, estamos compa-
rando se o conteúdo da variável “VAR1” é inferior ou igual a 15.
if [ $VAR1 -ge 25 ]; then
 • -ge: maior ou igual (greater than or equal). Verifica se o primeiro va-
lor é superior ou igual ao segundo. Nesse exemplo, estamos com-
parando se o conteúdo da variável “VAR1” é maior ou igual a 25.
Vamos criar um script e ver seu funcionamento na prática. Para isso, 
crie um arquivo “if.sh” com o seguinte conteúdo:
#!/bin/bash
VAR1=5
if [ $VAR1 -lt 10 ]; then
 echo “$VAR1 é menor que 10”
else
 echo “$VAR1 é maior ou igual a 10”
fi
Após criar o arquivo, altere a permissão dele adicionando a permis-
são de execução com o comando:
$ chmod +x if.sh
O resultado desse script podemos ver na figura 6.
87Administração de serviços – comandos de shell
M
aterial para uso exclusivo de aluno m
atriculado em
 curso de Educação a Distância da Rede Senac EAD, da disciplina correspondente. Proibida a reprodução e o com
partilham
ento digital, sob as penas da Lei. ©
 Editora Senac São Paulo.
Figura 6 – Exemplo de script utilizando “if”
Com o “if”, não estamos limitados somente a comparações numéri-
cas; podemos verificar algumas coisas do sistema operacional, o que é 
muito útil para criação de shell script:
if [ -d /var/www ]; then
 • -d: diretório. Verifica se o caminho existe e se é um diretório. 
Nesse exemplo, estamos verificando se o caminho “/var/www” 
existe e se “www” é um diretório.
if [ -e /tmp/arquivo.txt ]; then
 • -e: se existir. Verifica se o arquivo existe. Nesse exemplo, esta-
mos verificando se o “arquivo.txt” existe no diretório “/tmp”.
if [ -z /var/log/messages ]; then
 • =z: se estiver vazio. Verifica se o arquivo ou a variável está va-
zio(a). Nesse exemplo, estamos verificando se o arquivo “messa-
ges” está vazio.
if [ -f /var/log/syslog ]; then
88 Sistema operacional II M
at
er
ia
l p
ar
a 
us
o 
ex
cl
us
ivo
 d
e 
al
un
o 
m
at
ric
ul
ad
o 
em
 c
ur
so
 d
e 
Ed
uc
aç
ão
 a
 D
is
tâ
nc
ia
 d
a 
Re
de
 S
en
ac
 E
AD
, d
a 
di
sc
ip
lin
a 
co
rre
sp
on
de
nt
e.
 P
ro
ib
id
a 
a 
re
pr
od
uç
ão
 e
 o
 c
om
pa
rti
lh
am
en
to
 d
ig
ita
l, s
ob
 a
s 
pe
na
s 
da
 L
ei
. ©
 E
di
to
ra
 S
en
ac
 S
ão
 P
au
lo
.
 • -f: se contiver texto. Verifica se o arquivo contém texto. Nesse 
exemplo, estamos verificando se o arquivo “syslog” contém al-
gum texto.
Estrutura do “case”:
case $PARAMETRO in
 parametro1)
 comando 1 ;
 comando 2 ;;
 parametro2)
 comando 3 ;
 comando 4 ;;
 *) echo “Nenhum parâmetro válido digitado” ;;
esac
Nesse exemplo, o case irá ler a variável “$PARAMETRO” e verificará 
se o seu conteúdo está em suas condições. Se o conteúdo da variável 
“$PARAMETRO” for “parametro1”, serão executados os comandos “1” e 
“2”; se o conteúdo da variável “$PARAMETRO” for “parametro2”, serão exe-
cutados os comandos “3” e “4”; se a variável “$PARAMETRO” tiver qualquer 
outro conteúdo, até mesmo vazio, cairá na condição “*”, que exibirá na tela 
o texto “Nenhum parâmetro válido digitado”. Veja que, para finalizar cada 
comando, é utilizado um sinal de ponto e vírgula; para finalizar o parâme-
tro, são digitados dois sinais de ponto e vírgula ao final do último coman-
do. Para encerrar o case, deve ser digitado “case” ao contrário: ”esac”.
Vamos criar um script e ver seu funcionamento na prática. Para isso, 
crie um arquivo “case.sh” com o seguinte conteúdo:
89Administração de serviços – comandos de shell
M
aterial para uso exclusivo de aluno m
atriculado em
 curso de Educação a Distância da Rede Senac EAD, da disciplina correspondente. Proibida a reprodução e o com
partilham
ento digital, sob as penas da Lei. ©
 Editora Senac São Paulo.
#!/bin/bash
NUM1=10
NUM2=5
case $1 in
 somar)
 RESUL=`expr $NUM1 + $NUM2` ;
 echo “O resultado de $NUM1 + $NUM2 = $RESUL” 
;;
 subtrair)
 RESUL=`expr $NUM1 - $NUM2` ;
 echo “O resultado de $NUM1 - $NUM2 = $RESUL” 
;;
 *) echo “Utilize como parâmetro: somar ou subtrair” 
;;
esac
Após criar o arquivo, altere a permissão dele adicionando a permis-
são de execução com o comando:
$ chmod +x case.sh
O resultado desse script podemos ver na figura 7.
Figura 7 – Exemplo de script utilizando “case”
90 Sistema operacional II M
at
er
ia
l p
ar
a 
us
o 
ex
cl
us
ivo
 d
e 
al
un
o 
m
at
ric
ul
ad
o 
em
 c
ur
so
 d
e 
Ed
uc
aç
ão
 a
 D
is
tâ
nc
ia
 d
a 
Re
de
 S
en
ac
 E
AD
, d
a 
di
sc
ip
lin
a 
co
rresp
on
de
nt
e.
 P
ro
ib
id
a 
a 
re
pr
od
uç
ão
 e
 o
 c
om
pa
rti
lh
am
en
to
 d
ig
ita
l, s
ob
 a
s 
pe
na
s 
da
 L
ei
. ©
 E
di
to
ra
 S
en
ac
 S
ão
 P
au
lo
.
O “for” é utilizado para repetição (loop) de comandos. Crie um arqui-
vo “for.sh” com o seguinte conteúdo:
#!/bin/bash
for n in 1 2 3 4
do
 echo “Teste For - numero $n”
done
Após criar o arquivo, altere a permissão dele adicionando a permis-
são de execução com o comando:
$ chmod +x for.sh
Nesse exemplo do “for”, na primeira execução dos comandos que 
estão entre o “do” e o “done”, a variável “n” terá o valor de “1”. Na segunda 
execução, o “for” irá atribuir em “n” o próximo valor, e assim por diante, 
até a conclusão dos valores informados. Na figura 8, temos o retorno 
esperado ao executar esse exemplo.
Figura 8 – Retorno do comando “for”
O “while”, assim como o “for”, é utilizado para repetição, mas com 
uma diferença: enquanto no “for” temos um número finito de repetições, 
no “while” podemos ter infinitas repetições até que a condição seja fal-
sa. Sua estrutura é a seguinte: 
91Administração de serviços – comandos de shell
M
aterial para uso exclusivo de aluno m
atriculado em
 curso de Educação a Distância da Rede Senac EAD, da disciplina correspondente. Proibida a reprodução e o com
partilham
ento digital, sob as penas da Lei. ©
 Editora Senac São Paulo.
#!/bin/bash
ENTRADA=linux
while [ “$ENTRADA” != “sair” ]
do
 echo “Digite qualquer coisa (para finalizar digite 
sair)”
 read ENTRADA
 echo “Você digitou: $ENTRADA”
done
Podemos verificar na figura 9 o “while” em funcionamento.
Figura 9 – Retorno do comando “while”
5 Acesso remoto
Uma das vantagens do uso do Linux é a facilidade para administrar 
o sistema remotamente. Podemos acessar o sistema por linha de co-
mando (usando o SSH) ou acessar a interface gráfica (usando o VNC, o 
FreeNX ou o próprio SSH). O acesso remoto tornou viável o trabalho de 
quem mantém diversos servidores em diferentes locais.
O SSH é um protocolo que permite nos conectarmos a outro com-
putador por um terminal, via linha de comando. Uma vez conectados, 
podemos executar comandos da mesma maneira como se estivésse-
mos operando fisicamente o computador. A vantagem do SSH está no 
uso da criptografia para realizar de forma segura uma conexão entre o 
cliente e o servidor.
92 Sistema operacional II M
at
er
ia
l p
ar
a 
us
o 
ex
cl
us
ivo
 d
e 
al
un
o 
m
at
ric
ul
ad
o 
em
 c
ur
so
 d
e 
Ed
uc
aç
ão
 a
 D
is
tâ
nc
ia
 d
a 
Re
de
 S
en
ac
 E
AD
, d
a 
di
sc
ip
lin
a 
co
rre
sp
on
de
nt
e.
 P
ro
ib
id
a 
a 
re
pr
od
uç
ão
 e
 o
 c
om
pa
rti
lh
am
en
to
 d
ig
ita
l, s
ob
 a
s 
pe
na
s 
da
 L
ei
. ©
 E
di
to
ra
 S
en
ac
 S
ão
 P
au
lo
.
Para realizar uma conexão pelo protocolo SSH, basta digitar no ter-
minal o comando:
$ ssh usuario@servidor
Esse comando consiste em três partes: a primeira (“ssh”) informa ao 
sistema que você deseja fazer uma conexão de shell segura e criptogra-
fada. O usuário é a conta que você deseja acessar; o servidor refere-se ao 
servidor que você deseja acessar. Após a execução do comando, será so-
licitada a senha do usuário do computador remoto. Uma vez validadas as 
credenciais, o terminal passará a exibir o hostname do computador remo-
to, informando que todo comando será executado no computador remoto.
Considerações finais
Vimos como programar em shell script e criar expressões regulares 
e aritméticas. Agora, aproveite para praticar e criar seus próprios scripts. 
Os scripts facilitam a vida do administrador, como rotinas de backup, 
criação de usuários, tudo o que você precise fazer de forma repetitiva. 
Automatize tudo o que conseguir; assim, sobrará mais tempo para se 
dedicar a novas tecnologias. Ou até quando você pretende ser um sim-
ples executor de comandos?
Você sabia que para iniciar e parar os serviços no Linux são utiliza-
dos scripts?
Referência
NEVES, Julio Cezar. Programação shell Linux. 5. ed. Rio de Janeiro: Brasport, 
2005.
93
M
aterial para uso exclusivo de aluno m
atriculado em
 curso de Educação a Distância da Rede Senac EAD, da disciplina correspondente. Proibida a reprodução e o com
partilham
ento digital, sob as penas da Lei. ©
 Editora Senac São Paulo.
Capítulo 5
Administração de 
serviços de rede
Neste capítulo vamos mostrar alguns serviços de rede no Linux, 
como servidor de arquivos para compartilhamento de arquivos (que po-
dem ser acessados em diferentes sistemas operacionais), servidor de 
terminal (utilizado quando queremos compartilhar o sistema operacio-
nal como um todo para terminais conhecidos como thin clients) e ser-
vidor de autenticação centralizada (bastante adotado em empresas).
94 Sistema operacional II M
at
er
ia
l p
ar
a 
us
o 
ex
cl
us
ivo
 d
e 
al
un
o 
m
at
ric
ul
ad
o 
em
 c
ur
so
 d
e 
Ed
uc
aç
ão
 a
 D
is
tâ
nc
ia
 d
a 
Re
de
 S
en
ac
 E
AD
, d
a 
di
sc
ip
lin
a 
co
rre
sp
on
de
nt
e.
 P
ro
ib
id
a 
a 
re
pr
od
uç
ão
 e
 o
 c
om
pa
rti
lh
am
en
to
 d
ig
ita
l, s
ob
 a
s 
pe
na
s 
da
 L
ei
. ©
 E
di
to
ra
 S
en
ac
 S
ão
 P
au
lo
.
1 Cliente-servidor
A arquitetura cliente-servidor é um modelo no qual o servidor provê 
recursos e serviços a serem consumidos pelos clientes. Nessa arquite-
tura, um ou mais computadores clientes são conectados a um servidor 
pela rede, que também pode ser a internet. Os servidores ficam aguar-
dando que os clientes solicitem informações e respondem assim que 
isso ocorre. Normalmente, os servidores são computadores preparados 
para processar as requisições e entregá-las, de modo que os clientes as 
apresentem na tela ao usuário final.
Figura 1 – Exemplo de arquitetura cliente-servidor
Cliente
Cliente
Cliente
Servidor
Na figura 1 temos um exemplo de arquitetura cliente-servidor. 
Podemos citar como exemplo dessa arquitetura as hospedagens de si-
tes, em que os portais ficam armazenados em servidores potentes os 
quais fornecem as páginas web para os usuários.
2 Autenticação
O sistema de autenticação do Ubuntu é baseado no PAM (Pluggable 
Authentication Modules – módulos de autenticação conectáveis). Esses 
módulos ajudam o administrador a escolher a forma de autenticação de 
cada aplicação. 
95Administração de serviços de rede
M
aterial para uso exclusivo de aluno m
atriculado em
 curso de Educação a Distância da Rede Senac EAD, da disciplina correspondente. Proibida a reprodução e o com
partilham
ento digital, sob as penas da Lei. ©
 Editora Senac São Paulo.
A configuração do PAM fica no arquivo “/etc/pam.conf” e, também, 
na pasta “/etc/pam.d/”. Nessa pasta existem algumas configurações 
padrão do sistema.
A estrutura do arquivo segue o formato:
 service-name module-type control-flag module-path args 
Nesse formato, “service-name” é o nome do serviço; “module-type” é 
o tipo de módulo utilizado, que pode ser “account”, “auth”, “password” e 
“session”; “control-flag” indica ao PAM o que fazer em caso de sucesso ou 
falha, que pode ser “requisite”, “required”, “sufficient” e “optional”; “module-
-path” indica o caminho do módulo a ser utilizado, e “args” é usado como 
complemento do módulo, quando é necessário informar algum parâmetro.
Os arquivos de configuração que estão na pasta “/etc/pam.d/” se-
guem o mesmo exemplo do “pam.conf”, com exceção do “service-name”. 
Este não é necessário, já que o nome do serviço está no nome do arquivo 
– por exemplo, no arquivo “/etc/pam.d/sshd” o nome do serviço é “sshd”.
Como exemplo, vamos limitar o uso do SSH permitindo acesso de 
alguns usuários. Para isso, vamos abrir o terminal e editar o arquivo “/
etc/pam.d/sshd” com o comando:
$ sudo gedit /etc/pam.d/sshdv
E vamos adicionar, no final do arquivo, a seguinte linha:
auth required pam_listfile.so item=user sense=allow file=/
etc/ssh/usuarios_permitidos onerr=fail
96 Sistema operacional II M
at
er
ia
l p
ar
a 
us
o 
ex
cl
us
ivo
 d
e 
al
un
o 
m
at
ric
ul
ad
o 
em
 c
ur
so
 d
e 
Ed
uc
ação
 a
 D
is
tâ
nc
ia
 d
a 
Re
de
 S
en
ac
 E
AD
, d
a 
di
sc
ip
lin
a 
co
rre
sp
on
de
nt
e.
 P
ro
ib
id
a 
a 
re
pr
od
uç
ão
 e
 o
 c
om
pa
rti
lh
am
en
to
 d
ig
ita
l, s
ob
 a
s 
pe
na
s 
da
 L
ei
. ©
 E
di
to
ra
 S
en
ac
 S
ão
 P
au
lo
.
Salve e feche o arquivo. Antes de continuar, vamos entender essa li-
nha: ”auth required pam_listfile.so” indica o nome do módulo obrigatório 
enquanto autentica usuários; “item=user” verifica o nome do usuário; 
“sense=allow” indica que o usuário será permitido se for encontrado no 
arquivo; “file=/etc/ssh/usuarios_permitidos” indica o arquivo que con-
tém a lista de usuários, separados um por linha; “onerr=fail” indica que, 
se o PAM encontrar um erro, como arquivo não existente ou formato do 
arquivo inválido, ele não permitirá o login.
Agora, vamos criar o arquivo “/etc/ssh/usuarios_permitidos” com o 
comando:
$ sudo gedit /etc/sshd/usuarios_permitidos
Adicione um usuário por linha:
root
suporte
Salve o arquivo clicando no botão “Salvar” e feche o Gedit. Agora, 
para que tenha efeito, reinicie o serviço do sshd com o comando:
$ sudo systemctl restart sshd
Você pode verificar o funcionamento do PAM por meio de seu arqui-
vo de log, com o comando:
$ tail /var/log/auth.log
97Administração de serviços de rede
M
aterial para uso exclusivo de aluno m
atriculado em
 curso de Educação a Distância da Rede Senac EAD, da disciplina correspondente. Proibida a reprodução e o com
partilham
ento digital, sob as penas da Lei. ©
 Editora Senac São Paulo.
Na figura 2, podemos ver no “auth.log” o funcionamento do PAM re-
cusando uma conexão SSH.
Figura 2 – PAM recusando conexão SSH
3 Backup
O backup, também conhecido como cópia de segurança, é uma ma-
neira de proteger os dados de um desastre, como arquivos apagados 
acidentalmente ou queima de um disco rígido. 
Existem três tipos de backups: o backup full (completo) consiste na 
cópia de todos os arquivos; o backup diferencial é a cópia somente dos 
arquivos alterados em relação ao último backup full, e o backup incre-
mental é a cópia somente dos arquivos alterados em relação ao último 
backup incremental, resultando em um menor consumo de disco. Este 
último é muito utilizado em conjunto com o backup full. Um exemplo 
que podemos apresentar é a realização do backup full uma vez por se-
mana e de backups incrementais no restante da semana.
Existem diversos métodos de backup no Linux. Podemos apenas co-
piar os arquivos utilizando o comando “cp”, podemos utilizar o rsync, 
que consegue efetuar uma cópia incremental, muito útil para backups 
de uma grande quantidade de arquivos, e temos também uma ferra-
menta mais completa chamada Bacula, que é open source.
Tomemos como exemplo o rsync, que é de fácil utilização e muito 
comum. Para instalá-lo, utilizamos o comando:
$ sudo apt-get install rsync
98 Sistema operacional II M
at
er
ia
l p
ar
a 
us
o 
ex
cl
us
ivo
 d
e 
al
un
o 
m
at
ric
ul
ad
o 
em
 c
ur
so
 d
e 
Ed
uc
aç
ão
 a
 D
is
tâ
nc
ia
 d
a 
Re
de
 S
en
ac
 E
AD
, d
a 
di
sc
ip
lin
a 
co
rre
sp
on
de
nt
e.
 P
ro
ib
id
a 
a 
re
pr
od
uç
ão
 e
 o
 c
om
pa
rti
lh
am
en
to
 d
ig
ita
l, s
ob
 a
s 
pe
na
s 
da
 L
ei
. ©
 E
di
to
ra
 S
en
ac
 S
ão
 P
au
lo
.
 Para sincronizar o conteúdo do “diretorio1” com o “diretorio2”, utili-
zamos o comando:
$ rsync -r diretorio1/ diretorio2
O parâmetro “-r” realiza uma cópia recursiva, o que significa que to-
dos os diretórios, subdiretórios e diretórios dentro dos subdiretórios, e 
assim sucessivamente, serão copiados. Isso garante que todo o conte-
údo do “diretorio1” seja copiado para o “diretorio2”.
É possível também efetuar essa cópia para um servidor remoto utili-
zando o comando:
$ rsync diretorio1 usuario@hostname:/diretorio2
Para essa cópia é necessário informar o servidor de destino em 
“hostname”, o usuário desse servidor e o diretório no qual serão copia-
dos os arquivos.
4 Servidor NTP
O servidor NTP (Network Time Protocol – protocolo de tempo para 
redes) é responsável por manter data e horário sincronizados (NTP.br, [s. 
d]). Ele se baseia em outros servidores NTP de nível mais elevado, cha-
mados de stratum. O stratum 0 é a referência mais elevada – normal-
mente, um dispositivo GPS ou um relógio atômico. O stratum 1 utiliza 
o stratum 0 como referência e fornece essa informação aos servidores 
abaixo dele. Por exemplo: se você configurar um servidor NTP utilizando 
os servidores stratum 1 como referência, seu servidor será um stratum 
2 para os outros servidores que o usarem como referência.
99Administração de serviços de rede
M
aterial para uso exclusivo de aluno m
atriculado em
 curso de Educação a Distância da Rede Senac EAD, da disciplina correspondente. Proibida a reprodução e o com
partilham
ento digital, sob as penas da Lei. ©
 Editora Senac São Paulo.
Para instalar o servidor NTP, vamos utilizar o comando:
$ sudo apt-get install ntp
Depois de instalado, vamos verificar se o serviço já está ativo. Para 
isso, utilize o comando:
$ systemctl status ntp
Agora, vamos verificar os servidores NTP que nosso sistema está 
usando como referência. Para essa fnalidade, devemos digitar o 
comando:
$ ntpq -p
Figura 3 – Servidores NTP
100 Sistema operacional II M
at
er
ia
l p
ar
a 
us
o 
ex
cl
us
ivo
 d
e 
al
un
o 
m
at
ric
ul
ad
o 
em
 c
ur
so
 d
e 
Ed
uc
aç
ão
 a
 D
is
tâ
nc
ia
 d
a 
Re
de
 S
en
ac
 E
AD
, d
a 
di
sc
ip
lin
a 
co
rre
sp
on
de
nt
e.
 P
ro
ib
id
a 
a 
re
pr
od
uç
ão
 e
 o
 c
om
pa
rti
lh
am
en
to
 d
ig
ita
l, s
ob
 a
s 
pe
na
s 
da
 L
ei
. ©
 E
di
to
ra
 S
en
ac
 S
ão
 P
au
lo
.
Na figura 3, podemos verificar que nosso servidor NTP tem cadas-
trados diversos servidores. Para identificar aquele que está sendo utili-
zado como referência, basta ver qual deles possui um asterisco (*) na 
frente do nome ou IP, na coluna “remote”. Os que possuem um sinal de 
mais (+) são os servidores que podem ser utilizados caso o servidor 
de referência pare de responder. Os que apresentam um sinal de me-
nos (-) são bons servidores, mas que estão distantes e não estão sendo 
utilizados. Os demais símbolos, como # ou espaço, indicam servidores 
descartados.
As colunas mais importantes para observarmos são a “st” (indica 
qual é o nível stratum do servidor), a coluna “delay” (indica o tempo de 
resposta em milissegundos do servidor) e a coluna “offset” (indica a di-
ferença de tempo em milissegundos entre o servidor NTP e o nosso 
computador). Quando o servidor NTP faz a sincronização do horário, 
ele leva em consideração o tempo de resposta (delay) e a diferença no 
horário (offset).
5 Samba – servidor de arquivos
Samba é um software que funciona como um servidor o qual permi-
te o compartilhamento de arquivos e impressoras do Linux em rede for-
mada por computadores Windows e MacOS (CANONICAL, [s. d.]). Com 
o Samba é possível criar redes híbridas, possibilitando a comunicação 
entre computadores Windows e Linux.
Para instalar o servidor Samba, vamos utilizar o comando:
$ sudo apt-get install samba
Depois de instalado, como demonstração vamos criar um compar-
tilhamento de uma pasta no Linux, a fim de que possa ser acessada no 
Windows. Para isso, é necessário que a pasta exista. Como exemplo, 
101Administração de serviços de rede
M
aterial para uso exclusivo de aluno m
atriculado em
 curso de Educação a Distância da Rede Senac EAD, da disciplina correspondente. Proibida a reprodução e o com
partilham
ento digital, sob as penas da Lei. ©
 Editora Senac São Paulo.
vamos então criar a pasta “/home/PUBLICO” utilizando o comando 
“mkdir” e adicionar a permissão de escrita na pasta usando o coman-
do “chmod”. Se a pasta não tiver as permissões corretas, o usuário 
não conseguirá gravar arquivos ou até mesmo abri-los. Execute os 
comandos para criar a pasta e atribuir permissão total, já que se trata 
de uma pasta à qual todos os usuários terão acesso:
$ sudo mkdir /home/PUBLICO$ sudo chmod 777 /home/PUBLICO
Agora, vamos editar o arquivo de configuração do Samba, a fim de 
adicionar o compartilhamento, com o comando:
$ sudo gedit /etc/samba/smb.conf
No final do arquivo, adicione as seguintes linhas:
[PUBLICO]
 comment = Compartilhamento utilizando Samba
 path = /home/PUBLICO
 read only = no
 browseable = yes
Salve o arquivo e feche o editor de texto.
Na primeira linha, o nome que está entre colchetes será o nome do 
nosso compartilhamento. Em “comment”, trata-se apenas de uma des-
crição do compartilhamento; em “path”, é o caminho da pasta que será 
compartilhada; em “read only”, informamos se o compartilhamento 
será somente leitura ou não, e em “browseable” informamos se o com-
partilhamento será visível quando abrirmos o gerenciador de arquivos.
102 Sistema operacional II M
at
er
ia
l p
ar
a 
us
o 
ex
cl
us
ivo
 d
e 
al
un
o 
m
at
ric
ul
ad
o 
em
 c
ur
so
 d
e 
Ed
uc
aç
ão
 a
 D
is
tâ
nc
ia
 d
a 
Re
de
 S
en
ac
 E
AD
, d
a 
di
sc
ip
lin
a 
co
rre
sp
on
de
nt
e.
 P
ro
ib
id
a 
a 
re
pr
od
uç
ão
 e
 o
 c
om
pa
rti
lh
am
en
to
 d
ig
ita
l, s
ob
 a
s 
pe
na
s 
da
 L
ei
. ©
 E
di
to
ra
 S
en
ac
 S
ão
 P
au
lo
.
Agora que já editamos o arquivo de configuração do samba, vamos 
reiniciar o serviço para que tenha efeito:
$ sudo service smbd restart
Por padrão, o Samba não utiliza as senhas das contas do sistema. 
Então, para acesso ao compartilhamento é preciso criar uma senha 
para a sua conta do sistema utilizando o comando a seguir (lembrando-
-se de alterar o “USUARIO” pelo seu usuário do Linux):
$ sudo smbpasswd -a USUARIO
Após digitar o comando, insira a senha e confirme em seguida. Pode 
ser a mesma do seu usuário do Linux.
Agora, vamos testar o nosso compartilhamento. Em um computador 
Windows, na nossa rede, abrimos o explorador de arquivos. Na barra de 
endereços, digitamos “\\HOSTNAME” (no caso, o nome do nosso servi-
dor Linux, conforme exemplo na figura 4).
Figura 4 – Acessando compartilhamento Samba pelo Windows
103Administração de serviços de rede
M
aterial para uso exclusivo de aluno m
atriculado em
 curso de Educação a Distância da Rede Senac EAD, da disciplina correspondente. Proibida a reprodução e o com
partilham
ento digital, sob as penas da Lei. ©
 Editora Senac São Paulo.
Quando entrar no compartilhamento “PUBLICO”, serão solicitadas as 
credenciais de acesso. Entre com seu usuário e sua senha cadastrados 
pelo comando “smbpasswd”. Agora, você terá acesso à pasta comparti-
lhada “\\ubuntu-VirtualBox\PUBLICO”.
6 LTSP – servidor de terminal
O LTSP (Linux Terminal Server Project), como diz o nome, é um ser-
vidor de terminal. Sua principal função consiste em prover um ambiente 
Linux completo para os thin clients, conhecidos como “terminais bur-
ros”. Esses terminais podem ser computadores de baixo desempenho, 
até mesmo sem disco rígido, e que, mesmo assim, são capazes de ob-
ter um desempenho satisfatório utilizando os recursos do servidor.
Para facilitar a instalação no computador que será o servidor, é re-
comendável haver duas interfaces de rede: uma com acesso à internet, 
para baixar os pacotes necessários, e outra para fornecer o acesso do 
LTSP aos thin clients. 
Configure o endereço de IP fixo “192.168.67.1/24” na segunda inter-
face de rede, na qual irá prover o LTSP.
Para instalar o servidor LTSP utilizamos os seguintes comandos, 
conforme orientação do site do projeto (LTSP, [s. d.]):
$ sudo add-apt-repository ppa:ltsp
$ sudo apt update
$ sudo apt install --install-recommends ltsp-server-
standalone ltsp-client
O comando “add-apt-repository” cadastrará um novo repositório 
de pacotes no apt-get. Na sequência, será executado o comando “apt 
update” para atualizar a lista de pacotes fornecidos por esse novo re-
positório. Por último, instalaremos os pacotes, os quais são fornecidos 
nesse repositório por meio do comando “apt install”.
104 Sistema operacional II M
at
er
ia
l p
ar
a 
us
o 
ex
cl
us
ivo
 d
e 
al
un
o 
m
at
ric
ul
ad
o 
em
 c
ur
so
 d
e 
Ed
uc
aç
ão
 a
 D
is
tâ
nc
ia
 d
a 
Re
de
 S
en
ac
 E
AD
, d
a 
di
sc
ip
lin
a 
co
rre
sp
on
de
nt
e.
 P
ro
ib
id
a 
a 
re
pr
od
uç
ão
 e
 o
 c
om
pa
rti
lh
am
en
to
 d
ig
ita
l, s
ob
 a
s 
pe
na
s 
da
 L
ei
. ©
 E
di
to
ra
 S
en
ac
 S
ão
 P
au
lo
.
Após efetuar a instalação, vamos configurar o LTSP. O primeiro co-
mando a ser utilizado visa provisionar as configurações de rede:
$ sudo ltsp dnsmasq
Agora, vamos criar a imagem que será utilizada nas estações thin 
clients. Para isso, digite o comando:
$ sudo ltsp image /
Note que esse comando demora bastante tempo para concluir.
Após a conclusão, vamos gerar a imagem que será carregada no 
boot através da rede:
$ sudo ltsp ipxe
O seguinte comando irá configurar o compartilhamento de arquivos 
por meio do NFS:
$ sudo ltsp nfs
Por último, vamos criar a imagem de boot do Linux com o seguinte 
comando:
$ sudo ltsp initrd
Agora, com a conclusão do servidor LTSP, você consegue utilizá-lo 
a partir de um thin client configurado para iniciar o boot por meio da 
interface de rede.
105Administração de serviços de rede
M
aterial para uso exclusivo de aluno m
atriculado em
 curso de Educação a Distância da Rede Senac EAD, da disciplina correspondente. Proibida a reprodução e o com
partilham
ento digital, sob as penas da Lei. ©
 Editora Senac São Paulo.
7 LDAP – servidor de autenticação
O LDAP (Lightweight Directory Access Protocol) é um protocolo uti-
lizado para acesso a serviços de diretório através de uma rede, confor-
me descrito na RFC 1777 (YEONG; HOWES; KILLE, 1995). A principal 
função dos serviços de diretório consiste no compartilhamento de 
informações dos usuários centralizado, organizado de forma hierár-
quica e separado em departamentos, equipes, funcionários, etc. Com 
o LDAP é possível utilizar um único usuário e uma única senha para 
diversos sistemas, sem a necessidade de ser criado um cadastro para 
cada aplicação.
PARA SABER MAIS 
Você sabia que o Active Directory da Microsoft utiliza o protocolo LDAP? 
 
Na implementação do LDAP no Linux usamos o openLDAP. Para fa-
zer a instalação, utilizamos o comando:
$ sudo apt-get install slapd ldap-utils
Durante a instalação, será solicitada a criação de uma senha de ad-
ministrador do diretório LDAP. Guarde essa senha, porque ela será ne-
cessária quando for administrá-lo.
Agora, vamos configurar nossa base do LDAP. Para isso, digite o 
comando:
$ sudo dpkg-reconfigure slapd
106 Sistema operacional II M
at
er
ia
l p
ar
a 
us
o 
ex
cl
us
ivo
 d
e 
al
un
o 
m
at
ric
ul
ad
o 
em
 c
ur
so
 d
e 
Ed
uc
aç
ão
 a
 D
is
tâ
nc
ia
 d
a 
Re
de
 S
en
ac
 E
AD
, d
a 
di
sc
ip
lin
a 
co
rre
sp
on
de
nt
e.
 P
ro
ib
id
a 
a 
re
pr
od
uç
ão
 e
 o
 c
om
pa
rti
lh
am
en
to
 d
ig
ita
l, s
ob
 a
s 
pe
na
s 
da
 L
ei
. ©
 E
di
to
ra
 S
en
ac
 S
ão
 P
au
lo
.
Será exibida a pergunta “Omitir a configuração do servidor 
OpenLDAP?”. Responda “Não”. Se colocar “Sim”, o assistente será encer-
rado e a configuração terá que ser realizada manualmente nos arquivos 
de configuração.
Na próxima tela, será solicitado o “Nome do domínio DNS”. Esse 
domínio será a raiz do nosso diretório LDAP. Como exemplo, coloque 
“empresa.local”.
Na próxima tela, será solicitado o “Nome da organização”. Como 
exemplo, coloque “Minha empresa”.
Em seguida, será solicitada a senha de administrador que foi cadas-
trada na instalação do openLDAP.
Na tela seguinte, escolha “MDB” como backend de base de dados a 
ser usado.
Quando aparecer a questão “Você deseja que a base de dados seja 
removida quando o pacote slapd for expurgado [purged]?”, escolha 
“Não”. Se colocar “Sim”, o banco de dados do OpenLDAP será totalmente 
removido caso o pacote slapd seja removido, o que não é aconselhado.
Em seguida, haverá a questão sobre “Mover a base de dados antiga”. 
Responda “Sim”. Isso faz com que seja criado um banco de dados lim-po, que é o nosso caso.
Pronto, nosso LDAP está configurado e pronto para ser populado.
Para configurar os clientes openLDAP, será necessário editar o arqui-
vo “/etc/ldap/ldap.conf”.
$ sudo gedit /etc/ldap/ldap.conf
Nesse arquivo, precisamos alterar dois parâmetros: “BASE” e “URI”. 
Vamos alterar para o nosso exemplo:
107Administração de serviços de rede
M
aterial para uso exclusivo de aluno m
atriculado em
 curso de Educação a Distância da Rede Senac EAD, da disciplina correspondente. Proibida a reprodução e o com
partilham
ento digital, sob as penas da Lei. ©
 Editora Senac São Paulo.
BASE dc=empresa,dc=local
URI ldap://localhost
Para testar o nosso servidor LDAP, vamos executar o comando: 
$ ldapsearch -x
O resultado esperado é o que a figura 5 mostra.
Figura 5 – Teste do LDAP
108 Sistema operacional II M
at
er
ia
l p
ar
a 
us
o 
ex
cl
us
ivo
 d
e 
al
un
o 
m
at
ric
ul
ad
o 
em
 c
ur
so
 d
e 
Ed
uc
aç
ão
 a
 D
is
tâ
nc
ia
 d
a 
Re
de
 S
en
ac
 E
AD
, d
a 
di
sc
ip
lin
a 
co
rre
sp
on
de
nt
e.
 P
ro
ib
id
a 
a 
re
pr
od
uç
ão
 e
 o
 c
om
pa
rti
lh
am
en
to
 d
ig
ita
l, s
ob
 a
s 
pe
na
s 
da
 L
ei
. ©
 E
di
to
ra
 S
en
ac
 S
ão
 P
au
lo
.
Para adicionar um usuário, é necessário criar um arquivo “LDIF” com 
as informações necessárias – por exemplo, a fim de criar um usuário 
suporte, devemos criar um arquivo “usuário.ldif” com o comando:
$ sudo gedit usuário.ldif
Dentro desse arquivo, inserimos as seguintes linhas:
dn: cn=suporte,dc=empresa,dc=local
objectClass: posixAccount
objectClass: shadowAccount
objectClass: inetOrgPerson
cn: Suporte
sn: Tecnico
uid: suporte
uidNumber: 10000
gidNumber: 10000
homeDirectory: /home/suporte
loginShell: /bin/bash
Salve o arquivo clicando no botão “Salvar” e feche o Gedit.
A estrutura desse arquivo é a seguinte: “dn” (distinguished name – 
nome distinto), que é único e irá identificar o objeto dentro do diretório; 
“objectClass”, que significa as classes de objetos as quais o nosso usu-
ário possui; “cn” (common name – nome comum ou primeiro nome); 
“sn” (surname – sobrenome); “uid” (user ID – identificação do usuário); 
“uidNumber”, que é o número de identificação do usuário; “gidNumber”, 
que é o número de identificação do grupo; “homeDirectory”, o qual é o 
diretório “HOME” do usuário, e “loginShell”, que consiste no interpretador 
de comandos os quais o usuário irá utilizar no terminal.
109Administração de serviços de rede
M
aterial para uso exclusivo de aluno m
atriculado em
 curso de Educação a Distância da Rede Senac EAD, da disciplina correspondente. Proibida a reprodução e o com
partilham
ento digital, sob as penas da Lei. ©
 Editora Senac São Paulo.
Agora, vamos adicionar esse usuário com o seguinte comando:
$ sudo ldapadd -x -H ldap://localhost -D 
“cn=admin,dc=empresa,dc=local” -f usuario.ldif -W
Será solicitada a senha do administrador LDAP que foi criada na 
instalação.
Nesse comando utilizamos estes parâmetros: “-x”, para efetuar uma 
autenticação simples; “-H ldap://localhost”, para informar quem é o nos-
so servidor LDAP; “-D cn=admin,dc=empresa,dc=local”, o login do admi-
nistrador do LDAP; “-f usuário.ldif”, o arquivo que contém os dados do 
usuário que vamos inserir, e “-W”, para solicitar a senha do administrador.
Para verificar se o usuário foi criado, vamos executar o seguinte 
comando:
$ ldapsearch -x “uid=suporte”
O resultado pode ser verificado na figura 6.
110 Sistema operacional II M
at
er
ia
l p
ar
a 
us
o 
ex
cl
us
ivo
 d
e 
al
un
o 
m
at
ric
ul
ad
o 
em
 c
ur
so
 d
e 
Ed
uc
aç
ão
 a
 D
is
tâ
nc
ia
 d
a 
Re
de
 S
en
ac
 E
AD
, d
a 
di
sc
ip
lin
a 
co
rre
sp
on
de
nt
e.
 P
ro
ib
id
a 
a 
re
pr
od
uç
ão
 e
 o
 c
om
pa
rti
lh
am
en
to
 d
ig
ita
l, s
ob
 a
s 
pe
na
s 
da
 L
ei
. ©
 E
di
to
ra
 S
en
ac
 S
ão
 P
au
lo
.
Figura 6 – Verificando criação do usuário do LDAP
Considerações finais
Entendendo o conceito da arquitetura cliente-servidor, o leitor conse-
guirá compreender como funciona a maioria dos serviços disponíveis 
no Linux. Vimos como configurar servidores de sincronismo de horário, 
autenticação centralizada e compartilhamento de arquivos, bem como 
a criação de backups dos nossos arquivos.
Coloque em prática tudo o que foi abordado neste capítulo. O Linux 
não é complicado; conhecer aquilo do que ele é capaz já é um bom co-
meço para se aventurar.
111Administração de serviços de rede
M
aterial para uso exclusivo de aluno m
atriculado em
 curso de Educação a Distância da Rede Senac EAD, da disciplina correspondente. Proibida a reprodução e o com
partilham
ento digital, sob as penas da Lei. ©
 Editora Senac São Paulo.
Referências
Canonical. Install and configure Samba | Ubuntu. [s. d.]. Disponível em: https://
ubuntu.com/tutorials/install-and-configure-samba. Acesso em: 11 abr. 2020. 
LTSP. LTSP Documentation. [s. d.]. Disponível em: https://ltsp.org/docs/. Acesso 
em: 10 abr. 2020.
NTP.br. O NTP. [s. d.]. Disponível em: https://ntp.br/ntp.php. Acesso em: 25 mar. 
2020.
YEONG, W.; HOWES, T.; KILLE, S. RFC 1777. Lightweight Directory Access 
Protocol. 1995. Disponível em: https://tools.ietf.org/html/rfc1777. Acesso em: 
12 abr. 2020.
113
M
aterial para uso exclusivo de aluno m
atriculado em
 curso de Educação a Distância da Rede Senac EAD, da disciplina correspondente. Proibida a reprodução e o com
partilham
ento digital, sob as penas da Lei. ©
 Editora Senac São Paulo.
Capítulo 6
Serviços de rede 
avançada
Neste capítulo vamos abordar o sistema de monitoramento Zabbix: 
para que serve, como atua, como instalá-lo. E falaremos sobre o Snort, 
sistema de detecção de intrusão, destinado a proteger a nossa rede. 
114 Sistema operacional II M
at
er
ia
l p
ar
a 
us
o 
ex
cl
us
ivo
 d
e 
al
un
o 
m
at
ric
ul
ad
o 
em
 c
ur
so
 d
e 
Ed
uc
aç
ão
 a
 D
is
tâ
nc
ia
 d
a 
Re
de
 S
en
ac
 E
AD
, d
a 
di
sc
ip
lin
a 
co
rre
sp
on
de
nt
e.
 P
ro
ib
id
a 
a 
re
pr
od
uç
ão
 e
 o
 c
om
pa
rti
lh
am
en
to
 d
ig
ita
l, s
ob
 a
s 
pe
na
s 
da
 L
ei
. ©
 E
di
to
ra
 S
en
ac
 S
ão
 P
au
lo
.
1 Zabbix – monitoramento
O Zabbix consiste em uma solução de monitoramento de nível empre-
sarial que possui código aberto. Com ele é possível monitorar vários pa-
râmetros da rede, dos servidores e da saúde dos serviços (ZABBIX, [s. d.]).
O Zabbix é composto por quatro camadas: servidor, interface ou 
frontend, agente e proxy (este último, opcional). O servidor recebe as 
coletas dos agentes, grava no banco de dados e gera os alertas; a in-
terface lê os dados no banco de dados e exibe para o usuário; o agente 
é instalado nos computadores que serão monitorados, e o proxy pode 
ser utilizado como intermediador da comunicação entre o servidor e os 
agentes. É muito usado quando o servidor não está instalado na mesma 
rede dos agentes.
Existem três meios diferentes para utilizar o Zabbix: a partir da ins-
talação via pacotes pré-compilados, via código-fonte ou via Appliance.1 
No entanto, este último é restrito a testes, não sendo recomendada sua 
utilização em produção.
Vamos instalar o Zabbix a partir dos pacotes pré-compilados. Para 
isso, devemos separar a instalação em etapas, conforme descrito abaixo. 
1. Configurar o repositório de pacotes oficial do Zabbix. 
2. Instalar os pacotes do Zabbix. 
3. Criar o banco de dados MySQL para armazenamento das coletas.
4. Configurar o Zabbix server. 
5. Configurar o frontend (interface de gerenciamento do Zabbix).
6. Configurar o Zabbix agent.
7. Cadastrar dispositivo para monitoramento.
1 Appliance é uma imagem do Linux CentOS pré-configurado que já possui o Zabbix instalado e pronto para uso.
115Serviços de rede avançada
M
aterial para uso exclusivo de aluno m
atriculado em
 curso de Educação a Distância da Rede Senac EAD, da disciplina correspondente. Proibida a reprodução e o com
partilham
ento digital, sob as penas da Lei. ©
 Editora Senac São Paulo.
1.1 Configuraçãodo repositório de pacotes do Zabbix
Na primeira etapa, temos que configurar o repositório do apt-get para 
buscar os pacotes do site do Zabbix. Vamos, então, efetuar o download 
do pacote zabbix-release utilizando o wget, lembrando que para efetuar 
o download será necessário ter um link de internet ativo e instalar esse 
pacote a fim de que realize a configuração do repositório do apt-get. Por 
último, temos que atualizar a lista de pacotes disponíveis pelo apt-get 
update. Vamos utilizar estes comandos:
$ wget https://repo.zabbix.com/zabbix/4.4/ubuntu/pool/
main/z/zabbix-release/zabbix-release_4.4-1+bionic_all.deb
$ sudo dpkg -i zabbix-release_4.4-1+bionic_all.deb
$ sudo apt-get update
1.2 Instalação dos pacotes
Na segunda etapa, vamos instalar os pacotes do Zabbix com o 
comando:
$ sudo apt-get install zabbix-server-mysql zabbix-
frontend-php zabbix-apache-conf zabbix-agent
Nessa amostra, “zabbix-server-mysql” é o pacote que instala o servi-
dor Zabbix utilizando o banco de dados MySQL; “zabbix-frontend-php” é 
a interface web do Zabbix para configuração e visualização dos alertas; 
“zabbix-apache-conf” instala os arquivos necessários no Apache para 
prover a interface web, e o “zabbix-agent” efetua as coletas do próprio 
servidor (por exemplo, espaço em disco).
116 Sistema operacional II M
at
er
ia
l p
ar
a 
us
o 
ex
cl
us
ivo
 d
e 
al
un
o 
m
at
ric
ul
ad
o 
em
 c
ur
so
 d
e 
Ed
uc
aç
ão
 a
 D
is
tâ
nc
ia
 d
a 
Re
de
 S
en
ac
 E
AD
, d
a 
di
sc
ip
lin
a 
co
rre
sp
on
de
nt
e.
 P
ro
ib
id
a 
a 
re
pr
od
uç
ão
 e
 o
 c
om
pa
rti
lh
am
en
to
 d
ig
ita
l, s
ob
 a
s 
pe
na
s 
da
 L
ei
. ©
 E
di
to
ra
 S
en
ac
 S
ão
 P
au
lo
.
1.3 Criação do banco de dados MySQL
No Ubuntu, o pacote do MySQL foi substituído pelo MariaDB, que é 
uma versão compatível e de código aberto mantida pela comunidade, já 
que a Oracle adquiriu o MySQL. O MariaDB é instalado como dependên-
cia do pacote Zabbix-server-mysql.
Primeiro, vamos abrir o console do banco de dados MySQL com o 
seguinte comando:
$ sudo mysql
Uma vez dentro do console do MySQL, digite os comandos abaixo na 
sequência para criar o banco Zabbix, criar o usuário Zabbix e atribuir os 
acessos do usuário Zabbix no banco de dados Zabbix:
mysql> create database zabbix character set utf8 collate 
utf8_bin;
mysql> create user ‘zabbix’@’localhost’ identified by ‘P@
ssw0rd’;
mysql> grant all privileges on zabbix.* to 
‘zabbix’@’localhost’;
mysql> quit;
Agora, vamos criar as tabelas do banco de dados com o comando:
$ zcat /usr/share/doc/zabbix-server-mysql/create.sql.gz | 
mysql -uzabbix -p zabbix
117Serviços de rede avançada
M
aterial para uso exclusivo de aluno m
atriculado em
 curso de Educação a Distância da Rede Senac EAD, da disciplina correspondente. Proibida a reprodução e o com
partilham
ento digital, sob as penas da Lei. ©
 Editora Senac São Paulo.
Será solicitada a senha do usuário zabbix que criamos no comando 
anterior. Digite “P@ssw0rd”.
1.4 Configuração do Zabbix server
Vamos configurar a conexão do nosso banco de dados no Zabbix 
server. Para isso, edite o arquivo “/etc/zabbix/zabbix_server.conf” com 
o comando:
$ sudo gedit /etc/zabbix/zabbix_server.conf
 E altere as linhas:
DBHost=localhost
DBName=zabbix
DBUser=zabbix
DBPassword=P@ssw0rd
Agora, reinicie o serviço do Zabbix server com o comando:
$ sudo systemctl restart zabbix-server
Para que o Zabbix server inicie automaticamente junto do sistema 
operacional, será necessário digitar o comando:
$ sudo systemctl enable zabbix-server
118 Sistema operacional II M
at
er
ia
l p
ar
a 
us
o 
ex
cl
us
ivo
 d
e 
al
un
o 
m
at
ric
ul
ad
o 
em
 c
ur
so
 d
e 
Ed
uc
aç
ão
 a
 D
is
tâ
nc
ia
 d
a 
Re
de
 S
en
ac
 E
AD
, d
a 
di
sc
ip
lin
a 
co
rre
sp
on
de
nt
e.
 P
ro
ib
id
a 
a 
re
pr
od
uç
ão
 e
 o
 c
om
pa
rti
lh
am
en
to
 d
ig
ita
l, s
ob
 a
s 
pe
na
s 
da
 L
ei
. ©
 E
di
to
ra
 S
en
ac
 S
ão
 P
au
lo
.
1.5 Configuração do frontend
Como pré-requisito, o frontend necessita que seja configurado o fuso 
horário (ou timezone), a fim de que as coletas e os alarmes sejam visua-
lizados com o horário correto. Agora, vamos configurar o timezone na 
configuração do Apache. Para isso, vamos editar o arquivo “/etc/zabbix/
apache.conf” com o comando:
$ sudo gedit /etc/zabbix/apache.conf
Altere as duas linhas que contêm:
# php_value date.timezone Europe/Riga
Para:
php_value date.timezone America/Sao_Paulo
PARA SABER MAIS 
A fim de consultar a lista de fusos horários, basta digitar o comando 
“$ timedatectl list-timezones”.
 
Salve o arquivo e reinicie o serviço do Apache com o comando:
$ sudo systemctl restart apache2
119Serviços de rede avançada
M
aterial para uso exclusivo de aluno m
atriculado em
 curso de Educação a Distância da Rede Senac EAD, da disciplina correspondente. Proibida a reprodução e o com
partilham
ento digital, sob as penas da Lei. ©
 Editora Senac São Paulo.
Vamos abrir no navegador padrão a URL “http://localhost/zabbix” 
para configurar a interface web (frontend).
Na tela de instalação, clique em “Next step”. Na tela de verificação de 
pré-requisitos, verifique se todas as linhas estão OK e clique em “Next 
step”. Na tela de configuração da conexão do banco de dados, informe 
a senha do banco (“P@ssw0rd”) e clique em “Next step”. Na tela de deta-
lhes, informe o nome da instalação (vamos colocar “Monitoramento”) e 
clique em “Next step”. Na tela de sumário de pré-instalação, verifique se 
está correta e clique em “Next step”. Você receberá uma tela informando 
que a instalação foi concluída. Clique em “Finish” para finalizar.
Para autenticar no Zabbix, utilize usuário e senha padrão. No usuário, 
digite “Admin”; na senha, digite “zabbix”.
Na figura 1, podemos ver a tela inicial do Zabbix.
Figura 1 – Tela inicial do Zabbix
No Zabbix é possível criar dashboards, mapas, gráficos e telas, 
configurar alarmes personalizados com a possibilidade de enviar 
e-mails, bem como executar comandos e scripts. O Zabbix é altamente 
personalizável.
120 Sistema operacional II M
at
er
ia
l p
ar
a 
us
o 
ex
cl
us
ivo
 d
e 
al
un
o 
m
at
ric
ul
ad
o 
em
 c
ur
so
 d
e 
Ed
uc
aç
ão
 a
 D
is
tâ
nc
ia
 d
a 
Re
de
 S
en
ac
 E
AD
, d
a 
di
sc
ip
lin
a 
co
rre
sp
on
de
nt
e.
 P
ro
ib
id
a 
a 
re
pr
od
uç
ão
 e
 o
 c
om
pa
rti
lh
am
en
to
 d
ig
ita
l, s
ob
 a
s 
pe
na
s 
da
 L
ei
. ©
 E
di
to
ra
 S
en
ac
 S
ão
 P
au
lo
.
1.6 Instalação e configuração do Zabbix agent
Para instalar o agente de monitoramento do Zabbix nos computa-
dores Linux do nosso ambiente, temos que configurar o repositório do 
apt-get do mesmo jeito que fizemos na instalação do servidor, utilizan-
do os seguintes comandos:
$ wget https://repo.zabbix.com/zabbix/4.4/ubuntu/pool/
main/z/zabbix-release/zabbix-release_4.4-1+bionic_all.deb
$ sudo dpkg -i zabbix-release_4.4-1+bionic_all.deb
$ sudo apt-get update
Em seguida, vamos instalar o agente com este comando:
$ sudo apt-get install zabbix-agent
Agora que o agente está instalado, vamos configurar o arquivo “/etc/
zabbix/zabbix_agentd.conf” informando o endereço IP do servidor do 
Zabbix. Para isso, abra o editor de textos com o seguinte comando:
$ sudo gedit /etc/zabbix/zabbix_agentd.conf
Procure pelas linhas abaixo:
Server=127.0.0.1
Hostname=Zabbix server
121Serviços de rede avançada
M
aterial para uso exclusivo de aluno m
atriculado em
 curso de Educação a Distância da Rede Senac EAD, da disciplina correspondente. Proibida a reprodução e o com
partilham
ento digital, sob as penas da Lei. ©
 Editora Senac São Paulo.
E substitua o endereço “127.0.0.1” pelo endereço IP do servidor do 
Zabbix que acabamos de instalar. Em “Hostname”, coloque o nome 
do computador cliente. Por exemplo:
Server=10.90.0.15
Hostname=webserver
Salve o arquivo e feche o editor de textos.
Agora vamos configurar o agente do Zabbix para iniciar automatica-
mente com o sistemafoi	lançada	em	1994,	incluindo	um	novo	sistema	de	ar-
quivos, novos drivers e redes TCP/IP. Nesse ponto, o Linux era pratica-
mente	compatível	com	os	softwares	do	Unix.	A	versão	2.0	foi	lançada	
dois anos depois, em 1996, incluindo suporte para arquiteturas 64 bits, 
novos drivers e novos protocolos de rede.
O kernel é o núcleo do Linux. Trata-se do software responsável por 
realizar	a	comunicação	entre	o	hardware	e	os	programas	da	máquina.	
Ele	traduz	as	informações	recebidas	para	o	processador	e	aos	demais	
eletrônicos do computador.
As	suas	versões	são	identificadas	por	um	conjunto	de	quatro	núme-
ros.	Por	exemplo,	2.6.11.9,	em	que	“2”	é	a	versão	do	kernel,	 “6”	 repre-
senta	as	grandes	revisões,	“11”	indica	as	pequenas	revisões	–	como	a	
inclusão	de	novos	drivers	–	e	“9”	representa	os	pequenos	consertos	e	
ajustes	(patches)	de	segurança.	Até	a	versão	2.6	do	kernel,	quando	o	se-
gundo	algarismo		(“6”	no	exemplo)	era	um	número	par,	isso	significava	
que a versão era estável. Já um número ímpar indicava que aquela era 
uma versão de desenvolvimento, considerada instável.
Apesar de ser o núcleo do sistema, o kernel por si só não é de gran-
de	utilidade	para	o	usuário	final.	Assim,	foram	criadas	distribuições	do	
Linux para deixar o sistema com uma aparência mais amigável.
9Fundamentos de sistemas operacionais Linux
M
aterial para uso exclusivo de aluno m
atriculado em
 curso de Educação a Distância da Rede Senac EAD, da disciplina correspondente. Proibida a reprodução e o com
partilham
ento digital, sob as penas da Lei. ©
 Editora Senac São Paulo.
1.1 Distribuições Linux
Todas	as	distribuições	do	Linux	compartilham	da	mesma	 linha-
gem do kernel, porém os materiais auxiliares que vêm junto com 
esse	kernel	podem	variar	significativamente	entre	estas	distribui-
ções.	(NEMETH;	SNYDER;	HEIN,	2007,	p.	5)
Existem	inúmeras	distribuições	do	Linux,	e	as	mais	famosas	entre	
elas são Debian, CentOS, Ubuntu, Fedora, SUSE, Red Hat e Linux Mint. 
Vale	lembrar	que	nem	toda	distribuição	é	fornecida	de	forma	gratuita.	
Dois	exemplos	são	as	distribuições	Red	Hat	e	SUSE,	voltadas	para	o	
público corporativo.
É	possível	fazer	uma	analogia	comparando	as	distribuições	Linux	a	
sabores de sorvete: todos eles possuem o mesmo núcleo – no caso do 
Linux,	o	mesmo	“kernel”.	A	diferença	entre	as	distribuições	está	nos	pa-
cotes	(programas)	que	complementam	a	solução	e	o	suporte	técnico.
Para	uso	em	estações	de	 trabalho	 (versão	desktop),	a	escolha	da	
distribuição	 certa	 depende	 de	 cada	 um,	 assim	 como	 os	 sabores	 de	
sorvete.	Para	saber	se	você	vai	se	adaptar	a	uma	certa	distribuição	é	
necessário	experimentar.	É	preciso	 também	levar	em	consideração	o	
propósito.	Existem	distribuições	que	são	apropriadas	a	computadores	
mais	antigos	(Xubuntu,	Lubuntu,	Tiny	Core),	e	há	distribuições	voltadas	
para servidores.
No caso do uso em servidores (versão server), a escolha depende de 
diversos fatores, principalmente do suporte técnico que será contratado 
e	se	a	distribuição	é	homologada	para	a	aplicação.	Um	bom	exemplo	
disso é o ERP da SAP: ele é homologado para ser instalado em Red 
Hat, SUSE e Oracle Linux. Você até consegue instalá-lo em outras dis-
tribuições,	mas	infelizmente	o	suporte	técnico	da	aplicação	não	presta	
atendimento em caso de necessidade.
10 Sistema operacional II M
at
er
ia
l p
ar
a 
us
o 
ex
cl
us
ivo
 d
e 
al
un
o 
m
at
ric
ul
ad
o 
em
 c
ur
so
 d
e 
Ed
uc
aç
ão
 a
 D
ist
ân
ci
a 
da
 R
ed
e 
Se
na
c 
EA
D,
 d
a 
di
sc
ip
lin
a 
co
rre
sp
on
de
nt
e.
 P
ro
ib
id
a 
a 
re
pr
od
uç
ão
 e
 o
 c
om
pa
rti
lh
am
en
to
 d
ig
ita
l, 
so
b 
as
 p
en
as
 d
a 
Le
i. 
©
 E
di
to
ra
 S
en
ac
 S
ão
 P
au
lo
.
PARA SABER MAIS 
Um excelente lugar para conhecer as mais diversas distribuições é o 
site Distro Watch.com. Nele podemos acompanhar notícias sobre novas 
versões, tendências, a popularidade de cada distribuição, detalhes das 
versões e onde fazer download das mídias de instalação.
 
1.2 Software livre
Por	“software	 livre”	devemos	entender	aquele	software	que	res-
peita a liberdade e o senso de comunidade dos usuários. Gros-
so	modo,	 isso	 significa	 que os usuários possuem a liberdade 
de executar, copiar, distribuir, estudar, mudar e melhorar o 
software.	Assim	sendo,	“software	livre”	é	uma	questão	de	liberda-
de,	não	de	preço.	(GNU,	[s. d.])
O	Linux	é	um	exemplo	de	software	livre.	Sua	filosofia	é	definida	pelo	
Projeto GNU, defensor dessa liberdade. 
Essencialmente, os softwares livres são divididos em quatro liberda-
des: a de executar o programa como quiser, independentemente do pro-
pósito, a de estudar o código-fonte e alterá-lo para a sua necessidade, 
a de distribuir cópias ajudando outras pessoas e a de distribuir cópias 
alteradas,	beneficiando	a	comunidade	de	usuários	–	mas	para	 isso	é	
necessário disponibilizar o código-fonte alterado.
PARA SABER MAIS 
O código-fonte do Linux pode ser baixado no site oficial da Kernel.
 
A	 licença	do	Linux	é	a	GPL	 (GNU	Public	License	–	 licença	pública	
GNU), que foi escrita por Richard Stallman, fundador da Free Software 
11Fundamentos de sistemas operacionais Linux
M
aterial para uso exclusivo de aluno m
atriculado em
 curso de Educação a Distância da Rede Senac EAD, da disciplina correspondente. Proibida a reprodução e o com
partilham
ento digital, sob as penas da Lei. ©
 Editora Senac São Paulo.
Foundation	ou	Fundação	de	Software	Livre.	“[A	GPL]	é	mais	longa	que	
a	licença	do	Windows	da	Microsoft	e	especifica	o	que	você	pode	e	não	
pode	fazer	com	o	código”	(TANENBAUM,	2016,	p.	499).
1.3 Sistema binário, medidas de informação 
Sistema binário consiste em um sistema de números utilizado pelo 
computador	para	armazenar	informações.	Como	o	computador	é	inca-
paz	de	armazenar	as	 informações	na	forma	que	utilizamos	na	nossa	
linguagem oral e escrita, esses dados são transformados pelo sistema 
binário, e assim ocorre o armazenamento.
Se	pudéssemos	entrar	em	um	computador,	não	veríamos	letras	(“A”,	
“B”,	“C”...)	nem	números	(“1”,	“2”,	“3”,	etc.).	Veríamos	apenas	eletricidade,	
que possui somente dois estados: ligado (1) ou desligado (0). Portanto, 
cada caractere terá um código composto por 0 e 1.
PARA SABER MAIS 
Todos os números da base decimal são elevados à potência do número 
10. Já na base binária os números são elevados à potência do número 
2. Assim como a base decimal (“0”, “1”, “2”, “3”, “4”, “5”, “6”, “7”, “8”, “9”...), 
a base binária é capaz de reproduzir todos os números possíveis, mas 
utilizando apenas 0 e 1. O mesmo ocorre com as letras (“A”, “B”, “C”, 
“D”...), com as palavras, com os caracteres especiais e com as teclas 
de comando. 
 
Cada	unidade	de	 informação	desse	 tipo	é	chamada	de	bit	 (binary	
digit), que é a menor unidade de memória utilizada pelo computador e 
representa apenas dois números (0 e 1).
O conjunto de 8 bits é denominado byte, e 1 byte pode representar 
1 caractere. O kilobyte (KB) é formado pelo conjunto de 1.024 bytes, 
12 Sistema operacional II M
at
er
ia
l p
ar
a 
us
o 
ex
cl
us
ivo
 d
e 
al
un
o 
m
at
ric
ul
ad
o 
em
 c
ur
so
 d
e 
Ed
uc
aç
ão
 a
 D
ist
ân
ci
a 
da
 R
ed
e 
Se
na
c 
EA
D,
 d
a 
di
sc
ip
lin
a 
co
rre
sp
on
de
nt
e.
 P
ro
ib
id
a 
a 
re
pr
od
uç
ão
 e
 o
 c
om
pa
rti
lh
am
en
to
 d
ig
ita
l, 
so
b 
as
 p
en
as
 d
a 
Le
i. 
©
 E
di
to
ra
 S
en
ac
 S
ão
 P
au
lo
.
que poderia representar uma página com vários caracteres. O número 
1.024 (210	=	1.024)	foi	escolhido	para	representar	o	“K”	na	computação.		
No cotidiano, essa letra equivale a 1.000. Além disso, 1 kilometer ou 1 
quilômetro = 1.000 metros.
Para entender melhor, observe o quadro 1.
Quadro 1 – Unidades de medida
MEDIDA SIGLA TAMANHO
1 bit b 1 unidade binária (0 ou 1)
1 byte B 8 bits
1 kilobyte KB 1.024 bytes
1 megabyte MB 1.024 kilobytes
1 gigabyte GB 1.024 megabytes
1 terabyte TB 1.024 gibabytes
1.4 Dispositivos, hardware, software e sistema 
operacional (dispositivosoperacional. Digite o comando:
$ sudo systemctl enable zabbix-agent
E, para finalizar, vamos reiniciar o serviço do Zabbix agent com o 
comando:
$ sudo systemctl restart zabbix-agent
1.7 Cadastramento do dispositivo para monitoramento
Agora que temos tanto o servidor como o agente configurados, va-
mos cadastrar esse dispositivo para ser monitorado.
Abra o frontend do Zabbix no servidor utilizando o navegador padrão. 
Abra a URL “http://localhost/zabbix”.
Caso sejam solicitadas credenciais e você não tenha alterado a se-
nha padrão, autentique utilizando o usuário “Admin” e a senha “zabbix”.
122 Sistema operacional II M
at
er
ia
l p
ar
a 
us
o 
ex
cl
us
ivo
 d
e 
al
un
o 
m
at
ric
ul
ad
o 
em
 c
ur
so
 d
e 
Ed
uc
aç
ão
 a
 D
is
tâ
nc
ia
 d
a 
Re
de
 S
en
ac
 E
AD
, d
a 
di
sc
ip
lin
a 
co
rre
sp
on
de
nt
e.
 P
ro
ib
id
a 
a 
re
pr
od
uç
ão
 e
 o
 c
om
pa
rti
lh
am
en
to
 d
ig
ita
l, s
ob
 a
s 
pe
na
s 
da
 L
ei
. ©
 E
di
to
ra
 S
en
ac
 S
ão
 P
au
lo
.
Uma vez dentro da interface do Zabbix, entre no menu “Configuration” 
e, em seguida, em “Hosts”. Clique no botão “Create host”. Em “Hostname”, 
coloque o mesmo que informamos na instalação do agente – no caso, 
“webserver”. Em “Groups”, precisamos informar um grupo de hosts ao 
qual esse dispositivo irá pertencer. Podemos utilizar um grupo existente 
ou criar um. Vamos utilizar um existente: para isso, clique em “Select” e 
clique em “Linux servers”. No campo “IP address” do “Agent interfaces”, 
altere o “127.0.0.1” pelo endereço IP do computador em que acabamos 
de instalar o agente. Agora vá na aba “Templates” para adicionar um 
modelo de monitoramento. Clique em “Select” e escolha “Template OS 
Linux by Zabbix Agent”. Para cadastrar, clique em “Add”. 
A fim de visualizar todos os itens os quais estão sendo coletados 
no computador que acabamos de cadastrar, clique em “Monitoring” e, 
em seguida, em “Latest data”. Em “Hosts”, clique em “Select” e escolha 
“webserver”. Por fim, clique em “Apply”.
2 Snort (IDS – sistema de detecção de 
intrusão)
O Snort é um software desenvolvido para detecção de intrusão para 
redes, capaz de analisar o tráfego de dados em tempo real (SNORT, [s. 
d.]). Ele executa uma análise de protocolo baseado em assinaturas e, 
assim, consegue identificar os ataques e neutralizar o tráfego malicioso.
Normalmente, é utilizado logo após o firewall, porque ele filtra as 
conexões originadas da internet. O papel do IDS (Intrusion Detection 
System – sistema de detecção de intrusão) é analisar o tráfego que 
passou pelo filtro do firewall, verificar se o tráfego se encaixa em algu-
ma regra e alarmar.
123Serviços de rede avançada
M
aterial para uso exclusivo de aluno m
atriculado em
 curso de Educação a Distância da Rede Senac EAD, da disciplina correspondente. Proibida a reprodução e o com
partilham
ento digital, sob as penas da Lei. ©
 Editora Senac São Paulo.
Figura 2 – Tráfego de pacotes no Snort
Pacote Decodificador Pré-
-processador
Regras do
Snort
Detecção Log e
veredito
Na figura 2, é apresentado o fluxo do pacote na utilização do Snort. O 
primeiro passo consiste em decodificar os protocolos que o pacote está 
utilizando – por exemplo, TCP, Ethernet e IP. O decodificador irá efetuar 
verificações básicas, como anomalias ou erros no cabeçalho. O segundo 
passo se constitui nos pré-processadores, que são plugins que normali-
zam os dados para auxiliar o Snort na validação das regras. No terceiro 
passo, o pacote é confrontado com as regras definidas no Snort. Se o 
pacote for considerado malicioso, o Snort gravará o resultado em um 
arquivo de log e o computador de destino não receberá esse pacote.
Para instalar o Snort, utilizamos o comando:
$ sudo apt-get install snort
Durante a instalação, será apresentada na tela uma janela de con-
figuração do Snort. Nessa tela, vamos informar qual é a faixa de IP da 
nossa rede. Vamos informar a rede “192.168.1.0/24”, apertar Enter, e a 
instalação será finalizada.
Após a instalação, vamos reiniciar o serviço do Snort com o comando:
$ sudo systemctl restart snort
124 Sistema operacional II M
at
er
ia
l p
ar
a 
us
o 
ex
cl
us
ivo
 d
e 
al
un
o 
m
at
ric
ul
ad
o 
em
 c
ur
so
 d
e 
Ed
uc
aç
ão
 a
 D
is
tâ
nc
ia
 d
a 
Re
de
 S
en
ac
 E
AD
, d
a 
di
sc
ip
lin
a 
co
rre
sp
on
de
nt
e.
 P
ro
ib
id
a 
a 
re
pr
od
uç
ão
 e
 o
 c
om
pa
rti
lh
am
en
to
 d
ig
ita
l, s
ob
 a
s 
pe
na
s 
da
 L
ei
. ©
 E
di
to
ra
 S
en
ac
 S
ão
 P
au
lo
.
Agora, para visualizar o Snort em funcionamento, executamos o 
comando:
$ sudo snort -v
Você verá todos os pacotes que estão sendo analisados, conforme 
demonstrado na figura 3.
Figura 3 – Snort em execução
Para sair, digite Ctrl+C. Ao finalizar o comando, será apresentado um 
resumo do tráfego que passou pelo Snort, conforme a figura 4.
Figura 4 – Resumo do tráfego no Snort
125Serviços de rede avançada
M
aterial para uso exclusivo de aluno m
atriculado em
 curso de Educação a Distância da Rede Senac EAD, da disciplina correspondente. Proibida a reprodução e o com
partilham
ento digital, sob as penas da Lei. ©
 Editora Senac São Paulo.
Considerações finais
O serviço de monitoramento é essencial quando precisamos que 
nosso ambiente esteja íntegro e disponível. É possível verificar espaço 
em disco acabando e tomar providências antes que isso aconteça, mo-
nitorar alto consumo de processador e dimensionar o hardware correta-
mente, entre outras coisas.
É importante prevenir ataques em nossa rede, a fim de que não te-
nhamos perda de dados e sérias consequências. Prevenir e mitigar ris-
cos constituem a base para um ambiente seguro e confiável.
Referências
 Snort. Snort. Network Intrusion Detection & Prevention System. [s. d.]. Disponível 
em: https://www.snort.org/. Acesso em: 18 maio 2020. 
Zabbix. What is Zabbix. Zabbix Documentation 4.4. [s. d.]. Disponível em: https://
www.zabbix.com/documentation/4.4/manual/introduction/about. Acesso em: 
17 abr. 2020.
127
M
aterial para uso exclusivo de aluno m
atriculado em
 curso de Educação a Distância da Rede Senac EAD, da disciplina correspondente. Proibida a reprodução e o com
partilham
ento digital, sob as penas da Lei. ©
 Editora Senac São Paulo.
Capítulo 7
Serviço de rede 
avançada
Neste capítulo abordaremos os servidores web, a sua importância 
e a instalação básica. Apresentaremos a função de uma conexão VPN 
entre cliente e servidor e a segurança que isso traz em conexões remo-
tas quando existe a necessidade de funcionários acessarem a rede da 
empresa – muito útil em períodos nos quais o trabalho remoto se torna 
essencial (um exemplo é a pandemia de 2020). Para finalizar, falaremos 
sobre os serviços de e-mail, importantes quando queremos utilizar nos-
sa própria infraestrutura para enviar e receber mensagens.
128 Sistema operacional II M
at
er
ia
l p
ar
a 
us
o 
ex
cl
us
ivo
 d
e 
al
un
o 
m
at
ric
ul
ad
o 
em
 c
ur
so
 d
e 
Ed
uc
aç
ão
 a
 D
is
tâ
nc
ia
 d
a 
Re
de
 S
en
ac
 E
AD
, d
a 
di
sc
ip
lin
a 
co
rre
sp
on
de
nt
e.
 P
ro
ib
id
a 
a 
re
pr
od
uç
ão
 e
 o
 c
om
pa
rti
lh
am
en
to
 d
ig
ita
l, s
ob
 a
s 
pe
na
s 
da
 L
ei
. ©
 E
di
to
ra
 S
en
ac
 S
ão
 P
au
lo
.
1 Servidor web 
Quando utilizamos a internet para acessar algum site, ver as redes 
sociais ou verificar o e-mail, de alguma forma usamos os servidores 
web. Eles são os responsáveis por atender às solicitações feitas para 
um endereço da internet.
Assim, o servidor web é uma peça importante na estrutura de um 
site. Ele usa o HTTP (Hypertext Transfer Protocol – protocolo de transfe-
rência de hipertexto) para exibir os arquivos que formam as páginas da 
internet aos usuários em resposta às solicitações efetuadas por esses 
usuários.
No mercado encontramos diversos servidores, e entre eles temos os 
servidores de software livre como o Nginx e o Apache.
1.1 Nginx
O Nginx (Engine X) é um servidor HTTP e proxy reversodesenvolvido 
por Igor Sysoev. Ele se caracteriza por suportar um alto número de cone-
xões simultâneas, gerar um cache das páginas fazendo com que o car-
regamento seja acelerado e consumir poucos recursos (NGINX, [s. d.]).
Uma prática comum é utilizar o Apache fornecendo as páginas web 
e o Nginx intermediando a comunicação, a fim de acelerar o acesso por 
meio do cache. Entretanto, para isso é necessário alterar as portas de 
comunicação no Apache, já que por padrão ambos utilizam a porta 80 
para HTTP e 443 para HTTPS.
Para instalar o Nginx no Ubuntu, abra o terminal e digite os comandos:
$ sudo apt-get update
$ sudo apt-get install nginx
129Serviço de rede avançada
M
aterial para uso exclusivo de aluno m
atriculado em
 curso de Educação a Distância da Rede Senac EAD, da disciplina correspondente. Proibida a reprodução e o com
partilham
ento digital, sob as penas da Lei. ©
 Editora Senac São Paulo.
Após o procedimento ser aceito, o apt-get instala o Nginx e as depen-
dências necessárias. Ao final do processo de instalação, o servidor web 
já deve estar em funcionamento. Para verificar, digite o comando:
$ systemctl status nginx
Na figura 1, podemos ver que o comando está instalado e ativo, con-
forme a linha “Active: active (running)” destacada em verde.
Figura 1 – Verificação do serviço Nginx
É possível acessar a página inicial do Nginx; para isso, abra o navega-
dor e digite “http://localhost” na barra de busca. 
1.2 Apache
O Apache HTTP Server, conhecido somente por Apache, é o servi-
dor web mais popular do mundo segundo levantamento do site Netcraft 
(2020), sendo compatível com Linux, Windows, Unix e diversos outros 
sistemas operacionais (APACHE SOFTWARE FOUNDATION, [s. d.]). A 
instalação e a configuração desse servidor serão abordadas com mais 
detalhes no próximo capítulo.
Enquanto temos servidores web que trabalham com linguagem HTML 
e PHP, entre outras, é possível encontrar servidores específicos como o 
130 Sistema operacional II M
at
er
ia
l p
ar
a 
us
o 
ex
cl
us
ivo
 d
e 
al
un
o 
m
at
ric
ul
ad
o 
em
 c
ur
so
 d
e 
Ed
uc
aç
ão
 a
 D
is
tâ
nc
ia
 d
a 
Re
de
 S
en
ac
 E
AD
, d
a 
di
sc
ip
lin
a 
co
rre
sp
on
de
nt
e.
 P
ro
ib
id
a 
a 
re
pr
od
uç
ão
 e
 o
 c
om
pa
rti
lh
am
en
to
 d
ig
ita
l, s
ob
 a
s 
pe
na
s 
da
 L
ei
. ©
 E
di
to
ra
 S
en
ac
 S
ão
 P
au
lo
.
Apache Tomcat®, que consiste em uma aplicação de código aberto lan-
çada pela Apache Software Foundation destinada a executar um servidor 
Java e processar servidores web com codificação de página Java.
PARA SABER MAIS 
Durante o desenvolvimento desta obra, no ano de 2020, a versão 10 do 
Apache Tomcat® encontrava-se em uma versão alpha (de testes, consi-
derada instável) e ainda não estava disponível no repositório do Ubuntu. 
Por esse motivo, vamos abordar a instalação da versão 9 (a última ver-
são estável disponível).
 
Para instalar o Apache Tomcat® a partir do repositório do Ubuntu, 
abra o terminal e digite o comando:
$ sudo apt-get install tomcat9
A seguir, instale as ferramentas que fornecem aplicativos permitin-
do a administração do Apache Tomcat®. Para instalar, digite o seguinte 
comando:
$ sudo apt-get install tomcat9-docs tomcat9-examples 
tomcat9-admin
Ao finalizar a instalação, inicie o serviço Apache Tomcat®:
$ sudo systemctl start tomcat9
Para verificar se o serviço está ativo, digite:
131Serviço de rede avançada
M
aterial para uso exclusivo de aluno m
atriculado em
 curso de Educação a Distância da Rede Senac EAD, da disciplina correspondente. Proibida a reprodução e o com
partilham
ento digital, sob as penas da Lei. ©
 Editora Senac São Paulo.
$ sudo systemctl status tomcat9
O resultado esperado é o que a figura 2 apresenta.
Figura 2 – Verificação do serviço Apache Tomcat®
Para testar sua instalação do Apache Tomcat®, abra o navegador e 
“digite http://localhost:8080/”.
2 Serviços VPN
VPN (Virtual Private Network – rede virtual privada) consiste em um 
software que funciona como um cliente-servidor em que criamos uma 
conexão segura de ponto a ponto. Um desses softwares, de código 
aberto, é o OpenVPN.
A vantagem de utilizar uma boa VPN é criar uma conexão segura, 
pois todos os dados são criptografados. Várias empresas e diversos 
órgãos permitem o acesso remoto por VPN.
O VPN também possibilita manter o anonimato, pois os IPs não são 
rastreados. Quando estamos conectados a uma rede pública, o uso da 
VPN protege a comunicação, criando um túnel seguro. É possível ainda 
realizar a troca de IP, permitindo que usuários tenham acesso a conteú-
dos restritos para determinadas localizações.
132 Sistema operacional II M
at
er
ia
l p
ar
a 
us
o 
ex
cl
us
ivo
 d
e 
al
un
o 
m
at
ric
ul
ad
o 
em
 c
ur
so
 d
e 
Ed
uc
aç
ão
 a
 D
is
tâ
nc
ia
 d
a 
Re
de
 S
en
ac
 E
AD
, d
a 
di
sc
ip
lin
a 
co
rre
sp
on
de
nt
e.
 P
ro
ib
id
a 
a 
re
pr
od
uç
ão
 e
 o
 c
om
pa
rti
lh
am
en
to
 d
ig
ita
l, s
ob
 a
s 
pe
na
s 
da
 L
ei
. ©
 E
di
to
ra
 S
en
ac
 S
ão
 P
au
lo
.
A fim de que possamos utilizar os serviços VPN, vamos instalar 
no Ubuntu o OpenVPN, que é uma solução VPN de código aberto SSL 
(Secure Socket Layer). Na figura 3, temos ilustrado o exemplo de uma 
conexão VPN pela internet.
Figura 3 – Exemplo de conexão VPN
Túnel VPN
Cliente/funcionário Servidor/empresa
Internet
Para instalar o cliente do OpenVPN no Ubuntu, digite o comando:
$ sudo apt-get install network-manager-openvpn
Ao finalizar a instalação, será necessário reiniciar o serviço do 
Network Manager com o seguinte comando:
sudo service network-manager restart
Agora, vamos criar a conexão VPN. Para isso, vamos entrar em 
“Configurações”, pelo botão “Mostrar aplicativos” na barra lateral. Uma 
vez aberto, vamos selecionar a opção “Rede” no menu lateral esquerdo, 
clicar no botão “+” ao lado do VPN e importar o arquivo de configuração 
da VPN que é fornecido pela empresa à qual você irá se conectar.
Após a conexão ser criada, vamos efetuá-la, bastando para isso cli-
car no botão ao lado do nome da conexão. Dependendo da configura-
ção da empresa, serão solicitados usuário e senha ou um certificado de 
autenticação (fornecido pela empresa).
133Serviço de rede avançada
M
aterial para uso exclusivo de aluno m
atriculado em
 curso de Educação a Distância da Rede Senac EAD, da disciplina correspondente. Proibida a reprodução e o com
partilham
ento digital, sob as penas da Lei. ©
 Editora Senac São Paulo.
Uma vez efetuada a conexão VPN, você terá acesso aos dispositivos 
da rede na empresa como se estivesse fisicamente dentro dela.
3 Servidor de e-mail 
Os servidores de e-mail são divididos em dois segmentos: um, para 
envio de e-mails; o outro, para recebimento.
Os servidores de envio são conhecidos como MTA (Mail Transfer 
Agent – agente de transferência de e-mail). Eles se encarregam da 
entrega das mensagens por meio do protocolo SMTP (Simple Mail 
Transfer Protocol – protocolo de transferência de correio simples) ou 
do SMTPS (quando utilizada criptografia). Já os servidores de recebi-
mento, conhecidos como MDA (Mail Delivery Agent – agente de entrega 
de e-mail), são responsáveis pela caixa de mensagens dos usuários e 
usam o protocolo IMAP (Internet Message Access Protocol – protocolo 
de acesso a mensagens da internet) e/ou o POP3 (Post Office Protocol), 
ou, quando uilizada criptografia, IMAPS e/ou POP3S (CROCKER, 2009). 
Na figura 4, temos ilustrado um exemplo do tráfego de uma mensagem 
entre o remetente e o destinatário.
Figura 4 – Exemplo do tráfego de uma mensagem de e-mail
Remetente
Destinatário
Servidor SMTP
SMTP
SM
TP
SM
TP
POP/IMAP
Servidor POP/IMAP
Internet
134 Sistema operacional II M
at
er
ia
l p
ar
a 
us
o 
ex
cl
us
ivo
 d
e 
al
un
o 
m
at
ric
ul
ad
o 
em
 c
ur
so
 d
e 
Ed
uc
aç
ão
 a
 D
is
tâ
nc
ia
 d
a 
Re
de
 S
en
ac
 E
AD
, d
a 
di
sc
ip
lin
a 
co
rre
sp
on
de
nt
e.
 P
ro
ib
id
a 
a 
re
pr
od
uç
ãoe
 o
 c
om
pa
rti
lh
am
en
to
 d
ig
ita
l, s
ob
 a
s 
pe
na
s 
da
 L
ei
. ©
 E
di
to
ra
 S
en
ac
 S
ão
 P
au
lo
.
No Linux, temos diversos serviços para envio de e-mails, como 
Sendmail, Postfix e Exim, e serviços para recebimento de e-mails, como 
Dovecot, Fetchmail e Maildrop.
Temos também soluções completas de grande porte, que são con-
correntes do Exchange da Microsoft e muito utilizadas em empresas, 
como Zimbra e Zentyal. Essas soluções possuem algumas característi-
cas interessantes – por exemplo, agenda, catálogo de endereços, filtro 
AntiSpam e antivírus.
 Vamos fazer a instalação do Postfix. Para isso, abra o terminal e 
digite o comando:
$ sudo apt-get install postfix
Será apresentada uma tela conforme a figura 5.
Figura 5 – Instalação do Postfix
Nessa mensagem, pressione a tecla Tab e, em seguida, pressione 
Enter para continuar. 
135Serviço de rede avançada
M
aterial para uso exclusivo de aluno m
atriculado em
 curso de Educação a Distância da Rede Senac EAD, da disciplina correspondente. Proibida a reprodução e o com
partilham
ento digital, sob as penas da Lei. ©
 Editora Senac São Paulo.
Na próxima tela, selecione “Site da internet”, como mostra a figura 6.
Figura 6 – Seleção do tipo de configuração do Postfix
Na tela seguinte, digite seu nome de domínio, conforme a figura 7.
Figura 7 – Informe o domínio
136 Sistema operacional II M
at
er
ia
l p
ar
a 
us
o 
ex
cl
us
ivo
 d
e 
al
un
o 
m
at
ric
ul
ad
o 
em
 c
ur
so
 d
e 
Ed
uc
aç
ão
 a
 D
is
tâ
nc
ia
 d
a 
Re
de
 S
en
ac
 E
AD
, d
a 
di
sc
ip
lin
a 
co
rre
sp
on
de
nt
e.
 P
ro
ib
id
a 
a 
re
pr
od
uç
ão
 e
 o
 c
om
pa
rti
lh
am
en
to
 d
ig
ita
l, s
ob
 a
s 
pe
na
s 
da
 L
ei
. ©
 E
di
to
ra
 S
en
ac
 S
ão
 P
au
lo
.
 Após isso, o Postfix será instalado e deve ser configurado. No Ubuntu, 
somente usuários adicionados ao grupo de e-mail podem enviar e rece-
ber e-mails. Para adicionar usuários ao grupo, digite o comando:
$ sudo usermod -aG mail $(whoami)
Com o objetivo de adicionar novos usuários ao grupo (para enviar e 
receber e-mails), digite o comando:
$ sudo useradd -m -G mail -s /bin/bash ‘nome do usuário’
Para definir uma senha para o usuário, execute o comando:
$ sudo passwd ‘nome do usuário’
Esses passos podem ser vistos na figura 8.
Figura 8 – Criação de usuário
 Feito isso, o(a) usuário(a) Thais poderá enviar e receber mensagens.
Agora vamos instalar o programa de e-mail, que pode não ter sido 
instalado por padrão no Ubuntu. Para isso, execute o seguinte comando:
$ sudo apt install mailutils
137Serviço de rede avançada
M
aterial para uso exclusivo de aluno m
atriculado em
 curso de Educação a Distância da Rede Senac EAD, da disciplina correspondente. Proibida a reprodução e o com
partilham
ento digital, sob as penas da Lei. ©
 Editora Senac São Paulo.
Ao concluir a instalação, será possível enviar mensagens pela linha 
de comando. No terminal, execute o comando:
$ mail ‘endereço de e-mail’
Como exemplo, vamos enviar uma mensagem para o usuário que 
criamos:
$ mail thais@senac-local
Caso queira encaminhar a mensagem para vários usuários, basta in-
formar o e-mail quando solicitado em “Com Cópia (CC)”. Caso, contrário 
deixe o campo vazio. Em “Subject”, insira o assunto e, em seguida, digite 
a mensagem, como mostra a figura 9.
Figura 9 – Envio de mensagem por e-mail
Quando terminar, pressione Ctrl+d, e a mensagem será enviada.
Para visualizar mensagens recebidas, você pode utilizar o comando:
$ mail
Esse comando vai abrir a sua caixa de entrada.
138 Sistema operacional II M
at
er
ia
l p
ar
a 
us
o 
ex
cl
us
ivo
 d
e 
al
un
o 
m
at
ric
ul
ad
o 
em
 c
ur
so
 d
e 
Ed
uc
aç
ão
 a
 D
is
tâ
nc
ia
 d
a 
Re
de
 S
en
ac
 E
AD
, d
a 
di
sc
ip
lin
a 
co
rre
sp
on
de
nt
e.
 P
ro
ib
id
a 
a 
re
pr
od
uç
ão
 e
 o
 c
om
pa
rti
lh
am
en
to
 d
ig
ita
l, s
ob
 a
s 
pe
na
s 
da
 L
ei
. ©
 E
di
to
ra
 S
en
ac
 S
ão
 P
au
lo
.
Considerações finais
Vimos como criar servidores web. Sua funcionalidade é uma das 
mais utilizadas em servidores Linux, pela sua estabilidade e por sua se-
gurança. Para todos os serviços que são acessados através do navega-
dor, sempre existe um servidor web provendo esse acesso.
Utilização de VPN é mais comum do que você imagina: grandes em-
presas já fazem uso desse recurso há muito tempo, principalmente nas 
organizações que adotaram o home office e permitem que os colabora-
dores trabalhem diretamente de casa.
Serviços de e-mail são muito utilizados no Linux; o próprio Linux pos-
sui um sistema interno de e-mail que envia notificações para os usuá-
rios informando sobre problemas.
Referências
Apache Software Foundation. FAQ - HTTPD. [s. d.]. Disponível em: https://cwiki.
apache.org/confluence/display/HTTPD/FAQ#FAQ-WhatisApache?. Acesso em: 
4 maio 2020. 
 CROCKER, D. RFC5598. Internet Mail Architecture. Network Working Group, 
jul. 2009. Disponível em: https://tools.ietf.org/html/rfc5598. Acesso em: 6 maio 
2020.
NETCRAFT. Web Server Survey. Netcraft News. Disponível em: https://news.
netcraft.com/archives/category/web-server-survey/. Acesso em: 3 jun. 2020.
NGINX. Nginx. [s. d.]. Disponível em: https://nginx.org/en/. Acesso em: 4 maio 
2020.
139
M
aterial para uso exclusivo de aluno m
atriculado em
 curso de Educação a Distância da Rede Senac EAD, da disciplina correspondente. Proibida a reprodução e o com
partilham
ento digital, sob as penas da Lei. ©
 Editora Senac São Paulo.
Capítulo 8
Serviços em redes e 
firewall
Neste capítulo vamos aprender como instalar um servidor web 
conhecido como LAMP, muito utilizado em sites desenvolvidos em 
Wordpress, sites de educação a distância que empregam o Moodle e 
sites de monitoramento como o Zabbix, entre outros. Para encerrar o 
volume, vamos ainda ver a instalação do pfSense®, que além de ser um 
excelente firewall possui diversas funcionalidades como servidor VPN, 
servidor DNS, servidor DHCP e filtro de conteúdo, entre outras funciona-
lidades que podem ser instaladas à parte.
140 Sistema operacional II M
at
er
ia
l p
ar
a 
us
o 
ex
cl
us
ivo
 d
e 
al
un
o 
m
at
ric
ul
ad
o 
em
 c
ur
so
 d
e 
Ed
uc
aç
ão
 a
 D
is
tâ
nc
ia
 d
a 
Re
de
 S
en
ac
 E
AD
, d
a 
di
sc
ip
lin
a 
co
rre
sp
on
de
nt
e.
 P
ro
ib
id
a 
a 
re
pr
od
uç
ão
 e
 o
 c
om
pa
rti
lh
am
en
to
 d
ig
ita
l, s
ob
 a
s 
pe
na
s 
da
 L
ei
. ©
 E
di
to
ra
 S
en
ac
 S
ão
 P
au
lo
.
1 Instalação do servidor LAMP (Linux, 
Apache, MySQL, PHP e phpMyAdmin)
Na definição dos autores Nemeth, Snyder e Hein (2007, p. 496), “a 
chamada plataforma LAMP (Linux, Apache, MySQL e PHP/Perl/Python) 
é o paradigma dominante para os servidores web atuais”.
O LAMP consiste em um grupo de softwares open source que é 
instalado para permitir a um servidor hospedar websites dinâmicos e 
aplicações web. O LAMP é um servidor web completo Apache, que pos-
sui linguagem de programação web PHP e suporte a banco de dados 
MySQL. Para instalar esse conjunto de programas no Ubuntu, basta se-
guir o passo a passo.
1.1 Passo 1 – Instalação do Apache
Para instalar o Apache no Ubuntu, utilize o comando:
$ sudo apt-get install apache2
A estrutura do Apache é dividida em três partes: configurações, mó-
dulos e sites.
As configurações básicas ficam na pasta “/etc/apache2/conf-availa-
ble”, como a configuração de codificação (charset.conf) e a de seguran-
ça (security.conf). 
Para habilitar a configuração de segurança, utilizamos os seguintes 
comandos:
$ sudo a2enconf security
$ sudo systemctl reload apache2
141Serviços em redes e firewall
M
aterial para uso exclusivo de aluno m
atriculado em
 curso de Educação a Distância da Rede Senac EAD, da disciplina correspondente. Proibida a reprodução e o com
partilham
ento digital, sob as penas da Lei. ©
 Editora Senac São Paulo.
O comando “a2enconf” irá criar um link simbólico na pasta “/etc/apa-
che2/conf-enabled”, a fim de que o Apachecarregue a configuração. Já 
o “systemctl reload” fará com que o Apache carregue as informações 
novas sem interromper o serviço.
As configurações dos módulos ficam na pasta “/etc/apache2/mods-
-available”, como o módulo de SSL (ssl.conf) e o de autoindexação (au-
toindex.conf), entre outros.
Para habilitar o módulo de SSL, utilizamos os seguintes comandos:
$ sudo a2enmod ssl
$ sudo systemctl reload apache2
O comando “a2enmod” irá criar um link simbólico na pasta “/etc/apa-
che2/mods-enabled”, a fim de que o Apache carregue os módulos.
As configurações dos sites disponíveis ficam na pasta “/etc/apa-
che2/sites-available”. Por padrão, utilizamos um arquivo por site. Uma 
vez configurado o site, para ativá-lo é necessário executar dois coman-
dos. Para ativar o site “default-ssl.conf”, utilizamos os comandos:
$ sudo a2ensite default-ssl
$ sudo systemctl reload apache2
O primeiro comando irá criar um link simbólico na pasta “/etc/apa-
che2/sites-enabled”. É nessa pasta que o Apache irá carregar as confi-
gurações dos sites.
A pasta padrão dos sites utilizada no Apache é “/var/www/html”.
Para testar o funcionamento do Apache, abra o navegador e entre na 
URL “http://localhost”. Se o Apache tiver sido corretamente instalado, 
será exibida uma tela de boas-vindas. 
142 Sistema operacional II M
at
er
ia
l p
ar
a 
us
o 
ex
cl
us
ivo
 d
e 
al
un
o 
m
at
ric
ul
ad
o 
em
 c
ur
so
 d
e 
Ed
uc
aç
ão
 a
 D
is
tâ
nc
ia
 d
a 
Re
de
 S
en
ac
 E
AD
, d
a 
di
sc
ip
lin
a 
co
rre
sp
on
de
nt
e.
 P
ro
ib
id
a 
a 
re
pr
od
uç
ão
 e
 o
 c
om
pa
rti
lh
am
en
to
 d
ig
ita
l, s
ob
 a
s 
pe
na
s 
da
 L
ei
. ©
 E
di
to
ra
 S
en
ac
 S
ão
 P
au
lo
.
1.2 Passo 2 – Instalação do MySQL
Agora vamos instalar o MySQL, que é um sistema de gerenciamento 
de banco de dados. Ele irá organizar e fornecer acesso à base de dados 
do website. Para isso, digite o comando:
$ sudo apt-get install mysql-server
Após a listagem dos pacotes que serão instalados, confirme a opera-
ção e aguarde a instalação.
Depois de concluir a instalação do MySQL, digite o comando e pres-
sione o Enter:
$ sudo mysql_secure_installation
Esse é um comando de segurança que remove alguns padrões do 
MySQL, tornando a instalação mais segura. Observe a figura 1.
Figura 1 – Execução do mysql_secure_installation
Digite Y (Yes – sim) para responder positivamente ou qualquer ou-
tra tecla para continuar sem a habilitação. Nesse caso, vamos deixar o 
143Serviços em redes e firewall
M
aterial para uso exclusivo de aluno m
atriculado em
 curso de Educação a Distância da Rede Senac EAD, da disciplina correspondente. Proibida a reprodução e o com
partilham
ento digital, sob as penas da Lei. ©
 Editora Senac São Paulo.
“VALIDATE PASSWORD” desabilitado (não recomendo deixar desabilita-
do em um sistema de produção; deixaremos apenas porque se trata de 
uma instância MySQL local com propósitos de desenvolvimento). 
IMPORTANTE 
Caso você habilite o “VALIDATE PASSWORD”, o MySQL só irá aceitar 
senhas que sigam um critério específico e sejam consideradas fortes. 
Caso contrário, serão rejeitadas pelo MySQL. Não ativar essa função 
pode deixar o sistema vulnerável.
 
Em seguida, vamos definir uma senha para o usuário root do 
MySQL. Essa é uma conta que possui privilégios de administrador, 
conforme a figura 2.
Figura 2 – Configurando senha de administrador do MySQL
Após definir a senha, basta pressionar Y (Yes – sim) para as pergun-
tas. Isso fará com que usuários anônimos e bancos de dados de teste 
sejam removidos. Também irá desabilitar logins remotos de root e atu-
alizar o MySQL com as alterações que fizemos até aqui. Feito isso, seu 
banco de dados estará instalado e configurado.
144 Sistema operacional II M
at
er
ia
l p
ar
a 
us
o 
ex
cl
us
ivo
 d
e 
al
un
o 
m
at
ric
ul
ad
o 
em
 c
ur
so
 d
e 
Ed
uc
aç
ão
 a
 D
is
tâ
nc
ia
 d
a 
Re
de
 S
en
ac
 E
AD
, d
a 
di
sc
ip
lin
a 
co
rre
sp
on
de
nt
e.
 P
ro
ib
id
a 
a 
re
pr
od
uç
ão
 e
 o
 c
om
pa
rti
lh
am
en
to
 d
ig
ita
l, s
ob
 a
s 
pe
na
s 
da
 L
ei
. ©
 E
di
to
ra
 S
en
ac
 S
ão
 P
au
lo
.
1.3 Passo 3 – Instalação do PHP
O PHP é o componente que irá processar o código para exibir o con-
teúdo ao usuário; ele fará a comunicação com a base de dados MySQL 
para obter informações e exibir o conteúdo processado de modo que o 
servidor web exiba ao usuário.
Para fazer a instalação, digite o seguinte comando no terminal:
$ sudo apt-get install php libapache2-mod-php php-mysql
Após a listagem dos pacotes e a confirmação, aguarde a instalação.
Agora, vamos modificar a forma como o Apache exibe arquivos 
quando uma pasta é requisitada. A tendência é o Apache exibir primeiro 
um arquivo “index.html”. Precisamos informar que ele deverá executar o 
arquivo “index.php” primeiro. Para fazer isso, digite no terminal o coman-
do com a finalidade de editar o arquivo “dir.conf”:
$ sudo gedit /etc/apache2/mods-enabled/dir.conf
O comando irá abrir o editor de texto Gedit, como mostra a figura 3.
Figura 3 – Editando arquivo dir.conf
Altere a sequência “DirectoryIndex” colocando o arquivo “index.php” 
na primeira posição. Quando concluir, clique em “Salvar” e feche o editor 
de texto.
145Serviços em redes e firewall
M
aterial para uso exclusivo de aluno m
atriculado em
 curso de Educação a Distância da Rede Senac EAD, da disciplina correspondente. Proibida a reprodução e o com
partilham
ento digital, sob as penas da Lei. ©
 Editora Senac São Paulo.
Feito isso, reinicie o servidor web Apache para validar as alterações. 
Você pode fazer isso digitando o comando:
$ sudo systemctl restart apache2
Você pode consultar o status do serviço utilizando o comando:
$ sudo systemctl status apache2
O sistema está ativo, como consta da figura 4.
Figura 4 – Status do serviço Apache2
PARA SABER MAIS 
Você pode melhorar a funcionalidade do PHP instalando alguns módu-
los adicionais que estão disponíveis no repositório de pacotes.
 
Agora que você já instalou seu servidor web Apache e o banco de da-
dos do MySQL, além de ter configurado o PHP, você possui uma plata-
forma que lhe permitirá instalar vários websites em seu servidor LAMP.
146 Sistema operacional II M
at
er
ia
l p
ar
a 
us
o 
ex
cl
us
ivo
 d
e 
al
un
o 
m
at
ric
ul
ad
o 
em
 c
ur
so
 d
e 
Ed
uc
aç
ão
 a
 D
is
tâ
nc
ia
 d
a 
Re
de
 S
en
ac
 E
AD
, d
a 
di
sc
ip
lin
a 
co
rre
sp
on
de
nt
e.
 P
ro
ib
id
a 
a 
re
pr
od
uç
ão
 e
 o
 c
om
pa
rti
lh
am
en
to
 d
ig
ita
l, s
ob
 a
s 
pe
na
s 
da
 L
ei
. ©
 E
di
to
ra
 S
en
ac
 S
ão
 P
au
lo
.
1.4 Passo 4 – Instalação do phpMyAdmin
O phpMyAdmin é um gerenciador de banco de dados MySQL por 
meio da interface web. 
Para fazer a instalação, digite o comando no terminal:
$ sudo apt-get install phpmyadmin php-mbstring php-gettext
Durante a instalação será questionado se você irá utilizar o phpMyAd-
min pelo Apache2 ou pelo lighthttp, conforme a figura 5.
Figura 5 – Instalação do phpMyAdmin
Escolha “apache2” apertando a barra de espaços e, na sequência, o 
Enter.
Em seguida, será questionado se você deseja configurar banco de da-
dos para phpMyAdmin com dbconfig-common, como mostra a figura 6.
Figura 6 – dbconfig-common
147Serviços em redes e firewall
M
aterial para uso exclusivo de aluno m
atriculado em
 curso de Educação a Distância da Rede Senac EAD, da disciplina correspondente. Proibida a reprodução e o com
partilham
ento digital, sob as penas da Lei. ©
 Editora Senac São Paulo.
Responda “Sim”. Na tela seguinte será solicitada a senha de admi-
nistrador do phpMyAdmin. Crie uma senha segura e, na sequência, 
confirme.
Para abrir o phpMyAdmin, abra no navegador a URL “http://localhost/
phpmyadmin”.
Utilize o usuário “phpmyadmin” e a senha que configuramos na insta-
lação. Na figura 7, é apresentada a interface do phpMyAdmin.
Figura 7 – Interface do phpMyAdmin
2 Instalação do pfSense®
pfSense® consiste em um sistemade código aberto baseado em 
FreeBSD para uso como firewall e roteador, que é totalmente gerencia-
do via interface web (PFSENSE, [s. d.]). Além disso, inclui uma longa 
lista de recursos relacionados e um sistema de pacotes que permitem 
maior capacidade de expansão sem adicionar possíveis vulnerabilida-
des de segurança à distribuição.
Entre seus recursos estão controle de banda, VPN, balanceamento 
de link, regras de firewall, monitoramento de tráfego e muito mais. É uma 
das melhores opções de firewall existentes no mercado open source.
148 Sistema operacional II M
at
er
ia
l p
ar
a 
us
o 
ex
cl
us
ivo
 d
e 
al
un
o 
m
at
ric
ul
ad
o 
em
 c
ur
so
 d
e 
Ed
uc
aç
ão
 a
 D
is
tâ
nc
ia
 d
a 
Re
de
 S
en
ac
 E
AD
, d
a 
di
sc
ip
lin
a 
co
rre
sp
on
de
nt
e.
 P
ro
ib
id
a 
a 
re
pr
od
uç
ão
 e
 o
 c
om
pa
rti
lh
am
en
to
 d
ig
ita
l, s
ob
 a
s 
pe
na
s 
da
 L
ei
. ©
 E
di
to
ra
 S
en
ac
 S
ão
 P
au
lo
.
PARA SABER MAIS 
É possível consultar mais informações e até mídia .ISO para baixar, as-
sim como o Virtual Appliance pronto para Vmware®.1 Você pode encon-
trar essas informações no portal da pfSense®.
 
O uso mais comum do pfSense® é o destinado à proteção da rede 
interna das ameaças da internet, atuando como firewall. É o que mostra 
a figura 8.
Figura 8 – Uso mais comum do pfSense®
Internet
pfSense®
Rede interna
 Para instalar o pfSense® conforme o modelo apresentado na figura 
8, será necessário que o computador que iremos instalar possua pelo 
menos duas interfaces de rede: uma interface será conectada na rede 
interna (LAN) através de um switch, e a outra interface será conectada 
diretamente no modem do seu provedor de internet (WAN).
Ao iniciar o computador com o disco de boot do pfSense®, será apre-
sentada uma tela informando que o pfSense® é uma marca registrada, 
possui direitos autorais e não pode ser distribuída comercialmente, con-
forme a figura 9.
1 Vmware® é uma empresa que produz softwares e serviços para nuvem de virtualização.
149Serviços em redes e firewall
M
aterial para uso exclusivo de aluno m
atriculado em
 curso de Educação a Distância da Rede Senac EAD, da disciplina correspondente. Proibida a reprodução e o com
partilham
ento digital, sob as penas da Lei. ©
 Editora Senac São Paulo.
PARA SABER MAIS 
Você pode encontrar no site oficial dois tipos de imagem para instalar 
o pfSense®: USB Memstick, que é um instalador para pen drive, e CD 
Image (ISO), desenvolvido para ser gravado em CD.
 
Figura 9 – Tela de direitos autorais do pfSense®
Aperte Enter para aceitar os termos, e na tela seguinte serão apre-
sentadas três opções: “Install” (instalar), “Rescue shell” (terminal para 
recuperação de uma instalação anterior) e “Recover config.xml” (recu-
perar arquivo de configuração de uma instalação anterior). Vamos es-
colher “Install”, conforme apresentado na figura 10.
150 Sistema operacional II M
at
er
ia
l p
ar
a 
us
o 
ex
cl
us
ivo
 d
e 
al
un
o 
m
at
ric
ul
ad
o 
em
 c
ur
so
 d
e 
Ed
uc
aç
ão
 a
 D
is
tâ
nc
ia
 d
a 
Re
de
 S
en
ac
 E
AD
, d
a 
di
sc
ip
lin
a 
co
rre
sp
on
de
nt
e.
 P
ro
ib
id
a 
a 
re
pr
od
uç
ão
 e
 o
 c
om
pa
rti
lh
am
en
to
 d
ig
ita
l, s
ob
 a
s 
pe
na
s 
da
 L
ei
. ©
 E
di
to
ra
 S
en
ac
 S
ão
 P
au
lo
.
Figura 10 – Tela de boas-vindas do pfSense®
Na tela seguinte haverá questionamento sobre o layout do teclado. 
Vamos selecionar “Brazilian (accent keys)” e, em seguida, “Continue with 
br.kbd keymap”, conforme a figura 11.
Figura 11 – Tela de escolha do layout do teclado
151Serviços em redes e firewall
M
aterial para uso exclusivo de aluno m
atriculado em
 curso de Educação a Distância da Rede Senac EAD, da disciplina correspondente. Proibida a reprodução e o com
partilham
ento digital, sob as penas da Lei. ©
 Editora Senac São Paulo.
Agora, haverá a questão sobre como será particionado o disco rígi-
do. O instalador fornece quatro escolhas: “Auto (UFS)”, que faz um parti-
cionamento automático utilizando o sistema de arquivos UFS; “Manual”, 
que abrirá um assistente de particionamento manual; “Shell”, que abrirá 
o terminal para haver o particionamento à mão, e “Auto (ZFS)”, que faz 
um particionamento automático utilizando o sistema de arquivos ZFS. 
Vamos escolher a primeira opção, conforme mostra a figura 12.
Figura 12 – Tela de escolha de particionamento do disco rígido
O instalador irá formatar e gravar os dados no disco rígido. Ao termi-
nar, haverá a questão sobre se você deseja efetuar alguma configuração 
adicional manualmente. Neste momento, isso não será necessário; en-
tão, selecione “No”, conforme a figura 13.
152 Sistema operacional II M
at
er
ia
l p
ar
a 
us
o 
ex
cl
us
ivo
 d
e 
al
un
o 
m
at
ric
ul
ad
o 
em
 c
ur
so
 d
e 
Ed
uc
aç
ão
 a
 D
is
tâ
nc
ia
 d
a 
Re
de
 S
en
ac
 E
AD
, d
a 
di
sc
ip
lin
a 
co
rre
sp
on
de
nt
e.
 P
ro
ib
id
a 
a 
re
pr
od
uç
ão
 e
 o
 c
om
pa
rti
lh
am
en
to
 d
ig
ita
l, s
ob
 a
s 
pe
na
s 
da
 L
ei
. ©
 E
di
to
ra
 S
en
ac
 S
ão
 P
au
lo
.
Figura 13 – Questionamento sobre configuração manual
Agora que foi concluída a instalação, haverá a solicitação para que 
seja reiniciado o computador. Confirme selecionando “Reboot”, como 
mostra a figura 14. Não se esqueça de remover o disco de instalação 
nesse ponto.
Figura 14 – Conclusão da instalação
Depois que o computador iniciar, será apresentado o console do 
pfSense®, conforme a figura 15.
153Serviços em redes e firewall
M
aterial para uso exclusivo de aluno m
atriculado em
 curso de Educação a Distância da Rede Senac EAD, da disciplina correspondente. Proibida a reprodução e o com
partilham
ento digital, sob as penas da Lei. ©
 Editora Senac São Paulo.
Figura 15 – Console do pfSense®
Agora que está instalado, para acessar a interface web de configu-
ração de qualquer computador que esteja na rede interna, digite no na-
vegador o endereço “https://192.168.1.1”. Será apresentado um aviso 
de que o site não é confiável. Isso ocorre porque o site é HTTPS e está 
utilizando um certificado SSL interno, que o navegador reconhece como 
inseguro. Essa tela pode ser verificada na figura 16.
Figura 16 – Aviso de site inseguro
154 Sistema operacional II M
at
er
ia
l p
ar
a 
us
o 
ex
cl
us
ivo
 d
e 
al
un
o 
m
at
ric
ul
ad
o 
em
 c
ur
so
 d
e 
Ed
uc
aç
ão
 a
 D
is
tâ
nc
ia
 d
a 
Re
de
 S
en
ac
 E
AD
, d
a 
di
sc
ip
lin
a 
co
rre
sp
on
de
nt
e.
 P
ro
ib
id
a 
a 
re
pr
od
uç
ão
 e
 o
 c
om
pa
rti
lh
am
en
to
 d
ig
ita
l, s
ob
 a
s 
pe
na
s 
da
 L
ei
. ©
 E
di
to
ra
 S
en
ac
 S
ão
 P
au
lo
.
Para abrir a interface web do pfSense®, vamos clicar em “Avançado” 
e, na sequência, em “Aceitar o risco e continuar”. Em seguida, será apre-
sentada a tela de login do pfSense®. As credenciais de acesso iniciais 
são usuário “admin” e senha “pfsense”.
3 IPTables
O IPTables é um programa utilizado para filtragem de pacotes ba-
seado em uma tabela de regras, geralmente usado como firewall. 
Entretanto, seu uso vai além, como apresentado no capítulo 3, no qual 
o IPTables foi utilizado na configuração do NAT, que não deixa de ser 
uma regra.
As três principais tabelas de regras do IPTables são Filter, NAT e 
Mangle. A tabela Filter, na qual temos as regras de filtragem de paco-
tes, é a mais utilizada. Na tabela NAT, temos as regras de tradução de 
endereços, e a tabela Mangle é usada para especificar ações especiais. 
Para visualizar as regras que estão ativas na tabela Filter, utilizamos 
o comando a seguir:
$ sudo iptables -t filter -L
Para visualizar as regras que estão ativas na tabela NAT, usamos 
este comando:
$ sudo iptables -t nat -L
E, para visualizar as regras que estão ativas na tabela Mangle, utiliza-
mos o comando mostrado abaixo:
$ sudo iptables -t mangle -L
155Serviços em redes e firewall
M
aterial para uso exclusivo de aluno m
atriculado em
 curso de Educação a Distância daRede Senac EAD, da disciplina correspondente. Proibida a reprodução e o com
partilham
ento digital, sob as penas da Lei. ©
 Editora Senac São Paulo.
Lembrando que, quando estamos usando a tabela Filter, podemos 
omitir o parâmetro “-t filter”.
Um exemplo de regra muito utilizada por questões de segurança, nor-
malmente quando o computador está exposto na internet, é bloquear as 
respostas de Ping (que utiliza o protocolo ICMP) com o seguinte comando:
$ sudo iptables -A INPUT -p icmp -i eth0 -j DROP
Com esse comando, informamos que a regra será aplicada na en-
trada do pacote (-A INPUT), que o protocolo é o ICMP (-p icmp), que a 
interface de rede utilizada é a eth0 (-i eth0) e, por último, a ação de ig-
norar o pacote (-j DROP). Como foi omitido o parâmetro da tabela (-t), o 
IPTables entende que será utilizada a tabela padrão, que é a Filter.
Considerações finais
Aprendemos que é simples instalar um servidor LAMP, o qual consti-
tui a base para qualquer desenvolvimento baseado em PHP que utiliza 
banco de dados MySQL. Com isso você será capaz de criar uma infra-
estrutura para hospedagem de sites, tanto para internet como na rede 
local. Caso seja um ambiente pequeno, como de desenvolvimento, não 
significa um problema o fato de todos os serviços estarem no mesmo 
computador. No entanto, conforme o ambiente for crescendo, conside-
re criar um servidor separado para cada serviço ou até mesmo mais 
servidores, para balancear a carga.
Sobre o pfSense®, explore todas as suas funcionalidades, e você verá 
como essa ferramenta é muito útil em nossa rede. Com ele, é possível 
balancear links de internet criando uma redundância, criar servidor de 
VPN para conexões remotas ou até mesmo criar um captive portal, que 
é aquela página de autenticação utilizada em rede wi-fi de visitantes, 
como em restaurantes e shoppings.
156 Sistema operacional II M
at
er
ia
l p
ar
a 
us
o 
ex
cl
us
ivo
 d
e 
al
un
o 
m
at
ric
ul
ad
o 
em
 c
ur
so
 d
e 
Ed
uc
aç
ão
 a
 D
is
tâ
nc
ia
 d
a 
Re
de
 S
en
ac
 E
AD
, d
a 
di
sc
ip
lin
a 
co
rre
sp
on
de
nt
e.
 P
ro
ib
id
a 
a 
re
pr
od
uç
ão
 e
 o
 c
om
pa
rti
lh
am
en
to
 d
ig
ita
l, s
ob
 a
s 
pe
na
s 
da
 L
ei
. ©
 E
di
to
ra
 S
en
ac
 S
ão
 P
au
lo
.
Referências
NEMETH, Evi; SNYDER, Gary; HEIN, Trent. Manual completo do Linux: guia do 
administrador. 2. ed. São Paulo: Pearson, 2007.
pfSense. Getting Started. [s. d.]. Disponível em: https://www.pfsense.org/gettin-
g-started/. Acesso em: 20 maio 2020.
159
M
aterial para uso exclusivo de aluno m
atriculado em
 curso de Educação a Distância da Rede Senac EAD, da disciplina correspondente. Proibida a reprodução e o com
partilham
ento digital, sob as penas da Lei. ©
 Editora Senac São Paulo.
Sobre o autor
Ederson Cruz Marques dos Santos é graduado em ciência da com-
putação e pós-graduado em engenharia de redes e serviços de teleco-
municações pela Universidade São Judas Tadeu. Atua como analista 
em TI responsável pelo ambiente Linux no Sesi/Senai de São Paulo. 
Tem experiência nas áreas de infraestrutura, monitoramento e redes.
	SIS_OP_II_01_ACE_2020
	_GoBack
	SIS_OP_II_02_ACE_2020
	SIS_OP_II_03_ACE_2020
	SIS_OP_II_04_ACE_2020
	SIS_OP_II_05_ACE_2020
	SIS_OP_II_06_ACE_2020
	SIS_OP_II_07_ACE_2020
	SIS_OP_II_08_ACE_2020de entrada e saída)
Sistema operacional é um conjunto de programas. Ele não só forne-
ce uma interface entre o usuário e o computador como também torna 
possível carregar os programas necessários para navegarmos na inter-
net, escutarmos uma música, escrevermos um texto, entre outras ativi-
dades. Além disso, o sistema operacional é responsável por gerenciar o 
software e o hardware.
O software consiste na parte lógica do computador. Para o bom 
funcionamento	do	hardware,	é	preciso	haver	um	software.	A	função	do	
software	é	 fornecer	 instruções	ao	hardware,	 possibilitando	as	opera-
ções	do	equipamento.
13Fundamentos de sistemas operacionais Linux
M
aterial para uso exclusivo de aluno m
atriculado em
 curso de Educação a Distância da Rede Senac EAD, da disciplina correspondente. Proibida a reprodução e o com
partilham
ento digital, sob as penas da Lei. ©
 Editora Senac São Paulo.
O hardware constitui a parte física do computador. Existem vários 
tipos de hardware com diferentes objetivos e funcionalidades, como o 
processador, a memória, o disco rígido e a placa de vídeo, entre outros.
Em um computador, determinados hardwares pertencem ao grupo 
de dispositivos de entrada e saída. Os dispositivos de saída são todos 
aqueles que dão algum retorno ao usuário. Já os de entrada consistem 
naqueles	que	enviam	informação	para	o	computador.	Temos	também	
os dispositivos os quais são tanto de entrada como de saída.
Quadro 2 – Dispositivos de entrada e saída 
DISPOSITIVOS DE ENTRADA DISPOSITIVOS DE SAÍDA
• Mouse e teclado – recebem comandos do usuário 
e enviam dados para o computador
• Webcam e scanner – adquirem as imagens e 
enviam os dados para o computador
• Microfone – transforma as ondas sonoras em 
dados que são enviados para o computador
• Placa de vídeo – converte os dados do 
computador em imagens e textos e os envia à tela 
para que o usuário possa ver
• Impressora – imprime em papel os dados 
recebidos do computador
• Caixa de som – transforma os dados recebidos 
do computador em ondas sonoras
DISPOSITIVOS DE ENTRADA E SAÍDA
• Disco rígido e pen drive – permitem a gravação de dados e fornecem dados ao computador
• Drive de CD-R e DVD-R – faz a leitura dos discos enviando os dados para o computador e efetua a gravação 
dos discos com os dados fornecidos pelo computador
Fonte: Tanenbaum (2016, p. 233).
Segundo Tanenbaum (2016), dispositivos de E/S podem ser dividi-
dos, de modo geral, em duas categorias: dispositivos de blocos e dispo-
sitivos de caractere.
Dispositivos de blocos são aqueles que armazenam dados em blo-
cos	de	 tamanho	fixo	 (cada	bloco	pode	ter	entre	512	e	65.536	bytes).	
Esses	blocos	podem	ser	endereçados,	permitindo	a	busca	deles.	Por	
exemplo: disco rígido, pen drive e CD-ROM.
14 Sistema operacional II M
at
er
ia
l p
ar
a 
us
o 
ex
cl
us
ivo
 d
e 
al
un
o 
m
at
ric
ul
ad
o 
em
 c
ur
so
 d
e 
Ed
uc
aç
ão
 a
 D
ist
ân
ci
a 
da
 R
ed
e 
Se
na
c 
EA
D,
 d
a 
di
sc
ip
lin
a 
co
rre
sp
on
de
nt
e.
 P
ro
ib
id
a 
a 
re
pr
od
uç
ão
 e
 o
 c
om
pa
rti
lh
am
en
to
 d
ig
ita
l, 
so
b 
as
 p
en
as
 d
a 
Le
i. 
©
 E
di
to
ra
 S
en
ac
 S
ão
 P
au
lo
.
Dispositivos de caractere consistem naqueles que trabalham com 
fluxo de dados, não importando a estrutura de blocos. Não podem 
ser	endereçados	e,	consequentemente,	não	podem	ser	buscados.	Por	
exemplo: mouse, impressora e interface de rede.
1.5 Estrutura de diretórios
A estrutura de diretórios no Linux segue o padrão FHS (Filesystem 
Hierarchy Standard – padrão para sistema de arquivos hierárquico), que 
define	os	principais	diretórios	e	seus	respectivos	conteúdos.	Atualmente	
esse	padrão	está	na	versão	3.0	(lançada	em	2015)	e	é	mantido	pela	Linux	
Foundation,	organização	sem	fins	lucrativos	formada	por	grandes	empre-
sas como IBM, Dell, HP e Red Hat (LSB, 2015).
No	quadro	3	temos	uma	descrição	dos	diretórios	utilizados	no	Linux.
Quadro 3 – Estrutura de diretórios
DIRETÓRIO DESCRIÇÃO
/ Diretório raiz. Todas as pastas abaixo estão nele.
/bin Comandos básicos essenciais, como “ls”, “cat”, “cp”.
/boot Arquivos utilizados no boot (inicialização).
/dev Dispositivos e comunicação com o hardware.
/etc Arquivos de configuração.
/home Pastas dos usuários (opcional).
/lib Bibliotecas utilizadas nos comandos das pastas “/bin” e “/sbin”.
/mnt Utilizado para efetuar montagens, como mapeamento de rede.
/media Utilizado para efetuar montagens de dispositivos removíveis, como CD-ROM e pen drives.
/opt Utilizado para a instalação de pacotes de terceiros.
(cont.)
15Fundamentos de sistemas operacionais Linux
M
aterial para uso exclusivo de aluno m
atriculado em
 curso de Educação a Distância da Rede Senac EAD, da disciplina correspondente. Proibida a reprodução e o com
partilham
ento digital, sob as penas da Lei. ©
 Editora Senac São Paulo.
DIRETÓRIO DESCRIÇÃO
/proc Sistema de arquivos virtual. Contém dados de CPU, memória, processos, etc.
/root Mesmo que o diretório “/home”, mas para uso exclusivo do superusuário root.
/sbin Mesmo que o diretório “/bin”, mas com comandos exclusivos do superusuário root.
/tmp Arquivos temporários em geral.
/srv Contém dados específicos do sistema. Por exemplo, servidor FTP.
/usr Arquivos compartilhados do sistema, mas com acesso somente leitura.
/var Arquivos variáveis, como logs, páginas web, bancos de dados, etc.
Fonte: LSB (2015).
1.6 Sistemas de arquivos
O	sistema	de	 arquivos	 determina	 a	 forma	 (organização,	 fragmen-
tação,	acesso	e	integridade)	como	os	dados	serão	gravados	no	disco	
rígido. Temos diversos tipos de sistemas de arquivos no Linux, e cada 
distribuição	utiliza	o	que	lhe	convém.
Para preservar a consistência dos dados no disco em caso de tra-
vamentos	ou	desligamentos	forçados,	como	uma	queda	de	energia,	foi	
desenvolvido um sistema chamado journaling.
O journaling funciona como um log dos dados que serão gravados do 
disco	rígido.	Quando	há	uma	gravação	no	disco	rígido,	ela	ocorre	em	pri-
meiro	lugar	nesse	log.	Só	depois	acontece	a	gravação	no	disco	de	fato.	
Quando utilizamos um sistema de arquivos sem o journaling, caso 
haja uma queda de energia durante uma atividade de mover um arquivo 
de uma pasta para outra, por exemplo, ao religar o sistema veremos 
esse arquivo corrompido. Usando o journaling, quando o sistema for 
16 Sistema operacional II M
at
er
ia
l p
ar
a 
us
o 
ex
cl
us
ivo
 d
e 
al
un
o 
m
at
ric
ul
ad
o 
em
 c
ur
so
 d
e 
Ed
uc
aç
ão
 a
 D
ist
ân
ci
a 
da
 R
ed
e 
Se
na
c 
EA
D,
 d
a 
di
sc
ip
lin
a 
co
rre
sp
on
de
nt
e.
 P
ro
ib
id
a 
a 
re
pr
od
uç
ão
 e
 o
 c
om
pa
rti
lh
am
en
to
 d
ig
ita
l, 
so
b 
as
 p
en
as
 d
a 
Le
i. 
©
 E
di
to
ra
 S
en
ac
 S
ão
 P
au
lo
.
iniciado	ocorrerá	uma	verificação	de	disco	e	essa	atividade	irá	continuar	
do ponto em que parou, preservando a integridade do arquivo.
Sistemas de arquivos mais conhecidos no Linux (JONES, 2009):
 • EXT2 (second EXTended filesystem – segundo sistema de arqui-
vOs estendido): suporta discos de até 2 TB e não tem journaling.
 • EXT3 (third EXTended filesystem – terceiro sistema de arqui-
vos estendido):	 semelhante	ao	EXT2,	adicionando	a	 função	de	
journaling.
 • EXT4 (fourth EXTended filesystem – quarto sistema de arqui-
vos estendido): versão melhorada do EXT3, suporta discos de 
até 1 exabyte (1.000 petabytes) e arquivos de até 16 TB. Padrão 
no Debian e no Red Hat 6. 
 • XFS (sucessor do EFS, ou Extent File System): utiliza registro de 
64 bits de alto desempenho, possui journaling e suporta discos de 
até 16 exabytes e arquivos de até 8 exabytes. Padrão no Red Hat 7.
 • SWAP (área de troca): utilizado como memória virtual (extensão 
da memória RAM) com armazenamento em disco.
1.7 Instalação do Linux
Para	essa	atividade,	é	necessária	uma	mídia	de	instalação,	que	pode	
ser	adquirida	no	site	oficial	da	distribuição	escolhida.
Em	algumas	distribuições,	temos	a	opção	de	testar	sem	precisar	ins-
talar. Esse formato é conhecido como Live-CD,e um bom exemplo dele 
é	a	distribuição	Ubuntu	e	suas	variantes	(Kubuntu,	Lubuntu	e	Xubuntu).	
Ao iniciar o computador com o disco de boot do Ubuntu, o sistema ope-
racional é carregado em memória RAM e pode ser utilizado normalmen-
te, mesmo que o computador não possua um disco rígido. Para voltar 
ao que era antes, basta reiniciar o computador sem o disco de boot do 
Linux.
17Fundamentos de sistemas operacionais Linux
M
aterial para uso exclusivo de aluno m
atriculado em
 curso de Educação a Distância da Rede Senac EAD, da disciplina correspondente. Proibida a reprodução e o com
partilham
ento digital, sob as penas da Lei. ©
 Editora Senac São Paulo.
PARA SABER MAIS 
O formato Live-CD pode ser utilizado como uma ferramenta em caso de 
desastre, quando o Linux não inicia mais.
 
O	 primeiro	 passo	 para	 efetuar	 a	 instalação	 consiste	 em	 iniciar	 o	
computador	com	o	disco	de	 instalação	do	Linux.	Veremos	que	o	 ins-
talador,	que	normalmente	é	multi-idiomas,	é	bem	intuitivo;	basta	seguir	
os	passos	solicitados,	como	região,	idioma,	configuração	de	disco,	fuso	
horário,	seleção	de	programas	que	serão	 instalados	(os	quais	podem	
ser	instalados	posteriormente,	se	necessário)	e	informações	sobre	cria-
ção	de	usuários	que	utilizarão	o	Linux.
2 Máquinas virtuais
Antigamente, se você quisesse rodar dois sistemas operacionais na 
mesma máquina, só conseguiria isso utilizando um recurso chamado dual 
boot. Ainda assim, só era possível executar um de cada vez. Com a evolu-
ção	do	hardware,	os	virtualizadores	tornaram	possível	criar	máquinas	vir-
tuais dentro de um único hardware, trabalhando de forma independente.
São	exemplos	o	Oracle	VM	VirtualBox,	o	Oracle	VM	Server,	o	VMWare	
ESXi,	o	VMWare	Workstation,	o	XenServer	e	o	KVM.
Em	empresas,	normalmente	os	serviços	de	e-mail,	armazenamento	
de arquivos e páginas web são separados em servidores distintos, com 
o intuito de mitigar os riscos de uma possível invasão, o que poderia 
comprometer todo o ambiente. Entre as vantagens de virtualizar os ser-
vidores está a economia (de compra de hardware, de consumo de ener-
gia	e	de	espaço	físico).	A	desvantagem	está	no	fato	de	que, caso ocorra 
alguma falha no hardware, todas as máquinas virtuais serão afetadas. 
No	âmbito	corporativo,	já	existem	soluções	de	alta	disponibilidade	em	
virtualização.	Caso	ocorra	uma	falha	de	hardware,	as	máquinas	virtuais	
são migradas para outro servidor, físico, diminuindo o impacto.
18 Sistema operacional II M
at
er
ia
l p
ar
a 
us
o 
ex
cl
us
ivo
 d
e 
al
un
o 
m
at
ric
ul
ad
o 
em
 c
ur
so
 d
e 
Ed
uc
aç
ão
 a
 D
ist
ân
ci
a 
da
 R
ed
e 
Se
na
c 
EA
D,
 d
a 
di
sc
ip
lin
a 
co
rre
sp
on
de
nt
e.
 P
ro
ib
id
a 
a 
re
pr
od
uç
ão
 e
 o
 c
om
pa
rti
lh
am
en
to
 d
ig
ita
l, 
so
b 
as
 p
en
as
 d
a 
Le
i. 
©
 E
di
to
ra
 S
en
ac
 S
ão
 P
au
lo
.
No	ambiente	doméstico,	para	evitar	a	formatação	do	computador	toda	
vez	que	quisermos	instalar	uma	nova	distribuição	para	testes,	podemos	ins-
talar um virtualizador no sistema operacional atual. Um bom exemplo é o 
Oracle	VM	VirtualBox,	que	pode	ser	instalado	em	Windows,	MacOS	X,	Linux	
e	Solaris.	Mas,	para	isso	ser	possível,	é	necessário	verificar	se	o	seu	proces-
sador	e	o	seu	sistema	operacional	possuem	suporte	para	a	virtualização.
2.1 Ambientes gráficos: KDE e Gnome
No	Linux	podemos	usar	diversos	ambientes	gráficos,	não	necessa-
riamente	restritos	ao	padrão	da	distribuição.	Normalmente,	durante	a	
instalação	você	pode	escolher	o	ambiente	gráfico	que	será	utilizado.	
Também	é	possível	 instalar	mais	de	um	ambiente	gráfico	no	mesmo	
sistema operacional. KDE e Gnome são as principais e mais utilizadas 
interfaces	 gráficas	 entre	 outras	 disponíveis	 nas	 distribuições,	 como	
XFCE,	LXDE,	WindowMaker	e	IceWM.
2.1.1 KDE
KDE e seus aplicativos nativos são escritos utilizando o framework 
Qt. Atualmente na versão KDE Plasma 5, conta com diversas ferramen-
tas	nativas,	altamente	customizáveis,	sem	necessidade	de	instalação	
de aplicativos alternativos.
PARA SABER MAIS 
Framework: conjunto de bibliotecas ou componentes usados para criar 
uma base na qual a aplicação será construída.
Qt: framework multiplataforma para o desenvolvimento de interfaces gráficas.
 
Distribuições	que	utilizam	KDE	como	padrão:	openSUSE	e	Kubuntu.
19Fundamentos de sistemas operacionais Linux
M
aterial para uso exclusivo de aluno m
atriculado em
 curso de Educação a Distância da Rede Senac EAD, da disciplina correspondente. Proibida a reprodução e o com
partilham
ento digital, sob as penas da Lei. ©
 Editora Senac São Paulo.
2.1.2 Gnome
O Gnome e seus aplicativos nativos são baseados no framework 
GTK. Atualmente o Gnome está na versão 3, desenvolvida para ser fácil 
de	utilizar	e	customizar.	Seu	layout,	em	comparação	com	o	da	versão	2,	
foi	totalmente	reformulado.	A	mudança	não	agradou	a	todos,	mas,	para	
compensar, a partir da versão 3.30 foi incluído o modo clássico, permi-
tindo	a	escolha	entre	as	duas	versões.
Distribuições	que	utilizam	Gnome	como	padrão:	Debian,	Fedora,	Red	
Hat e CentOS.
É possível usar os aplicativos nativos do Gnome no KDE e vice-versa, 
embora isso não seja recomendado pelo fato de ser necessário carre-
gar na memória os dois frameworks (Qt e GTK).
No quadro 4 temos um comparativo entre aplicativos nativos do KDE 
e do Gnome.
Quadro 4 – Comparativo de aplicativos nativos do KDE e do GNOME
DESCRIÇÃO KDE GNOME
Gerenciador de arquivos Dolphin Nautilus
Gravador de discos K3b Brasero
Cliente de e-mail KMail Evolution
Emulador de terminal Konsole Terminal
Calculadora KCalc Calculator
Editor de texto KWrite Gedit
Navegador de internet Konqueror Epiphany
20 Sistema operacional II M
at
er
ia
l p
ar
a 
us
o 
ex
cl
us
ivo
 d
e 
al
un
o 
m
at
ric
ul
ad
o 
em
 c
ur
so
 d
e 
Ed
uc
aç
ão
 a
 D
ist
ân
ci
a 
da
 R
ed
e 
Se
na
c 
EA
D,
 d
a 
di
sc
ip
lin
a 
co
rre
sp
on
de
nt
e.
 P
ro
ib
id
a 
a 
re
pr
od
uç
ão
 e
 o
 c
om
pa
rti
lh
am
en
to
 d
ig
ita
l, 
so
b 
as
 p
en
as
 d
a 
Le
i. 
©
 E
di
to
ra
 S
en
ac
 S
ão
 P
au
lo
.
2.2 Identificação de arquivos
No	Linux	temos	sete	tipos	de	arquivos.	Para	identificá-los,	basta	lis-
tar	com	auxílio	do	comando	“ls”.	Abra	o	terminal	e	digite	o	comando:
$ ls -l /etc/fstab
-rw-rw-r-- 1 root root 550 fev 11 19:54 /etc/fstab
O primeiro caractere determina o tipo do arquivo, como mostra o 
quadro 5.
Quadro 5 – Tipos de arquivos
TIPO DESCRIÇÃO
- Arquivo regular
d Diretório
c Arquivo de dispositivo de caracteres
b Arquivo de dispositivo de bloco
s Arquivo de socket local
p Pipe identificado
l Link simbólico
Fonte: Nemeth, Snyder e Hein (2007, p. 55).
No	exemplo	anterior,	o	primeiro	caractere	é	“-”,	o	qual	identifica	que	
o	arquivo	“/etc/fstab”	é	um	arquivo	regular.	Arquivos	regulares	basica-
mente são arquivos comuns, como arquivos de texto, imagens e pro-
gramas,	 entre	 outros.	 “Um	 arquivo	 regular	 é	 apenas	 uma	 coletânea	
de	bytes;	o	Linux	não	 impõe	nenhuma	estrutura	sobre	seu	conteúdo”	
(NEMETH;	SNYDER;	HEIN,	2007,	p.	55).
21Fundamentos de sistemas operacionais Linux
M
aterial para uso exclusivo de aluno m
atriculado em
 curso de Educação a Distância da Rede Senac EAD, da disciplina correspondente. Proibida a reprodução e o com
partilham
ento digital, sob as penas da Lei. ©
 Editora Senac São Paulo.
No	exemplo	a	seguir,	como	o	primeiro	caractere	é	um	“d”,	podemos	
afirmar	que	se	trata	de	um	diretório.
$ ls -l /home
drwxrwxr-x 2 ederson grpinfo 4096 Jan 22 21:19 ederson/
Um	exemplo	de	dispositivo	de	caractere	“c”	é	a	porta	paralela	(“/dev/
lp0”),	que	permite	a	comunicação	entre	programas	e	o	dispositivo	de	
hardware, como uma impressora. 
$ ls -l /dev/lp0
crwxrwxr-x 1 root root 6, 0 Jan 22 22:39 /dev/lp0
A	seguir	temos	um	dispositivo	de	bloco	“b”,	que	neste	caso	se	trata	
do	primeiro	disco	rígido		(“sda”).
$ ls -l /dev/sda
brw-rw---- 1 root disk 8, 0 Jan 22 22:39 /dev/sda
2.3 Arquivos e pastas: copiar, colar, renomear,recortar, 
apagar, propriedades
Vamos manipular nossos arquivos e pastas utilizando o terminal. 
Como	exemplo,	 criaremos	um	arquivo	de	 texto.	Para	essa	finalidade,	
digite o comando:
22 Sistema operacional II M
at
er
ia
l p
ar
a 
us
o 
ex
cl
us
ivo
 d
e 
al
un
o 
m
at
ric
ul
ad
o 
em
 c
ur
so
 d
e 
Ed
uc
aç
ão
 a
 D
ist
ân
ci
a 
da
 R
ed
e 
Se
na
c 
EA
D,
 d
a 
di
sc
ip
lin
a 
co
rre
sp
on
de
nt
e.
 P
ro
ib
id
a 
a 
re
pr
od
uç
ão
 e
 o
 c
om
pa
rti
lh
am
en
to
 d
ig
ita
l, 
so
b 
as
 p
en
as
 d
a 
Le
i. 
©
 E
di
to
ra
 S
en
ac
 S
ão
 P
au
lo
.
$ echo “Meu primeiro arquivo de texto” > arquivo.txt
O	comando	“echo”	serve	para	exibir	 textos	na	tela;	porém,	quando	
fazemos	o	uso	do	redirecionador	“>”,	ele	grava	a	saída	do	comando	em	
um arquivo. 
Podemos	confirmar	a	criação	do	arquivo	com	o	comando	“ls”:
$ ls
Para	verificarmos	o	conteúdo	do	arquivo,	podemos	utilizar	o	coman-
do	“cat”:
$ cat arquivo.txt
Pronto, agora criamos nosso primeiro arquivo. Com ele podemos 
demonstrar os próximos comandos. Para copiarmos um arquivo, utili-
zamos	o	comando	“cp”.	Em	seguida,	podemos	confirmar	a	cópia	com	
o	comando	“ls”.
A	sintaxe	do	comando	“cp”	é:
$ cp 
Na	figura	1	é	possível	conhecer	esse	comando	na	prática.
23Fundamentos de sistemas operacionais Linux
M
aterial para uso exclusivo de aluno m
atriculado em
 curso de Educação a Distância da Rede Senac EAD, da disciplina correspondente. Proibida a reprodução e o com
partilham
ento digital, sob as penas da Lei. ©
 Editora Senac São Paulo.
Figura 1 – Exemplo de utilização do comando “cp” para copiar arquivos
Agora temos uma cópia do nosso arquivo. Esse comando é muito 
utilizado	para	 realizar	cópias	de	segurança	 (os	backups)	dos	nossos	
arquivos.
Para	renomear	e	mover	arquivos,	utilizamos	o	comando	“mv”.	A	sin-
taxe	do	comando	é	semelhante	à	do	“cp”:
$ mv 
Figura 2 – Exemplo de utilização do comando “mv” para renomear arquivos
24 Sistema operacional II M
at
er
ia
l p
ar
a 
us
o 
ex
cl
us
ivo
 d
e 
al
un
o 
m
at
ric
ul
ad
o 
em
 c
ur
so
 d
e 
Ed
uc
aç
ão
 a
 D
ist
ân
ci
a 
da
 R
ed
e 
Se
na
c 
EA
D,
 d
a 
di
sc
ip
lin
a 
co
rre
sp
on
de
nt
e.
 P
ro
ib
id
a 
a 
re
pr
od
uç
ão
 e
 o
 c
om
pa
rti
lh
am
en
to
 d
ig
ita
l, 
so
b 
as
 p
en
as
 d
a 
Le
i. 
©
 E
di
to
ra
 S
en
ac
 S
ão
 P
au
lo
.
Conforme	apresentado	na	figura	2,	nosso	arquivo	foi	renomeado	de	
“novo.txt”	para	“arquivo_novo.txt”.
Figura 3 – Exemplo de utilização do comando “mv” para mover arquivos
Na	figura	3,	nosso	arquivo	foi	movido	para	a	pasta	“Downloads”.	A	
diferença	entre	renomear	e	mover	está	no	destino:	caso	o	destino	esteja	
na	mesma	pasta,	o	arquivo	é	renomeado;	caso	o	destino	esteja	em	ou-
tra pasta, movemos o arquivo.
Para	apagar	um	arquivo,	utilizamos	o	comando	 “rm”.	Em	seguida,	
podemos	confirmar	a	 exclusão	usando	o	comando	 “ls”.	A	 sintaxe	do	
comando	“rm”	é:
$ rm 
25Fundamentos de sistemas operacionais Linux
M
aterial para uso exclusivo de aluno m
atriculado em
 curso de Educação a Distância da Rede Senac EAD, da disciplina correspondente. Proibida a reprodução e o com
partilham
ento digital, sob as penas da Lei. ©
 Editora Senac São Paulo.
Figura 4 – Exemplo de utilização do comando “rm” para apagar arquivos
Na	figura	4,	o	nosso	arquivo	foi	excluído.	Para	trocar	de	diretório,	uti-
lizamos	o	comando	 “cd”,	 seguido	do	nome	do	diretório.	A	sintaxe	do	
comando	“cd”	é:
$ cd 
Para sair do diretório, utilizamos o comando:
$ cd ..
2.4 Comandos básicos
Para administrar o Linux, é necessário ter conhecimento dos coman-
dos básicos. Temos comandos internos, comandos que estão dentro 
de	um	shell	 interpretador	de	comandos,	e	comandos	externos,	que	fi-
cam	localizados	em	diretórios	específicos.
26 Sistema operacional II M
at
er
ia
l p
ar
a 
us
o 
ex
cl
us
ivo
 d
e 
al
un
o 
m
at
ric
ul
ad
o 
em
 c
ur
so
 d
e 
Ed
uc
aç
ão
 a
 D
ist
ân
ci
a 
da
 R
ed
e 
Se
na
c 
EA
D,
 d
a 
di
sc
ip
lin
a 
co
rre
sp
on
de
nt
e.
 P
ro
ib
id
a 
a 
re
pr
od
uç
ão
 e
 o
 c
om
pa
rti
lh
am
en
to
 d
ig
ita
l, 
so
b 
as
 p
en
as
 d
a 
Le
i. 
©
 E
di
to
ra
 S
en
ac
 S
ão
 P
au
lo
.
2.4.1 Ajuda
No Linux é possível consultar os manuais on-line pelo comando 
“man”.	Ele	é	utilizado	quando	há	dúvidas	sobre	a	funcionalidade	de	um	
comando	específico.
$ man [opção] 
O	comando	“man”	exibe	a	documentação	dos	comandos.	Isso	quer	
dizer que é possível utilizá-lo para consultar os manuais dos comandos 
“ls”,	“mkdir”	e	“cd”,	entre	outros.
 • man -a:	exibe	todas	as	páginas	do	manual;
 • man -h:	exibe	uma	mensagem	de	ajuda;
 • man -w:	 exibe	 a	 localização	 de	 páginas	 do	 manual	 a	 serem	
exibidas.
2.4.2 Navegação
São	utilizados	para	movimentação	entre	os	diretórios	do	sistema.
$ cd
Entra e sai dos diretórios.
$ pwd
Exibe o diretório atual.
27Fundamentos de sistemas operacionais Linux
M
aterial para uso exclusivo de aluno m
atriculado em
 curso de Educação a Distância da Rede Senac EAD, da disciplina correspondente. Proibida a reprodução e o com
partilham
ento digital, sob as penas da Lei. ©
 Editora Senac São Paulo.
$ ls [opções] [diretório]
Lista o conteúdo dos diretórios.
 • ls -a: exibe todos os arquivos, incluindo arquivos ocultos.
 • ls -l: lista os arquivos e diretórios de forma descritiva.
 • ls -t:	lista	os	arquivos	por	data	de	alteração	(geralmente	são	lista-
dos por ordem alfabética).
2.4.3 Manipulação de arquivos e diretórios
Estamos falando aqui de comandos utilizados para copiar, renomear 
ou mover arquivos e diretórios.
$ touch 
Altera	a	data	de	modificação	do	arquivo	e	cria	arquivos	em	branco.
$ rm [opções] 
Remove arquivos.
 • rm -f:	força	a	remoção	de	um	arquivo.
 • rm -i: solicita	a	confirmação	antes	de	excluir.
 • rm -r: apaga recursivamente.
 • rm -v: exibe o nome do arquivo antes de excluir.
28 Sistema operacional II M
at
er
ia
l p
ar
a 
us
o 
ex
cl
us
ivo
 d
e 
al
un
o 
m
at
ric
ul
ad
o 
em
 c
ur
so
 d
e 
Ed
uc
aç
ão
 a
 D
ist
ân
ci
a 
da
 R
ed
e 
Se
na
c 
EA
D,
 d
a 
di
sc
ip
lin
a 
co
rre
sp
on
de
nt
e.
 P
ro
ib
id
a 
a 
re
pr
od
uç
ão
 e
 o
 c
om
pa
rti
lh
am
en
to
 d
ig
ita
l, 
so
b 
as
 p
en
as
 d
a 
Le
i. 
©
 E
di
to
ra
 S
en
ac
 S
ão
 P
au
lo
.
$ mkdir [opções] 
Cria diretórios.
 • mkdir -p: cria cadeias de diretórios caso não existam.
$ rmdir [opções] 
Remove diretórios vazios.
 • rmdir -p: remove os diretórios intermediários somente se estive-
rem vazios.
$ mv [opções] 
Move ou renomeia arquivos e diretórios.
 • mv -i:	 solicita	confirmação	antes	de	mover	um	arquivo	que	 irá	
sobrescrever outro.
 • mv -v: exibe o nome do arquivo antes de movê-lo. 
$ cp [opções] 
Copia arquivos.
 • cp -a: preserva os atributos do arquivo.
 • cp -i:	solicita	confirmação	antes	de	sobrescrever	arquivos.
 • cp -r: copia recursivamente, incluindo subdiretórios.
 • cp -v: exibe o nome do arquivo antes de copiá-lo.
29Fundamentos de sistemas operacionais Linux
M
aterial para uso exclusivo de aluno m
atriculado em
 curso de Educação a Distância da Rede Senac EAD, da disciplina correspondente. Proibida a reprodução e o com
partilham
ento digital, sob as penas da Lei. ©
 Editora Senac São Paulo.
2.4.4 Comandos de terminal
Utilizados para limpar o conteúdo da tela, enviar mensagens e permi-
tir	a	comunicação	entre	os	usuários.
$ clear ou + 
Limpa a tela do terminal virtual corrente.
2.4.5 Exibição de arquivos
São utilizados para visualizar conteúdo de arquivos.
$ cat 
Exibe conteúdo dos arquivos.
2.4.6 Comandos de permissão de acesso
$ sudo 
Permite que um usuário comum execute comandos do superusuário 
root.
$ su 
Permite a troca do usuário no terminal.
30 Sistema operacional II M
at
er
ia
l p
ara 
us
o 
ex
cl
us
ivo
 d
e 
al
un
o 
m
at
ric
ul
ad
o 
em
 c
ur
so
 d
e 
Ed
uc
aç
ão
 a
 D
ist
ân
ci
a 
da
 R
ed
e 
Se
na
c 
EA
D,
 d
a 
di
sc
ip
lin
a 
co
rre
sp
on
de
nt
e.
 P
ro
ib
id
a 
a 
re
pr
od
uç
ão
 e
 o
 c
om
pa
rti
lh
am
en
to
 d
ig
ita
l, 
so
b 
as
 p
en
as
 d
a 
Le
i. 
©
 E
di
to
ra
 S
en
ac
 S
ão
 P
au
lo
.
2.4.7 Sair da sessão
Após	utilizar	o	Linux,	devemos	sair	utilizando	os	comandos	“logout”	
ou	“exit”.	
$ logout ou + 
Esse	comando	finaliza	a	sessão	de	usuário.
$ exit
Encerra o shell de comandos corrente.
2.4.8 Reiniciar o sistema ou desligar
Os	comandos	utilizados	são	 “reboot”	e	 “halt”.	Esses	comandos	só	
podem ser executados pelo superusuário root.
# reboot
Reinicia o computador.
# halt
Desliga o computador.
31Fundamentos de sistemas operacionais Linux
M
aterial para uso exclusivo de aluno m
atriculado em
 curso de Educação a Distância da Rede Senac EAD, da disciplina correspondente. Proibida a reprodução e o com
partilham
ento digital, sob as penas da Lei. ©
 Editora Senac São Paulo.
Considerações finais
Com a abordagem efetuada neste capítulo, o leitor tem uma base do 
que é o sistema operacional Linux: seu funcionamento, sua estrutura, 
sua	instalação	e	seu	uso	básico.
Com o estudo necessário e o empenho para aprender o Linux, você 
terá a oportunidade de entrar no mundo do software livre, que está em 
expansão e possui uma comunidade de usuários disposta a comparti-
lhar conhecimento.
Referências
APLICATIVOS KDE. Disponível em: https://kde.org/applications/. Acesso em: 21 
jan. 2020.
GNOME. Disponível em: https://wiki.gnome.org/Apps/. Acesso em: 21 jan. 2020.
GNU. O que é software livre. O sistema operacional GNU.	[s. d.]. Disponível em: 
https://www.gnu.org/philosophy/free-sw.html. Acesso em: 18 jan. 2020.
JONES, M. Anatomia do EXT4. IBM Developer. 2009. Disponível em: https://www.
ibm.com/developerworks/br/library/l-anatomy-ext4/index.html. Acesso em: 
21 jan. 2020.
LSB	Workgroup.	Filesystem Hierarchy Standard. The Linux Foundation. 2015. 
Disponível em: http://refspecs.linuxfoundation.org/FHS_3.0/fhs-3.0.html. 
Acesso em: 6 fev. 2020.
NEMETH,	Evi;	SNYDER,	Gary;	HEIN,	Trent.	Manual completo do Linux: guia do 
administrador. 2. ed. São Paulo: Pearson, 2007.
TANENBAUM, Andrew S. Sistemas operacionais modernos. São Paulo: 
Pearson, 2016.
https://kde.org/applications/
https://wiki.gnome.org/Apps/
https://www.ibm.com/developerworks/br/library/l-anatomy-ext4/index.html
https://www.ibm.com/developerworks/br/library/l-anatomy-ext4/index.html
http://refspecs.linuxfoundation.org/FHS_3.0/fhs-3.0.html
33
M
aterial para uso exclusivo de aluno m
atriculado em
 curso de Educação a Distância da Rede Senac EAD, da disciplina correspondente. Proibida a reprodução e o com
partilham
ento digital, sob as penas da Lei. ©
 Editora Senac São Paulo.
Capítulo 2
Linux –
administração de 
sistema
A finalidade deste capítulo é apresentar as ferramentas utilizadas na 
administração do sistema operacional Linux e instruir sobre os coman-
dos mais utilizados no dia a dia de um administrador.
É fundamental saber como instalar pacotes de diferentes maneiras, 
como gerenciar usuários, senhas e grupos, como conceder permissões 
e privilégios em arquivos e pastas.
Pense no seguinte cenário: é solicitado que você instale um pacote 
de agente de monitoramento e crie um usuário para que a equipe de 
monitoramento possa verificar o espaço em disco e que esse usuário 
tenha permissão de escrita em determinado diretório. Com o conteúdo 
deste capítulo você será capaz de realizar essas tarefas.
34 Sistema operacional II M
at
er
ia
l p
ar
a 
us
o 
ex
cl
us
ivo
 d
e 
al
un
o 
m
at
ric
ul
ad
o 
em
 c
ur
so
 d
e 
Ed
uc
aç
ão
 a
 D
is
tâ
nc
ia
 d
a 
Re
de
 S
en
ac
 E
AD
, d
a 
di
sc
ip
lin
a 
co
rre
sp
on
de
nt
e.
 P
ro
ib
id
a 
a 
re
pr
od
uç
ão
 e
 o
 c
om
pa
rti
lh
am
en
to
 d
ig
ita
l, s
ob
 a
s 
pe
na
s 
da
 L
ei
. ©
 E
di
to
ra
 S
en
ac
 S
ão
 P
au
lo
.
1 Instalação de programas 
A instalação de programas no Linux pode ser realizada de três formas: 
utilizando gerenciador de pacotes (baixa dificuldade), a partir da instala-
ção de pacotes já compilados (média dificuldade) ou a partir do código-
-fonte (alta dificuldade). Vamos conhecer cada uma delas a seguir.
1.1 Utilizando o gerenciador de pacotes
Essa maneira de instalação de aplicativos é a mais fácil de todas, 
porque o gerenciador utiliza um repositório de pacotes. Cada distribui-
ção possui o seu próprio sistema de repositórios, e nesses repositó-
rios ficam armazenados os pacotes já compilados e homologados pela 
distribuição.
É um local confiável para adquirir os pacotes e efetuar a instalação. O 
comando para efetuar a instalação depende de cada distribuição. Debian 
e derivados, assim como o Ubuntu, utilizam o apt-get; CentOS, Red Hat e 
seus derivados usam o yum; SUSE e openSUSE utilizam o zypper.
PARA SABER MAIS 
Repositório de pacotes é um local em que ficam armazenados os pa-
cotes disponíveis para instalação. Cada distribuição possui seu próprio 
repositório.
 
A forma de trabalho varia: enquanto o apt-get, o yum e o zypper tra-
balham com repositórios de pacotes já compilados, o emerge e o pa-
cman trabalham com repositórios de código-fonte. O gerenciador baixa 
o código-fonte do pacote escolhido e compila na hora da instalação. 
Para efetuar a instalação de pacotes, é necessário estar logado 
com o usuário root ou utilizar o comando “sudo” (este permite executar 
35Linux – administração de sistema
M
aterial para uso exclusivo de aluno m
atriculado em
 curso de Educação a Distância da Rede Senac EAD, da disciplina correspondente. Proibida a reprodução e o com
partilham
ento digital, sob as penas da Lei. ©
 Editora Senac São Paulo.
comandos de administrador sendo um usuário comum). Para identifi-
car o tipo de usuário com o qual você está logado, basta observar o 
último caractere que aparece no terminal antes dos comandos digita-
dos. Caso o caractere seja um “#”, isso quer dizer que estamos logados 
como o superusuário root; caso seja um “$”, estamos logados como 
um usuário comum. Repare que em todos os comandos que aparecem 
neste livro fazemos essa identificação. Verifique, na figura 1, que digita-
mos o comando “sudo su -” como usuário comum “$”. Esse comando 
nos permite logar como superusuário “#”.
Figura 1 – Identificação de usuário comum e superusuário
Por exemplo: ao instalar o Apache2, que é um servidor de páginas 
web, o apt-get informa que ele depende de outros pacotes e pergunta se 
quer instalar todas as dependências.
Figura 2 – Exemplo de dependências ao instalar pacote
36 Sistema operacional II M
at
er
ia
l p
ar
a 
us
o 
ex
cl
us
ivo
 d
e 
al
un
o 
m
at
ric
ul
ad
o 
em
 c
ur
so
 d
e 
Ed
uc
aç
ão
 a
 D
is
tâ
nc
ia
 d
a 
Re
de
 S
en
ac
 E
AD
, d
a 
di
sc
ip
lin
a 
co
rre
sp
on
de
nt
e.
 P
ro
ib
id
a 
a 
re
pr
od
uç
ão
 e
 o
 c
om
pa
rti
lh
am
en
to
 d
ig
ita
l, s
ob
 a
s 
pe
na
s 
da
 L
ei
. ©
 E
di
to
ra
 S
en
ac
 S
ão
 P
au
lo
.
PARA SABER MAIS 
A vantagem de utilizar gerenciador de pacotes está no fato de ele veri-
ficar quais são as dependências dos pacotes e incluir essas dependên-
cias na instalação.
 
1.2 Instalação de pacotes já compilados
Na instalação utilizando pacotes já compilados é necessário baixar 
o pacote e realizar a instalação manualmente. Os tipos de pacotes mais 
comuns são DEB e RPM. O DEB é originado do Debian e empregado nas 
distribuições baseadas no Debian, como o Ubuntu. O RPM é um padrão 
desenvolvido pela Red Hat e utilizado nas distribuições baseadas no 
Red Hat, como o Fedora, o CentOS, o SUSE e o openSUSE.
Para efetuar a instalação utilizando o pacote DEB, basta utilizar o 
comando:
# dpkg -i wget_1.20.3-1+b2_amd64.deb 
O comando “dpkg -i” instala o pacote wget (aplicativo utilizado para 
efetuar downloads via linha de comando) no sistema operacionalDebian 
ou em seus derivados.
Para efetuar a instalação utilizando o pacote RPM, utilize o comando:
# rpm -i wget-1.14-18.el7_6.1.x86_64.rpm
37Linux – administração de sistema
M
aterial para uso exclusivo de aluno m
atriculado em
 curso de Educação a Distância da Rede Senac EAD, da disciplina correspondente. Proibida a reprodução e o com
partilham
ento digital, sob as penas da Lei. ©
 Editora Senac São Paulo.
O comando “rpm -i” instala o pacote wget (aplicativo utilizado para 
efetuar downloads via linha de comando) no sistema operacional Red 
Hat ou em seus derivados.
Para verificar todos os pacotes instalados, podemos utilizar os co-
mandos indicados a seguir.
Distribuições baseadas em pacotes DEB:
# dpkg -l 
Distribuições baseadas em pacotes RPM:
# rpm -qa
1.3 Instalação de pacotes a partir do código-fonte
Essa terceira forma de instalar um aplicativo, embora seja a de maior 
dificuldade, apresenta a vantagem de permitir a edição do código-fonte, 
a fim de ajustar algo que seja relevante para você. Isso quer dizer que 
ele será otimizado para o seu hardware. Mas existe também a desvan-
tagem do tempo levado para a instalação. Para efetuar a compilação, é 
necessário instalar o compilador de linguagem C (gcc), suas bibliotecas 
(glibc) e o pacote com os cabeçalhos do seu kernel (linux-headers). Esse 
pacote oferece várias funções e estruturas para compilação de códigos.
Normalmente, o código-fonte é disponibilizado em um arquivo com-
pactado no formato “.tar.gz”, e para efetuar a instalação geralmente são 
utilizados os passos mostrados na figura 3.
38 Sistema operacional II M
at
er
ia
l p
ar
a 
us
o 
ex
cl
us
ivo
 d
e 
al
un
o 
m
at
ric
ul
ad
o 
em
 c
ur
so
 d
e 
Ed
uc
aç
ão
 a
 D
is
tâ
nc
ia
 d
a 
Re
de
 S
en
ac
 E
AD
, d
a 
di
sc
ip
lin
a 
co
rre
sp
on
de
nt
e.
 P
ro
ib
id
a 
a 
re
pr
od
uç
ão
 e
 o
 c
om
pa
rti
lh
am
en
to
 d
ig
ita
l, s
ob
 a
s 
pe
na
s 
da
 L
ei
. ©
 E
di
to
ra
 S
en
ac
 S
ão
 P
au
lo
.
Figura 3 – Passos para efetuar a instalação a partir do código-fonte
Executar o comando “make”, para
efetuar a compilação do código-fonte.
Descompactar o arquivo “.tar.gz” 
com o código-fonte, utilizando o
 comando “tar -zxvf arquivo.tar.gz”.
Entrar no diretório que foi
criado no comando anterior.
Executar o comando “./configure” 
para verificar se todos os componentes 
necessários estão instalados antes da 
compilação.
Executar o comando “make install” para 
instalar o pacote no sistema operacional 
(lembrando que somente o superusuário 
root pode executá-lo).
2 Editores de texto
Os editores de texto são essenciais no Linux. Trata-se de um aplica-
tivo para edição de arquivos de texto. 
IMPORTANTE 
Não confunda editores de texto com processadores de texto, como o 
LibreOffice.
 
Como a configuração do Linux é baseada em arquivos, os editores 
de texto permitem escrever, apagar e editar os arquivos. Além disso, é 
possível editar o código-fonte, criar scripts, efetuar buscas e substituir 
palavras, entre outras ações.
Por exemplo, para alterar o endereço IP de uma interface de rede, é 
necessário editar o arquivo de configuração dessa interface.
Existem vários editores de texto, mas vamos abordar apenas o Vim, 
o Nano, o KWrite e o Gedit. Com o Vim e o Nano trabalhamos no modo 
39Linux – administração de sistema
M
aterial para uso exclusivo de aluno m
atriculado em
 curso de Educação a Distância da Rede Senac EAD, da disciplina correspondente. Proibida a reprodução e o com
partilham
ento digital, sob as penas da Lei. ©
 Editora Senac São Paulo.
texto. Já o KWrite (KDE) e o Gedit (Gnome) são aplicativos do ambien-
te gráfico.
2.1 Vim
O Vim é um editor de texto eficiente, capaz de criar e alterar qualquer 
tipo de texto. Nele temos dois modos de operação: de comandos e de 
inserção.
O primeiro modo, voltado para comandos, consiste no padrão que é 
iniciado ao executar o Vim no terminal. Nesse modo o teclado funciona 
apenas para movimentar o cursor, abrir e salvar arquivos, copiar e co-
lar textos e fazer buscas de palavras-chave, entre outras operações. Ou 
seja, não é possível digitar textos nesse modo.
O segundo modo deve ser utilizado quando é necessário digitar 
um texto. Para isso, precisamos acessá-lo utilizando a tecla de atalho 
i quando estamos no modo de comandos. Assim, conseguimos mo-
dificar um arquivo de texto. Para voltar ao modo de comandos, basta 
utilizar a tecla Esc. Na figura 4, temos o Vim aberto no terminal.
Figura 4 – Editor de texto Vim
40 Sistema operacional II M
at
er
ia
l p
ar
a 
us
o 
ex
cl
us
ivo
 d
e 
al
un
o 
m
at
ric
ul
ad
o 
em
 c
ur
so
 d
e 
Ed
uc
aç
ão
 a
 D
is
tâ
nc
ia
 d
a 
Re
de
 S
en
ac
 E
AD
, d
a 
di
sc
ip
lin
a 
co
rre
sp
on
de
nt
e.
 P
ro
ib
id
a 
a 
re
pr
od
uç
ão
 e
 o
 c
om
pa
rti
lh
am
en
to
 d
ig
ita
l, s
ob
 a
s 
pe
na
s 
da
 L
ei
. ©
 E
di
to
ra
 S
en
ac
 S
ão
 P
au
lo
.
Para instalar o Vim, abra o terminal e digite o comando:
$ sudo apt-get install vim
Para abrir o Vim, abra o terminal e digite o comando:
$ vim
PARA SABER MAIS 
Você pode encontrar mais informações sobre instalação, documenta-
ção e comandos no site oficial vim.org.
 
2.2 Nano
O Nano foi criado em 1999 por Chris Allagretta com o nome de TIP 
– um acrônimo recursivo para “TIP isn’t Pine” (TIP não é o Pine). Essa 
denominação foi mudada em 2000 para Nano em razão de um conflito 
com o nome de outro programa, chamado “tip” (NANO-EDITOR, 2020).
O Ubuntu possui o Nano instalado por padrão, mas nem todas as dis-
tribuições apresentam o programa pré-instalado. Caso sua distribuição 
não o possua instalado, você pode encontrar o programa nos repositó-
rios padrão. Na figura 5, temos o Nano aberto no terminal.
41Linux – administração de sistema
M
aterial para uso exclusivo de aluno m
atriculado em
 curso de Educação a Distância da Rede Senac EAD, da disciplina correspondente. Proibida a reprodução e o com
partilham
ento digital, sob as penas da Lei. ©
 Editora Senac São Paulo.
Figura 5 – Editor de texto Nano
Para instalar o Nano, abra o terminal e digite o comando:
$ sudo apt-get install nano
Para abrir o Nano, abra o terminal e digite o comando:
$ nano
Na parte inferior, temos alguns comandos básicos do Nano. Quando 
temos o acento circunflexo seguido de uma letra, é preciso apertar 
a tecla Ctrl (control) em conjunto com a respectiva letra. Para obter 
ajuda, tecle Crtl+G; para gravar, Ctrl+O; para saber onde está alguma 
42 Sistema operacional II M
at
er
ia
l p
ar
a 
us
o 
ex
cl
us
ivo
 d
e 
al
un
o 
m
at
ric
ul
ad
o 
em
 c
ur
so
 d
e 
Ed
uc
aç
ão
 a
 D
is
tâ
nc
ia
 d
a 
Re
de
 S
en
ac
 E
AD
, d
a 
di
sc
ip
lin
a 
co
rre
sp
on
de
nt
e.
 P
ro
ib
id
a 
a 
re
pr
od
uç
ão
 e
 o
 c
om
pa
rti
lh
am
en
to
 d
ig
ita
l, s
ob
 a
s 
pe
na
s 
da
 L
ei
. ©
 E
di
to
ra
 S
en
ac
 S
ão
 P
au
lo
.
informação no texto, Ctrl+W; para recortar o texto, Ctrl+K; para justificar, 
Ctrl+J; para ler o arquivo, Ctrl+R; para substituir, Ctrl+\; para colar, Ctrl+U; 
para verificação ortográfica, Ctrl+T, e, para sair, Ctrl+X.
PARA SABER MAIS 
Você pode encontrar mais informações sobre instalação, documenta-
ção e comandos no site nano-editor.org. Vale uma conferida!
 
2.3 KWrite (KDE)
KWrite é um editor de texto para o KDE baseado no componente de 
edição do Kate (KDE, 2020). Trata-se de um editor de texto do ambiente 
gráfico projetado para ser um editor para programadores, em razão do 
suporte plugins. Uma de suas principais funções é a sintaxe colorida 
para as mais variadas linguagens de programação. Possui uma inter-
face para documentos individuais, o que permite editar um ficheiro de 
cada vez em cada janela.
43Linux – administração de sistema
M
aterial para uso exclusivo de aluno m
atriculado em
 curso de Educação a Distância da Rede Senac EAD, da disciplina correspondente. Proibida a reprodução e o com
partilham
ento digital, sob as penas da Lei.©
 Editora Senac São Paulo.
Figura 6 – Editor de texto KWrite
Para instalar o KWrite, abra o terminal e digite o comando:
$ sudo apt-get install kwrite
PARA SABER MAIS 
A documentação completa para todas as funcionalidades do KWrite 
pode ser encontrada no site oficial da KDE.
 
44 Sistema operacional II M
at
er
ia
l p
ar
a 
us
o 
ex
cl
us
ivo
 d
e 
al
un
o 
m
at
ric
ul
ad
o 
em
 c
ur
so
 d
e 
Ed
uc
aç
ão
 a
 D
is
tâ
nc
ia
 d
a 
Re
de
 S
en
ac
 E
AD
, d
a 
di
sc
ip
lin
a 
co
rre
sp
on
de
nt
e.
 P
ro
ib
id
a 
a 
re
pr
od
uç
ão
 e
 o
 c
om
pa
rti
lh
am
en
to
 d
ig
ita
l, s
ob
 a
s 
pe
na
s 
da
 L
ei
. ©
 E
di
to
ra
 S
en
ac
 S
ão
 P
au
lo
.
2.4 Gedit (Gnome)
É um editor de texto padrão GUI (Graphical User Interface – interface 
gráfica do usuário), nativo no sistema Ubuntu.
O Gedit pode ser instalado em outras distribuições (por exemplo, no 
Kubuntu), mas nesse caso são necessárias bibliotecas adicionais para 
a correta instalação em ambientes que não usem o Gnome.
Figura 7 – Editor de texto Gedit
Para instalar o Gedit, abra o terminal e digite o comando:
$ sudo apt-get install gedit
45Linux – administração de sistema
M
aterial para uso exclusivo de aluno m
atriculado em
 curso de Educação a Distância da Rede Senac EAD, da disciplina correspondente. Proibida a reprodução e o com
partilham
ento digital, sob as penas da Lei. ©
 Editora Senac São Paulo.
PARA SABER MAIS 
A documentação completa para todas as funcionalidades do Gedit pode 
ser encontrada no site do editor dentro do site oficial da Gnome.
 
3 CUPS – servidor de impressão
O CUPS (Common Unix Printing System – sistema comum de im-
pressão Unix) é um sistema criado para gerenciar impressões dos siste-
mas operacionais de software livre, sistemas baseados no Unix. 
Foi criado pela Easy Software Products (ESP), para substituir os sis-
temas de impressão Berkeley e System V. É mantido pela Apple desde 
2007, ano em que contratou o Michael Sweet – desenvolvedor do CUPS 
– e comprou seu código-fonte.
O objetivo do CUPS é transformar um computador Linux em um 
servidor de impressão, que possui mecanismos para receber, pro-
cessar e encaminhar para a impressora correspondente trabalhos de 
impressão de usuários. Com ele é possível visualizar relatórios de im-
pressão, quantidade de páginas impressas e, ainda, relatar erros na 
impressão. “O CUPS tem uma arquitetura cliente/servidor. Um servi-
dor CUPS é um spooler que mantém filas de impressão para clientes” 
(NEMETH; SNYDER; HEIN, 2007, p. 527).
Inicialmente, foi desenvolvido com protocolo LDP, que permite reali-
zar a impressão pela rede utilizando TCP/IP, mas com o passar do tem-
po se tornou ultrapassado e incompatível com o padrão de alguns fabri-
cantes. O gerenciador passou a utilizar o IPP (Internet Printing Protocol), 
e após essa mudança a maioria das distribuições Linux adotou o CUPS 
como gerenciador de impressão padrão.
46 Sistema operacional II M
at
er
ia
l p
ar
a 
us
o 
ex
cl
us
ivo
 d
e 
al
un
o 
m
at
ric
ul
ad
o 
em
 c
ur
so
 d
e 
Ed
uc
aç
ão
 a
 D
is
tâ
nc
ia
 d
a 
Re
de
 S
en
ac
 E
AD
, d
a 
di
sc
ip
lin
a 
co
rre
sp
on
de
nt
e.
 P
ro
ib
id
a 
a 
re
pr
od
uç
ão
 e
 o
 c
om
pa
rti
lh
am
en
to
 d
ig
ita
l, s
ob
 a
s 
pe
na
s 
da
 L
ei
. ©
 E
di
to
ra
 S
en
ac
 S
ão
 P
au
lo
.
Para a instalação do CUPS, basta seguir a sequência abaixo:
$ sudo apt-get install cups 
Após a instalação, é necessário fazer a configuração. Para isso, va-
mos iniciar o serviço do CUPS.
Iniciar serviço:
$ sudo /etc/init.d/cups start
PARA SABER MAIS 
Caso queira compartilhar impressoras na rede local com o Windows, é 
necessário instalar o pacote do samba (software que permite a comuni-
cação entre os sistemas operacionais Linux e Windows na rede). Assim, 
é possível conectar impressoras compartilhadas em redes Windows e 
Linux.
 
Uma vez iniciado o serviço do CUPS, vamos configurá-lo. Para isso, 
abra o navegador e entre no endereço “http://localhost:631”. 
No menu de administração, devemos acessar “Administração”. 
Dessa forma, podemos gerenciar impressoras, inserir novas impres-
soras (tanto locais como de rede) e gerenciar a fila de impressão em 
“Gerenciar trabalhos”.
Por exemplo, para adicionar uma impressora de rede Lexmark T644 
que está no departamento de RH e compartilhar pelo nosso CUPS, 
clique em “Adicionar impressora”, selecione “Protocolo de Impressão 
47Linux – administração de sistema
M
aterial para uso exclusivo de aluno m
atriculado em
 curso de Educação a Distância da Rede Senac EAD, da disciplina correspondente. Proibida a reprodução e o com
partilham
ento digital, sob as penas da Lei. ©
 Editora Senac São Paulo.
para Internet (ipp)” e clique em “Continuar”. Em “Conexão”, digite o 
hostname ou IP da impressora no formato “ipp://impressora01” e clique 
em “Continuar”. Na tela seguinte, insira o nome “Impressora_RH”, des-
crição “Lexmark T644” e, em localização, “RH”. Selecione “Compartilhar 
essa impressora” e clique em “Continuar”. Agora, selecione o fabricante 
Lexmark e clique em “Continuar”. Selecione o modelo “Lexmark T644 
Foomatic/Postscript (recommended) (en)” e clique em “Adicionar im-
pressora”. Na próxima tela será solicitado que defina os padrões da 
impressora, como tamanho do papel, bandeja de origem do papel, im-
pressão frente-e-verso e resolução. Clique em “Definir opções padrão”. 
Pronto, nossa impressora está instalada e disponível para uso.
IMPORTANTE 
Nem toda impressora é compatível com o Linux! Pesquise no site do 
fabricante se o seu modelo apresenta essa compatibilidade.
 
4 Gerenciamento de usuários e grupos
O Linux possui ferramentas para gerenciamento de grupos e usuá-
rios, bem como de seus privilégios de acesso.
Um usuário possui uma identificação única no sistema, e essa identi-
ficação define como será o acesso do usuário aos arquivos e diretórios.
As informações dos usuários ficam armazenadas no arquivo “/etc/
passwd”. “O arquivo ‘/etc/passwd’ representa uma lista de usuários re-
conhecidos pelo sistema” (NEMETH; SNYDER; HEIN, 2007, p. 66).
48 Sistema operacional II M
at
er
ia
l p
ar
a 
us
o 
ex
cl
us
ivo
 d
e 
al
un
o 
m
at
ric
ul
ad
o 
em
 c
ur
so
 d
e 
Ed
uc
aç
ão
 a
 D
is
tâ
nc
ia
 d
a 
Re
de
 S
en
ac
 E
AD
, d
a 
di
sc
ip
lin
a 
co
rre
sp
on
de
nt
e.
 P
ro
ib
id
a 
a 
re
pr
od
uç
ão
 e
 o
 c
om
pa
rti
lh
am
en
to
 d
ig
ita
l, s
ob
 a
s 
pe
na
s 
da
 L
ei
. ©
 E
di
to
ra
 S
en
ac
 S
ão
 P
au
lo
.
Quadro 1 – Composição de um usuário
Login Cada usuário possui um nome, que deve ser único.
Password A senha que o usuário irá utilizar para acessar o sistema.
UID (User Identification)
Identificação do usuário, é o número do usuário. Esse número, junto do 
login, é usado para definir o acesso ao sistema.
GID (Group Identification) Número que define o grupo ao qual o usuário pertence.
Comment Descrição do usuário.
Home Directory Path Diretório em que os arquivos do usuário ficam armazenados.
Shell
Programa executado quando o usuário acessa o sistema. Geralmente, é o 
interpretador de comandos que será utilizado. O padrão é o “/bin/bash”.
Os principais comandos relacionados à composição dos usuários 
são os descritos a seguir.
Adicionar usuários ao sistema:
# useradd ou adduser 
Remover usuário do sistema:
# userdel# usermod
Definir ou alterar a senha de um usuário:
# passwd
Um grupo é um conjunto de usuários. Cada grupo também possui 
uma identificação única, que define o acesso. Geralmente, os adminis-
tradores de sistema controlam o acesso por grupos.
49Linux – administração de sistema
M
aterial para uso exclusivo de aluno m
atriculado em
 curso de Educação a Distância da Rede Senac EAD, da disciplina correspondente. Proibida a reprodução e o com
partilham
ento digital, sob as penas da Lei. ©
 Editora Senac São Paulo.
Quadro 2 – Composição de um grupo
Name Nome do grupo. Esse nome deve ser único.
PasswordSenha, caso o grupo tenha uma para controlar o acesso.
GID (Group Identification) O número de identificação do grupo.
User list Lista dos usuários que fazem parte do grupo.
Os principais comandos para os grupos são os apresentados a 
seguir.
Criar um grupo no sistema:
# groupadd # groupdel
Modificar dados de um grupo:
# groupmod
5 Privilégios e permissões de acesso
Por ser um sistema multiusuário, o Linux pode receber acessos de 
vários usuários simultaneamente. Caso o computador esteja ligado a 
uma rede, é possível que o usuário acesse arquivos e até mesmo execu-
te aplicações gráficas de maneira remota.
Para esse tipo de acesso funcionar bem, sem que um usuário preju-
dique o trabalho de outro, é necessário o recurso de permissão de ar-
quivos. É possível estipular regras e comandos que definem quem pode 
acessar determinado arquivo ou determinada pasta.
50 Sistema operacional II M
at
er
ia
l p
ar
a 
us
o 
ex
cl
us
ivo
 d
e 
al
un
o 
m
at
ric
ul
ad
o 
em
 c
ur
so
 d
e 
Ed
uc
aç
ão
 a
 D
is
tâ
nc
ia
 d
a 
Re
de
 S
en
ac
 E
AD
, d
a 
di
sc
ip
lin
a 
co
rre
sp
on
de
nt
e.
 P
ro
ib
id
a 
a 
re
pr
od
uç
ão
 e
 o
 c
om
pa
rti
lh
am
en
to
 d
ig
ita
l, s
ob
 a
s 
pe
na
s 
da
 L
ei
. ©
 E
di
to
ra
 S
en
ac
 S
ão
 P
au
lo
.
As restrições consistem em um conjunto de três permissões de 
acesso (ler, gravar e executar) e três grupos de acesso (dono, grupo e 
outros).
Para verificar suas permissões e seus privilégios, utilize o comando:
$ ls -l
Ao digitar o comando, o sistema retornará a informação representa-
da na imagem.
Figura 8 – Permissões de acesso
r w x r w x- ou d r w x
GrupoTipo de arquivo
Ler Grav
ar
Exe
cut
ar
Dono Outros usuários
Por exemplo:
$ ls -l /home/ederson/agenda.txt 
-rw-r--r-- 1 ederson tecinfo 58 Jan 22 2020 /home/
ederson/agenda.txt
No exemplo. o usuário “ederson”, que é o dono do arquivo “/home/
ederson/agenda.txt”, pode apenas ler (r) e editar (w). Se houver mais 
usuários no grupo “tecinfo”, eles poderão apenas ler (r).
Os significados das letras “r”, “w” e “x” são apresentados no quadro 3.
51Linux – administração de sistema
M
aterial para uso exclusivo de aluno m
atriculado em
 curso de Educação a Distância da Rede Senac EAD, da disciplina correspondente. Proibida a reprodução e o com
partilham
ento digital, sob as penas da Lei. ©
 Editora Senac São Paulo.
Quadro 3 – Permissões de acesso a arquivos e diretórios
EM ARQUIVOS EM DIRETÓRIOS
r Leitura (read) Permite ler o conteúdo do arquivo.
Permite listar conteúdo do 
diretório.
w Escrita (write)
Permite editar ou remover o 
conteúdo do arquivo.
Permite criar e remover arquivos 
dentro do diretório.
x Execução (execute)
Permite executar o arquivo como 
um programa.
Permite executar comando “cd” 
para entrar no diretório.
– Não habilitado (hífen)
Quando o caractere “-“ estiver presente, isso significará que o usuário não 
pode ler, escrever ou executar.
Essas permissões também podem ser representadas por números, 
o que facilita quando precisamos alterar:
 • leitura (read) = 4;
 • gravação (write) = 2;
 • execução (execute) = 1.
Entenda melhor no quadro 4.
Quadro 4 – Permissões de acesso
PERMISSÃO DESCRIÇÃO REPRESENTAÇÃO NUMÉRICA
r w x Acesso total 4+2+1 = 7
- - - Nenhum acesso 0
r - - Somente leitura 4
r w - Leitura + gravação 4+2 = 6
r - x Leitura + execução 4+1 = 5
- w - Gravação 2
- w x Gravação + execução 2+1 = 3
- - x Execução 1
Fonte: Nemeth, Snyder e Heinl (2007).
52 Sistema operacional II M
at
er
ia
l p
ar
a 
us
o 
ex
cl
us
ivo
 d
e 
al
un
o 
m
at
ric
ul
ad
o 
em
 c
ur
so
 d
e 
Ed
uc
aç
ão
 a
 D
is
tâ
nc
ia
 d
a 
Re
de
 S
en
ac
 E
AD
, d
a 
di
sc
ip
lin
a 
co
rre
sp
on
de
nt
e.
 P
ro
ib
id
a 
a 
re
pr
od
uç
ão
 e
 o
 c
om
pa
rti
lh
am
en
to
 d
ig
ita
l, s
ob
 a
s 
pe
na
s 
da
 L
ei
. ©
 E
di
to
ra
 S
en
ac
 S
ão
 P
au
lo
.
6 Comando de privilégios e permissões de 
acesso 
Agora que sabemos como são as permissões dos arquivos e diretó-
rios, vamos aprender como alterar essas permissões.
6.1 Comando “chmod”
“O comando ‘chmod’ modifica as permissões em um arquivo. 
Somente o proprietário do arquivo e o superusuário podem alterar suas 
permissões” (NEMETH; SNYDER; HEIN, 2007, p. 60).
O comando “chmod” (change mod – modo alterar) é utilizado para mo-
dificar as permissões de leitura, gravação e execução de arquivos e pastas.
Um exemplo do comando “chmod” é o seguinte:
$ chmod 644 /home/ederson/agenda.txt
Com essa combinação (“644”), estamos informando que o dono do 
arquivo “agenda.txt” terá permissão de leitura e gravação. Os outros 
usuários que pertencem ao mesmo grupo terão acesso somente leitura, 
assim como os demais usuários que não estão no mesmo grupo.
Podemos utilizar letras para definir as permissões. A mesma permis-
são (“644”) utilizando letras ficaria assim:
$ chmod u=rw,g=r,o=r /home/ederson/agenda.txt
Nesse exemplo, “u=rw” se refere à permissão do dono, “g=r” é refe-
rente à permissão do grupo e “o=r” se refere à permissão dos demais 
usuários. Repare que utilizamos vírgula para separar as permissões.
53Linux – administração de sistema
M
aterial para uso exclusivo de aluno m
atriculado em
 curso de Educação a Distância da Rede Senac EAD, da disciplina correspondente. Proibida a reprodução e o com
partilham
ento digital, sob as penas da Lei. ©
 Editora Senac São Paulo.
6.2 Comando “chown”
“O comando ‘chown’ modifica o usuário proprietário e o grupo pro-
prietário de um arquivo” (NEMETH; SNYDER; HEIN, 2007, p. 61).
O comando “chown” (change owner – alterar dono) é utilizado para 
modificar o dono de um arquivo ou diretório. Esse dono pode ser um 
usuário e um grupo.
Um exemplo do comando “chown”:
$ chown suporte:grpinfo /tmp/notas.txt
Nesse exemplo, “suporte” é o novo dono do arquivo “notas.txt”, e 
“grpinfo” é o grupo que terá acesso. Repare que utilizamos dois-pontos 
para separar o dono e o grupo.
6.3 Comando “chgrp”
“O Unix tradicional utiliza um comando distinto, ‘chgrp’, para modificar 
o grupo proprietário de um arquivo. O Linux também tem esse ‘chgrp’. 
Ele funciona da mesma maneira que o ‘chown’” (NEMETH; SNYDER; 
HEIN, 2007, p. 61).
O comando “chgrp” (change group – alterar grupo) é utilizado para 
modificar o grupo proprietário do arquivo. Por exemplo:
$ chgrp grprh /tmp/notas.txt
Onde “grprh” é o novo grupo que terá acesso ao arquivo “notas.txt”.
54 Sistema operacional II M
at
er
ia
l p
ar
a 
us
o 
ex
cl
us
ivo
 d
e 
al
un
o 
m
at
ric
ul
ad
o 
em
 c
ur
so
 d
e 
Ed
uc
aç
ão
 a
 D
is
tâ
nc
ia
 d
a 
Re
de
 S
en
ac
 E
AD
, d
a 
di
sc
ip
lin
a 
co
rre
sp
on
de
nt
e.
 P
ro
ib
id
a 
a 
re
pr
od
uç
ão
 e
 o
 c
om
pa
rti
lh
am
en
to
 d
ig
ita
l, s
ob
 a
s 
pe
na
s 
da
 L
ei
. ©
 E
di
to
ra
 S
en
ac
 S
ão
 P
au
lo
.
Considerações finais
Após este capítulo, o leitor será capaz de instalar programas utilizan-
do o gerenciador de pacotes da sua distribuição, assim como instalar a 
partir de pacotes já compilados, e ter uma noção de como instalar pelo 
código-fonte.
O conhecimento sobre os editores de texto é fundamental para a ad-
ministração do Linux, pois eles possibilitam editar arquivos de configu-
ração e scripts, entre outros.
O leitor será capaz de instalar o CUPS, que gerencia todo o sistema 
de impressão no Linux, além de configurar impressoras de rede com-
partilhada, incluindo impressoras instaladas no Windows. Lembrando 
que é necessário atentar para a compatibilidade das impressoras com 
o sistema operacional.
Gerenciar usuários e permissões de arquivos e pastas é uma tarefas 
do dia a dia do administrador do sistema.
Referências
KDE. KWrite. Disponível em: https://kde.org/applications/utilities/org.kde.kwri-
te. Acesso em: 6 fev. 2020. 
Nano-editor. The GNU nano editor FAQ. Disponível em: https://www.nano-edi-
tor.org/. Acesso em: 6 fev. 2020.
NEMETH, Evi; SNYDER, Gary; HEIN, Trent. Manual completo do Linux:

Mais conteúdos dessa disciplina