Você está na página 1de 60

LPI (101 e 102) e CompTIA Linux+ (103 e 104)

Filesystem Hierarchy Standard - FHS

( /bin, /sbin, /dev, /proc, /sys, /etc ) DEVE ser montado /

/ = Root File Sistem (Tudo esta dentro dele).

/boot = kernel, Initrd, grub, efi.

/bin = Binarios para uso do Ambiente Linux - (Equivale aos exe no Windows).

/dev = Dispositivos, instancias de objetos que inserimos no dispositivo (HDD,CD...). UDEV

/etc = Arquivos de Configuração dos aplicativos instalados.

/home = Estarão os diretórios dos usuários (/home/diogo/...).

/lib = Equivale as dll do Windows, São as Bibliotecas dos binarios do /bin e do /sbin.

/media = diretório padrão para Montagem de dispositivos removíveis(USB).

/mnt = Montagem de dispositivos temporários.

/opt = Podemos instalar programas (Instalações apartir de sorce code).

/proc = Sistema de Arquivos Virtual - Extrair informações sobre o hardware e Processos


(CPUINFO).

/root = O Home do Root.

/run = Guarda arquivos que estão EM EXECUÇÃO.

/sbin = Guarda os Binários do Sistema (init, Fsck).

/srv = Não possou uma função expecífica. Servir Serviços (FTP).

/sys = Informações sobre kernel e hardware (LSPSI, LSUSB). SYSFS

/tmp = Guarda arquivos temporários utilizados por programas ou Serviços. Recurso TMP
WACTCH

/usr = Guarda arquivos BINÁRIOS, LIBs, Relacionado ao nosso usuário.

/var = Guarda informações de Logs, spool de impressão...


SISTEMAS DE ARQUIVOS

EXT2 - Antigo e descontinuado.

EXT3 - (Journal - Evita perda de dados e boot lento).

EXT4 - (Desempenho e Segurança).

XFS - (Red Hat, Gentoo, FreeBSB).

REISERFS - Distribuições Susse.

BTRFS - Esta Crescendo bastante (RAID, SubVolume, Snapshot)

SWAP - Particao para usar quando falta memoria fisica.

User --> SHELL (sh, zsh, csh, bash) --> Kernel (Núcle do S.O.)

COMANDOS LINUX

man cp = Manual do cp

man ufw = Manual do Firewall do Linux

man -k firewall = -k busca por palavas chaves no Cache. Quando não sabe o nome. ufw é o
nome do firewall

echo $SHELL = Exbibe qual é o shell executado.

ATALHOS NO TERMINAL

Ctrl + d = Desloga de um usuário.

Crtl + c = Para um processo em execução.

Crtl + z = Pausa um processo em execução.

Crtl + r =Pesquisa comandos já digitados.

Tab Tab = Completa as opções.

history = Exibe todos os comandos digitados no shell.

!! = Executa o Ultimo comando executado.

!Num.Comand = Executa o comando pelo numero no histórico.

!primeira letra = Pega o ultimo comando com a primeira letra.

!?letra = Quando não se sabe como o começo do comando.


COMANDOS LINUX

cd NOME_DA_PASTA = Navegação entre diretórios.

cd .. = Volta uma pasta.

cd - = Execulta o ultimo comando cd executado anteriormente.

pwd = Mosta o diretório atual.

cd = Volta para o /home do usuário.

cd ~ = Volta para a pasta /home do usuário.

CONCATENAÇÃO DE COMANDOS LINUX

&& = Equivale ao AND (Se o 1 clausula for verdade, vai executar a 2).

|| = Mesma coisa do OR (Se o 1 for executado, Não vai executar o 2).

; = Não é um operador, Irá só separar os comandos e executar eles em sequencia.

COMANDOS LINUX

TTY = Áreas de Trabalho EM modo TEXTO.(Multi Usuários). Crtl + Alt + F1 .. Crtl + Alt + F12

TTY padrão 0

tty = Exibe a atual tty.

who = Exibe as TTY ativas e seus Usuários.

REDIRECIONAMENTO DE COMANDOS LINUX

| = Pipe, serve para enviar um comando para outro comando ou saida.

grep = Server para filtrar uma saida.

ls | grep bz2 = Faz um ls no diretório atual, buscando apenas os bz2.

Redireciona o STDOUT do ls para o STDIN do grep

ls | grep bz2 | xargs rm -f

Estou pegando o resultado da busca do ls filtrado por arquivos bz2 e enviando esse resultado
para o xargs como parametro, depois executando o rm -f.
Ou seja, vou remover todos os aquivos que sejam bz2 informados pela saida do ls | grep bz2

Assim o comando ls | grep bz2 | xargs rm -f == rm -f *.bz2

ls /etc | tee arquivo.txt = Além de mostar na tela o resultado do ls, vai também gerar um
arquivo txt com esse resultado. O tee direciona para STDIMP e também para o ARQUIVO.

GERÊNCIAMENTO DE VARIÁVEIS NO LINUX

$ = Indica que é uma variável.

$PATH = São os BINs do Sistema Operacional.

$HOME = Exibe o home do usuário logado no momento.

$USER = Exibe o usuário que está logado no sistema.

$SHELL = Exibe o Compilador (SHELL) do usuário “/bin/bash”

$HISTFILE =

~/bash_history

$HISTSIZE = Qtd de linhas a ser armazenadas no history.

Echo $HISSIZE=1000

$PS1 =

\u@h \w\s

VARIAVEL1=VALOR = Criando uma variável local e atribuindo um valor.(Se fechar o bash,


perde).

NOME=“Diogo Menezes“

echo $NOME = Exibe o conteudo da Variável

set = Exibe as variáveis locais.

set | grep -i NOME = Pesquisando pela variável NOME na lista de variáveis.

export NOME = Transforma uma variável local em global. (Se fechar o bash, perde).

env = Exibe as variáveis globais.

env | grep -i NOME = Pesquisando pela variável NOME na lista de variáveis.

unset NOME = Comando para excluir uma variável


ps -jH = Ver que qual bash (pai, filho...) você está.

O comando bash dentro do terminal cria um bash filho do terminal (bash) aberto.

A Variável Gobal pode ser acessada tanto no bash pai, quanto no bash filho.

env -u NOME = Destroi a Variável criada. SOMENTE NA HORA(A variável continua existindo).

env -u NOME env | grep -i NOME = Vai perquisar pela variável NOME nas variáveis Globais.

ARQUIVOS IMPORTANTES PARA O GERENCIAMENTO DE USUÁRIOS DA MAQUINA.

/etc

No /etc/bashrc OU /etc/bash.bashrc

vi /etc/bash.bashrc - Você tem as configurações do bash dos usuários.

Toda vez que o Terminal é aberto esse arquivo será executado

No /etc/profile

vi /etc/profile - Toda vez que existe um loggin na maquina esse arquivo será executado.

No /home de cada usuario temos arquivos equivalentes ao supracitados.

/home/dmenezes/.bashrc = Equivalente ao /etc/bash.bashrc

Porém irá modificar apenas as configurações para o usuário,

Primeiro ele vai executar o do ETC e depois a do HOME

/home/dmenezes/.profile = /etc/profile

Porém irá modificar apenas as configurações para o usuário,

Primeiro ele vai executar o do ETC e depois a do HOME


REDIRECIONAMENTO DE COMANDOS LINUX

STDIN = Entrada de Dados via terminal (echo “Nome: Teste”)

STDOUT = Saida de comandos sem erro (mostrada no terminal; Nome: Teste ).

STDERROR = Saida de ERROS (apt uptade - Sem o sudo).

STANDINPUT = 0

STANDOUTPUT = 1

STANDERROR = 2

ls > arquivo.txt OU ls 1 > arquivo.txt = Joga o resultado do ls no arquivo.txt

lss 2> erro.txt = Joga o Erro do lss no arquivo erro.txt

ls 1>$1 = Joga na tela o resultado do ls

ls -l /etc > saida-ls.out 2> saida-ls-erro.out

ls -l {Aula, AULA}3 > saida-la.out 2>&1

Podemos direcionar um arquivo de texto para um comando

cat < arquivo.txt

HERE DOCUMENT

cat > arquivo.txt << EOF

Voce pode digitar o que quiser no arquivo.txt e quando digitar EOF ele finaliza o arquivo
e executa o comando cat no arquivo que você acabou de fazer. Pode ser qualquer
palavra chave, nesse caso escolhemos EOF

cat >> arquivo.txt << EOF

HERE STRING

cat <<< “Diogo Menezes”

Passamos uma string para a entrada de um comando. Usei a string como entrada do
comando cat.
OBS1.: apt get update 2>1 Nesse caso o Terminal entende que deve criar um arquivo 1 e
colocar nele a menssagem de erro.

OBS2.: apt get update 2>&1 Nesse caso vamos fazer a redundância de exibir na tela a
menssagem de erro.

OBS3.: ls /etc > /dev/null Nesse caso vai jogar a saida do comando no buraco negro
/dev/null

GERENCIAMENTO DO USUÁRIO ROOT

useradd / usermod / userdel

adduser

/etc/sudoers = Arquivo que lista os usuários que podem usar o sudo

%admin ALL=(ALL) ALL

%sudo ALL=(ALL:ALL) ALL

O sinal de % indica que é um grupo, ou seja o grupo SUDO pode fazer tudo (Primeiro all).

usermod -a -G sudo nome_usuario

Mantem o usuario no seu grupo (-a) e Add o usuário ao grupo sudo(-G).

getent group sudo

Verifica quem faz parte do grupo sudo.

GERENCIAMENTO DE ARQUIVOS NO LINUX - Section 4


ls = Comando para listar todos os arquivos.

ls -a = Listar todos incluindo os arquivos ocultos.

ls -l = Listar todos os arquivos com detalhes.

ls -i = Listar todos os arquivos e o seu Inod (Indice no sistema de arquivos, Não exite um
arquivos com o mesmo numero de inod, exceto se ele for um link Físico).

ls -h = Listar todos os arquivos e exibe o tamanho do arquivos em human-readable (Kb,Mb..).

ls -R = Listar todos os arquivos e de forma RECURSIVA.

cp = Comando para copiar arquivos

cp /etc/modprod.d/ /home/Copia = Copia ArquivoOrigem para ArquivoDestino. Não Exibe


Detalhes.

