Backend Python - Linux - Módulo 01

Fazer download em pdf ou txt
Fazer download em pdf ou txt
Você está na página 1de 43

Backend Python

Daniel Santos
Agenda

1. Introdução ao módulo de Linux


2. Porque Linux
3. Distribuições linux
a. Para uso pessoal
b. Versões utilizadas em servidores
4. Como permissões funcionam em Linux
Porque Linux?

● Seguro
● Estavel
● Roda em qualquer lugar
● Gratis
● Suporte
Distribuições Linux

Há muitas versões Linux disponíveis no Mercado, distribuições para uso pessoal


com interfaces amigáveis como por exemplo o ubuntu que chamamos de
Desktop

E também encontramos distribuições enterprise que são utilizadas para


servidores
Diferenças entre versões

Servidor Desktop

● Navegação através do terminal ● Similar ao Windows, possui interface


● Mais recurso alocado para execução de grafica
tarefas
Diferenças entre versões
Uso Pessoal
Uso Comercial
SSH - Secure Shell Protocol

● O SSH é um protocolo de rede para o usuário administrador acessar,


remotamente seus servidores.
● A porta padrão é a 22 e o tipo de conexão é via TCP
Principais diretórios linux

● / “Root,” O topo da hierarquia das pastas


● /bin Arquivos binários
● /etc Arquivos de configuração do sistema
● /home Diretórios do seu home como Documentos, Downloads etc...
● /opt Arquivos opcionais, ou pastas para armazenar arquivos de aplicativos
● /tmp Pasta para uso temporário, geralmente deletada quando vc faz um reboot
● /usr Programas e arquivos do usuário que não são utilizados pelo sistema
● /var Pasta para armazenamento de dados, logs
Principais diretórios linux
Principais diretórios linux
Comandos básicos linux

● pwd -> onde estamos


● cd .. -> sobe um nível no diretório
● ls -> listar arquivos
● cd -> acessar algum diretório
● mkdir -> criar pastas
● touch ->criar arquivos
● ps aux -> processos rodando
O Comando Find

find [path...] [expression]


find /home -name hello-world.py
O Comando Find -> Arquivos

● name pattern busca arquivos com o nome especificado


find /home -name hello-world.py
● iname pattern igual ao -name, mas ignora letras maiusculas e
minusculas
find /home -iname hello-world.py
● ls detalha informações de cada arquivo encontrado
find /home -name python -ls
O Comando Find -> Diretórios

Para encontrar diretórios precisamos adicionar o parâmetro -d


find / -type d -name “apt” -ls

Ou
find / -type d -iname “apt” -ls
Para ignorar diretorios com maiusculas e minusculas
Como Permissões funcionam em Linux

● Identificacao do funcionario
● Cargo e Funcao
● Acesso liberado as áreas da sua
empresa
Como Permissões funcionam em Linux

● Sala de data center tem


acesso restrito somente a
usuarios especificos
Como Permissões funcionam em Linux

● Algumas áreas possuem livre


acesso
Como Permissões funcionam em Linux
Como Permissões funcionam em Linux

Em Linux cada arquivo e diretório possuem um dono, toda vez que criamos um
arquivo automaticamente nosso usuário é atribuído como dono do arquivo ou
diretório, temos algumas classificações e níveis diferente de permissões em
Linux.

Podemos quebrar essas permissões em 3 partes nas quais veremos a seguir


Leitura -> READ
Escrita -> Write
Execução -> Run
Como Permissões funcionam em Linux

Somente o sudo ou usuários administradores tem permissão


para alterar privilégios de outros arquivos ou diretórios

sudo vim /etc/sudoers


Como Permissões funcionam em Linux

“execute” permite que usuários executem arquivos. E também


acessem diretórios
Categorias de Permissões

Symbol Permission
u User
g Group
o Other
a All
Grupos

● Usuários estão em pelo menos um grupo


● Usuários podem pertencer a mais de um grupo
● Grupos são usados para organizar usuários
● O comando groups <username> mostra os grupos do
usuário
● Usuários administradores possuem o grupo wheel que
tem permissão de acesso como root
Grupos
Adicionando Usuário em um Grupo

sudo usermod -a -G <nome-do-grupo> <nome-do-usuário>


sudo usermod -a -G finance-team adminuser

OBS: para ativar grupos, é preciso que o usuário deslogue e


logue novamente
Mudando Permissões

Item Descrição

chmod comando base para mudar a permissão


ugoa usuário, grupo, outros e all
+-= adicionar, subtrair ou modificar permissão
rwx Read, Write, Execute
Mudando Permissões

sudo chmod <level da permissão> <diretório>


sudo chmod g=w+r+x finance/

Para mudarmos a permissão para arquivos e subdiretórios,


podemos adicionar o -R (recursivo)
sudo chmod -R g=w+r+x finance/
O Editor de textos Vi

● Possui diversas funcionalidades avançadas


● Não é intuitivo
● Requer um tempo para se familiarizar com os comandos
O Editor de textos Vi

● vi <nome do arquivo> -> para abrir o arquivo


● vim <nome do arquivo> -> mesmo que o vi, mas com mais
funcionalidades
Vi Modo de Inserção

i Inserir na posição do cursor.


I Inserir no começo da linha.
a Acrescentar depois do cursor.
A Acrescentar no final da linha do cursor.
Vi Modo de Alteração

:w Writes (saves) the file.


:w! Forces the file to be saved.
:q Quit.
:q! Quit without saving changes.
:wq! Write and quit.
:x Same as :wq.
Nano Editor de Texto

● Nano é mais simples


● Fácil de aprender
● Mais intuítivo
Copiando arquivos e diretórios

cp <nome do arquivo> <nome do diretório de destino>


cp hello-world.py ../Java

Para copiar diretórios precisamos incluir o -r


cp -r <nome do diretório> <nome do diretório de destino>
cp -r java Python/
Movendo arquivos e diretórios

mv <nome do arquivo> <nome do diretório de destino>


cp hello-world.py ../Java

Para mover diretórios não precisamos incluir o -r


mv <nome do diretório>/ <nome do diretório de destino>/
mv java/ Python/
Deletando arquivos e diretórios

rm <nome do arquivo>
rm hello-world.py

Para remover diretórios precisamos incluir o -r


rm -r <nome do diretório>
rm -r java

Para forçar a remoção precisamos incluir o -f


rm -rf <nome do diretório>
rm -rf java
Comandos yum - CentOS 7 e anteriores

yum search string Search for string


yum info [package] Display info
yum install [-y] package Install package
yum remove package Remove package
yum upgrade [package] Update package
Comandos rpm - Debian... Ubuntu...

apt-get install [-y] package Install package


apt-get purge package Remove package, deleting configuration
apt-get remove package Remove package, leaving configuration
Instalando Softwares no CentOS

Para manipular serviços no linux vamos utilizar o


systemctl ele é responsável por controlar pacotes e serviços
instalados dentro do /etc/

Ele é um atalho para não termos que ir no /etc/<nome-do-serviço>/


toda vez que precisarmos para ou subir um serviço

Vamos agora instalar o Apache Web Server

Você também pode gostar