Buscar

Curso Linux 01 Comandos Basicos

Prévia do material em texto

CURSO DE LINUX
Professor: Alyson Balbino
E-mail: alysonbalbino@gmail.com
 
IDENTIFICAR E EDITAR CONFIGURAÇÕES 
DE HARDWARE
É fundamental para um sistema operacional a comunicação com o hardware e 
para nos auxiliar na identificação de tais recursos o linux nos disponibiliza 
algumas ferramentas que destacaremos a seguir:
● lspci – exibe todos os componentes conectados ao barramento PCI, tais 
como: controladores de disco, placas externas e outros;
Exemplo: Experimente digitar no terminal o comando lspci sem parâmetros 
e veja o que acontece;
Como podemos perceber o comando do exemplo acima apenas mostra os 
principais hardwares conectados ao barramento PCI sem maiores detalhes 
mas, podemos aumentar o nível de detalhamento a listagem com o 
parâmetro -v (verbose) ou a combinação de parâmetros -s endereço -v 
para um dispositivo específico.
Outras opções -k mostra os drivers do kernel de cada dispositivo, -n exibe 
os IDs dos dispositivos e -nn o mesmo que lspci sem parâmetros.
 
IDENTIFICAR E EDITAR CONFIGURAÇÕES 
DE HARDWARE
● lsusb – mostra os dispositivos conectados a máquina;
Exemplo: agora iremos testar o comando lsusb sem 
parâmetros.
Para aumentarmos o detalhamento utilizaremos o 
parâmetro -v (verbose) ou a combinação de parâmetros -s 
endereço -v para um dispositivo específico.
A opção -t exibe o comando lsusb em forma de árvore.
 
IDENTIFICAR E EDITAR CONFIGURAÇÕES 
DE HARDWARE
● lshw – exibe todos os componentes conectados ao barramento 
PCI, tais como: controladores de disco, placas externas e outros;
Digite lshw no terminal sem parâmetros e vamos observar o 
resultado.
lshw -html gera um relatório em formato html detalhado com ID, 
descrição, versão, serial e outros campos;
Lshw -short exibe um relatório mais curto com os campos: caminho 
do hardware, dispositivo, classe e descrição;
A opção -sanitize remove informações confidenciais como números 
de série. No lugar do número de série aparecerá a palavra 
[REMOVED];
Outras opções são -enable ou -disable para habilitar ou desabilitar 
testes como: dmi, memory, cpuinfo e etc.
 
IDENTIFICAR E EDITAR CONFIGURAÇÕES 
DE HARDWARE
Analisar o conteúdo do diretório /proc, seus subdiretórios e 
arquivos com informações sobre os processos ativos e 
recursos de hardware.
● /version – exibe a versão do sistema operacional;
● /cpuinfo – mostra informações sobre o processador;
● /ioports – mostra as porta de entrada e saída;
● /meminfo – exibe informações da memória;
● /partitions – exibe a lista das partições do sistema
Existem outras informações e recursos dentro do diretório 
proc para maiores informações utilize o comando man 5 
proc.
 
ADMINISTRAÇÃO DE ARQUIVOS E 
DIRETÓRIOS
Filesystem Hierarchy Standard (FHS) – é um projeto 
iniciado em 1993 que preconiza o fornecimento de um layout 
para o sistemas de arquivos nas distribuições linux.
Atualmente o FHS está na versão 2.3(lançada em 2004) e 
existe um projeto de atualização para a versão 3.0 que esta 
em desenvolvimento na Linux Foundation em um grupo de 
trabalho chamado de Linux Standard Base (LSB), 
responsável pela tarefa de remodelar a padronização.
Para maiores informações acesse:
http://www.pathname.com/fhs/pub/fhs-2.3.pdf 
http://www.linuxbase.org/betaspecs/fhs/fhs.html
 
ADMINISTRAÇÃO DE ARQUIVOS E 
DIRETÓRIOS
 
