SlideShare uma empresa Scribd logo
1 de 43
Baixar para ler offline
XVIII Semana da Computação
Minicurso de Linux
Reginaldo de Matias
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
A origem do Linux
O 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”
Software Livre e Licença GNU
A 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)
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.
Principais distribuições (distros) [2/2]
Á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
Sistemas de Arquivos
Principais sistemas de arquivos
Um 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, ReiserFS
ext3: 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.
Editor de texto Vim [1/2]
O editor de texto Vim possui trabalha com dois modos de operação: interativo e
inserção
O modo interativo ESC e os atalhos de comandos
O modo inserção i para começar a escrever
Atalho para copiar, recortar e copiar texto
ESC
Posicione o cursor no início do texto que deseja copiar ou recortar
Tecle v
Use as setas de direção, marque o texto
Tecle d
Posicione o cursor no ponto que deseja colar
Tecle p
Para 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
Editor de texto Vim [2/2]
Principais comandos GNU/Linux [1/15]
uname: comando que exibe as informações do sistema Linux
uname -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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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.
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
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)
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 |
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
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
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
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
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
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.
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/
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.
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/

Mais conteúdo relacionado

Mais procurados (20)

Complemento rodrigo f ormatado
Complemento rodrigo f ormatadoComplemento rodrigo f ormatado
Complemento rodrigo f ormatado
 
725
725725
725
 
Linux comandos diversos
Linux   comandos diversosLinux   comandos diversos
Linux comandos diversos
 
Comandos linux
Comandos linuxComandos linux
Comandos linux
 
Linux permissoes de arquivos e diretorios
Linux   permissoes de arquivos e diretoriosLinux   permissoes de arquivos e diretorios
Linux permissoes de arquivos e diretorios
 
Comandos do linux
Comandos do linuxComandos do linux
Comandos do linux
 
Comandos Linux Parte 2
Comandos Linux Parte 2Comandos Linux Parte 2
Comandos Linux Parte 2
 
Comandos Unix
Comandos UnixComandos Unix
Comandos Unix
 
Aula 10 semana
Aula 10 semanaAula 10 semana
Aula 10 semana
 
Aula 11 semana
Aula 11 semanaAula 11 semana
Aula 11 semana
 
Introdução Linux
Introdução LinuxIntrodução Linux
Introdução Linux
 
Linux - Bruno Oliveira 12ºL
Linux - Bruno Oliveira 12ºLLinux - Bruno Oliveira 12ºL
Linux - Bruno Oliveira 12ºL
 
Introdução aos comandos Linux
Introdução aos comandos LinuxIntrodução aos comandos Linux
Introdução aos comandos Linux
 
Comandos linux
Comandos linuxComandos linux
Comandos linux
 
Diretórios linux
Diretórios linuxDiretórios linux
Diretórios linux
 
Linux comandos gerais e servidores de rede
Linux   comandos gerais e servidores de redeLinux   comandos gerais e servidores de rede
Linux comandos gerais e servidores de rede
 
Dispositivos de Bloco
Dispositivos de BlocoDispositivos de Bloco
Dispositivos de Bloco
 
Slide minicursocalourosufpa2011
Slide minicursocalourosufpa2011Slide minicursocalourosufpa2011
Slide minicursocalourosufpa2011
 
Estrutura de diretorios
Estrutura de diretoriosEstrutura de diretorios
Estrutura de diretorios
 
Comandos Linux Parte 1
Comandos Linux Parte 1Comandos Linux Parte 1
Comandos Linux Parte 1
 

Destaque (6)

Trabalho Linux
Trabalho LinuxTrabalho Linux
Trabalho Linux
 
Introdução ao Linux
Introdução ao LinuxIntrodução ao Linux
Introdução ao Linux
 
Windows vs Linux
Windows vs LinuxWindows vs Linux
Windows vs Linux
 
Linux para leigos
Linux para leigos Linux para leigos
Linux para leigos
 
Linux semsegredos
Linux semsegredosLinux semsegredos
Linux semsegredos
 
iOS PPT
iOS PPTiOS PPT
iOS PPT
 

Semelhante a Minicurso linux

Linux-formatado.pdf
Linux-formatado.pdfLinux-formatado.pdf
Linux-formatado.pdfssuserf964b1
 
Aula - Comandos Linux - Parte 1
Aula - Comandos Linux - Parte 1Aula - Comandos Linux - Parte 1
Aula - Comandos Linux - Parte 1Leo Amorim
 
Comandos Linux Parte 1
Comandos Linux Parte 1Comandos Linux Parte 1
Comandos Linux Parte 1Leo Amorim
 
Linux x Windowns
Linux x WindownsLinux x Windowns
Linux x WindownsSENAC RIO
 
Sistema Operacional GNU/Linux
Sistema Operacional GNU/LinuxSistema Operacional GNU/Linux
Sistema Operacional GNU/LinuxPedro Neto
 
Fundamentos de linux
Fundamentos de linuxFundamentos de linux
Fundamentos de linuxPedro Neto
 
(01) intro+inicializacao+boot loader+fhs
(01) intro+inicializacao+boot loader+fhs(01) intro+inicializacao+boot loader+fhs
(01) intro+inicializacao+boot loader+fhsAnderson Lago
 
Sistemas Operacionais - 06 - Sistemas Operacionais Linux
Sistemas Operacionais - 06 - Sistemas Operacionais LinuxSistemas Operacionais - 06 - Sistemas Operacionais Linux
Sistemas Operacionais - 06 - Sistemas Operacionais LinuxMauro Duarte
 
