Sistemas Operacionais II - Aula 02 a 04
Linux: Comandos Básicos e Navegação do Sistema
O Linux é um sistema operacional criado por Linus Torvalds em 1991, com sua primeira versão oficial lançada em 1992. Diferentemente de sistemas proprietários, o Linux é de código aberto, o que permite a colaboração mundial para seu desenvolvimento e evolução. Esta característica torna o sistema mais flexível e adaptável às necessidades específicas dos usuários.
Características Principais do Linux
- Multiusuário: Permite que vários usuários utilizem o sistema simultaneamente, cada um com suas próprias credenciais
- Multitarefa: Executa diversos programas simultaneamente
- Multiplataforma: Funciona em diferentes arquiteturas de hardware
- Multiprocessador: Suporta sistemas com múltiplos processadores
- Case Sensitive: Diferencia letras maiúsculas e minúsculas (exemplo: “Arquivo.txt” e “arquivo.txt” são considerados arquivos diferentes)
- Sistema de Arquivos Próprio: Utiliza sistemas como Ext2, Ext3, Ext4, entre outros
Estrutura de Diretórios do Linux
O Linux organiza seus arquivos em uma estrutura hierárquica de diretórios, onde cada um tem um propósito específico:
/- Diretório raiz, todos os outros diretórios estão abaixo dele/bin- Contém programas executáveis essenciais do sistema/boot- Arquivos do sistema de inicialização/dev- Arquivos de dispositivos (periféricos)/etc- Arquivos de configuração do sistema/home- Diretórios pessoais dos usuários/lib- Bibliotecas compartilhadas essenciais/mnt- Ponto de montagem temporário/opt- Aplicativos adicionais/proc- Diretório virtual com informações do sistema/root- Diretório pessoal do usuário root/sbin- Programas de administração do sistema/tmp- Arquivos temporários/usr- Programas e dados compartilhados/var- Dados variáveis (logs, spools, etc.)
Navegação e Comandos Básicos
Visualizando e Navegando pelo Sistema
pwd- Mostra o diretório atual (Print Working Directory)cd diretorio- Muda para o diretório especificadocd ..- Volta para o diretório anterior (pai)cd /- Vai direto para o diretório raizls- Lista arquivos e diretóriosls -l- Lista com detalhes (permissões, tamanho, data)ls -a- Lista incluindo arquivos ocultosls -la- Combina as opções acimals -R- Lista recursivamente (incluindo subdiretórios)
tree- Mostra a estrutura de diretórios em formato de árvore
Manipulação de Arquivos e Diretórios
mkdir nome_diretorio- Cria um diretóriotouch nome_arquivo- Cria um arquivo vazio ou atualiza timestampcat arquivo- Exibe o conteúdo de um arquivocat > arquivo- Cria um arquivo e permite inserir conteúdo (Ctrl+D para finalizar)cat >> arquivo- Adiciona conteúdo a um arquivo existente
cp origem destino- Copia arquivoscp -r- Copia diretórios recursivamente
mv origem destino- Move ou renomeia arquivos/diretóriosrm arquivo- Remove um arquivorm -r diretorio- Remove diretório e seu conteúdorm -i- Pede confirmação antes de remover
rmdir diretorio- Remove um diretório vazio
Visualização de Conteúdo
more arquivo- Exibe conteúdo com pausa por páginaless arquivo- Similar ao more, mas com navegação mais flexívelhead arquivo- Mostra as primeiras linhas de um arquivohead -n- Especifica o número de linhas
tail arquivo- Mostra as últimas linhas de um arquivotail -f- Mostra atualizações em tempo real
Filtros e Busca
grep "texto" arquivo- Busca texto em arquivoswc arquivo- Conta linhas, palavras e caractereswc -l- Conta apenas linhaswc -w- Conta apenas palavraswc -c- Conta apenas caracteres
Usuários e Permissões
whoami- Mostra o nome do usuário atualwho- Mostra os usuários conectadosw- Mostra informações detalhadas dos usuários conectadoschmod- Altera permissões de arquivoschown- Altera o proprietário de arquivos
Editando Arquivos
vi- Editor de texto tradicional do Linux- Modo Comando (ESC) e Modo Inserção (i)
:w- Salvar:q- Sair:wq- Salvar e sair
nano- Editor mais amigável para iniciantes
Sistema e Desligamento
uname- Informações sobre o sistema operacionaluname -a- Todas as informações do sistema
date- Mostra ou configura data e horacal- Mostra o calendárioshutdown- Desliga o sistemashutdown -h now- Desliga imediatamenteshutdown -r now- Reinicia imediatamente
Considerações Importantes
- Sempre use comandos como
rm -rcom cuidado, pois podem remover permanentemente dados. - O Linux é sensível a maiúsculas e minúsculas, então “Arquivo.txt” e “arquivo.txt” são arquivos diferentes.
- O usuário root tem privilégios totais no sistema; use com responsabilidade.
- O histórico de comandos pode ser acessado com
historyou usando as setas do teclado. - O uso de
tabpara autocompletar nomes de arquivos e comandos aumenta a eficiência.