ADMINISTRAÇÃO DE ARQUIVOS E 
DIRETÓRIOS
ATENÇÃO: No existem no FHS uma lista de diretórios que não 
devem ser instalados separadamente do diretório principal ou 
como é conhecido diretório raiz (“/”). são eles:
● /bin e /sbin – diretórios ondem se encontram os programas e 
scripts de execução para inicializar o sistema. Contém também 
um rol de comandos especiais;
● /etc – diretório com os arquivos de configuração do sistema;
● /proc e /sys – diretórios especiais com informações de sistema, 
processos e do hardware;
● /dev – diretório que armazena os dispositivos (discos, porta de 
comunicação e etc) e outros arquivos;
● /lib – bibliotecas de arquivos compartilhados utilizados pelo 
/bin, /sbin e módulos do kernel.
 
ADMINISTRAÇÃO DE ARQUIVOS E 
DIRETÓRIOS
Links são arquivos especiais que têm a finalidade de atalho para outros 
arquivos facilitando assim a maneira como são acessados. Temos dois 
tipos de links:
● Link Simbólico – possui em seu conteúdo o nome de caminho que 
aponta para o arquivo real;
Sintaxe: ln -s alvo nome_do_atalho
● Link Físico – faz referência direta ao arquivo em um dispositivo. 
Sintaxe: ln alvo nome_do_atalho
OBS.: Enquanto o hard link existir o conteúdo do arquivo 
continuará existindo;
Parâmetros mais utilizados:
-f – força a criação do link;
-s – opção para criar links simbólicos;
-v – realiza a operação em modo detalhado.
 
ADMINISTRAÇÃO DE ARQUIVOS E 
DIRETÓRIOS
● ls – comando para listar arquivos e diretórios;
Sintaxe: ls
Parâmetros mais utilizados:
-a – lista todos os arquivos, inclusive arquivos escondidos;
-d – lista somente diretórios;
-F – lista arquivos com caractere de identificação do tipo: 
executáveis (*), soquetes(/), links simbólicos(@);
-l – lista arquivos no formato longo;
-R – lista diretórios e subdiretórios;
 
ADMINISTRAÇÃO DE ARQUIVOS E 
DIRETÓRIOS
● df – este comando serve para exibir informações sobre o 
tamanho da partição ou disco, o espaço utilizado e o 
espaço livre em bytes.
Sintaxe: df
Parâmetros principais: 
-a – inclui sistemas de arquivos com 0 blocos ocupados;
-h – formato humano em GBytes, KBytes e MBytes;
-T – lista o tipo de sistema de arquivos de cada partição;
-l – lista somente sistema local de arquivos. 
 
ADMINISTRAÇÃO DE ARQUIVOS E 
DIRETÓRIOS
● du – exibe informações sobre o espaço utilizado pelos 
diretórios;
Sintaxe: du
Parâmetros mais utilizados:
-a – mostra também o espaço ocupado pelos arquivos;
-c – apresenta o total do espaço ocupado;
-h – formato humano em GBytes, KBytes e MBytes;
-s – exibe apenas o total ocupado (sumário). 
 
ADMINISTRAÇÃO DE ARQUIVOS E 
DIRETÓRIOS
● mkdir – cria diretórios.
Sintaxe: mkdir nome_do_diretório
Parâmetros principais: 
-p – Cria diretório pai se o mesmo não existir;
● rmdir – remove diretórios vazios;
Sintaxe: rmdir nome_do_diretório
Parâmetros principais:
-p – remove diretórios intermediários se estiverem vazios;
--verbose – exibe o nome de cada diretório removido.
 
ADMINISTRAÇÃO DE ARQUIVOS E 
DIRETÓRIOS
● touch – atualiza a última data de acesso ao arquivo, se o 
mesmo não existir cria um arquivo vazio;
Sintaxe: touch nome_do_arquivo
Parâmetros mais utilizados:
-c – não cria o arquivo se o mesmo não existir;
-m – atualiza somente a hora da modificação;
-a – atualiza somente a data de acesso.
● mv – mover ou renomear arquivos.
Sintaxe: mv origem/arquivo destino
Parâmetros principais: 
-f – força a movimentação do arquivo;
 
