Академический Документы
Профессиональный Документы
Культура Документы
Outro detalhe muito importante que por muito tempo, tive alunos que
faziam curso preparatrio para tirar a certificao LPIC-1 e vinham sem
alguns conhecimentos prvios. No incio do curso eu perguntava o que
eles conheciam sobre Linux, se sabiam instalar, usar um editor de texto,
instalar um programa, criar um usurio, configurar a rede no Linux e a
resposta muitas vezes era negativa. Ento vi a necessidade de criar um
material/curso para fechar essa lacuna. E no somente para aqueles que
faro um curso mais avanado, mas para aqueles que querem entrar com o
p direito nesse mundo fantstico.
Objetivos do Curso
Pr-requisitos:
Debian 8
CentOS 7
Convenes
Iremos indicar caminhos de arquivos como /var e /tmp dessa forma mesmo,
com grande destaque, em vermelho mesmo. E tambm quando um comando ou
opo for exemplificado em meio de um pargrafo.
Os comandos , ser for para serem executados como usurio root vira antes
o smbolo # (cerquilha, jogo da velha, tralha, ou at como j ouvi
falarem, lasanha - vai entender).
Histrico do Unix
O uso do UNIX dentro da AT&T cresceu tanto que foi criado um grupo de
suporte interno ao sistema. Nessa poca, a AT&T no comercializava o
sistema, mas fornecia cpias do cdigo-fonte as universidades, para fins
educacionais. Entre 1977 e 1982, os Laboratrios Bell, combinaram vrias
verses do UNIX AT&T (Thompson) em um nico sistema chamado UNIX System
III. Este sistema evoluiu at chegar ao System V, para o qual a AT&T
comprometeu-se a dar suporte em 1983.
Histrico do Linux
O Linux uma variante open source do Unix, foi criado por um jovem
universitrio finlands chamado Linus Torvalds, em 1991, e de l para c
tornou-se o segundo sistema operacional mais utilizado no mundo, atrs
apenas do Microsoft Windows. E hoje, o sistema operacional que mais
cresce , principalmente no meio acadmico e no ambiente corporativo,
onde, devido a seu baixo custo (aliado ao alto desempenho e
confiabilidade tpicos de sistemas Unix-like) tem merecido cada vez mais
ateno dos departamentos de TI.
Path: gmdzi!unido!fauern!ira.uka.de!sol.ctr.columbia.edu!
zaphod.mps.ohio-state.edu!wupost!uunet!mcsun!news.funet.fi!hydra!klaava!
torvalds
From: torva...@klaava.Helsinki.FI (Linus Benedict Torvalds)
Newsgroups: comp.os.minix
Subject: What would you like to see most in minix?
Summary: small poll for my new operating system
Keywords: 386, preferences
Message-ID: <1991Aug25.205708.9541@klaava.Helsinki.FI>
Date: 25 Aug 91 20:57:08 GMT
Organization: University of Helsinki
Lines: 20
Hello everybody out there using minix -
I'm doing a (free) operating system (just a hobby, won't be big and
professional like gnu) for 386(486) AT clones. This has been brewing
since april, and is starting to get ready. I'd like any feedback on
things people like/dislike in minix, as my OS resembles it somewhat
(same physical layout of the file-system (due to practical reasons)
among other things).
I've currently ported bash(1.08) and gcc(1.40), and things seem to work.
This implies that I'll get something practical within a few months, and
I'd like to know what features most people would want. Any suggestions
are welcome, but I won't promise I'll implement them :-)
Linus (torva...@kruuna.helsinki.fi)
PS. Yes - it's free of any minix code, and it has a multi-threaded fs.
It is NOT protable (uses 386 task switching etc), and it probably never
will support anything other than AT-harddisks, as that's all I have :-(.
DISTRIBUIES LINUX
RED HAT
DEBIAN
SLACKWARE
O projeto GNU foi iniciado em 1984. O objetivo era criar um clone livre
do Unix, mas que no utilizasse seu cdigo-fonte. Em 1990, quase todas
as aplicaes a nvel de usurios estavam prontas, como um compilador C,
o gcc, o editor emacs, etc.
A Free Software Foundation foi criada para manter o projeto GNU. Uma
organizao sem fins lucrativos.
Mas o que Software Livre?
O termo software livre, pode gerar alguma confuso, pois a palavra free
tanto pode significar gratuidade como liberdade. Contudo, software livre
refere-se a liberdade dos usurios em executar, copiar, distribuir,
estudar, modificar e melhorar o programa. Mais precisamente, este termo
refere-se a quatro tipos de liberdade, para os usurios do software
livre:
Pode ser utilizado em vrias reas, desde para o usurio domestico ate
servidores de e-mail, bando de dados e sistemas distribudos.
Totalmente suportado
Foi feito login com um usurio , que nesse caso se chama aluno. Como o
login foi realizado com sucesso, o sistema forneceu um prompt de
comando. Veja que como se trata de um usurio comum , apareceu um ($).
Tambm exibido uma mensagem padro , que pode ser personalizada.
Existem dois tipos de usurios no Linux: O administrador, conhecido como
root, e no seu prompt aparece um # (cerquilha, jogo da velha, tralha,
j at ouvi falar em lasanha, como voc preferir). E os outros usurios,
que sofrem as restries do root. Segue tela de login como root.
Consoles Virtuais
Iniciando o Xorg
# startx
Sua senha pode ser alterada aps o primeiro login. Pode ser feita em
ambiente grfico, ou diretamente na linha de comando:
passwd <nome_de_usurio>
# passwd base
Informe a senha atual e depois a nova senha duas vezes. Pronto! A senha
foi alterada.
Hardware Suportado
Hoje o Linux suporta 7 arquiteturas de processador: x86, Itanium2,
AMD64/EMG4T, S/390, zSeries, iSeries e pSeries.
Instalando o Debian 8
Selecione Novo no VirtualBox para criar uma nova mquina Virtual. D o nome que
preferir e selecione em tipo Linux e a verso Debian (64-bit).
Na tela Tamanho de memria aceite o valor indicado. No meu caso foi de 768 MB.
Como ser uma VM (Virtual Machine) para testes pode ser um valor baixo mesmo.
Na tela Disco rgido selecione Criar um novo disco rgido virtual agora. Depois
clique no boto Criar.
Aps isso escolha o tipo de arquivo, selecione VDI. Clique no boto Continuar.
Selecione Dinamicamente alocado para Armazenamento em disco fsico. Assim ele
deve crescer medida em que utilizado, a melhor opo.
Em Localizao e tamanho do arquivo informe um nome para o disco rgido que
ser criado. Nessa tela tambm voc pode selecionar o tamanho do disco. Eu
aumentei para 12 GB. Mas voc pode deixar o padro que vm que de 8 GB. Aps
isso clique em Criar.
A nova mquina virtual ir aparecer no canto esquerdo. Selecione-a e clique em
Configuraes. Faremos algumas alteraes.
Ir aparecer as vrias opes. Primeiro clique em Sistema.
Escolha um nome para essa mquina. Para esse material eu escolhi lnx01. Clique
em Continuar.
Ser solicitado a criao de um usurio comum. Vamos dar o nome de aluno nessa
tela que o Nome completo para o novo usurio e na prxima o nome do usurio
simples. Mantenha aluno.
Insira a senha baseti. O sistema ir pedir para inserir a senha novamente, faa
e clique em Continuar.
Em Configurar o relgio selecione a rea que voc estiver e pressione a tecla
Enter. Em seguida ele instala alguns componentes adicionais.
De volta a tela para Particionar discos, selecione o ESPAO LIVRE. Vamos usar o
restante do disco para a partio raiz, o famoso /.
Clique em Criar uma nova partio, d um ENTER. Em seguida deixe o restante do
espao em disco, selecione Continuar e novamente d um ENTER.
A partio tambm pode ser Primria. D um ENTER. A prxima tela ele j traz
padro o sistema de arquivos como EXT4 e o ponto de montagem como o /. Basta
apenas selecionar Finalizar a configurao da partio. D mais um ENTER.
Selecione Finalizar o particionamento e escrever as mudana no disco e d um
ENTER.
Em seguida ele pergunta se voc quer Escrever as mudanas nos discos. Vai com
f, selecione Sim. Ele vai formatar, criar os sistemas de arquivos que voc
selecionou anteriormente e depois instalar o sistema bsico.
O sistema ir reclamar que Nenhum espelho de rede foi selecionado. Responda
Sim, dizendo que voc vai Continuar sem um espelho de rede.
Em telas anteriores ele instala alguns pacotes e pede para voc participar de
um concurso de pacotes. Marque no. Como estamos utilizando uma imagem mnima
do Debian que vm s com componentes bsicos (ideal para comear) o restante da
instalao ser bem rpida.
Ento ele pergunta se para Instalar o carregador de inicializao GRUB no
registro mestre de inicializao. Responda Sim.
Agora informe em qual dispositivo ele deve ser instalado. Selecione /dev/sda.
Pronto! A Instalao estar completa. D um ENTER em Continuar. O sistema ir
finalizar a instalao. Ele ir dar boot novamente e se tudo der certo ir
apresentar a tela de inicializao do GRUB.
Pronto. Agora basta fazer Login e vamos comear os trabalhos.
Consideraes Ps-Instalao - Debian 8
Com o sistema instalado devemos agora fazer umas configuraes para
podermos instalar e remover programas e realizar alguns testes. Desligue
a mquina virtual por favor.
Vamos habilitar uma segunda placa de rede apenas para trabalhar como
host-only (Placa de rede exclusiva de hospedeiro), onde podemos conectar
nossas mquinas virtuais. Ento habilite o adaptador 2 como na figura
abaixo:
Inicie novamente a VM do Debian 8. Faa o login como usurio root e a
senha baseti2016. Digite o comando ifconfig. Veja que apenas foi
configurada a interface de loopback, conhecido como lo.
Editando:
# nano /etc/apt/sources.list
# apt-get update
Apenas para testar vamos instalar o editor VIM ( quer ser usado em
breve) e o programa cmatrix.
# cmatrix
Avanando
http://www.debian.org/releases/stable/amd64/ch04s05.html.es
http://d-i.debian.org/manual/en.i386/apb.html
Instalando o CentOS 7
Como visto anteriormente, temos que criar uma VM no VirtualBox para o
CentOS 7. Siga os passos anteriores feitos para a instalao do Debian.
https://www.centos.org/download/
Depois de dar o boot, a primeira pergunta para selecionar a linguagem que ser
usada durante a instalao. Escolha sua linguagem e clique em Continue.
A prxima tela trs a seo principal da instalao. Exibe os itens como DATE &
TIME, KEYBOARD (teclado), LANGUAGE SUPPORT, INSTALLATION SOURCE, SOFTWARE
SELECTION, INSTALLATION DESTINATION e NETWORK & HOSTNAME. Basicamente voc pode
ir em cada seo listada, completar as tarefas e clicar em Begin Installation
quando terminar. Se voc no escolher nada, ser selecionado as opes padro.
Para LANGUAGE SUPPORT, voc ir escolher sua linguagem. Quando escolher, clique
no cone em azul chamado Done no canto superior esquerdo.
No pule a seo NETWORK & HOSTNAME. Por padro a rede no est habilitada, por
isso altere para habilitar sua interface. Nessa tela voc tambm pode
configurar o hostname do computador. Quando terminar clique em Done.
Na seo DATE & TIME, voc pode configurar o seu relgio e localizao. Tenha
em mente que se voc no configurou sua interface de rede na seo NETWORK &
HOSTNAME, sua estao no poder usar o servidor de horas NTP.
A seo INSTALLATION DESTINATION obrigatria. Voc deve selecionar o disco
para instalar o CentOS bem como o esquema de particionamento. Voc pode deixar
o esquema padro ou customizar.
Por padro o CentOS seleciona Minimal Install. Isto significa que ele no ter
interface grfica, apenas os pacotes padres. Se voc preferir pode selecionar
um ambiente desktop. Mas nesse material vamos manter o mnimo. Clique em Done.
Aps voc clicar em Begin Installation, voc ser levado para a segunda seo
principal no procedimento de instalao , onde voc deve configurar a senha do
root e criar um usurio comum.
Para a senha do root, escolha uma bem segura. O sistema vai indicar se sua
senha fraca. Clique em Done quando terminar. Em seguida faa as configuraes
do usurio comum.
Consideraes Ps-Instalao - CentOS 7
Vamos habilitar uma segunda placa de rede apenas para trabalhar como
host-only (Placa de rede exclusiva de hospedeiro), onde podemos conectar
nossas mquinas virtuais. Ento habilite o adaptador 2 como foi feito
para o Debian 8 anteriormente.
# ip addr show
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
inet 127.0.0.1/8 scope host lo
valid_lft forever preferred_lft forever
inet6 ::1/128 scope host
valid_lft forever preferred_lft forever
2: enp0s3: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP
qlen 1000
link/ether 08:00:27:dd:09:93 brd ff:ff:ff:ff:ff:ff
inet 10.0.2.15/24 brd 10.0.2.255 scope global dynamic enp0s3
valid_lft 86241sec preferred_lft 86241sec
inet6 fe80::a00:27ff:fedd:993/64 scope link
valid_lft forever preferred_lft forever
3: enp0s8: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP
qlen 1000
link/ether 08:00:27:86:7a:e8 brd ff:ff:ff:ff:ff:ff
inet 192.168.50.100/24 brd 192.168.50.255 scope global enp0s8
valid_lft forever preferred_lft forever
inet6 fe80::a00:27ff:fe86:7ae8/64 scope link
valid_lft forever preferred_lft forever
Vimos que a placa de rede do CentOS foi designada como enp0s3. O que
isso significa? Primeiro de tudo, sabemos que en representa ethernet, e
essa denominao dada para placas de rede com fio. O resto no nome
representa a posio da placa de rede no barramento do sistema. Para
ficar mais explicito vamos ver a sada do comando lspci.
# dhclient enp0s3
# ip addr show
Se tudo estiver ok, vamos atualizar o sistema com o comando yum update.
# yum -y update
# reboot
Vamos instalar uma srie de grupos de pacotes que sero teis no futuro.
Para isso faa o login como root e digite:
# ip addr list
# ifconfig
# cp /etc/sysconfig/network-scripts/ifcfg-enp0s3 /etc/sysconfig/network-
scripts/enps03.BAK
# nano /etc/sysconfig/network-scripts/ifcfg-enp0s3
ONBOOT=yes
# cp /etc/sysconfig/network-scripts/ifcfg-enp0s3 /etc/sysconfig/network-
scripts/enps08
Editar o arquivo /etc/sysconfig/network-scripts/enps08 e deixar como no
exemplo abaixo
# nano /etc/sysconfig/network-scripts/enps08
TYPE=Ethernet
BOOTPROTO=none
DEFROUTE=no
PEERDNS=no
PEERROUTES=no
IPV4_FAILURE_FATAL=no
IPV6INIT=yes
IPV6_AUTOCONF=yes
IPV6_DEFROUTE=yes
IPV6_PEERDNS=yes
IPV6_PEERROUTES=yes
IPV6_FAILURE_FATAL=no
NAME=enp0s8
DEVICE=enp0s8
ONBOOT=yes
IPADDR=192.168.50.100
NETMASK=255.255.255.0
Configurar hardware;
Instalar sistema operacional;
Instalar aplicativos de software;
Implementar sistemas de segurana;
Configurar o kernel;
Criar usurios e grupos;
Atualizar software;
Tuning para melhorar performance do sistema;
Recuperao de desastres;
Capacidade de planejamento;
Administrao da rede.
Cada item deve ser separado por espao! Um erro muito comum para os
jovens discpulos padaws (iniciantes) no separar os comandos das
opes e argumentos.
Exemplos:
# ls --help
# ls -Fla
# mkdir /tmp/teste/curso -p
# cd /etc/; ls -l ; date
# man ls
# info shutdown
Cada diretrio tem uma funo, seguindo uma padronizao da FHS, para
que voc possa trabalhar em qualquer distribuio Linux.
# pwd
/usr/local
Caminho Absoluto
Exemplo:
# cd /usr/share/doc
# cd /proc/sys/net/ipv4/
Caminho Relativo
# cd /usr/local
# cd baseti
Comandos de Navegao do Sistema
O comando cd
# cd /home/andre/linux
# cd projetos/doc
Diretrios especiais:
# ls -a
# cd ..
# cd
# cd -
Olha a loucura
O comando ls
Exemplos:
# ls -i teste.txt ( mostra o inode identificador do arquivo )
# ls -l teste.txt ( formato longo )
# ls -a teste.txt ( lista todos os arquivos incluindo ocultos )
# ls -F teste.txt (coloca um smbolo no fim do arquivo indicando seu
tipo )
# ls -R ( recursivo todos os diretrios )
# ls -l full-time ( data completa da modificao )
# ls -l sort=size ( ordena por tamanho )
Perceba a diferena nos prximos comandos:
# ls -Ham
# ls -and
# ls -Rotti
# ls -alSh /var/log/auth*
O comando cp
Mais que um arquivo pode ser copiado de uma vez, mas o destino deve ser
um diretrio e apenas um.
Mais que um arquivo pode ser movido de uma vez, mas o destino deve ser
um diretrio e apenas um.
Exemplos:
# cp /etc/services /tmp
# mv /tmp/services .
# mv services baseti_curso
# cp /etc/services /tmp
# mv /tmp/services aluno.txt
# mv aluno.txt professor.txt
Criando e Removendo Arquivos e Diretrios
# cp /etc/services /tmp
# rm /tmp/services
# mkdir linux2016
# cp /etc/services linux2016/
# rm -rf linux2016
Exemplo:
# ls -l
total 1136
-rw-r--r-- 1 root root 7973 Jan 1 11:00 terminal.png
-rw-r--r-- 1 root root 1146361 Jan 1 11:00 terminal.xwd
-rwxr-xr-x 1 root root 18 Jan 1 16:20 teste.sh
# touch teste.sh
# ls -l
total 1136
-rw-r--r-- 1 root root 7973 Jan 1 11:00 terminal.png
-rw-r--r-- 1 root root 1146361 Jan 1 11:00 terminal.xwd
-rwxr-xr-x 1 root root 18 Jan 2 15:47 teste.sh
Exemplos:
# mkdir /projeto
# mkdir web java php
# mkdir Meus Documentos
# mkdir -p /servidor/geral
# mkdir -m 755 linux
# mkdir /dados/{lpi,exercicios} -p
# mkdir {a..z}
Exemplos:
# file /etc/passwd
# file /tmp/foto01.jpg
O comando cat
Exemplos:
# cat /etc/passwd
# cat -b /etc/passwd
# cat -n /etc/passwd
# cat -evt /etc/passwd ( para descobrir espaos e caracteres especiais
indesejados )
# cat nb arquivo (numera as linhas de um arquivo especificado)
Exemplo:
# tac /etc/passwd
CRIANDO LINKS
Exemplos:
# ln -s arquivo link
# ls -s origem destino
# ln -s /home/andre/desligado /sbin/desli
# ln /exercicios/temp/arquivo1.doc link1.doc
# ln s /exercicios/temp/arquivo1.doc link1.doc
Uma observao a ser feita que links diretos (hard links) s podem ser
criados no mesmo sistema de arquivos, no mesmo disco.
Mdulo 5 - Comandos de Administrao
do Sistema
Redirecionadores de Fluxo
Exemplos:
# cat /etc/services > /home/aluno/teste.txt
# cat /etc/resolv.conf > /home/aluno/teste.txt
Canalizao (Pipe)
Exemplos:
# cat /etc/passwd | wc -l
# netstat -nat | grep :80 | grep ESTAB | wc -l
Encanamento (tee)
Exemplo:
# cat /etc/passwd | cut -d : -f1 | tee usuarios.txt
Exemplos:
# df -h
# df -hi
Todo processo que cria outros processos, chamado de processo pai. Logo
todo processo iniciado por outro chamado de processo filho. O
principal processo do sistema o INIT, que dispara vrios scripts e
servios. Existem tambm processos Zumbis, causados por falhas de
programao em programas. Voc no consegue terminar nem matar o
processo, porque ele j est morto (estilo Resident Evil).
Exemplos:
# ps
# ps l
Opes do ps:
-a : exibe todos os processos ligados a um terminal, menos do dono da
sesso.
-u : Exibe processos iniciados por determinados usurios.
-x : Lista todos os processos pertencentes ao usurio atual.
Exemplos:
# ps -aux
# ps -aux | grep apache2
# ps -ef | grep tty (utilizado no Unix)
O comando top
Principais campos
# kill -l
Exemplo:
# killall -9 apache2
Alterando a prioridade
Exemplo:
# nice -n 19 updatedb &
possvel alterar a prioridade de um processo em execuo. Usa-se o
comando renice.
Exemplo:
# renice -10 -p 1920
Nveis de Prioridade
Exemplos:
# updatedb &
# jobs
# jobs -l
# fg 1
<CRTL + Z>
# jobs
# bg 1
Localizando arquivos e diretrios
Critrios comuns:
Exemplos
# find /home -iname aluno
# find / -iname SERVICES
# find /var -size +10M -exec ls -lh {} \;
# find / -regex ^/etc/p[a-z]*$
Usando o locate
O comando which
Exemplos:
# which iptables
# which ls
Exemplo:
# whereis iptables
Exemplo:
# ls /etc/init.d
Exemplos:
# /etc/init.d/ssh stop
# netstat -nat | grep ssh
# /etc/init.d/ssh start
# netstat -nat | grep ssh
Perceberam???
ou
obvio que voc tem que saber o nome do daemon n? No sabe? Digite:
# ls -l /etc/init.d.
Systemd
Estado de Servios
Palavra-Chave Descrio
loaded Arquivo de configurao da unit foi processado.
active (running) Rodando com um ou mais processos continuos.
active(exited) Concluiu com sucesso uma configurao de uma s vez.
active(waiting) Rodando mas aguardando por um evento.
inactive No est rodando, sendo executado.
enabled Ser iniciado durante o boot do sistema.
disabled No ser iniciado durante o boot do sistema.
static No pode ser ativado, mas pode ser iniciado por uma
unit ativada automaticamente.
O argumento status pode tambm ser usado para determinar se uma unit
particular est ativa e exibir se est unit est habilitada para
iniciar durante o boot.
# systemctl is-active sshd
# systemctl is-enabled sshd
Lista o estado de todas as units ativas e carregadas.A opo --all ira
adicionar units inativas.
# systemctl list-units --type=service
# systemctl list-units type=service --all
# ps -up 30118
USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND
root 30118 0.0 0.4 82560 3596 ? Ss 16:44 0:00 /usr/sbin/sshd -D
Mascaramento de servios
Exemplos:
# cp /etc/service /home/aluno
# zip aula.zip services
# ls
Extraindo o arquivo:
# unzip aula.zip
Usando o Gzip
Exemplos:
# gzip arquivo
# gzip -d arquivo.gz
# gunzip arquivo.gz
Usando o Bzip2
Exemplos:
# bzip2 arquivo
# bzip2 -d arquivo.bz2
# bunzip2 arquivo.bz2
Trabalhando com o tar
Fazendo Backup
Exemplos do tar
# tar -xvf arquivo.tar
# tar -xzvf backup1.tar.gz
# tar -xjvf backup2.tar.bz2 -C /opt
# tar -tvf backup2.tar.bz2
# tar -xjvf backup2.tar.bz2 etc/shadow
Mdulo 6 - Edio de Arquivos com VIM
Editores de Arquivos no Linux
Introduo ao VIM
forando alteraes
Sair :wq!
Salvar :w!
Abrir um arquivo sem modific-lo, mas pode ser sobrescrito com :w!
# vim -R nome_do_arquivo
Encriptar um arquivo
# vim -x nome_do_arquivo
Movendo cursor por caracter
h esquerda
j abaixo
k acima
l direita
Movendo cursor
^ : move o cursor para o inicio da linha
$ : move o cursor para o fim da linha
1G : Leva o cursor para o inicio do arquivo
G : Leva o cursor para o fim do arquivo
Linha cc dd yy
Letra cl d yl
Palavra cw dw yw
Sentena a frente c) d) y)
Sentena a traz c( d( y(
Pargrafo acima c{ d{ y{
Pargrafo abaixo c} d} y}
Colando
Use p ou P para inserir (colar) copiar dados.
Desfazendo alteraes
u desfaz as alteraes mais recentes.
U desfaz todas as alteraes na linha corrente desde que o cursor.
ctrl + r : refaz as alteraes mais recentes desfeitas (restaurar).
Numerando as linhas
:set number
Ou
: set nu
Tirando numerao
:set nonumber
Ou
:set nonu
Realizando substituio
:% s/VAR/var/g
Arquivo de configurao do VI
# vim /etc/vim/vimrc
Tutorial do Vim
# vimtutor
Mdulo 7 - Configurando a Rede no
Linux
Elementos Importantes para Configurar a Rede
Endereamento
mscara de rede
default gateway
servidores de nomes;
Endereamento
Mscara de Rede
Mscaras de Rede:
Classe A: 255.0.0.0
Classe B: 255.255.0.0
Classe C: 255.255.255.0
Gateway
Servidor de Nomes
# ifconfig -a
Agora que voc j sabe qual a placa que foi reconhecida pelo sistema
digite o primeiro comando para o Debian e o segundo para o CentOS:
# dhclient eth0
# dhclient enp0s3
# nano /etc/resolv.conf
nameserver 8.8.8.8
nameserver 4.4.4.4
Testando
# vim /etc/network/interfaces
auto eth0
iface eth0 inet dhcp
# /etc/init.d/networking stop
# /etc/init.d/networking start
# ifconfig eth0
# route -n
# cat /etc/resolv.conf
# ping -c3 www.baseti.com.br
# vim /etc/network/interfaces
auto eth0
iface eth0 inet static
address 192.168.50.2
netmask 255.255.255.0
gateway 192.168.50.1
Reiniciando a Rede
# /etc/init.d/networking stop
# /etc/init.d/networking start
# ifconfig eth0
# route -n
# cat /etc/resolv.conf
# ping -c3 www.baseti.com.br
# vim /etc/sysconfig/network-scripts/ifcfg-enp0s3
TYPE=Ethernet
BOOTPROTO=dhcp
DEFROUTE=yes
PEERDNS=yes
PEERROUTES=yes
IPV4_FAILURE_FATAL=no
IPV6INIT=yes
IPV6_AUTOCONF=yes
IPV6_DEFROUTE=yes
IPV6_PEERDNS=yes
IPV6_PEERROUTES=yes
IPV6_FAILURE_FATAL=no
NAME=enp0s3
UUID=e3c038fd-6e73-49e3-9d64-d0a8e0fa3402
DEVICE=enp0s3
ONBOOT=yes
Salve o arquivo e reinicie o servio de rede e depois faa os testes.
# /etc/init.d/networking stop
# /etc/init.d/networking start
# ifconfig enp0s3
# route -n
# cat /etc/resolv.conf
# ping -c3 www.baseti.com.br
# vim /etc/sysconfig/network-scripts/ifcfg-enp0s8
TYPE=Ethernet
BOOTPROTO=none
DEFROUTE=no
PEERDNS=no
PEERROUTES=no
IPV4_FAILURE_FATAL=no
IPV6INIT=yes
IPV6_AUTOCONF=yes
IPV6_DEFROUTE=yes
IPV6_PEERDNS=yes
IPV6_PEERROUTES=yes
IPV6_FAILURE_FATAL=no
NAME=enp0s8
DEVICE=enp0s8
ONBOOT=yes
IPADDR=192.168.50.100
NETMASK=255.255.255.0
Reiniciando a Rede
# /etc/init.d/network stop
# /etc/init.d/network start
# ifconfig enp0s8
# route -n
# cat /etc/resolv.conf
# ping -c3 www.baseti.com.br
Exemplo:
# route -n
Tabela de Roteamento IP do Kernel
Destino Roteador MscaraGen. Opes Mtrica Ref Uso Iface
0.0.0.0 10.0.2.2 0.0.0.0 UG 100 0 0 enp0s3
10.0.2.0 0.0.0.0 255.255.255.0 U 100 0 0 enp0s3
192.168.50.0 0.0.0.0 255.255.255.0 U 100 0 0 enp0s8
Exemplo:
# ping -c3 www.baseti.com.br
Exemplo:
# traceroute -n www.caixa.gov.br
traceroute to www.caixa.gov.br (200.201.172.223), 30 hops max, 60 byte packets
1 10.0.2.2 0.235 ms 0.102 ms 0.074 ms
2 189.123.56.1 27.065 ms 26.899 ms 30.224 ms
3 189.6.0.149 19.029 ms 18.904 ms 18.678 ms
4 200.241.68.229 18.561 ms 18.416 ms 187.28.141.1 18.253 ms
5 200.244.213.229 33.435 ms 200.244.213.127 35.522 ms 200.244.213.229
33.101 ms
6 200.230.252.18 37.527 ms 200.230.251.74 36.089 ms 35.935 ms
7 200.230.252.194 43.312 ms 38.215 ms 46.332 ms
8 200.244.211.171 45.967 ms 45.589 ms 45.220 ms
9 200.211.219.58 46.687 ms 45.503 ms 45.307 ms
10 10.223.238.158 58.937 ms 63.433 ms 63.144 ms
11 10.223.240.109 60.960 ms 59.963 ms 59.809 ms
12 10.223.238.85 54.009 ms 52.362 ms 48.325 ms
13 * * *
14 * * *
15 * * *
16 * * *
17 * * *
18 *
# netstat -nat
Conexes Internet Ativas (servidores e estabelecidas)
Proto Recv-Q Send-Q Endereo Local Endereo Remoto Estado
tcp 0 0 0.0.0.0:22 0.0.0.0:* OUA
tcp 0 0 127.0.0.1:25 0.0.0.0:* OUA
tcp 0 0 192.168.50.100:22 192.168.50.1:52393
ESTABELECIDA
tcp6 0 0 :::22 :::* OUA
tcp6 0 0 ::1:25 :::* OUA
Usando o APT
# Repositrio Padro/Oficiais
deb http://ftp.us.debian.org/debian/ jessie main contrib non-free
deb-src http://ftp.us.debian.org/debian/ jessie main contrib non-free
Exemplos:
# apt-get update
# apt-get safe-upgrade
# apt-get install programa
# apt-get remove programa
Usando o aptitude
Exemplos:
# aptitude update
# aptitude safe-upgrade
# aptitude search ^php.*
# apt-get install cron-apt > deixar o sistema atualizado
Usando o apt-show-versions
Usando o RPM
O RPM gerenciador padro de pacotes da Red Hat. Tem basicamente 5
modos de trabalho: Instalao de programas, remoo, atualizao,
consulta e verificao.
Instalando um programa com rpm:
# rpm -i zip-2.3.-8.i386.rpm
Usando o YUM
O gerenciado YUM semelhante ao apt-get do Debian. capaz de instalar
um programa a partir da Internet e automaticamente identificar e
instalar as dependncias desse programa. Exemplos:
No Debian
# aptitude install elinks
# elinks http://www.squid-cache.org
No CentOS
# yum install -y elinks
# elinks http://www.squid-cache.org
# cd /tmp
# wget http://www.openss7.org/repos/tarballs/strx25-0.9.2.1.tar.bz2
Por padro o wget baixa o arquivo com o mesmo nome da origem, mas
podemos mudar isso com a opo -O.
O arquivo /etc/passwd
andre:x:1000:1000:andre,,,:/home/andre:/bin/bash
# pwunconv
# cat /etc/shadow
# pwconv
# cat /etc/shadow
O arquivo /etc/shadow
1 Nome do usurio:
2 Senha criptografada.
3 Data da ltima troca de senha (Contada em dias corridos desde
01/01/1970).
4 Tempo mnimo de dias que a senha deve permanecer inalterada.
5 Tempo mximo de dias que o usurio pode ficar com a mesma senha.
6 Com quantos dias de antecedncia o sistema deve avisar que a senha
ir expirar.
7 Nmero de dias de inatividade em que o sistema deve considerar o
usurio bloqueado.
8 Uma data para a expirao automtica da conta. Utiliza o mesmo
formato do campo 3.
9 Esse ltimo campo est reservado para uso futuro.
O arquivo /etc/group
O arquivo /etc/gshadow
andre:!::
O arquivo /etc/skel
Este diretrio contm arquivos que sero copiados para o diretrio home
de novos usurios criados. Arquivos modelo.
# mkdir /etc/skell/Maildir
useradd [-u uid [-o]] [-g grupo] [-G grupo-secundrio,...] [-d home] [-s
shell] [-c comentrio] [-m [-k template]] [-f inativo] [-e expirao ]
usurio
# useradd -D
Opes do useradd
Alterando a Senha
Deletando Usurios
O comando userdel utilizado para remover usurios do sistema. O nico
parmetro disponvel o -r. Com o -r o sistema remove o usurio
especificado e o seu diretrio home. Se no utilizar o -r o
administrador ter que remover os arquivos manualmente, ou seja,
trabalho braal.
Opes do id
# groupadd treinamento
O comando groupdel remove grupos do sistema
# groupdel treinamento
# useradd -m hackers
# groupadd security
# gpasswd -a hackers security
# id hackers
Exemplo:
# groupmod -n seguranca security
Exemplo:
# gpasswd -A hackers seguranca
# su hackers
# gpasswd -a aluno seguranca
Permisses de Arquivos
# ls -l /etc/X11/
total 0
drwxr-xr-x. 2 root root 6 Ago 12 2015 applnk
drwxr-xr-x. 2 root root 6 Ago 12 2015 fontpath.d
drwxr-xr-x. 2 root root 29 Mai 12 11:29 xorg.conf.d
Continuando as explicaes
Opes:
Onde o modo :
Outros exemplos:
# chmod +x /exercicios/aula7/exemplo.txt
4 (para leitura -r )
2 (para escrita - w)
1 (para execuo - x)
Exemplos:
# stat /etc/passwd
# stat /bin/ping
Alterando grupos
# groupadd treinamento
# stat /exercicios/aula7/exemplo.txt
Exemplos:
# umask
# umask -s
# umask 013
Permisses especiais
Suid bit
Faz com o que o usurio que est executando um arquivo o faa com as
permisses do dono do arquivo e no do usurio que est lanando o
programa. Um exemplo o arquivo /bin/ping.
Suid bit
Faz com que todos os novos arquivos criados dentro do diretrio tenham o
grupo do diretrio, e no do usurio que esta criando o arquivo.
Stick bit
Bit imutvel
# cd /exercicios/aula7/
# lsattr
# chattr +i exemplo.txt
# rm -rf exemplo.txt
# chattr -i exemplo.txt
# lsttr
# rm exemplo.txt
Lembrando que o sistema de arquivo deve ser montado com suporte a ACL
habilitado. O sistema de arquivo XFS tm suporte a ACL integrado. Na
nossa instalao utilizamos o sistema de arquivos ext4, e ela j vem
habilitada por padro.
Exibindo permisses de ACL
# getfacl /tmp/andre.txt
# file: tmp/andre.txt
# owner: root
# group: root
user::rwx
user:aluno:rwx
group::r--
mask::rwx
other::r--
Um dos motivos desse material dar uma base boa para poder iniciar e
aprofundar no Linux. Voc aprendeu sobre a instalao do Linux, comandos
bsicos de gerenciamento de arquivos, editor de texto, configurar a
rede, instalar programas, gerenciar processos e usurios.