cp -v /etc/modprod.d/ /home/Copia = Copia ArquivoOrigem para ArquivoDestino. Exibe


Detalhes.

cp -r OU cp -R /etc/ /home/Copia = Copia ArquivoOrigem para ArquivoDestino. De forma


Recursiva.

cp -p /etc/ /Copia = Copia ArquivoOrigem para ArquivoDestino. MANTÉM as permissões e o


timestamp.

cp -d /etc/modprod.d/ /home/Copia = Copia ArquivoOrigem para ArquivoDestino. Preserva os


Links Simbólicos.

cp -b /etc/modprod.d/ /home/Copia = Copia ArquivoOrigem para ArquivoDestino. Para fazer um


Backup.

cp -a /etc/modprod.d/ /home/Copia = Copia ArquivoOrigem para ArquivoDestino. Compactar


os Arquivos.

cp -s /etc/modprod.d/ /home/Copia = Faz LINK SIMBÓLICO

find = Comando para pesquisar

find . -name Arquivo.txt = Pesquisar pelo nome do Arquivo. Diferencia Maiusculo de


Minusculo.

find . -iname Arquivo.txt = Pesquisar pelo nome do Arquivo. NÃO Diferencia Maiusculo de
Minusculo.

find . -amin = Pesquisa pelos arquivos ACESSADOS no ultimos N MINUTOS.

find . -atime = Pesquisa pelos arquivos ACESSADOS no ultimos N*24 HORAS.

find . -cmin = Pesquisa pelos arquivos ALTERADOS no ultimos N MINUTOS.


find . -ctime = Pesquisa pelos arquivos ALTERADOS no ultimos N*24 HORAS.

find . -mmin = Pesquisa pelos arquivos MODIFICADOS no ultimos N MINUTOS.

find . -mtime = Pesquisa pelos arquivos MODIFICADOS no ultimos N*24 HORAS.

find . -user gabriel = Pesquisa pelos arquivos do usuário.

find . -inum = Pesquisa pelo numero do INODE do arquivo.

find . * -print =Pesquisa todos os arquivos. Formata a exibição comando find no padrão, um
abaixo do outro, em uma lista. (SAIDA NORMAL DO COMANDO).

find . * -print0 =Pesquisa todos os arquivos. Formata a exibição comando find, um ao lado do
outro sem espaços entre os arquivos. (ALTERA A SAIDA).

find . -maxdepth 0 -iname *.txt = Pesquisa por todos os arquivos txt e Faz uma pesquiza
apenas no primeiro nível da hierarquia de arquivos.

find . -maxdepth 1 -iname *.txt = Pesquisa por todos os arquivos txt e Faz uma pesquiza
apenas no primeiro e segundo níveis da hierarquia de arquivos.

find . -maxdepth 2 -iname *.txt = Pesquisa por todos os arquivos txt e Faz uma pesquiza
apenas no primeiro, segundo e terceiro níveis da hierarquia de arquivos.

Vamos fazer uma pesquisa por todos os arquivos .txt no diretório local e em seus dois sub-
níveis, Depois vamos executar o comando cp passando esse retorno do find dentro das chaves
para o diretório test. Devemos sempre fechar o comando exec com o \;

find . -maxdepth 2 -iname *.txt -exec cp {} test/ \;

Vamos fazer uma pesquisar TODOS os DIRETORIOS com nome oi1,oi2 ou oi3, exibir e
deletar.

find / -type d -iname oi[123] -print -exec rm -rf {} \;

mkdir = Comando para criar diretórios.

mkdir NovoDiretorio = Cria um diretório (pasta).

mkdir -m 777 NovoDiretorio = Define uma permissão padrao par o diretório (tudo liberado).

mkdir -p Dir1/Dir2 = Cria um Diretório e seu subdiretório.

mkdir Dir2 Dir3 = Cria dois Diretório em um único comando.

mkdir Dir{4..9} = Cria vários diretórios em um único comando.

rmdir Diretorio = Apaga um diretório VAZIO.


rmdir -p = = Apaga um diretório e sua estrutura se VAZIO.

rm -r Diretorio = Apaga um diretório vazio ou não e seus subdiretórios.

rm -f = Força a Remoção do Diretório, mesmo que esteja em uso no momento.

rm -i = Modo INTERATIVO, Pede uma confirmação para a remoção do arquivo.

touch = Comando para Criar Arquivos.

touch Arquivo.txt = Cria o arquivo com o TimeStamp atual.

touch Arquivo.txt = Irá ATUALIZAR o TimeStamp do Arquivo criado anteriormente.

touch -a Arqiovo.txt = Altera a Data do Último ACESSO

touch -m Arqiovo.txt = Altera a Data do Último MODIFICAÇÃO

touch -t AAMMDDhhmm = INFORMO a Data do Último MODIFICAÇÃO

file = Comando para verificar os TIPOS de Arquivo.

file /etc/int.d/networking = Exibe o Tipo do arquivo (ASCI Text).

mv = Comando para MOVER / RENOMEAR arquivos ou pastas.

mv Arquivo NomeNovo = Renomeia o aquivo Arquivo para NomeNovo.

mv Arquivo Diretorio/ = Move o Arquivo Arquivo para o Diretório Diretorio.

mv = Dir1/ Dir2 = Move o diretório Dir para dentro do diretório Dir2.

mv -f = Vai forçar o comando de MOVER ou de RENOMEAR.

mv NÃO tem o -R e nem o -p

fdisk -l = Exibi os discos

dd = Comando para CONVERTER Arquivos ou fazer COPIAS BIT a BIT (Gravar ISO, Copiar
Partição).

dd if=/dev/sdb of=mbr.backup bs=512 count=1 = Fazendo um Backup da partição boot.


dd if=debian.iso of=/dev/sdb status=progress = Fazendo uma copia da ISO pro Pendrive
(Bottavel ).

dd if=/dev/zero of=/dev/sdX bs=1M

dd if=/dev/urandom of=/dev/sdX

dd = Irá fazer uma copia bit a bit.

If = Informa o local de origem.

of = Informa o local de destino.

bs = O tamanho que vc deseja copiar.

count = Quantas vezes vai copiar. (Voce poderia fazer uma copia desse arquivo mais de
uma vez).

status=progress = Mostra a copia.

echo “Diogo Menezes” > Arq1.txt

dd if=Arq1 of=Arq2.txt conv=ucase

COMPACTACAO E EXTRACAO DE ARQUIVOS

tar = Comando para juntar varios aquivos em um único arquivo.NÃO COMPACTA.

(j) Bz2 ou (z) gz = Comando utilizado em conjunto com o tar para comprimir arquivos.

Compactar Arquivos

tar = Comando para juntar arquivos em um único arquivo.

tar cvf NomeArquivo.tar PastaACompactar

c = Serve para juntar todos os arquivos em um único arquivo.

v = Serve para exibir detalhes do que esta sendo feito.

f = Serve para Apontar para o arquivo a ser compactado

p = Serve para Preservar para as informações de seg do arquivo a ser compactado

u = Serve para Add mais arquivos no tar

t = Serve para Exibir os arquivos no tar


x = Serve para Extrair os arquivos no tar

NomeArquivo.tar = Devemos informar o nome do arquivo com o final .tat

PastaACompactar = Devemos apontar para a pasta ou arquivos que queremos

O Tar = Compacta || Z ou J = Comprime