ADMINISTRAÇÃO DE ARQUIVOS E 
DIRETÓRIOS
● rm – apaga arquivos e diretórios não vazios;
Sintaxe: rm nome_do_arquivo
Parâmetros mais utilizados:
-f – força a remoção de arquivos protegidos contra escrita 
sem pedir confirmação;
-i – pergunta ao usuário antes de remover os arquivos;
-d – remove diretórios mesmo que não estejam vazios;
-R – ação recursiva dentro de diretórios (apaga pastas e 
subpastas);
 
ADMINISTRAÇÃO DE ARQUIVOS E 
DIRETÓRIOS
● cp – copia arquivos e diretórios;
Sintaxe: cp origem/arquivo /destino
Opções:
-p – copia os atributos do arquivo original;
-i – modo interativo. Pergunta antes de sobrescrever um 
arquivo;
-r – copia recursiva;
 
ADMINISTRAÇÃO DE ARQUIVOS E 
DIRETÓRIOS
● cd – acessa diretórios de acordo com as permissões do 
usuário;
Sintaxe: cd /diretório
Principais parâmetros:
~ – retorna ao diretório home do usuário;
/ – retorna ao diretório raiz;
- – retornaao diretória anteriormente acessado;
.. – sobe um nível de diretório;
 
MANIPULAÇÃO E ATUALIZAÇÃO DE 
ARQUIVOS
● cat – exibe o conteúdo de um arquivo do início ao fim;
Sintaxe: cat nome_do_arquivo
Parâmetros principais:
-n – numera todas as linhas;
-b – numera somente as linhas não vazias;
● head – exibe o início de um arquivo, por padrão as 10 primeiras 
linhas;
Sintaxe: head nome_do_arquivo
Parâmetros principais:
-nX – exibe as primeiras X linhas do arquivo;
 
MANIPULAÇÃO E ATUALIZAÇÃO DE 
ARQUIVOS
● tail – esse comando é semelhante ao head mas em vez 
de ler o início ele verifica as últimas linhas do arquivo. É 
uma ferramenta bastante útil principalmente para análise 
de logs do sistema.
Sintaxe: tail /var/log/syslog
Vamos testar alguns parâmetros desse comando:
-nX – exibe a quantidade X(número inteiro) de linhas;
-f – exibe o arquivo continuamente. É um excelente 
recurso para monitorar logs em tempo real.
 
MANIPULAÇÃO E ATUALIZAÇÃO DE 
ARQUIVOS
● cut – faz um recorte em seções específicas de um texto de um 
arquivo ou processamento de saída de um comando;
Sintaxe: cut –d(delimitador) –f(campoN°), 
nome_do_arquivo
Principais parâmetros:
-d – especifica o delimitador. O delimitador pode ser (: ; . e 
etc);
-f – informa a posição do campo;
Exemplo: Iremos fazer um recorte do campo 1 do arquivo 
passwd localizado em /etc com a exibição do resultado na 
saída padrão.
cut -d: -f1 /etc/passwd
 
MANIPULAÇÃO E ATUALIZAÇÃO DE 
ARQUIVOS
● split – ferramenta utilizada para dividir o arquivo em parte 
de tamanho igual para facilitar a visualização e/ou sua 
manipulação.
Sintaxe: split -opção nome_do_arquivo nome_parte-
Os principais parâmetros utilizados são:
-lX – indica o número máximo de X linhas que cada 
arquivo pode comportar;
-b – faz a divisão do arquivo com base em seu tamanho 
em Kbytes
 