Sistemas Operacionais - Gnu/Linux Gerenciamento de Arquivos
Sistemas Operacionais - Gnu/Linux Gerenciamento de ArquivosSistemas Operacionais - Gnu/Linux Gerenciamento de Arquivos
Sistemas Operacionais - Gnu/Linux Gerenciamento de ArquivosLuiz Arthur
 
Linux - Sobre a Disciplina + Introdução ao Linux
Linux - Sobre a Disciplina + Introdução ao LinuxLinux - Sobre a Disciplina + Introdução ao Linux
Linux - Sobre a Disciplina + Introdução ao LinuxFrederico Madeira
 
Introdução ao linux
Introdução ao linuxIntrodução ao linux
Introdução ao linuxFilipe Jesus
 
Introdução ao Linux
Introdução ao LinuxIntrodução ao Linux
Introdução ao LinuxTzveDyor
 

Semelhante a Minicurso linux (20)

Linux-formatado.pdf
Linux-formatado.pdfLinux-formatado.pdf
Linux-formatado.pdf
 
Aula 10 semana
Aula 10 semanaAula 10 semana
Aula 10 semana
 
Aula - Comandos Linux - Parte 1
Aula - Comandos Linux - Parte 1Aula - Comandos Linux - Parte 1
Aula - Comandos Linux - Parte 1
 
Comandos Linux Parte 1
Comandos Linux Parte 1Comandos Linux Parte 1
Comandos Linux Parte 1
 
Linux x Windowns
Linux x WindownsLinux x Windowns
Linux x Windowns
 
Linux Ubuntu
Linux   UbuntuLinux   Ubuntu
Linux Ubuntu
 
Sistema Operacional GNU/Linux
Sistema Operacional GNU/LinuxSistema Operacional GNU/Linux
Sistema Operacional GNU/Linux
 
Fundamentos de linux
Fundamentos de linuxFundamentos de linux
Fundamentos de linux
 
OpenSuse
OpenSuseOpenSuse
OpenSuse
 
So-mod-4
So-mod-4So-mod-4
So-mod-4
 
(01) intro+inicializacao+boot loader+fhs
(01) intro+inicializacao+boot loader+fhs(01) intro+inicializacao+boot loader+fhs
(01) intro+inicializacao+boot loader+fhs
 
Sistemas Operacionais - 06 - Sistemas Operacionais Linux
Sistemas Operacionais - 06 - Sistemas Operacionais LinuxSistemas Operacionais - 06 - Sistemas Operacionais Linux
Sistemas Operacionais - 06 - Sistemas Operacionais Linux
 
Sistemas Operacionais - Gnu/Linux Gerenciamento de Arquivos
Sistemas Operacionais - Gnu/Linux Gerenciamento de ArquivosSistemas Operacionais - Gnu/Linux Gerenciamento de Arquivos
Sistemas Operacionais - Gnu/Linux Gerenciamento de Arquivos
 
Linux - Sobre a Disciplina + Introdução ao Linux
Linux - Sobre a Disciplina + Introdução ao LinuxLinux - Sobre a Disciplina + Introdução ao Linux
Linux - Sobre a Disciplina + Introdução ao Linux
 
Aprendendo linux
Aprendendo linuxAprendendo linux
Aprendendo linux
 
Curso Linux
Curso LinuxCurso Linux
Curso Linux
 
Comandos do linux
Comandos do linuxComandos do linux
Comandos do linux
 
Introdução ao linux
Introdução ao linuxIntrodução ao linux
Introdução ao linux
 
Introdução Linux
Introdução LinuxIntrodução Linux
Introdução Linux
 
Introdução ao Linux
Introdução ao LinuxIntrodução ao Linux
Introdução ao Linux
 

Minicurso linux

  • 1. XVIII Semana da Computação Minicurso de Linux Reginaldo de Matias
  • 2. 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
  • 3. A origem do Linux O 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”
  • 4. Software Livre e Licença GNU A 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)
  • 5. 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.
  • 7. Á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
  • 8. Sistemas de Arquivos Principais sistemas de arquivos Um 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, ReiserFS ext3: 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.
  • 9. Editor de texto Vim [1/2] O editor de texto Vim possui trabalha com dois modos de operação: interativo e inserção O modo interativo ESC e os atalhos de comandos O modo inserção i para começar a escrever Atalho para copiar, recortar e copiar texto ESC Posicione o cursor no início do texto que deseja copiar ou recortar Tecle v Use as setas de direção, marque o texto Tecle d Posicione o cursor no ponto que deseja colar Tecle p Para 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
  • 10. Editor de texto Vim [2/2]
  • 11. Principais comandos GNU/Linux [1/15] uname: comando que exibe as informações do sistema Linux uname -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
  • 12. 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
  • 13. 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
  • 14. 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
  • 15. 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
  • 16. 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
  • 17. 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
  • 18. 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
  • 19. 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
  • 20. 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
  • 21. 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
  • 22. 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
  • 23. 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
  • 24. 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
  • 25. 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
  • 26. 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
  • 27. 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
  • 28. 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
  • 29. 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
  • 30. 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
  • 31. 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.
  • 32. 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
  • 33. 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)
  • 34. 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 |
  • 35. 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
  • 36. 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
  • 37. 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
  • 38. 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
  • 39. 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
  • 40. 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.
  • 41. 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/
  • 42. 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.
  • 43. 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/