Minicurso linux
-
Upload
reginaldo-de-matias -
Category
Technology
-
view
21 -
download
0
Transcript of Minicurso linux
XVIII Semana da ComputaçãoMinicurso 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 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”
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)
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 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.
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
Editor de texto Vim [2/2]
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
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/