PAGINAÇÃO E REDIRECIONAMENTO
Comandos de paginação são utilizados para visualizar conteúdos extensos de 
arquivos ou resultados de outros comandos na saída padrão forçando uma pausa na 
exibição do resultado da informação ao preencher toda a área do monitor. Para esse 
recurso utilizaremos dois comandos a seguir:
● more – exibe a paginação em sentido único, do início ao fim. O comando também 
pode receber a canalização de processos para que o mesmo possa paginar a 
saída de comandos, conforme os exemplos abaixo:
more /etc/mime.types – paginação de conteúdo de arquivos
ls /etc | more – canalização de processo de comando com paginação
● less – funciona de forma semelhante ao more porém tem sua navegação em 
duplo sentido possibilitando ao usuário rolar o resultado da página para cima ou 
para baixo conforme as setas de navegação. Para fixar o conhecimento vamos 
utilizar o mesmo exemplo acima substituindo o comando more pelo less;
OBS.: para sair do comando de paginação basta digita a letra q no terminal ou a 
combinação ctrl+c.
 
PAGINAÇÃO E REDIRECIONAMENTO
Todos os sistemas operacionais possuem subsistemas de 
entrada e saída para proporcionar a interação homem-
máquina. Como exemplos de entrada de dados temos o 
teclado e saída de dados o monitor. Esse fluxo de entrada e 
saída pode ser redirecionado para outros dispositivos 
possibilitando maior flexibilidade entre sistemas 
computacionais. A seguir serão apresentados os principais 
redirecionamentos do sistema.
> – redirecionamento de saída;
>> – redirecionamento com concatenação;
 2> – redirecionamento de mensagem de erro;
<< fim – flag de entrada de dados;
 
PAGINAÇÃO E REDIRECIONAMENTO
A seguir veremos alguns exemplos de utilização de redirecionamentos 
para fixar o conhecimento.
Exemplo de redirecionamento de saída;
ls > lista_de_arquivos.txt
Exemplo de redirecionamento com concatenação;
who >> lista_de_arquivos.txt
Exemplo de redirecionamento de mensagem de erro;
ls programas 2> saida_erro.txt
Exemplo de flag de entrada de dados;
cat << fim > texto.txt
Inclusão de texto marcado por flag de terminação.
fim
 
CANALIZAÇÃO
A canalização de comandos é um recurso muito útil para a 
comunicação entre processos. É representado pelo caractere 
“ | ”. Ela basicamente pega o resultado do processamento de 
um comando e o envia para a entrada de outro comando e 
assim gerar o resultado.
Exemplo: ls /etc | grep shadow
Exemplo 2: ls /etc | grep shadow > arq_senhas.txt
 
TEE
O tee é um comando que mistura de canalização com 
redirecionamento. Ele consegue exibir o resulta em tela ao 
mesmo tempo que grava as informações em arquivo 
específico.
Sintaxe: comando | tee arquivo.txt
Agora vamos apresentar um exemplo de uso do comando 
tee na prática:
Exemplo 2: ls /etc | tee arquivo.txt
 
LOCALIZAÇÃO E SUBSTITUIÇÃO
Localizar e substituir arquivos e textos dentro da estrutura de 
diretórios do sistema operacional é uma atividade essencial 
para o administrador de sistemas. Para auxiliar nessa tarefa 
o uso ferramentas específicas são fundamentais para 
executar tais tarefas. A seguir veremos um breve rol de 
ferramentas utilizadas para essa finalidade.
 
LOCALIZAÇÃO E SUBSTITUIÇÃO
● grep – procura em um ou mais arquivos por linhas que contêm 
um padrão de busca.
Sintaxe: grep opções padrão arquivos
Principais parâmetros:
-i – trata maiúsculas e minúsculas igualmente; 
-v – lista linhas que não correspondem com a expressão usada;
-n – informa a posição da linha encontrada no arquivo;
Alguns metacaracteres utilizados pelo grep:
* – indica um caractere qualquer ou vários; 
^ – indica início de linha;
$ – indica fim de linha; 
 