tar c(compactar) z(Gzip) j(Bzip2) v(detalhes f(apontar o arquivo ou pasta)

tar cvfp arq.tar arquivo ou pasta

tar cvfpz arq.tar.gz arquivo ou pasta

tar -ufv arq.tar arquivo ou pasta

tar cvfpj arq.tar.bz2 arquivo ou pasta --Melhor Algoritimo.

tar cvfpJ arq.tar.xz arquivo ou pasta --Melhor


Algoritimo.

zip -r(recursivo)

zip -r arq.zip arquivo ou pasta

gzip -k arq.tar = k, Manter o arq.tar. Sem ele o gzip apaga o arquivo.

bzip2 -k arq.tar = k, Manter o arq.tar. Sem ele o gzip apaga o arquivo.

Ver o Conteudo dos Arquivos

tar t(ver o que esta dentro) f(aponta o arquivo) . Ver o conteudo sem descompactar.

tar tvf arq.tar

tar tvfz arq.tar.gz

tar tvfj arq.tar.bz2

Extrair Arquivos (tar xvf Arquivo.tar)


tar x(extrair) v(detalhes) f(aponta o arquivo).

tar xvf arq.tar

tar xvfz arq.tar.gz

tar xvfj arq.tar.bz2

tar xvfJ arq.tar.xz

gunzip arq.gz

bunzip2 arq.bz2

unzip arq.zip

Convertendo TAR em GZ ou BZ2 ou XZ

gzip -k arq.tar

bzip2 -k arq.tar

xz -k arq.tar

Convertendo GZ ou BZ2 em TAR

gunzip arq.tar.gz

gzip -d arq.tar.gz

bunzip2 arq.tar.bz2

bzip2 -d arq.tar.bz2

unxz arq.tar.xz

xz -d arq.tar.xz

xzcat arquivo.xz = Ler o Arquivo Compactado sem descompactar.

bzcat arquivo.bz2 = Ler o Arquivo Compactado sem descompactar.

zcat arquivo.gz = Ler o Arquivo Compactado sem descompactar.


tar -xvf arquivo.tar.bz2 -C PartaDestino

du = Exibe o tamanho do arquivo na pasta.

du -h = Exibe o tamanho (Em Kb, Mb,Gb..) do arquivo na pasta.

du -hc = Exibe o tamanho (Em Kb, Mb,Gb..) do arquivo na pasta. E o da pasta.

du -sch * = Soma todos os arquivos da pasta e exibe o tamanho total.

cpio = Comando para COMPACTAR / COPIAR Arquivos. DEVE receber um parametro.

ls *.pdf | cpio -o > TodosPDF.cpio = O cpio recebe de uma lista de arquivos e AGRUPA.

O comando -o Serve para AGRUPAR os arquivos.

Find ./ -name “arquivo” | cpio -o | gzip > ArquivosZipados.cpio

cpio -i < TodosPDF.cpio = Comando para desagrupar os arquivos

cpio -i -d < TodosPDF.cpio = Comando para desagrupar os arquivos e criar uma pasta

gunzip -c ArquivosZipados.cpio.gz | cpio -i


INODE, SOFTLINK E HARDLINK

USER --> Soliciata ao INODE (Informações gravadas sobre o arquivo Owner, Grupo,
Permissões e o Bloco) --> Que pesquisa no DISCO

INODE = Metodo que o Linux utiliza para organizar os arquivos dentro do Sistema de
Arquivos (FHS).

Se você Copia um arquivo, vc cria um NOVO INODE

LINK SIMBÓLICO vs LINK FÍSICO

No Link Simbólico seria a mesma coisa que o atalho no Windows. O link simbólico aponta
para o Arquivo e não para o INODE. É POSSIVEL CRIAR ENTRE SISTEMAS DE ARQUIVOS
DIFERENTES

ln -s File1 Atalho_File2 = Comando para criar o Link Simbólico. File2 é um Atalho para o File1.

INODEPERMISSÕES Owner Group TAM DATA

1968429 -rw-r--r-- 1 dmenezes dmenezes 14 Feb 16 18:06 file1.txt

1966269 lrwxrwxrwx 1 dmenezes dmenezes 9 Feb 16 18:08 File1 ->


Atalho_File2.txt

No Link Físico o pontero irá apontar para o INODE do Arquivo e não para o arquivos. Irá
apontar para o local no HD onde a informação esta gravada. Na criação do Link Físico, ele vai
add mais um arquivos ai link count

ln File1 File2 = Comando para criar o Link Físico. File2 é um apontamento para o INODE do
File1.

INODEPERMISSÕES Link Count Owner Group TAM DATA

1967899 -rw-r--r-- 1 dmenezes dmenezes 14 Feb 16


18:13 file2.txt

1967899 -rw-r--r-- 2 dmenezes dmenezes 14 Feb 16


18:13 file3.txt

Link Count passou de 1 para 2.


PROCESSO DE BOOT DO LINUX

BIOS --> MBR (512bytes) --> BOOTLOADER (grub2) --> KERNEL --> INITRD e INIT -->
RUNLEVEL

O BootLoad vai carregar o Arquivo Kernel (extrair).

O Kernel é um arquivo compactado que fica no /boot. E se divide em dois estágios

Initrd é um arquivo compactado que fica no /boot. Ele vai ter drivers (ext4, LVM). Ele monta
uma partição temporária no padão tempPSF, Carrega os drivers para a memoria de depois
desmonta.Assim depois que os drivers temporário é desmontado o sistema monta o Root ( / ).
Depois de tudo montado e funcional o sistema irá chamar o primeiro processo do Linux.

Init é responsavel por iniciar todos os aplicativos que estão configurados para inciar junto com
o sistema de arquivos (MySQL, Apache...). O Init irá identificar em qual RUNLEVEL o sistema
deve bootar. RUNLEVEL é o nivel de execução do Sistema Operacional.

MBR 512 bytes

 BootLoad --> 440 bytes


 Assinatura do BootLoad 6 bytes
 Tabela de Partição --> 64 bytes
 Magic Number --> 2 bytes (55AA)

O Numero 55AA indica que está tudo correto com a MBR.

LPI - Para fazer o Backup do BootLoad devemos salvar apenas os primeiros 440 ou 446 bytes.

GRUB2

/boot/grub/grub.cfg = Arquivo principal de configuração do grub e é gerado automaticamente


pelo Linux. NÃO EDITAMOS ELE.

/etc/grub.d/ = Arquivo de configuração do grub. Também NÃO EDITAMOS ELE.

/etc/default/grub = Arquivo editável do grub.

GRUB_DEFAULT = 0 Define qual será o sistem aque irá iniciar no PC


GRUB_TIMEOUT_STYLE=hidden

GRUB_TIMEOUT=0 Define o tempo em segundos para dar boot.

GRUB_DISTRIBUTOR=`lsb_release -i -s 2> /dev/null || echo Debian` Irá pegar o nome da


Distro

GRUB_CMDLINE_LINUX_DEFAULT="quiet splash" O Splash exibe o Logo. O quiet NÃO


exibe as mgs

GRUB_CMDLINE_LINUX=""

#GRUB_TERMINAL=console Se tirar o comentário irá inciar em modo terminal.

#GRUB_GFXMODE=640x480 Define o modo padrão da tela.

#GRUB_DISABLE_RECOVERY="true" Desativar o Modo Recovery

#GRUB_INIT_TUNE="480 440 1" Faz bips durante o boot

Qualquer Alterção nesse arquivo devemos ATUALIZAR O GRUB

Ubuntu = update-grub

CentOS = grub2-mkconfig -o /boot/grub2/grub.cfg

Os comandos acima irão atualizar o aquivo do

/boot/grub/grub.cfg com as informações do

/etc/default/grub e com os scripts que estão dentro do

/etc/grub.d/

/boot/grub/grub.cfg --> ARQUIVO PRINCIPAL

,INITRD e KERNEL
/boot

O grub vai sempre chamar pelo vmlinuz.

O Nome do kernel sempre será vmlinuz-VersaoKernel

O Arquivo do Kernel sempre terá um arquivo initrd (Que monta os Drivers temporarios EXT4,
LVM .. ) compativel com ele.

update-initramfs -u = Esse comando ira pegar o arquivo initrd atual e vai atualizar ele de
acordo com o que voce instalou

mkinitramfs -o = Prova da LPI2

LINHA LINUX = rw init=/bin/bash

LINHA LINUX = systemd.unit=multi-user.target

INICIAR O LINUX = No Bash como Root exec /sbin/init

DIRETÓRIO DO INIT

/sbin

/sbin/init = É o primeiro processo do sistema

pstree = Exibe a Arvore de processos do sistema

pstree -p = Exibe em Arvore e com o PID

ps = Mostra os processos em execução do Usuário neste TERMINAL

ps -u = Mostra mais opções (Nome do Usuário, PID, %CPU, %MEN)

RSS = Qtd de Memória o Processo já usou (Física)

VSZ = Qtd de Memória o Processo já usou (Física + Virtual)

TIME = Qtd Tempo de CPU o Processo já Usou.

ps aux = Mostra todos os processos e servicos do sistema

a = TODOS os Usuário
ps aux | grep -i init

dmesg = Comando para ler o Log do Sistema ou o Log do Boot - kernel ring buffer

cat /var/log/messages = Esse arquivo eh lido pelo dmesg (Distro Antiga).

cat /var/log/kernel.log = Esse arquivo conten o log de boot do kernel (Dristros Novas
SystemD).

GERENCIADORES DE INICIALIZAÇÃO DO LINUX

SysV = Foi o primeiro, Era uniprocessamento. RUN Level de Execução.

Upstart = Evolução do sysv. (Outra Programação). Criado pela Canonical e era baseado em
Eventos.

Systemd = Evolução so sysV. (Outra Programação). Gerenciador de inicialização e de todo o


sistema.

SysV = Gerenciador de inicialização que Trabalha com números. Que pode varias de acordo
com cada distribuição.

O arquivo de Configuração fica em /etc/inittab

runlevel = Ver o seu atual Run Livel

Init 6 = telinit 6 = Muda de Run Level

0 = Halt - (Desligado - Default)

1 = Recovery (Mono Usuário)

2 = x (Personalisável)

3 = Multi Usuário (Sem GUI)

4 = x (Personalisável)

5 = Multi Usuśrio Gráfico (Defaul)

6 = Reboot
Upstart = Arquivo de configuração em /etc/init/

PRINCIPAIS COMANDOS =

initct list

(start, stop, status) servico

Systemd = Não usa mais os Run Level com números e sim com target (grupo de units).

Não muda de distro pra distro.

O arquivo de Configuração fica em /lib/systemd/system

Temos outro arquivo de configuração em /etc/systemd/system

Systemctl = Comando padrao do SystemD

systemctl reboot

systemctl set-default multi-user.target

systemctl isolate resceu.target

Como nao temos o RunLevel usamod a definicao de units.

UNIDADES (Nome.Tipo) - httpd.service:

TIPOS DE SERVICOS:

Servive

Device

Mount

Automount

Target (Equivale ao Run Level)

0 = poweroff.target

1 = rescue.target

2 = multi-user.target

3 = multi-user.target

4 = multi-user.target

5 = grafical.target
6 = reboot.target

Scapchat

SYSTEMD

default.target é um link simbólico que aponta para o Grafical.Target

SYSV

init 0 = Vai desligar a maquina

telini 0 = Vai Desligar a maquina

O arquivo para alterar o Run Level padrão do sistema fica em /etc/inittab NAO
EXISTE MAIS.

default id:2:initidefault

Por padrão o Ctrl + Alt + Del chama um script em /sbin/shurdown -t1 -a -r now

Para mudar esse padrao é só alterar essa linha.

SYSTEMD

systemctl = Comando para ver Status / Iniciar / Parar serviços.

systemctl status apache2 = Verifica o status do Serviço

systemctl start apache2 = Inicia o serviço do Apache.

Systemctl stop apache2 = Para o serviço do Apache.

systemctl enable apache2 = Ativa a inicialização automática do Apache.

Systemctl disable apache2 = Desativa a inicialização automatica do Apache

O arquivo de Configuração fica em /lib/systemd/system

Temos outro arquivo de configuração em /etc/systemd/system

O /etc/systemd/system TEM PREFERENCIA em relação ao /lib/sysytemd/system

/etc/systemd/system -->

/run/systemd/system -->
/usr/lib/systemd/system -->

/lib/systemd/system

O Comando systemd-delta serve para gerenciar e ver a diferença entre esses


diretórios, /etc /run /usr/lib e /lib

CONFIGURAÇÕES DO SYSTEMD

/etc/systemd/

journald.conf = É o arquivo de Configuração do Journalctl (Mostra todos os Logs do


Sistema).

Compress = yes

Storage = auto

logind.conf = Defini as configurações de login do usuário.

resolved.conf = Configuração do DNS local.

Esssa configuração é aplicada no /etc/resolve.conf

/usr/lib/systemd/ = Quando instalamos programas, ele joga os arquivos de configuração aqui.

/lib/systemd = Mais configurações do sistemd

/lib/systemd/system = Tem as configurações dos targets (default.target) link Simbólico.

cd /lib/systemd/system

rm default.target

ln -s rescue.target default.target

runleval = Exibe o runlevel atual

COMANDOS PARA MANUTENCAO

wall = Comando para enviaar menssagens

wall Teste de Envio de Msg via terminal


shutdown = Comando para Reiniar / Desligar / Enviar Msg

shutdown = DESLIGA o PC em 1 MIN.

shutdown -h (poweroff) = Desligar (Nao desliga os Leds da Maquina).

shutdown -H (halt) = Desligar o SISTEMA (Nao desliga a Maquina).

shutdown -P now (power off) = Desligar o Sistema e Desliga a Maquina.

shutdown -h 21:40 = Agenda o Desligamento da Maquina

shutdown -c = Cancela o Agendamento

shutdown -r now = Reiniciar

poweroff

reboot

reboot = systemctl reboot = Reinicia a Maquina

halt = systemctl halt = Desligar o SISTEMA (Nao desliga a Maquina).

poweroff = systemctl poweroff = Desligar o SISTEMA e desliga a Maquina.

INSTALAÇÃO DO GRUB - 07

grub-install /dev/sda

/boot/grub/grub.cfg --> ARQUIVO PRINCIPAL

/etc/default/grub --> ARQUIVO DE CONFIGURAÇÃO DO GRUB, depois rodar o update-grub

TABELA DE PARTIÇÕES

MBR = Max. 4 partições Primárias. Max de 2Tb

GPT = Max. 128 Partições Primárias. Max. 2 bilhoes de Tb.


A tabela de partição está uma camada abaixo das nossas tabelas do S.O.

NOMECLATURA DOS HDs

SATA E SCCI --> /dev/sda1 : A = Disco 01 : 1 = Partição 1

IDE --> /dev/hda

CDROM --> /dev/sv0

PARTICOES DOS DISCO

Diretorios que NAO podem ser montados fora do /

/bin

/sbin

/dev

/proc

/sys

/etc

CRIAR PARTIÇÕES NO DISCO

fdisk -l = Lista os discos

fdisk /dev/sda = Entra no Fdisk e edita o disco 01

m = Para ajuda.

gdisk /dev/sda = Entra no Gdisk e edita o Disco 01 - SO GPT

m = Para ajuda.

parted /dev/sda = Entra no Parted e edita o disco 01 = USADO PARA ReZise

help = Exibe as opções

FORMARTAR AS PARTIÇÕES NO DISCO

file -s /dev/sdb2 = Exibe o TIPO da PARTIÇÃO


mkfs.ext4 /dev/sdb1 = mkfs -t ext4 /dev/sdb1

mkfs.ext4 -L “Label” -c -q /dev/sdb1

mkfs -t ext4 -L “Label” -c -v /dev/sdb1

c = verifica se tem bad blocks

q = Formata de forma quit

v = Formata exibindo detalhes

mke2fs.ext4 /dev/sdb1

mke2fs -t ext4 -c -F /dev/sdb1

MONTAR O DISCO

mount /dev/sdb1 /mnt

df -Th = Ver como os discos estão montados

DESMONTAR O DISCO

unmount /mnt

EXIBIR DETALHES DO DISCO

blkid /dev/sadb1

lsblk /dev/sadb1

lsblk /dev/sadb1 -f

CONVERTER ARQUIVOS DE EXT2 PARA EXT3

mke2fs -j /dev/sdb2

CRIANDO PARTIÇÕES TIPO SWAP

mkswap /dev/sdc1
ATIVANDO A PARTIÇÃO DE SWAP

swapon /dev/sdc1

VERIFICAR AS PASTIÇÕES DE SWAP

cat /proc/swaps

swapon -s

swapon --show

DESATIVANDO A PARTIÇÃO DE SWAP

swapoff /dev/sdc1

PARTIÇÕES TIPO LVM

Os discos são compostos por 3 camadas. Podemos aumentar/diminuir o tamanho sem


perder dados.

PV = Phyisical Volume (Discos).

VG = Volume Gruop (Agrupados os Discos).

LG = Logical Volume.
VAMOS CRIAR O LVM SEGUINDO A IDEIA DA FIGURA ACIMA. 02 Discos Físicos - SDB e
SDC

sudo fdisk /dev/sdb

n (nova partição) -> p (primária) -> n:1 -> = +3G

n (nova partição) -> p (primária) -> n:2 -> = +3G

m = Ajuda

L = Lista os tipos de Partiçoes

t -> n:1 -> 8e

t -> n:2 -> 8e

w = Sair e Salvar.

sudo fdisk /dev/sdc

n (nova partição) -> p (primária) -> n:1 -> = +3G

n (nova partição) -> p (primária) -> n:2 -> = +3G

m = Ajuda

L = Lista os tipos de Partiçoes

t -> n:1 -> 8e

t -> n:2 -> 8e

w = Sair e Salvar.

sudo fdisk -l - Criada as 4 PARTIÇÕES - NÃO Formatadas !

CRIAR UMA CAMADA FISICA NO LVM - PV (Phisical Volume)

pvcreate /dev/sdb1 = Add um disco na camada, para que depois possa ser add a um grupo.

pvcreate /dev/sdb2 = Add um disco na camada, para que depois possa ser add a um grupo.

pvcreate /dev/sdc1 = Add um disco na camada, para que depois possa ser add a um grupo.

pvcreate /dev/sdc1 = Add um disco na camada, para que depois possa ser add a um grupo.
Temos 04 Phisical Volumes Criados no LVM

VER DETALHES DO DISCO LVM

sudo pvdisplay = Ver detalhes do PV no LVM

sudo pvscan = Ver detalhes do PV no LVM - Opção Mais Simples

sudo pvs = Ver detalhes do PV no LVM - Opção Mais Simples

REMOVER UMA CAMADA PV (Phisical Volume)

sudo pvremove /dev/sdX1 = Remover uma cada fisica do LVM

CRIAR UM GRUPO DE VOLUME LVM - VG (Volume Group)

sudo vgcreate grupo-volume1 /dev/sdb1 : Criando um Grupo com o sdb1

sudo vgcreate grupo-volume2 /dev/sdb2 /dev/sdc1 /dev/sdc2 : Criando um Grupo com


os discos sdb2, sdc1 e sdc2

VER DETALHES DO GRUPO LVM - VG

sudo vgdisplay = Ver detalhes do VG no LVM

sudo vgscan = Ver detalhes do VG no LVM - Opção Mais Simples

sudo vgs = Ver detalhes do VG no LVM - Opção Mais Simples

REMOVER UMA GRUPO VG (Volume Group)

sudo vgremove NOMEdoGRUPOdeVOLUME = Remover um Grupo do LVM

Ex.: vgremove grupo-volume1

CRIAR UM VOLUME LÓGICO LVM - LV (Logical Volume)

lvcreate -L +2GB -n vol01 grupo-volume01

grupo-volume01 = É o Grupo de Volume que será Utilizado

-L = Definir o Tamanho do Logical Volume

-n = Definir o Nome do Logical Volume


lvcreate -L +2GB -n vol02 grupo-volume02

lvcreate -L +2GB -n vol03 grupo-volume02

lvcreate -L +2GB -n vol04 grupo-volume02

VER DETALHES DO VOLUME LÓGICO LVM - LV

sudo lvdisplay = Ver detalhes do LV no LVM

LV Path = Caminho do Volume Lógico

LV UUID = O ID do Disco

LV Size = Tamanho do Disco

sudo lvscan = Ver detalhes do LV no LVM - Opção Mais Simples

sudo lvs = Ver detalhes do LV no LVM - Opção Mais Simples

RENOMEAR UM VOLUME LÓGICO LV (Logical Volume)

sudo lvrename GRUPOdeVOLUME NomedoVolumeLogical = Renomear um LV do LVM

Ex.: lvrename grupo-volume2 vol03 backups

grupo-volume2 = Nome do Grupo do Volume

Vol03 = Nome do Volume Lógical

Backups = Nome Atual do Volume Lógical

LVM CRIADO com as CAMADAS (Fisica, Grupo e Lógica) - FALTA FORMARTAR E


MONTAR!

FORMATANDO A PARTIÇÃO.

mkfs.ext4 /dev/mapper/grupo-volume01/vol01 = Formatando a partição.

mkfs.ext4 /dev/mapper/grupo-volume02/vol02 = Formatando a partição.

mkfs.ext4 /dev/mapper/grupo-volume02/vol03 = Formatando a partição.

mkfs.ext4 /dev/mapper/grupo-volume02/vol04 = Formatando a partição.


MONTANDO A PARTIÇÃO.

sudo mkdir /lvm1 /lvm2 /lvm3 /lvm4

sudo mount -t ext4 /dev/mapper/grupo-volume01/vol01 /lvm1 = Montando.

sudo mount -t ext4 /dev/mapper/grupo-volume02/vol02 /lvm2 = Montando.

sudo mount -t ext4 /dev/mapper/grupo-volume02/vol03 /lvm3 = Montando.

sudo mount -t ext4 /dev/mapper/grupo-volume02/vol04 /lvm4 = Montando.

sudo df -Th = Lista os tipos de Sistemas de Arquivos Montados

REMOVER UM VOLUME LÓGICO LV (Logical Volume)

sudo lvremove NOMEdoCAMINHOCOMPLETO = Remover um Volume Lógico do LVM

Ex.: lvremove /dev/mapper/grupo-volume01/vol01

EXTENDER O TAMANHO DO VOLUME LÓGICO LVM - LV

Devemos Desmontar

sudo umont /lvm2

sudo lvextend -L +1GB /dev/mapper/grupo-volume02/vol02 = Extendendo mais 1GB

df -Th = Tamanho do disco e espaço utilizado.

sudo lvextend -l +100%FREE -r /dev/vg_root/lv_root

resize2fs /dev/mapper/grupo-volume02/vol02 = Atualizando o tamanho alocado.

lvextend -L +1GB -r /dev/mapper/grupo-volume02/vol02 = Extendendo mais 1GB

df -Th = Tamanho do disco e espaço utilizado.

-r já roda automaticamente o resize.


ADD UM NOVO DISCO A UM VOLUME LÓGICO LVM - LV

sudo fdisk /dev/sdd

n (nova partição) -> p (primária) -> n:1 -> = ENTER

m = Ajuda

L = Lista os tipos de Partiçoes

t -> n:1 -> 8e

w = Sair e Salvar.

CRIADO o SDD1 do TIPO LVM

sudo vgdisplay grupo-volume1

VAMOS CRIAR O VOLUME FISICO(PV) EM CIMA DO DISCO

sudo pvcreate /dev/sdd1

VAMOS AGORA EXPANDIR O GRUPO DE VOLUME (grupo-volume1)

sudo vgextend grupo-volume1 /dev/sdd1

grupo-volume1 = Nome do VG que será extendido

/dev/sdd1 = Disco que será add ao VG

FERRAMENTA GRÁFICA PARA TRABALHAR COM LVM

system-config-lvm = Gerenciador de Volumes Lógicos

xfs_growfs = lvextend

BTRFS - B-Tree File System

Moderno e em contante desenvolvimenro

Tolerância a Falhas e Facilidade de Administração e Reparo

Desenvolvido por um grupo de Empresas: Oracle, Red Hat, Fujitsu, Intel, SuSe, FaceBook...

Usado pelo: FaceBook, TripAdvisor, OpenSUSE...


RECURSOS

Multi-Devices FileSystems / RAID

Suporta RAID 0,1,10 (5 e 6 em Desenvolvimento)

SubVolumes

Estrututa dentro de uma Partição/Volume

Pode ser Montado Separadamente

Compressão Tranparente

A Compressão pode ser feita diretamente mo FS

Algoritimos zlib, LZO, ZSTD.

Snapshot

Foto de um Sistema de Arquivos

Conversão de ext3 para btrfs

exFAT = Extended FAT ou FAT64

Sistema de Arquivos Otimizado parra pen drive/flash drives e cartões de memória

> 32GB

FAT = Limite de 4GB

exFAT = Limite de 16EB

Nos FileSystems mais "tradicionais", como os ext2/ext3/ext4 por exemplo, a alocação de espaço
para os inodes é fixa e determinada no momento da criação da partição. No entanto, alguns
sistemas de arquivos possuem um recurso chamado "Alocação Dinâmica de Inodes", em que o
problema de falta de espaço disponível para os inodes não deve acontecer pois o FileSystem se
encarregará de criar dinâmicamente mais espaço se necessário, entre eles temos o ReiserFS (em
desuso), XFS, JFS, ZFS e BTRFS.

GERENCIONAMENTO DE DISCOS E PASTAS - Section 9


du -sh /bin = Verifica o Tamanho da pasta.

O “s” Lista pela SEPARADAMENTE as pasta.

du -sch * = Verica o Tamanho total TODAS as pastas

-s = Lista Todas as Pastas.

-h = Humam Readeble.

-c = Mostra o Total.

-a = Arquivos e Diretórios (-ach)

du -sch * | sort -h = Verifica o tamanho das pastas e ordena por tamanho. Maior no FIM.

du -sch * | sort -rh = Verifica o tamanho das pastas e ordena por tamanho. Maior no INICIO.

O “c” Mostra o Total.

df = Comando para verificar informações do sistema - PARTIÇÕES

df -a = Lista TODAS as partições do Sistema

df -Ta = Lista Todas as partições e exibe o TIPO.

df -h = Lista as opções em GB,MB...

df -Tha = Lista TODAS as PARTIÇÕES, TIPOS

df -i = Lista por tipos de INODES.

df -BM = Lista exibindo em Mb

df -BG = Lista exibindo em Gb

df - BG --total = Lista e exibe o Total

fsck = Programa para checar o sistema de arquivos do HD (Partição NÃO pode ta


MONTADA).

fsck -l /dev/sbd1 = Verificando o /dev/sdb1.

fsck.ext4 /dev/sbd1 = Indica o tipo de arquivo a ser verificado.

fsck -t ext4 /devsdb1 = Indica o tipo de arquivo a ser verificado.

fsck.ext4 -p /dev/sbd1 = Faz o reparo do disco

fsck.ext4 -a /dev/sbd1 = Irá executar o em todas as partições.


fsck.ext4 -f /dev/sbd1 = Irá forcar o uso do fsck.

e2fsck -p /devsdb1 = Verifica e repara o disco ext2, ext3 e ext4.

e2fsck -f /devsdb1 = Força a verificação.

e2fsck -c /devsdb1 = Verifica por Bad Blocks

DBUGFS, DUMPE2FS, TURNE2FS

dbugfs = Comando que serve para DEBUGAR um SISTEMA de ARQUIVOS. Voce pode
buscar por dados atraves de uma busca por inodes.

dumpe2fs = Comando utilizado para um DUMP (saida de dados) do sistema de arquivo


(Relatorio de informações).

dump2fs -h /dev/sdb1 = VER informacoes do Disco.

turne2fs = Comando para alterar parametros do sistema de arquivos.

Funciona APENAS no ext2,ext3 e ext4

tune2fs -L “Particao Teste” /dev/sda1 = Define um Label para o Disco.

tune2fs -j /dev/sdb2 = Converte de ext2 para ext3 (add a função journal).

tune2fs -i 1m /dev/sdb3 = Agenda (INTERVALO) a proxima vez que o sistema irá


executar a verificação.(1mes)

tune2fs -m 2 /dev/sdb2 = Altera o TAM do Espaco Reservado SEM USO pelo Sistema.
(2%)

GERENCIAMENTO DE PARTIÇÕES DO TIPO XFS (Red Hat / CentOS )

xfs_admin -l LABEL-DO-DISCO /dev/sda2 = Define um Label para o Disco

xfs_repair /dev/sdb1 = Usado para Reparar o sistema de arquivos do Disco

xfs_db /dev/sda1 = Usado para DEBUG de arquivos no disco xfs.

frag = Ver a fragmentacao do Disco.

xfs_fsr = Faz a DESFRAGMENTACAO do Disco.


MONTAR O DISCO

mount /dev/sdb1 /mnt

EXIBIR DETALHES DO DISCO

xfs_info /dev/sdb1 = xfs_growfs -n /dev/sdb1

DESMONTAR O DISCO

unmount /mnt

FAZENDO UM DUMP DO XFS

xfs_metadump /dev/sdb1 sdb1.dump = Faz um DUMP do sistema de arquivos.

LER INFORMAÇÕES DO DUMP

xfs_info sda1.dump

BACKUP E RESTORE DO SISTEMA DE ARQUIVOS XFS

xfsdump = Faz um BACKUP do sistema de arquivos.

xfsrestore = Restaura o BACKUP feito pelo xfsdump.

xfs_quota = Cotas de Disco.

MONTAR PASTIÇÕES NO LINUX

mount = cat /etc/fstab Comando para exibir todas as partições montadas no nosso sistema.

mount -a = Exibe todas as partições do arquivo fstab que nao estejam com a opção NO
AUTO.

mount /dev/sda1 /mnt = Para montar uma partição devemos informar qual é e o local a ser
montada.

mount -L DADOS /mnt = Comando para montar uma partição a partir de um Label.

mount -L DADOS -n /mnt = Comando para montar uma partição a partir de um Label, SEM
ESCREVER na fstab.

mount -o ro /dev/sdb1 /mnt = Comando para montar uma partição como somente leitura.

-o = Para passar parametros.

ro = Somente Leitura.
rw = Leitura e Escrita.

DESMONTAR PASTIÇÕES NO LINUX

umount = Comando para desmontar uma partição.

umount -a desmonta TODAS as partições gravadas no fstab.

umount -n /mnt = Vai desmontar SEM ESCREVER no fstab.

umount /mnt = Desmontando PONTO DE MONTAGEM.

umount /dev/sda1 = Desmontando partição.

umount -f /mnt = Força a desmontagem.

SEMPRE MONTAR PARTIÇOES DE FORMA AUTOMATICA (FSTAB).

vi /etc/fstab = Local onde ficam a lista de partições que serão montadas automaticamente.

PRINCIPAIS OPÇÕES UTILIZADAS NAS CONFIGURAÇÕES DO /ETC/FSTAB

 rw = Partição aceita gravação de dados (ReadWrite)


 ro = Partição não aceita gravação de dados, é apenas leitura (ReadOnly)
 auto = Partição será montada automaticamente durante o boot e quando usado o
comando "mount -a)
 noauto = Proíbe a montagem automática. Normalmente utilizado com dispositivos
removíveis.
 sync = Estabelece E/S síncrona
 async = Estabelece E/S assíncrona
 dev = Interpreta dispositivos especiais, como os existentes na partição /dev
 exec = Habilita a execução de programas contidos nessa partição
 noexec = Proíbe a execução de programas executáveis contidos na partição
 suid = Habilita o uso do SUID e SGID
 nosuid = Desabilita o uso do SUID e SGID
 user = Permite que um usuário comum monte um sistemas de arquivos, mas apenas
este usuário conseguirá desmontá-lo
 users = Permite que um usuário comum monte um FS, mas qualquer usuário poderá
desmontá-lo
 nouser = Apenas root pode montar e desmontar a partição
 usrquota = Habilita o uso de quotas por usuário
 grpquota = Habilita o uso de quotas por grupo
 defaults = Define o conjunto de opções: rw, suid, dev, exec, auto, nouser e async

CRIANDO PONTO DE MONTAGEM PELO SYSTEMD.


/etc/systemd/system -->

/run/systemd/system -->

/usr/lib/systemd/system -->

/lib/systemd/system

vi /lib/systemd/system mnt-motagem.mount = Criando um arquivo de montagem de uma


particao.

[Unit]

Description=Ponto de Montagem Teste

[Mount]

What=/dev/sdb2

Where=/mnt/montagem

Type=xfs (auto)

Options =defaults

[Install]

WantedBy=multi-user.target

systemctl start mnt-montagem,mount = Subir a montagem do disco

COMANDOS LINUX - FILTROS DE TEXTOS. Section 10

cat = Comando para ver o conteudo do arquivo.

cat -n = Mostra o conteudo do arquivo e numera as linhas

cut = Comando para cortar(na exibição) um arquivo.

cat /etc/paswd | cut -f 1,2 -d : = Exibe o conteudo do arquivo da coluna (-f) 1 e 2 tendo como
delimitador (-d ) o :

expand = Comando para converter os TABs por ESPAÇO


expand Arquivo1.txt > Arquivo2.txt

unexpand = Comando para converter os ESPAÇOS por TAB

unexpand Arquivo2.txt > Arquivo1.txt

head = Comando usado para pegar as 10 primeiras linhas do arquivo

head -n 15 Arquivo.txt = Exibe as 15 primeiras linhas do Arquivo.

tail = Comando usado para pegar as 10 ultimas linhas do arquivo

tail -n 15 Arquivo.txt = Exibe as 15 ultimas linhas do arquivo.

tail -f Arquivo.txt = Exibe EM TEMPO REAL as linhas do arquivo

head Arquivo.txt | fmt = Comando usado para formatar o texto do arquivo

fmt -width 2 Arquivo.txt = Comando para exibir o arquivo formatado em 2 colunas

fmt -u Arquivo.txt = Comando para remover espaços desnecessários.

join = Comando para fazer um JOIN entre arquivos textos.

join Arquivo1.txt Arquivo2.txt

join -1 1 -2 1 file1.txt file2.txt

-1 = Primeiro Arquivo

1 = Primeira Coluna

-2 = Segundo Arquivo

1 = Primeira Coluna

join -1 1 -2 1 -o ‘1.1 2.2’ file1.txt file2.txt

-1 = Primeiro Arquivo

1 = Primeira Coluna

-2 = Segundo Arquivo

1 = Primeira Coluna

-o = Define o que será exibido

‘1,1’ = Primeira coluna do Primeiro Arquivo


‘2.2’= Segunda Coluna do Segundo Arquivo

COMANDOS LINUX

less = Comando que possibilida voce navegar pelo arquivo, para cima ou para baixo.

more = Comando que possibilida voce navegar pelo arquivo, para cima ou para baixo.

less Arquivo.txt

nl = Comando para NUMERAR o arquivo.txt

nl Arquivo.txt.

od = Comando para mostrar a saida de um arquivo no modo Octal, Decimal..

od Arquivo.txt = Exibe o texto em sistema Octal.

od -x Arquivo.txt = Exibe o texto em sistema exadecimal.

paste = Comado similar ao JOIN, porém não precisa informar as colunas de link entre os
aquivos.

Paste file1 file2 = Exibe um ao lado do outro.

pr = Comando para formatar o arquivo de texto para ser impresso.

pr file1.txt = Irá definir margens, paragrafos e paginas... (Utilizado qunado não tinha GUI).

pr -l 25 file1.txt = altura do arquivo

pr -w 250 file.txt = largura do arquivo

sed = Comando utilizado para substituir PALAVRAS...

sed ‘s/Morbi/Sub/g’ Arquivo.txt = Irá alterar no STDOUT as ocorrencias de Morbi por


Sub.

s = Substitui.

g = Em todo o Texto.

sed -i ‘s/Morbi/Sub/g` Arquivo.txt = Irá substituir todas as ocorrencias de Morbi por Su.

i = Escreve no arquivo texto.

n = Substitui de forma silenciosa.


sed -i ‘s/Morbi/Sub/g’ Arquivo.txt = Irá alterar no STDOUT as ocorrencias de Morbi por
Sub.

sort = Comando para ordenar em ordem alfabetica.

du -sch * | sort -rh = Exibe todas as pastas do local da maior pra menor.

split = Comando para querar um aquivo em varios outros.

split file1 = DIVIDE EM ARQUIVOS DE 1000 LINHAS - PADRÃO

split -b 2048 File1.txt File_ = Irá quebrar o arquivo File1.txt em arquivos de 2048 Bytes e
vai renomear como File_aa, File_ab...

tr = Comando utilizado para substituir LETRAS... mesma ideia do SED.

cat File1.txt | tr -d 4 = irá apagar todas os 4 do arquivo.

cat File1.txt | tr -d 4faster = irá apagar todas as letras 4,f,a,s,t,e,r do arquivo.

cat File1.txt | tr -s 4 6 = irá substituir a letra4 pela letra 6 do arquivo.

cat File1.txt | tr [:lower:] [:upper:] = irá conveter todo o arquivo para maiusculo.

uniq = Comando utilizado para remover palavras repetidas de um arquivo.

uniq File1.txt = Ira exibir o conteudo do arquivo sem palavras repetidas.

wc = Comando utilizado para contar a qtd de palavras, letras...

cat File1.txt | wc = Ira exibir a qtd de Linhas, Palavras, Letras.

cat File1.txt | wc -l = Irá exibir a qtd de linhas

cat File1.txt | wc -w = Irá exibir a qtd de palavras.

cat File1.txt | wc -m = Irá exibir a qtd de letras.

50%

GERENCIAMENTO DE PACOTES

Dedian
.deb = Extensão do arquivo auto instalável

dpkg = Gerenciador de Pacotes (Instalaçao de .deb externos, fora do repositório).

apt-get = Front end do Gerenciador de pacotes - REPOSITÓRIOS.

Red Hat (Fedora ou CentOS).

.rpm = Extemsão do arquivo auto instalável

rpm = Gerenciador de Pacotes (Instalaçao de .rpm externos, fora do repositório).

yum = Front end do Gerenciador de pacotes - REPOSITÓRIOS

INSTALAÇÕES DE PACOTES .DEB - DPKG

dpkg -i pacote.deb = Instalarção de um aplicativo .deb

dpkg -I (i) pacote.deb (i) = Informacoes dos arquivos que estao dentro do .deb

dpkg --contents = Informacoes dos arquivos que serao instalado e onde

dpkg -l (L) = Lista todos os pacotes .deb instalados na maquina.

dpkg -l (L) Chrome = Lista as informacoes do Chrome.

dpkg --get-selections = Lista todos os Pacotes Instalados = dpkg -l.

dpkg -l (L) | grep -i chrome = Lista todos os pacotes .deb e filtra pelo chrome.

dpkg -L chome = Exibe todos os locais que o chrome foram instalados.

dpkg -S /usr/share/menu/ksh = Vai dizer a Origem (Source), Quem criou.

REMOÇÃO DE PACOTES .DEB DPKG

dpkg -r chrome = Irá remover a instalação do chrome porém NÃO irá remover os
arquivos de configuração.

dpkg --purge (-P) chrome = Irá remover o Chrome e todas as suas configurações.

dpkg -I (i) chrome.deb = Serve para verificar informações do pacote antes da instalação
(Ver dependências).

dpkg -s Chome = Serve para verificar se o pacote foi corretamente instalado e o seu
status.

dpkg-reconfigure chrome = Se o pacote deu pau, vc pode tentar recuperar ele assim.
dpkg-reconfigure tzdata = Abre a tela de configuracao do TIME ZONE (Pais).

dpkg-reconfigure keyboard-configuration = Abre a tela de configuracao do Teclado.

dselect = Abre um ambiente de MENUS do DPKG

alien= Usado para CONVERTES pacotes .rmp em pacotes em .DEB e entre outros.

alien -r pacote.deb = Transforma o .DEB em RPM

alien -i pacote.RPM = Instala o pacote .RPM

alien pacote.RPM = Tranformao o .RPM em .DEB

alien -i pacote.deb = Instala o pacote .DEB.

COMANDOS DO APT

apt-cache pknames = Lista de Pacotes Instalados no PC.

apt-cache show chrome = Comando utilizado para mostrar DETALHES do aplicativo.

apt-cache search chrome = Comando utilizado para buscar pela DESCRICAO do


aplicativo na lista de cache da distribuição.

apt-cache list chrome = Comando utilizado para buscar pelo NOME do aplicativo na lista
de cache da distribuição.

apt-cache depends chromes = Lista o pacotes de Dependencias do Chrome.

/etc/apt/source.list = REPOSITÓRIO = ARQUIVO IMPORTANTE.

apt-get update = Atualiza a lista de pacotes da distro (source.list).

apt-get upgrade = Atualiza as Libs e os pacotes.

apt-get dist-upgrade = Atualiza o kernel da disto.

apt-get check = Ver se a base do apt esta ok.

apt-get clean = Remove arquivos temporarios desnecessarios.

apt-get --download-only install chrome = Faz o Download do Pacote.


apt-get remove chrome = irá remover a instalação do chrome porém NÃO irá remover
os arquivos de configuração e nem as libs.

apt-get purge chrome = irá remover a instalação do chrome e tambem irá remover os
arquivos de configuração e as libs.

apt-get purge chrome = Irá remover os arquivos de configuração e as libs.

aptitude = apt-get

aptidede install chrome = apt-get install chrome

PESQUISAS EM PACOTES .RPM

rpm -qa = Busca todos os pacotes rpm instalados na maquina

-q = Query, Busca.

-a = All, Todos os pacotes instalados.

rpm -qf chrome.rpm = Busca se o pacote esta instalado

-q = Busca.

-f = File. Aponta o pacote.

rpm -qf /etc/skel/.bash = Lista que pacote criou essa informacao.

rpm -qlp chrome = Lista todos os ARQUIVOS do pacote chrome.

rpm -ql chrome | more = Lista todos os

rpm -qc chrome = Lista todos os arquivos de CONFIGURACAO.

rpm -qR chrome = Lista todas as dependencias (Libs) do pacote INSTALADO.

rpm -qRp chrome = Lista todas as dependencias (Libs) do pacote NAO INSTALADO.

rpm -qi chrome = Exibe informações dos pacotes que sera intalado.

rpm -k chrome.rpm = Verifica se o pacote esta correto com a assinatura digital.

-k = Check.

INSTALAÇÃO DE PACOTES .RPM

rpm -i chrome.rpm = Instalação do pacote chrome


rpm -ih chrome.rpm = Instalação do pacote chrome exibindo uma barra de progresso.

rpm -ihv chrome.rpm = Instalação do pacote chrome exibindo uma barra de progresso e
detalhes das instalaçao

rpm -ihvv chrome.rpm = Instalação do pacote chrome exibindo uma barra de progresso e
detalhes das instalaçao. Mais informações ainda.

rpm -ih chrome.rpm = Verifica se o pacote foi instalado.

rpm -ih --force chrome.rpm = Forca a instalação do pacote novamente.

rpm -Uhvv chrome.rpm = Faz o Update ou Upgrade do pacote.

POSSO USAR TANTO A OPÇÃO rpm -Uhvv chrome ou rpm -ihvv chrome para instalar
pacotes.

REMOÇÃO DE PACOTES .RPM

rpm -e chrome = Erease, Remover o pacote

rpm -e --test chrome = Testa a Remoção do pacote.

rpm -e --nodeps chrome = Faz a desistalação sem checar as dependencias.

rpm --rebuilddb = Vai dar um Refresh no cache do rpm. (/var/lib/rpm).

rpm --initdb = Vai dar um refresh no cache do rpm.

rpm --verify bash = Se ouve alguma alteracao o sitema ira retornar qual foi e o que foi
alterado.

rpm --verify --all = Verifica em todo o Sistema.

rpm -qR Chrome = Verifica as DEPENDENCIAS do pacote.

-R = --Requires

rpm2cpio = Comando utilizado para converter um pacote .rpm em um .cpio

rpm2cpio chrome.rpm | cpio -idmv

-i = Extrair

m = Manter as permissões.

d = Cria os diretórios.
v = Exibe os detalhes.

GERENCIADOR DE PACOTES DO YUM = APT-GET

yum = Trabalha com os pacotes disponiveis no repositório da distro.

/etc/yum/conf = Modifica o padrao do yum

/etc/yum.conf = Arquivo de Conf. Do YUM

/etc/yum.repos.d = REPOSITÓRIO

yum check = Faz uma verificaco da base de dados do YUM.

yum install chrome.rpm = Faz a instalacao do pacote

yum update = Atualiza o seu Linux

yum upgrade = Atualiza o Linux e faz a REMOCAO de pacotes obsoletos

yum check-update = Verifica se tem atualização

yum list-update = yum check-update.

yum search chrome = Faz uma busca pelo pacote

yum list = Lista todos os pacotes disponiveis para instalacao.

yum info chrome = Informações sobre o pacote

REMOÇÃO DE PACOTES .YUM

yum remove chrome = Remoção de pacote

Yum install --downloaderonly chrome = Server para fazer download do pacote .rpm (Não
baixa as dependencias).

GERENCIADOR DE ARQUIVOS DNF

YUM --> DNF eh um fork do yum (Fedora).

GERENCIAMENTO DE ARQUIVOS ZYPPER

Distibuicao do Suse e OpenSuse

zipper ls = Listar os REPOSITORIOS


cat /etc/zypper/repos.d = Arquivo de Repositorios do zipper.

zipper install Chrome = zipper in chrome

zipper refresh = Equivale ao update.

zipper update = Equivale ao upgrade.

GERENCIAMENTO DE PROCESSOS

ps = Mostra os processos que estao atrelados ao usuário e ao terminal.

ps a = Mostra Todos os Processos de Todos os Usuários, atrelados a um terminal.

ps au = Mostra Todos os Processos de Todos os Usuários, atrelados a um terminal e add


filtros.

ps aux = Mostra TODOS os processos incluindo banco de dados, servidor web...

ps auf = Mostra TODOS os processos incluindo banco de dados... Como se fosse um PS


TREE

ps tree = Mostra os processos em forma de tree.

pgrep firefox = Retorna o PID do processo.

pgrep -x firefox = Retorna o PID do Processo.

ps aux | grep -i 6510

pgrep -t tty1 = Lista todos NUMEROS dos processos na tty1

pgrep -t tty1 -l = Lista todos NUMEROS e NOMES dos processos na tty1

pgrep -t tty1 -l -a = Lista todos NUMEROS, NOMES e DETALHES dos processos na tty1

pgrep -t tty1 -c = Qtd de processos atreladas na tty1

pgrep -o -l = Exibe o NUMERO e o NOME do processo mais VELHO.

pgrep -n -l = Exibe o NUMERO e o NOME do processo mais NOVO.

homo

FINALIZAR PROCESSOS - Section 12


kill -l = Exibe todos os tipos de sinais de finalização.

kill -15 (SIGTERM) 10665 = kill 10665 = PEDE para o firefox desligar.

kill -9 (SIGKILL) 10558 = MATA o processo.

kill -1 (SIGHUP) 11584 = Faz o RELOAD de um arquivo de configuração.

kill -2 (SIGINT) 12123 = Ira PARAR o processo, NÃO finaliza. Ctrl + C

kill -18 (SIGCONT) = Ir á PAUSAR o processo, NÃO finaliza. Ctrl + Z

killall -SIGTERM firefox = Fecha o processo pelo nome.

pkill -TERM firefox = Fecha o processo pelo nome.

./sqlserver.sh & = Executa e abre o aplicativo e libera o shell

jobs = Exibe os comandos executados em background

%1 = Traz o sqlserver para o terminal (preso).

crtl + Z = Ira PAUSAR o processo. Sinal -18.

bg = Volta a funcionar em background

fg = Volta a funcionar em terminal.

nohup = Executa em background

ls | nohup cpio -o > arquivo.cpio & = Ira compactar tudo em background sem parar se o
terminal for fechado

free -h = Exibe o consumo da memoria ram.

free -h -c 10 -s 1 = Exibe o consumo da memoria ram, atualiza 10 vezes a cada 1s.

cat /proc/meminfo = Exibe informacoes das memorias

cat /proc/swaps = Exibe informacoes da Swap

cat /proc/cmdline = Argumentos e parametros de boot

cat /proc/filesystems = Exibe os tipos de FileSystem disponiveis.


cat /proc/mouts = Exibe os FilesSystem Montados

uptime = Exibe a hora do sistema, Qtd de tempo ligado, N. de usuarios, Carga do sistema
1min 5min e 15 min.

DEFENINDO PRIORIDADES DE PROCESSOS NO LINUX

nice = Comando utilizado para iniciar um processo com uma determinada prioridade.

OS VALORES VARIAM DE -20 ATE 19

sudo nice -n -20 steam

renice = Comando utilizado para reiniciar um processo com uma determinada prioridade.

EXPRESSOES REGULARES E FILE GLOBBING

Expressões Regulares = Funcionam apenas com comandos, tem suporte a expressões


regulares (grep, find..).

ls | grep ^l.*t$

^l = Comece com L

.* = Qualquer coisa (0..n)

t$ = Termine com T

File Globbing = Nativo do Linux (funciona com qualquer comando).

ls l*t

l = Comece com L

* = Qualquer conteudo (0..n)

t = Termine com T

“ “ = Tratam todos os caracteres especiais como caracteres normais. EXCETO $ \


‘ ‘ = Tratam TODOS os caracteres especiais como caracteres normais.

cat Arquivo1.txt | grep ‘\$’

Obs.: \ e $ Aspas Simples.

Obs.: O resto podemos usar Aspas Dupla.

ls [fa]ile1 = Ira retornar aile1 e file1

ls [^f]ile = Ira retornar apenas aile1, pois [^f] nega o F.

GREP FGREP PGREP

ls | grep “file” = Pesquisa apenas por file

ls | grep -i “file” = Pesquisa por File e file.

ls | grep -v “file” = Pesquisa por aquivos que NAO são file.

ls | grep -vi “file” = Pesquisa por aquivos que não são file ou File.

ls | grep -vin “file” = Pesquisa por aquivos que não são file ou File e NUMERA A ordem dos
aquivos onde estão localizados

grep -E = egrep = Habilita a opção de expressões regulares extendidas.

ls | egrep “file|aile”1 = Pegar todos que sejam file OU aile.

fgrep = Habilita o filtro por metacaracteres.

cat Text1.txt | grep “[“ = DA ERRO

cat Tex1.txt | grep “\[“ = Retorno o [

cat Text1.txt | fgrep “[“ = O mesmo retorno do acima porem nao precisa do \

pgrep firefox = Ver o PID do firefox

grep -r “braille terminal” = Busca pela palavra dentro dos arquivos


GERENCIAMENTO DE BIBLIOTECAS NO LINUX

DIRETORIOS = /lib e o /usr/lib


CACHE DA LIBS = ld.so.conf

O ld.so.conf --> ld.so.conf.d

ldd = Comando para exibir todas as libs que o executavel depende.

which discord = Exibe onde o executavel esta.

ldd /usr/bin/discorc = Comando para exibir TODAS as Libs de um Binário.

ldconfig -p = Exibe TODAS as libs na memoria.

ldconfig = Comando para atualização das Libs do linux.

/etc/ld.so.conf.d/ = Vários arquivos de configuração.

O Comando ldconfig irá buscar todos os arquivos de configuração nesse diretório


(/etc/ld.so.conf.d). Criando um arquivo chamado ld.so.cache.

ldconfig -v = Ver os detalhes das libs e configurações (ldconfig).

ldconfig -p = Ver o TODAS as libs que estão no cache do sistema.

ldconfig -f = Aponta um arquivo de configuração para colocar ele no cache.

$LD_LIBRARY_PATH = Variável (SEM USO - ANTIGA) - Era o path onde estavam todas as
Libs.

Ou usado quando o usuario nao tem permissao de root.

GERENCIAMENTO DE PERMISSÕES NO SISTEMA LINUX - SECTION 15

- = Arquivo

L = Link Simbolico

D = Diretorio

C = Dispositivo Especial (ls -l /dev)

READ = 4 | WRITE = 2 | EXECUTE = 1

Owner (U)| Group (G)| Others (O)


Permissao Octal:

6(rw) 6(rw) 2(w).

7(rwx) 5(rx) 4(r).

Permissao de forma extendida:

u=rwx = Substituo Acesso total ao dono do arquivo.

u +x = Add a permissao de executar ao dono.

u -x = Removendo a permissao de executar do dono.

g = rx = Substituo a persissao de leitura e executar ao grupo.

o = r = Substituo a permissao de leitura a outros.

stat Arquivo1.txt = Exibe TODAS as INFORMACOES do ARQUIVO.

chmod 644 Arquivo1.txt = Permissao de Leitura e Escrita(Dono), Leitura(Grupo),


Leitura(Outros).

chmod -R 777 * = Permissao Total para TODOS os usuarios e para TODOS os arquivos.

chmod +r Arquivo.sh = Add permissao de Executar ao aquivo.

chmod u=r,g=r,o=r file01 = Add permissao de leitura ao Dono, leitura ao grupo e leitura para
outros.

chgrp games file1 = Muda o grupo do arquivo file1 para o grupo games

chgrp -R games * = Muda o grupo de todos os aquivos para o grupo games

chown games file1 = Muda o grupo do arquivo file1 para o grupo games.

chown games:games file2.txt = Muda o dono e o grupo do arquivo file2.txt

chown games.games file2.txt = Muda o dono e o grupo do arquivo file2.txt


BIT SUID ( 4 ), BIT SGID ( 2 ) e STICK BIT ( 1 ).

s - Owner + Execute, s - Group + Execute, t - Orther +


Execute

S - suid - Execute, S - suid - Execute, T - suid - + Execute

BIT SUID (4) = Qualquer usuario pode executar esse executavel com a mesma permissao do
dono do executavel

sudo chmod u+s File

-rwsr-xr-x 1 root root 67992 Aug 29 11:00 /bin/passwd

BIT SGID (2) = Qualquer usuario que pertenca ao mesmo grupo do grupo dono do executavel
pode executar o executavel. Mas utilizado em diretorios. Todos os arquivos criados no
diretorio com oBIT SGID setado pertencem ao grupo que foi definido pelo comando e nao de
acordo com que fez.

sudo chmod g+s Diretorio

drwxr-sr-x 2 root dmenezes 4096 Aug 29 12:00 Ditetorio = Ira herda o grupo definido no
GID.

STICK BIT (1) = Funciona apenas em diretórios. Apenas o Dono do arquivo pode apagar ou
modificar.

sudo chmod o+t Diretorio

drwxr-sr-t 2 root dmenezes 4096 Aug 29 12:00 Ditetorio = Ira herda o grupo definido no
GID.

UMASK = 0022

READ = 4 | WRITE = 2 | EXECUTE = 1

VALORES PADRÕES:

Arquivos = 666-022=644 ( - rw- r-- r-- )

Diretórios = 777-022=755 ( d rwx r-x r-x )

Arquivo (666-644)=0022 Umask


Diretorios (777-022)=755 Umask

OS ARQUIVOS TERÃO AGORA COMO PADRAO O VALOR DE 644 E OS DIRETÓRIOS O


VALOR DE 755.

Arquivos (666-640)=0026 Umask

Diretorios (777-026)=751 Umask --> 750 (Mudamos para que outros nao tivessem permissão
de executar aquivos no diretorio).

OS ARQUIVOS TERÃO AGORA COMO PADRAO O VALOR DE 640 E OS DIRETÓRIOS O


VALOR DE 751 .

Para alterar o UMASK padrao

umask 0027

READ = 4 | WRITE = 2 | EXECUTE = 1

Owner (U)| Group (G)| Others (O)

Permissao

Arquivos (666).

6(rw) 4(r) 0(-).

Diretorio (777).

7(rwx) 5(rx) 0(-).

Tivemos que ajustar o umask para 0027, evitando que outros tenham permissão de executar
no diretorio.

COMANDOS LINUX

locate = Comando utilizado para pesquisar aquivos no cache do updatedb.

updatedb = Comando para reconstruir o cache.

locate discord = Busca por ocorrencias da palavra discord.


whereis = Comando para buscar o Binario, manuais e seu source code.

whereis find

/usr/bin/find = Exibe onde esta o binarios.

/usr/share/man/man1/find.1.gz = Exibe onde está o manual.

/usr/share/info/find.info.bz = Exibe onde está o codigo fonte.

which find = Comando para exibir onde está o binário do find.

type find = Comando para exibir onde está o binário do find.

apropos = Comando para filtrar palavras chaves em manuais.

apropos ufw

man - k ufw = Busca pela palavras nas paginas do manual. Mesma coisa do comando
apropos ufw

EDITOR VI LINUX

vi arquivo.txt = Comando para criar um arquivo usando o vi.

ENTRAR NO MODO DE INSERÇÃO

i = Entar no modo de Insercao

a = Entar no modo de Insercao na casa ao lado (A direita).

A = Entra no modo de insercao no fim da Linha

o = Entar no modo de Insercao uma Linha Abaixo

O = Entra no modo de Insercao uma Linha Acima

SAIR DO MODO DE INSERÇÃO

esq

MODO DE COMANDO

h = Esquerda

j = Baixo

k = Cima

l = Direita
yy = Copia uma linha toda

cc = Recorta uma linha e entra em modo de edicao

dd = Recorta uma Linha NAO entra em modo de edicao

p = Cola

v + Seta pra Baixo ( j ) = Comeca a copia dinamica

p = Cola

yw = Copia uma palavra

P = Cola

g = Leva o Cursor ao Final do Arquivo

gg = Leva o Cursor ao Top do Arquivo

d + w = Deleta uma palavra

c + w = Deleta uma Palavra e entra em Modo de Insercao

c + c = d +d = RECORTAR a linha toda e entra em Modo de Insercao

:wq = Grave, sair

:x = Sair e Salvar

:wq! = Grave, sair - Forcar

:q! = Forca sainda sem Salvar

:e! = Carrega uma alteracao feita em paralelo no aquivo. ! = Se eu tb alterei algo no


arquivo.

:e = Carrega uma alteracao feita em paralelo no aquivo. Se eu nao alterei nada no arquivo.

ZZ = Sair e Salvar

/ = Para buscar por uma palavra abaixo de onde o cursor esta.

? = Para buscar por uma palavra acima de onde o cursor esta.

n = Procura pela proxima ocorrencia


N = Procur pela Ocorrencia Anterior

0 = Vai pro comerço da linha

$ = Vai pro fim da linha

J = Vai pro final do arquivo

4 + l = Anda 4 casas para a direita.

Y + 4 + Seta p/ Baixo = Copia 4 linhas abaixo.

:!Comanddo = Sai do VI para Executar o comando e depois, apertar enter, Volta ao VI.

:! ls/tmp

vi NovoArquivo.txt = Cria um arquivo em branco.

vi = Entra em Modo de Edição sem Nome do Arquivo.

:w NovoArquivo.txt = Para salvar dando nome a um aquivo criado

EDITOR NANO

nano = Editor, tipo VI.

Ctrl + g (^ = Crtl ) = Mostra as opções

( M = Alt )

ESCOLHENDO O EDITOR DE TEXTO PADRAO

select-editor = Seleciona o Editor padrao para editar aquivos no terminal

sudo update-alternatives --config editor = Seleciono qual o editor padrao quando digitar
editor no terminal

export = $EDITOR ou $VISUAl=nano

export = $EDITOR ou $VISUA =emacs

export = $EDITOR ou $VISUAL=vim


GERENCIAMENTO DE HARDWARE E DE MODULOS (DRIVERS).

ls /proc

Cada processo cria uma pasta dentro do /proc o numero da pasta é o PID do processo.
Arquivos e diretórios dinamicos.

pgrep firefox = Pegar o PID do fire fox.

cat /proc/cpuinfo = Mostra detalhes do Processador

cat /proc/dma = Endereço de memoria

cat /proc/interrupts = Mostra os endereços de IRQ (Endereços de interrupção).

cat /proc/ioports = Mostra as portas de entrada e saidas de dados.

cat /proc/modules =

cat /proc/mounts = Link Simbolico para /proc/self/mounts.(Exibe tudo que está montado
no Sistema).

cat /proc/swaps = Mostra informações das partições de swap

ls /sys

Similar ao /proc, mostra informações sobre o kernel, modulos, BUS. lspci utilição esse diretório
para obter informações.

cat /proc/mounts | grep -i sys = Mostra que o /sys também é um sistema de arquivos
virtual.

ls /dev

Cada dispositivo tem uma instancia no /dev. (demon) é a mesma ideia de um serviço, porém
fica sem uso na memória, esperando vc add um novo dispositivo.

Plugou o USB --> Gera o UEVENT--> UDEV --> Verifica em /etc/udev/rules.d --> Toma uma
ação e monta o dispositivo.

lsusb = Lista tudo que está do barramento USB.

lsusb -s 003:

lsusb -d 1d6b:

lsusb -t = Exibe em forma de arvore


lsusb -v = Exibe mais detralhes

lspci = Lista tudo que esta no barramento pci

lspci | grep -i nvidia

lspci -nn = Informações do fabricante (ID).

lspci -t = Exibe as informações em modo de arvore

lspci -sv CODIGO

sudo lspci -vv

lspci -k = Mostra o modulo de um determinado dispositivo.

cd /lib/modules = Local onde ficam os modulos

ls /lib/modules/NKERNEL/kernel

cat /etc/modules = Voce pode definir quais modulos serao carregados pelo linux.

cat /proc/modules = Garda Informacoes dos modulos.

O LSMOD ler as informações do /proc/modules

lsmod = Comando utilizado para exibir todos os modulos que estão na memoria do sistema.

sudo lsmod | grep -i alx

modinfo alx = Mostra detalhes do Modulo listado no lsmod.

modprobe -r alx= Remove o drive de REDE

modprobe alx = Da o Reload no drive e nas dependências.

rmmod alx = Remove apenas o MODULO (drive), e nao as dependências.

modprobe alx = Para Subir novamete o drive para a memória.

insmod = Apenas sobe o MODULO sem as dependencias.

insmod /lib/modules/NKERNEL/kernel/...ko
sudo find / -iname alx.ko

cd /usr/lib/modules/5.3.0-40-generic/kernel/drivers/net/ethernet/atheros/alx/

insmod alx.ko = Devo estar dentro da pasta onde o alx.ko foi encontrado pelo find

Da erro porque devemos subir primeiro a dependência mdio.

sudo find / -iname mdio.

ls -l /lib/modprobe.d = EDITADO PELO SISTEMA

cat nvidia-kms.comf

ls -l /etc/modprobe.d

cat
COTAS DE DISCOS

sudo apt install quota = Comando para instalação de cotas no dispositivo.

cat /etc/fstab

UUID=b79ea0fd-cc05-40be-b1f7-53bf550e5629 /mnt ext4 defaults,usrquota,grpqouta 0 2

sudo unmount /mnt

sudo mount /mnt

sudo quotacheck -cug /mnt = Verifica se a partição esta configurada com suporte a cotas.

c = Se nao exister um banco de dados de cota, crie uma.

u = De usuarios

g = De grupos

/mnt = No /mnt

sudo quotacheck -avug

a = Verifica todas as partições do /etc/fstab.

v = Mostra mais detalhes.

u = Usuarios.

g = Grupos.

sudo edqouta dmenezes

soft = echo “45*1024” | bc Limite que assim que ultrapassado começa a avisar ao usuário

hard = echo “50*1024” | bc

inodes =

echo “50*1024” | bc = Vendo o Valor de 50Mb pela Calc.

sudo quotaon -a = Ativa as cotas que foram configuradas no disco.

quota = Ver todas as opções para a função das quotas.

FIM DA PROVA 101

FIM DA PROVA 101

Você também pode gostar