Top Banner
XVIII Semana da Computação Minicurso de Linux Reginaldo de Matias
43

Minicurso linux

Apr 11, 2017

Download

Technology

Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Minicurso linux

XVIII Semana da ComputaçãoMinicurso de Linux

Reginaldo de Matias

Page 2: Minicurso linux

Cronograma● A origem do Linux● Software Livre e Licença GNU● Principais distribuições (distros)● Árvore de Diretórios● Sistemas de Arquivos● Editor de texto Vim● Principais comandos● Usuários e Grupos● Permissões de acesso● Redirecionamento de Entrada e Saída (E/S)● Compactadores e Descompactadores● Gerenciamento de Pacotes● Gerenciamento de Janelas● Certificações

Page 3: Minicurso linux

A origem do LinuxO núcleo e kernel do Linux foi desenvolvido por Linus Torvalds do Departamento de Ciência da Computação da Universidade de Henlsink na Filândia. Linus Torvalds iniciou o projeto em particular, inspirado no sistema Minix, um pequeno sistema Unix desenvolvido pelo Tannenbaum. Resumiu-se em suas palavras: “um Minix melhor que o Minix”

Page 4: Minicurso linux

Software Livre e Licença GNUA GPL é licença com maior utilização por parte de projetos de software livre, em grande parte devido à sua adoção para o projeto GNU e o Kernel Linux. GNU/Linux Em termos gerais um software livre, se baseia-se nas 4 liberdades:- A liberdade de executar o programa para qualquer propósito (liberdade #0)-A liberdade de estudar como o programa funciona e adaptá-lo as suas necessidades (liberdade #1). O acesso ao código fonte é um pré-requisito para essa finalidade.-A liberdade de redistribuir, inclusive vender, cópias de modo que você possa ajudar ao seu próximo. (liberdade #2).-A liberdade de aperfeiçoar o programa, e liberar estas modificações, de modo que toda a comunidade se beneficie. (liberdade #3). O acesso ao código fonte é um pré-requisito para essa finalidade. “Software livre não é cerveja gratis”. (Richard Stallman)

Page 5: Minicurso linux

Principais distribuições (distros) [1/2]

Distribuição Linux é composta por uma coleção de pacotes de aplicativos mais o kernel (núcleo) do sistema operacional.Linux é apenas o nome do kernel do sistema operacional. Isto significa que todas as distribuições utilizam o mesmo kernel, mas podem incluir diversos pacotes de acordo com o objetivo do mantenedor.O Linux é um sistema operacional Unix-like, ou seja, seu comportamento é similar ao sistema operacional UNIX (multitarefa e multiusuário).Distros: Slackware, Debian, RedHat, CentOS, SUSE, openSUSE, Fedora, Ubuntu, Mint, Arch, Manjaro, Gentoo, Funtoo.

Page 6: Minicurso linux

Principais distribuições (distros) [2/2]

Page 7: Minicurso linux

Árvore de diretórios/bin Diretório dos binários principais dos usuários

/boot Diretório com os arquivos do sistema de boot

/dev Diretório com os arquivos de dispositivos

/etc Diretório com os arquivos de configuração do sistema

/home Diretório dos usuários comuns do sistema

/lib Diretório com as bibliotecas essenciais do sistema e módulos do kernel

/media Diretório de montagem de dispositivos

/mnt Diretório de montagem de dispositivos (mesmo do /media)

/opt Diretório usado para instalar pacotes não oficiais da distro ou por conta do usuário

/sbin Diretório com os arquivos binários usados para administração do sistema

/srv Diretório para dados de serviços oferecidos pelo sistema

/tmp Diretório para arquivos temporários

/usr Diretório com aplicativos e arquivos utilizados pelo usuários comuns do sistema

/var Diretório com arquivos de dados variáveis (spool, logs, cache, e-mail, squid)

/root Diretório home do root

/proc Diretório com informações sobre os processos do sistema

Page 8: Minicurso linux

Sistemas de ArquivosPrincipais sistemas de arquivosUm sistema de arquivos é um conjunto de estruturas lógicas que permite o sistema operacional controlar o acesso a um dispositivo de armazenamento como disco rígido, pendrive, cd-rom, etc. Diferentes sistemas operacionais pode usar diferentes sistemas de arquivos.O sistema de arquivos utilizado no Windows é NTFS e no GNU/Linux é ext4, dentre outros que tem suporte.Os sistemas de arquivos principais são: ext3, ext4, ReiserFSext3: O ext3 é a versão do ext2 com journing, que proporciona uma recuperação muito mais rápida, fazendo com que o ext3 seja considerado sistemas de arquivos bom e estável.ext4: O ext4 é o sucessor do ext3, foi criado uma série de extensões retrocompatíveis para remover os limites de armazenamento em 64 bits e outras melhorias adicionadas de desempenho.ReiserFS: O ReiserFS é o sistema de arquivos que supera o ext3 e ext4 em perfomance de desempenho em 10-15 vezes. Recomendado para uso em sistemas de arquivos grandes, com utilização de arquivos pequenos. Porém tem uma desvantagem nesse sistema de arquivos, não possui quota de disco para limitar o uso do espaço em disco.

Page 9: Minicurso linux

Editor de texto Vim [1/2]

O editor de texto Vim possui trabalha com dois modos de operação: interativo e inserçãoO modo interativo ESC e os atalhos de comandosO modo inserção i para começar a escrever

Atalho para copiar, recortar e copiar textoESCPosicione o cursor no início do texto que deseja copiar ou recortarTecle vUse as setas de direção, marque o textoTecle dPosicione o cursor no ponto que deseja colarTecle pPara copiar ao invés de recortar, utilize o y no lugar do d

Atalhos Descrição

0 Ir para o início da linha

$ Ir para o final da linha

g Ir para o início do arquivo

G Ir para o final do arquivo

:n Ir para linha enésima

:x Salva e sai do editor

Page 10: Minicurso linux

Editor de texto Vim [2/2]

Page 11: Minicurso linux

Principais comandos GNU/Linux [1/15]uname: comando que exibe as informações do sistema Linuxuname -a

echo: comando que exibe informações na saída padrão seguindo uma nova linha

echo “Use Linux!”

file: comando que informa qual tipo informado no parâmetro.

cd: comando usado para acessar e mudar de diretório corrente. Utilizando para navegar entre diretórios no terminal.

pwd: comando que retorna o diretório atual.

clear: comando para limpar dados do terminal

Page 12: Minicurso linux

Principais comandos GNU/Linux [2/15]

Opções Descrição

-i Torna o comando interativo

-r Copia recursivamente arquivos dentro dos subdiretórios da origem

-p Preserva atributos (dono, data, hora, permissões) do arquivo de origem no arquivo de destino

-v Modo verbose

cp: comando para copiar arquivos

cp [opções] origem destino

Page 13: Minicurso linux

Principais comandos GNU/Linux [3/15]

mv: comando que tem função de mover arquivo de origem para destino. Seu uso é quase igual ao comando cp.

mv [opções] origem destino

Opções Descrição

-i Modo interativo

-f Força sobreescrever o arquivo de destino

-v Modo verbose

Page 14: Minicurso linux

Principais comandos GNU/Linux [4/15]

ls: comando para listar arquivos que estão dentro do diretório corrente.

ls argumentos

Opções Descrição

-a Não esconde arquivos começados por .

-l Usa o formato lista em detalhes

Page 15: Minicurso linux

Principais comandos GNU/Linux [5/15]

mkdir: comando para criar um diretório.

mkdir [opções] nome-diretorio

Opções Descrições

-m Seta permissão equivalente ao chmod

-p Mantém integridade

-v Modo verbose

Page 16: Minicurso linux

Principais comandos GNU/Linux [6/15]

diff: comando que compara dois arquivos

diff [opções] arquivo1 arquivo2

Opções Descrição

-a Trata os arquivos como texto e os compara linha a linha

-i Ignora as diferenças entre maiúsculas e minúsculas

-q Exibe apenas as diferenças entre arquivos

Page 17: Minicurso linux

Principais comandos GNU/Linux [7/15]

du: comando que exibe informações sobre o espaço usado nos diretórios.

du [opções]

Opções Descrição

-k Exibe o espaço ocupado em Kbytes

-m Exibe o espaço ocupado em Mbytes

-h Exibe o equivalente das opções (-k, -m). Modo humano

Page 18: Minicurso linux

Principais comandos GNU/Linux [8/15]

df: comando que exibe informações sobre o espaço livre utilizado pelas partições do sistema.

df [opções]

Opções Descrição

-k Exibe o espaço ocupado em Kbytes

-m Exibe o espaço ocupado em Mbytes

-h Exibe o equivalente das opções (-k, -m). Modo humano

Page 19: Minicurso linux

Principais comandos GNU/Linux [9/15]

head: comando que exibe as primeiras linhas do arquivo.

head [opções] arquivo

Opções Descrição

-c [num[bkm]] Exibe os primeiros (num) bytes, Kbytes, Mbytes do arquivo

-n [num] Exibe as (num) primeiras linhas do arquivo

-v Exibe informações do comando

Page 20: Minicurso linux

Principais comandos GNU/Linux [10/15]

tail: comando que exibe as últimas linhas do arquivo.

tail [opções] arquivo

Opções Descrição

-c [num[bkm]] Exibe os primeiros (num) bytes, Kbytes, Mbytes do arquivo

-n [num] Exibe as (num) últimas linhas do arquivo

-f Continua indefinidamente ler caracteres ao final do arquivo

-v Exibe informações do comando

Page 21: Minicurso linux

Principais comandos GNU/Linux [11/15]

wc: comando que conta linhas, palavras e caracteres do arquivo.

wc [opções] arquivo

Opções Descrição

-c Conta caracteres

-l Conta linhas

-w Conta palavras

Page 22: Minicurso linux

Principais comandos GNU/Linux [12/15]

whereis: comando utilitário que lista a localização de programas binários, fontes e documentações.

whereis [opções] pacote

Opções Descrição

-b Lista apenas arquivos binários

-m Lista apenas arquivos de documentação

-s Lista apenas os arquivos fontes

Page 23: Minicurso linux

Principais comandos GNU/Linux [13/15]

whatis: comando utilitário que mostra um resumo sobre um ou mais comandos.

whatis [opções] comando

Opções Descrição

-h Exibe informações de auto ajuda

Page 24: Minicurso linux

Principais comandos GNU/Linux [14/15]

rm: comando que remove arquivos e diretórios. Pode usar o caracter * (curinga).

rm [opções] arquivo

Opções Descrição

-f Força ignorando arquivos inexistente

-i Modo interativo

-r, -R ou --recursive Modo recursivo

* Caracter curinga utilizado em expressão regular que significa tudo

Page 25: Minicurso linux

Principais comandos GNU/Linux [15/15]

cat: comando que exibe o que há dentro do arquivo. Concatena arquivo de entrada e saída.

cat [opções] arquivo

Opções Descrição

-b Exibe número de linhas não vazias

-n Exibe número de linhas de saída

-s Não exibe mais de uma linha em branco

Page 26: Minicurso linux

Hardlink (link simbólico)

ln: comando que cria um link simbólico de um diretório auxiliar para outro.

ln [opções] diretorio diretorio-aux

Opções Descrição

-s Cria um link simbólico

Page 27: Minicurso linux

Usuário e Grupos [1/4]

Criação de usuários

No GNU/Linux existe dois tipos de usuários

root: Administrador do Sistema. Indicado como # no terminal

seu usuário: Esse usuário é o regular e tem restrições, ou seja, apenas tem controle no seu /home/<seu-usuario>. Indicado como $ no terminal

Criar um usuário: # adduser nome-usuario

Page 28: Minicurso linux

Usuário e Grupos [2/4]

Alterar senha do usuário

passwd: Altera a senha de um usuário. Apenas seu usuário pode alterar a sua senha. Exceto o root que tem acesso total do sistema.

passwd [opções] usuario

Opção Descrição

-l Bloqueia conta de usuário

-u Desbloqueia conta de usuário

-d Elimina a senha do usuário

-n Define número mínimo de dias para expiração da conta

-x Define o número máximo de dias para expiração da conta

-w Define o número de dias com antecedência que o usuário será avisado da expiração da senha

-i Define o número de dias que o usuário receberá o aviso de expiração de senha

-S Exibe uma informação resumida do estado da senha da conta do usuário

Page 29: Minicurso linux

Usuário e Grupos [3/4]

Exclui uma conta de usuário

userdel: Exclui uma conta de usuário

userdel [opções] usuario

Opções Descrição

-f Força a remoção do usuário mesmo estando conectado no sistema

-r Remove o diretório /home/usuario

Page 30: Minicurso linux

Usuário e Grupos [4/4]

Criação de Grupos

addgroup: Este comando adiciona um grupo ao sistema. O grupo é criado sem usuários

Criar o grupo

addgroup nome-grupo

Adicionar usuário ao grupo criado

addgroup usuario grupo

Page 31: Minicurso linux

Permissões de Acesso [1/3]

Permissões de acesso a arquivos e diretórios

Permissões de acesso protege o sistema de arquivos Linux do acesso indevido de usuários não autorizados.

Usando seu usuário regular, tente apagar algum arquivo dentro da raiz /

O princípio de segurança no sistema GNU/Linux é definir os arquivos por donos, grupos e outros usuários.

Dono: Usuário que mantém a integridade do arquivo e diretório criado.

Grupo: Grupo de usuários que podem acessar os arquivos, mesmo sendo de outro dono.

Outros: Aqueles usuários que não são donos e não pertencem ao grupo de arquivo e diretório.

Page 32: Minicurso linux

Permissões de Acesso [2/3]

Tipo de permissão de acesso

Os tipos de permissões de acesso ao dono, grupo e outros usuários, é aplicado 3 permissões básicas: leitura, escrita e execução.

Permissão Mnemônico Arquivo Diretório

Leitura r Acesso ao conteúdo do arquivo Lista o conteúdo do diretório

Escrita w Acesso alterar o conteúdo do arquivo

Cria e remove arquivo no diretório

Execução x Acesso de execução do arquivo Acessar usando o cd no diretório

Page 33: Minicurso linux

Permissões de Acesso [3/3]

Manipulação de arquivos e diretórios em número octal

Número Descrição

0 Nenhuma permissão de acesso

1 Permissão de execução (x)

2 Permissão de gravação (w)

3 Permissão de gravação e execução (rw)

4 Permissão de leitura (r)

5 Permissão de leitura e execução (rx)

6 Permissão de leitura e gravação (rw)

7 Permissão de leitura, gravação e execução (rwx)

Page 34: Minicurso linux

Redirecionamento de Entrada e Saída

Operador Descrição

> Redireciona para saída

>> Redireciona para o fim do arquivo

< Redireciona para entrada

<< Redireciona para entrada e mantém aberta até que seja digitado algum caracter de EOF (fim do arquivo). Exemplo: Ctrl+D

>& Redireciona a saída com erros

| Redireciona a saída de um comando para entrada de outro comando

tee Redireciona o resultado para saída padrão e para o fim do arquivo. Precisa usar em conjunto o |

Page 35: Minicurso linux

Compactadores e Descompactadores [1/2]

Compactando e descompactando no formato .tar.gz

tar [opções] arquivo-compactado.tar.gz diretorio-origem

Opções Descrição

-c Cria um arquivo tar

-v Lista arquivos em modo verbose

-f Usa o arquivo especificado para gravação

-x Descompacta o arquivo pelo tar

Page 36: Minicurso linux

Compactadores e Descompactadores [2/2]

Compactando com ZIP

zip [opções] arquivo-compactado.zip diretorio-origem

Descompactando com UNZIP

unzip [opções] arquivo.zip OU unzip [opções] arquivo.zip -d diretorio-destino

Opções Descrição

-r Compacta arquivos e subdiretórios

-e Permite encriptar o conteúdo do arquivo .zip através de uma senha

-f Somente substitui um arquivo compactado existente dentro do arquivo .zip somente se a versão mais nova é a atual

F Repara um arquivo .zip danificado

Opções Descrição

-c Descompacta os arquivos para saída padrão

-f Descompacta somente os arquivos que existem no disco e os mais novos que os atuais

-l Lista arquivos existentes dentro do arquivo .zip

-P Permite descompactar arquivos .zip com senha

Page 37: Minicurso linux

Gerenciador de Pacotes [1/3]

Instalando pacotes na distro Debian e derivados

No arquivo /etc/apt/sources.list estão as referências dos repositórios que será consultado pelo APT

APT

DPKG

Comando Descrição

apt-get update Atualiza a lista de pacotes disponíveis no repositório

apt-get upgrade Atualiza os pacotes já instalados

apt-get install <pacote> Instala um pacote com as respectivas dependências

apt-get remove <pacote> Remove um pacote com as respectivas dependências

apt-get dist-upgrade Atualiza versão da distribuição

dpkg -i pacote.deb Instala um pacote.deb

dpkg -r pacote.deb Remove um pacote.deb

dpkg -c pacote.deb Consulta o conteúdo do pacote.deb

dpkg -l Lista os pacotes instalados

Page 38: Minicurso linux

Gerenciador de Pacotes [2/3]

Instalando pacotes na distro RHEL/CentOS e derivados

No arquivo /etc/yum.conf estão as referências dos repositórios que será consultado pelo YUM

YUM

RPM

Comando Descrição

yum check-update Verifica se há atualizações disponíveis

yum update Atualiza a lista de pacotes no repositório

yum install <pacote> Instala um pacote com as respectivas dependências

yum remove <pacote> Remove um pacote com as respectivas dependências

yum info <pacote> Exibe informações do pacote

rpm -i pacote.rpm Instala um pacote.rpm

rpm -r pacote.rpm Remove um pacote.rpm

rpm -U pacote.rpm Atualiza um pacote.rpm

rpm -ivh pacote.rpm Instala um pacote.rpm em modo verbose

Page 39: Minicurso linux

Gerenciamento de Pacotes [3/3]

Modo tradicional em qualquer distro

Após o download do código fonte do pacote, geralmente no formato .tar.gz

$ tar -xzvf pacote.tar.gz

Checar as dependências do pacote

$ ./configure

Senão ocorrer nenhum erro de dependências, segue para próximo passo

Compilar o pacote

$ make

Por fim a instalação do pacote

# make install

Page 40: Minicurso linux

Gerenciadores de Janelas (X11)

O gerenciador de janelas controla o posicionamento e aparência das janelas dentro do servidor X em uma interface gráfica.

Atualmente existe centenas de gerenciadores de janelas para Linux, entre as mais comuns são: Gnome, KDE, XFCE, LXDE, Mate (fork do Gnome2), Unity, Fluxbox, OpenBox.

No Linux é possível ter mais de um gerenciador de janelas (ambiente gráfico) instalados, marcando qual gerenciador de janelas que deseja usar no gerenciador de login.

Page 41: Minicurso linux

Certificações Linux [1/2]

LPI

A certificação LPI são divididos em 3 níveis

LPIC-1: Administrador Linux nível Júnior (exames 101 e 102)

LPIC-2: Administrador Linux nível Pleno (exames 201 e 202)

LPIC-3: Administrador Linux nível Sênior (Especialista) (exames 300, 303 ou 304)

Cada exame possui 60 questões, a pontuação é de 200 a 800, para conseguir êxito nos exames da LPI, o candidato deve obter maior do que 500 em cada exame.

Provas são eletrônicas pela Prometric e Vue

Ementa de cada exame da LPI

https://www.lpi.org/certification/get-certified-lpi/

Page 42: Minicurso linux

Certificações Linux [2/2]

Red Hat

Lista dos exames de certificação da Red Hat

https://www.redhat.com/pt-br/services/all-certifications-exams

Os exames são hand-ons, o que o torna os melhores indicadores de sua proficiência.

Como é realizado o exame da Red hat ?

O exame é realizado em uma estação de teste individual desenvolvida pela Red Hat.

Page 43: Minicurso linux

Referências

Guia foca: http://www.guiafoca.org/

Viva o Linux: https://www.vivaolinux.com.br

Mundo da Computação Integral: https://mundodacomputacaointegral.blogspot.com.br/