LOCALIZAÇÃO E SUBSTITUIÇÃO
Sintaxe: grep opções padrão arquivos
Exemplos:
Localizar o nome do usuário root no arquivo passwd em /etc.
grep 'root' /etc/passwd
Listar linhas comentadas no arquivo mime.types em /etc.
grep '^#' /etc/mime.types
Listar linhas que contenham no final do arquivo mime.types a 
palavra html.
grep 'html$' /etc/mime.types
Localizar os arquivos que iniciem com a palavra root em /etc.
grep -Ri 'root' /etc/
 
LOCALIZAÇÃO E SUBSTITUIÇÃO
● tr – comando utilizado para substituir/excluir o conteúdo 
de um texto via entrada padrão;
Sintaxe: tr ‘a-z’ ‘A-Z’ < /etc/passwd
Principais parâmetros:
-d – exclui caracteres sem traduzi-los;
-s – substitui um sequencia de caracteres duplicados;
Principais classes de caracteres:
\n – traduz o texto inserindo novas linhas;
\t – traduz o texto aplicando tabulação;
 
LOCALIZAÇÃO E SUBSTITUIÇÃO
Exemplos:
Modificar a saída do arquivo /etc/passwd com todos os 
caracteres maiúsculos.
tr [:lower:] [:upper:] < /etc/passwd
Remover os comentários de arquivo /etc/mime.types
tr -d '#' /etc/mime.types
Substituir os ':' das linhas de /etc/passwd por tabulações.
tr ':' '\t' < /etc/passwd > traducao
Substituir sequencias duplicadas das linhas de /etc/passwd.
tr -s ',' ' ' < traducao
 
LOCALIZAÇÃO E SUBSTITUIÇÃO
● sed – editor de texto para efetuar substituições de strings 
na saída;
Sintaxe: sed texto + opção arquivo
Principais parâmetros:
s – substituição de ocorrências da expressão;
p – impressão de ocorrências;
d – exclusão da expressão indicada;
q – impressão até a expressão indicada;
g – substitui todas as ocorrências combinada com s;
 
LOCALIZAÇÃO E SUBSTITUIÇÃO
Exemplos:
Substituir a palavra root por administrador.
sed s/root/administrador /etc/passwd
Substituir todas as ocorrências de root por administrador
sed s/root/administrador/g /etc/passwd
Exibir até encontrar a string aluno.
sed /syslog/q /etc/passwd
 
LOCALIZAÇÃO E SUBSTITUIÇÃO
● find – realiza buscas pelo sistema de diretórios até encontrar a 
expressão procurada;
Sintaxe: find diretório expressãoParâmetros principais:
-name expressão – procurar por um nome equivalente a 
expressão; 
-atime(+n;-n ou n) – procura arquivos acessados a +, - ou n dias;
-ctime(+n;-n ou n) – busca arquivos modificados a +, - ou n dias;
-maxdepth n – realiza uma busca no sistema acessando N 
subdiretórios;
-exec [comando] { }\; – executa o comando para cada arquivo 
encontrado;
 
LOCALIZAÇÃO E SUBSTITUIÇÃO
Exemplos:
Localizar arquivos modificados a pelo menos 1 dia
find /var/log/ -ctime 1
Localizar arquivos acessados nos últimos 5 dias
find /var/log/ -atime 5
Realizar uma busca por arquivos *.conf com até 3 
diretórios de profundidade
find /etc -maxdepth 3 -name "*.conf"
Encontrar o arquivo e fazer uma cópia dele para o /root
find /tmp/ -name arquivo1 -exec cp {} /home/alyson/ \;
	Slide 1
	Slide 2
	Slide 3
	Slide 4
	Slide 5
	Slide 6
	Slide 7
	Slide 8
	Slide 9
	Slide 10
	Slide 11
	Slide 12
	Slide 13
	Slide 14
	Slide 15
	Slide 16
	Slide 17
	Slide 18
	Slide 19
	Slide 20
	Slide 21
	Slide 22
	Slide 23
	Slide 24
	Slide 25
	Slide 26
	Slide 27
	Slide 28
	Slide 29
	Slide 30
	Slide 31
	Slide 32
	Slide 33
	Slide 34
	Slide 35

Continue navegando