Hoje, é o oitavo dia do meu desafio de 30 dias estudando Linux com foco na certificação Linux Essentials (LPI 010-160).
O dia foi diferente: sem conteúdo novo. A proposta foi uma revisão estratégica e profunda usando uma metodologia comprovada de aprendizado.
📌 Metodologia aplicada hoje: Teoria → Exercício → Prática → Explicar → Revisar
🚀 UP Linux - Sua plataforma de estudos
Durante todo esse desafio, uso a plataforma UpLinux.Cert para praticar e testar o conhecimento:
O que tem disponível hoje:
| Recurso | Quantidade |
|---|---|
| 📋 Questões disponíveis | +1.000 questões |
| 💻 Desafios no Terminal Virtual | +100 desafios práticos |
| 🔄 Revisão Inteligente (Spaced Repetition) | 10 para revisar hoje |
| 🎯 Modos de estudo | Livre, Tópico, Cronometrado, Flashcard |
Meu progresso atual:
- ✅ 330 questões respondidas
- ✅ 79% de taxa de acerto
- ✅ 260 corretas
📚 Cobertura da revisão de hoje
| Tópico | Conteúdo |
|---|---|
| 1.1 | Evolução do Linux e sistemas operacionais populares |
| 1.2 | Principais Aplicações Open Source |
| 1.3 | Entendendo o Software Open Source e suas Licenças |
| 1.4 | Habilidades ICT e trabalhando no Linux |
| 2.1 | O básico sobre a linha de comando |
📖 PARTE 1 — TÓPICO 1: A Comunidade Linux e a Carreira Open Source
🧠 TEORIA — 1.1: Evolução do Linux
Linha do tempo essencial
1969 → Unix criado nos laboratórios Bell (AT&T)
1983 → Richard Stallman inicia o projeto GNU
1985 → FSF (Free Software Foundation) fundada
1991 → Linus Torvalds publica o kernel Linux v0.01
1992 → Kernel Linux licenciado sob GPL
1993 → Debian e Slackware criados
1994 → Red Hat e SUSE fundadas
2004 → Ubuntu lançado (base: Debian)
2008 → Android lançado (base: kernel Linux)
2026 → Linux em 96%+ dos servidores web do mundo
A arquitetura em camadas
┌─────────────────────────────────────┐
│ Aplicativos do Usuário │ Firefox, LibreOffice, bash...
├─────────────────────────────────────┤
│ Ambiente Gráfico (opcional) │ GNOME, KDE, XFCE, Cinnamon
├─────────────────────────────────────┤
│ Ferramentas GNU │ ls, cp, grep, gcc, bash...
├─────────────────────────────────────┤
│ Kernel Linux │ Gerencia CPU, RAM, I/O, rede
├─────────────────────────────────────┤
│ Hardware │ CPU, RAM, disco, rede...
└─────────────────────────────────────┘
Conceitos-chave
| Conceito | Definição |
|---|---|
| Kernel | Núcleo do SO — gerencia hardware, memória, processos |
| Shell | Interface entre usuário e kernel (bash, zsh, sh) |
| Distribuição | Kernel + GNU + gerenciador de pacotes + configurações |
| GNU/Linux | Nome correto do sistema completo |
| Android | Usa kernel Linux, mas não é GNU/Linux |
Famílias de distribuições
| Família | Gerenciador | Formato | Exemplos |
|---|---|---|---|
| Debian | apt |
.deb |
Ubuntu, Mint, Kali, Raspberry Pi OS |
| Red Hat | dnf/yum |
.rpm |
Fedora, CentOS, Rocky, RHEL |
| SUSE | zypper |
.rpm |
openSUSE, SLES |
| Arch | pacman |
.pkg.tar.zst |
Arch, Manjaro, EndeavourOS |
✏️ EXERCÍCIO — 1.1
Responda antes de ver a resposta:
1. Em que ano Linus Torvalds publicou o kernel Linux?
✅ 1991
2. O Android é GNU/Linux? Por quê?
✅ Não. Android usa o kernel Linux, mas substitui as ferramentas GNU (bash, glibc) pelo ambiente Android (Bionic libc, ART runtime). Portanto é Linux, mas não GNU/Linux.
3. Qual gerenciador de pacotes usa o formato .deb?
✅ apt (e dpkg por baixo). Família Debian: Ubuntu, Mint, Kali.
4. Qual a diferença entre kernel e distribuição?
✅ O kernel gerencia o hardware. A distribuição é o sistema completo: kernel + ferramentas GNU + gerenciador de pacotes + software adicional + configurações padrão.
5. Cite dois sistemas que rodam Linux além de computadores desktop/servidor.
✅ Android (smartphones), Smart TVs, Roteadores (OpenWRT), IoT, Supercomputadores (100% do Top500).
💻 PRÁTICA — 1.1
# Verificar versão do kernel
$ uname -r
5.15.0-91-generic
# Informações completas do sistema
$ uname -a
Linux ubuntu 5.15.0-91-generic #101-Ubuntu SMP x86_64 GNU/Linux
# Identificar a distribuição
$ cat /etc/os-release
NAME="Ubuntu"
VERSION="22.04.3 LTS (Jammy Jellyfish)"
# Tempo de atividade do sistema
$ uptime
10:30:00 up 2 days, 3:15, 1 user, load average: 0.52, 0.48, 0.45
# Informações de hardware
$ lscpu | head -10
Architecture: x86_64
CPU(s): 4
Thread(s) per core: 2
Model name: Intel(R) Core(TM) i7-8750H
🗣️ EXPLICAR — 1.1
Se você consegue explicar com suas próprias palavras, você aprendeu.
Linux é um kernel, não um sistema operacional completo. Linus Torvalds criou em 1991 apenas o núcleo — o componente que conversa com o hardware. O sistema operacional completo que usamos é formado pela combinação do kernel Linux com as ferramentas GNU criadas por Richard Stallman desde 1983. É por isso que o nome correto é GNU/Linux.
Distribuições são "sabores" do mesmo sistema base. Ubuntu, Fedora e Arch usam o mesmo kernel Linux, mas diferem em: gerenciador de pacotes, ciclo de releases, configurações padrão, e público-alvo. Ubuntu foca em facilidade; Arch foca em controle total; Fedora foca em inovação.
🧠 TEORIA — 1.2: Principais Aplicações Open Source
Desktop — Tabela de referência completa
| Categoria | Open Source | Proprietário |
|---|---|---|
| Suite de escritório | LibreOffice | Microsoft Office |
| Processador de texto | LibreOffice Writer | Word |
| Planilhas | LibreOffice Calc | Excel |
| Apresentações | LibreOffice Impress | PowerPoint |
| Navegador web | Firefox, Chromium | Chrome, Edge |
| Thunderbird | Outlook | |
| Edição de imagem | GIMP | Photoshop |
| Edição vetorial | Inkscape | Illustrator |
| Edição de áudio | Audacity | Audition |
| Edição de vídeo | Kdenlive / Shotcut | Premiere |
Servidor — O que cai na prova
| Categoria | Aplicação | Observação |
|---|---|---|
| Servidor web | Apache, Nginx | Apache = mais usado; Nginx = mais leve |
| Banco de dados | MySQL, MariaDB, PostgreSQL | MariaDB = fork do MySQL |
| Linguagens | PHP, Python, Perl | Clássicos do servidor |
| Versionamento | Git | Padrão da indústria |
| Nuvem | OpenStack | Infraestrutura de nuvem privada |
✏️ EXERCÍCIO — 1.2
1. Qual é a alternativa open source ao Microsoft Office?
✅ LibreOffice
2. Quais são os dois principais servidores web open source?
✅ Apache e Nginx
3. MariaDB é um fork de qual banco de dados?
✅ MySQL — criado quando a Oracle adquiriu a Sun Microsystems e o MySQL.
4. Qual editor de imagem raster open source é alternativa ao Photoshop?
✅ GIMP (GNU Image Manipulation Program)
5. Cite a linguagem de script open source mais associada ao WordPress.
✅ PHP
🧠 TEORIA — 1.3: Software Open Source e Licenças
As 4 liberdades do Software Livre (FSF)
⚠️ ATENÇÃO: A numeração começa em 0. Cai na prova!
| # | Liberdade |
|---|---|
| 0 | Liberdade de usar o programa para qualquer finalidade |
| 1 | Liberdade de estudar como o programa funciona e adaptá-lo |
| 2 | Liberdade de redistribuir cópias |
| 3 | Liberdade de distribuir versões modificadas |
Software Livre vs Open Source
| Aspecto | Software Livre (FSF) | Open Source (OSI) |
|---|---|---|
| Foco | Liberdade ética e filosófica | Praticidade e colaboração |
| Criador | Richard Stallman / FSF | Eric Raymond / OSI (1998) |
| Termo unificado | FOSS (Free and Open Source Software) |
Copyleft — O conceito mais importante
Software PROPRIETÁRIO → copyright → "você NÃO pode copiar"
Software LIVRE (copyleft) → "você PODE copiar, mas DEVE manter livre"
Copyleft é o princípio que garante que software livre permaneça livre após modificações.
Tabela completa de licenças
| Licença | Tipo | Uso em proprietário | Exige publicar modificações |
|---|---|---|---|
| GPLv2 / GPLv3 | Copyleft forte | ❌ | ✅ |
| LGPL | Copyleft fraco | ✅ (como biblioteca) | ✅ (só a lib) |
| AGPL | Copyleft forte+ | ❌ | ✅ (inclui SaaS) |
| MIT | Permissiva | ✅ | ❌ |
| Apache 2.0 | Permissiva + patentes | ✅ | ❌ |
| BSD | Permissiva | ✅ | ❌ |
| Creative Commons | Para conteúdo (não código) | Depende | Depende |
Modelos de negócio open source
1. Suporte e consultoria → Red Hat/IBM, Canonical
2. Dual licensing → versão libre + versão comercial
3. SaaS / Hosted → software livre como serviço pago
4. Freemium → básico grátis, avançado pago
5. Open core → núcleo livre, features avançadas pagas
✏️ EXERCÍCIO — 1.3
1. Qual licença usa o kernel Linux?
✅ GPLv2 (com a cláusula "only" — Linus não migrou para v3)
2. O que significa "free" em "Free Software"?
✅ Liberdade (free as in freedom), não gratuidade. Pode ser pago.
3. Qual a diferença entre GPL e LGPL?
✅ GPL é copyleft forte — código derivado DEVE ser GPL. LGPL é copyleft fraco — permite uso de bibliotecas LGPL em software proprietário.
4. A licença MIT é copyleft?
✅ Não. MIT é permissiva — pode ser usada em software proprietário sem obrigação de abrir o código.
5. Para que serve a Creative Commons?
✅ Para conteúdo (textos, imagens, música) — não é adequada para código-fonte.
6. O que é AGPL e por que é mais restritiva que a GPL?
✅ AGPL cobre software distribuído como serviço web (SaaS). Se você modifica um software AGPL e o oferece como serviço, deve publicar o código-fonte.
7. As 4 liberdades começam em qual número?
✅ 0 (zero). Liberdade 0, 1, 2, 3.
🧠 TEORIA — 1.4: Habilidades ICT e Trabalhando no Linux
Ambientes gráficos (Desktop Environments)
| DE | Característica principal | Distros |
|---|---|---|
| GNOME | Moderno, minimalista | Ubuntu, Fedora |
| KDE Plasma | Rico em recursos, personalizável | Kubuntu, openSUSE |
| XFCE | Leve e rápido | Xubuntu, Mint XFCE |
| Cinnamon | Familiar ao Windows | Linux Mint |
| MATE | Clássico e estável | Ubuntu MATE |
| LXQt | Ultra leve | Lubuntu |
💡 Ponto crítico: A interface gráfica é opcional e separada do sistema. Você pode trocar o DE sem reinstalar o Linux.
Sistema de permissões — revisão rápida
# Estrutura de permissões
-rwxr-xr-- 1 carlos dev 1024 mai 08 10:00 arquivo.sh
↑↑↑ ↑↑↑ ↑↑↑
│ │ └── outros (r--)
│ └─────── grupo (r-x)
└─────────── dono (rwx)
Tabela octal:
| Octal | Binário | Permissão |
|---|---|---|
| 7 | 111 | rwx (leitura + escrita + execução) |
| 6 | 110 | rw- (leitura + escrita) |
| 5 | 101 | r-x (leitura + execução) |
| 4 | 100 | r-- (somente leitura) |
| 0 | 000 | --- (nenhuma) |
Exemplos mais comuns:
chmod 755 script.sh # dono: tudo | grupo e outros: ler+executar
chmod 644 arquivo.txt # dono: ler+escrever | grupo e outros: ler
chmod 600 privado.txt # dono: ler+escrever | ninguém mais
chmod +x script.sh # adiciona execução para todos
SSH — Acesso remoto
# Conectar a servidor remoto
$ ssh usuario@192.168.1.100
# Copiar arquivo local para servidor
$ scp arquivo.txt usuario@servidor:/destino/
# Copiar arquivo do servidor para local
$ scp usuario@servidor:/caminho/arquivo.txt ./
# Gerar par de chaves SSH
$ ssh-keygen -t rsa -b 4096
# Copiar chave pública para o servidor
$ ssh-copy-id usuario@servidor
✏️ EXERCÍCIO — 1.4
1. Qual ambiente gráfico é mais recomendado para migração do Windows?
✅ Cinnamon (Linux Mint) — interface mais familiar ao Windows.
2. O que significa "chmod 644 arquivo.txt"?
✅ Dono: rw- (leitura + escrita) | Grupo: r-- (leitura) | Outros: r-- (leitura). Padrão para a maioria dos arquivos.
3. O que faz "chmod +x script.sh"?
✅ Adiciona permissão de execução para o dono, grupo e outros. Necessário para executar scripts.
4. Qual porta padrão usa o SSH?
✅ Porta 22.
5. O que faz "scp"?
✅ Secure Copy — copia arquivos entre hosts de forma segura usando o protocolo SSH.
📖 PARTE 2 — OBJETIVO 2.1: O Básico sobre a Linha de Comando
🧠 TEORIA — 2.1
O Shell e o Prompt
usuario@hostname:diretorio_atual$ ← usuário comum
usuario@hostname:diretorio_atual# ← root (cuidado!)
Tipos de shell:
| Shell | Descrição |
|---|---|
| Bash | Bourne Again Shell — padrão na maioria das distros |
| sh | Bourne Shell — mais básico, portável |
| zsh | Z Shell — popular, mais recursos |
| fish | Friendly Interactive Shell — foco em usabilidade |
| dash | Leve, usado em scripts do sistema (/bin/sh em muitas distros) |
Anatomia de um comando
comando [opções] [argumentos]
ls -lah /home/carlos
↑ ↑ ↑
Programa Modificam Alvo do
comportamento comando
Opções curtas vs longas — são equivalentes:
ls -a # opção curta
ls --all # opção longa equivalente
ls -l -a -h # três opções separadas
ls -lah # mesmo resultado, combinadas
Variáveis de Ambiente — tabela completa
| Variável | Conteúdo | Exemplo |
|---|---|---|
$HOME |
Diretório home do usuário | /home/carlos |
$USER |
Nome do usuário logado | carlos |
$SHELL |
Shell em uso | /bin/bash |
$PATH |
Diretórios de busca de executáveis | /usr/bin:/bin |
$PWD |
Diretório de trabalho atual | /home/carlos/projetos |
$OLDPWD |
Diretório anterior | /tmp |
$LANG |
Idioma e localização | pt_BR.UTF-8 |
$PS1 |
Formato do prompt | \u@\h:\w\$ |
$? |
Exit code do último comando | 0 = sucesso |
$$ |
PID do shell atual | 1234 |
Como o $PATH funciona
Você digita: ls
↓
Shell percorre cada diretório do $PATH:
/usr/local/sbin → /usr/local/bin → /usr/sbin → /usr/bin → /sbin → /bin
↓
Encontrado em: /usr/bin/ls ✅ → Executa!
↓
Não encontrado em nenhum → "command not found"
# Ver o PATH
$ echo $PATH
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
# Descobrir onde está um executável
$ which ls
/usr/bin/ls
# Tipo do comando (builtin, externo, alias)
$ type cd
cd is a shell builtin
$ type ls
ls is /usr/bin/ls
Atalhos essenciais do terminal
| Atalho | Ação |
|---|---|
Tab |
Autocompletar |
Tab Tab |
Listar opções de autocompletar |
Ctrl+R |
Busca reversa no histórico |
Ctrl+A |
Início da linha |
Ctrl+E |
Fim da linha |
Ctrl+U |
Apagar até o início |
Ctrl+K |
Apagar até o fim |
Ctrl+W |
Apagar palavra anterior |
Ctrl+L |
Limpar tela |
Ctrl+C |
Cancelar processo (SIGINT) |
Ctrl+Z |
Suspender processo (SIGTSTP) |
Histórico de comandos
$ history # lista todos
$ history 15 # últimos 15
$ !! # repete o último comando
$ sudo !! # repete o último com sudo
$ !42 # executa o comando #42
$ !git # último comando que começou com "git"
$ Ctrl+R # busca reversa interativa
Redirecionamento e Pipes
# Redirecionamento de saída
$ ls > lista.txt # cria/sobrescreve
$ ls >> lista.txt # adiciona ao final (append)
$ ls 2> erros.txt # redireciona stderr
$ ls 2>/dev/null # descarta erros
$ make > build.log 2>&1 # stdout + stderr no mesmo arquivo
# Pipe: conecta saída ao próximo comando
$ cat /etc/passwd | grep root
$ ls -la | grep ".txt"
$ ps aux | grep nginx | grep -v grep
# Stdin, stdout, stderr
# 0 = stdin (entrada padrão)
# 1 = stdout (saída padrão)
# 2 = stderr (saída de erros)
Operadores de execução
# Sequência (independe do resultado)
$ cd /tmp ; ls ; pwd
# E lógico (só executa se anterior teve sucesso)
$ mkdir projeto && cd projeto && touch README.md
# OU lógico (só executa se anterior falhou)
$ cd /backup || mkdir /backup
# Background
$ long-running-command &
# Exit code
$ echo $? # 0=sucesso | outro=erro
Tipos de comandos
| Tipo | Descrição | Exemplos |
|---|---|---|
| Builtin | Interno do shell | cd, echo, read, type |
| Externo | Binário em disco | ls, grep, find |
| Alias | Atalho definido pelo usuário | ll (alias de ls -alF) |
| Função | Função definida no shell | Funções do .bashrc |
Configuração do Shell
# Arquivo executado ao abrir terminal interativo
~/.bashrc
# Arquivo executado em login (SSH, console)
~/.profile ou ~/.bash_profile
# Aplicar mudanças sem fechar o terminal
$ source ~/.bashrc
✏️ EXERCÍCIO — 2.1
1. O que o símbolo # no prompt indica?
✅ Que o usuário é root (superusuário). Máxima atenção!
2. Qual a diferença entre > e >>?
✅
>sobrescreve o arquivo.>>adiciona ao final (append) sem apagar.
3. O que faz sudo !!?
✅ Re-executa o último comando com privilégios de root.
4. O que é $??
✅ O exit code do último comando.
0= sucesso; qualquer outro valor = erro.
5. Como o shell encontra o executável de um comando?
✅ Percorre os diretórios da variável
$PATHem ordem, até encontrar o executável.
6. Qual é o tipo do comando cd?
✅ Builtin — implementado internamente no shell (não existe como binário em disco).
7. O que faz cmd1 && cmd2?
✅ Executa
cmd2apenas secmd1retornar exit code 0 (sucesso).
8. O que faz 2>/dev/null?
✅ Redireciona o stderr para
/dev/null, descartando mensagens de erro.
9. O que faz Ctrl+R no terminal?
✅ Ativa a busca reversa interativa no histórico — digita parte do comando para encontrá-lo.
10. Qual arquivo é executado ao abrir um novo terminal no Bash?
✅ ~/.bashrc (shell interativo não-login).
💻 PRÁTICA INTEGRADA
Exercício 1 — Explorando o ambiente
# Execute cada um e observe a saída
$ echo $SHELL # Qual shell você usa?
$ echo $USER # Quem é você?
$ echo $HOME # Seu diretório home
$ echo $PATH # Onde o shell busca executáveis?
$ echo $? # Exit code do último comando
$ type cd # cd é builtin?
$ type ls # ls é externo?
$ which python3 # Onde está o python3?
$ uname -a # Informações do sistema
$ uptime # Há quanto tempo o sistema está ligado?
Exercício 2 — Redirecionamento na prática
# Criando e manipulando arquivos com redirecionamento
$ echo "Linha 1" > teste.txt
$ echo "Linha 2" >> teste.txt
$ echo "Linha 3" >> teste.txt
$ cat teste.txt
# Capturando erros
$ ls /diretorio_inexistente 2>/dev/null # sem mensagem de erro
$ ls /diretorio_inexistente 2>erros.txt # salva o erro
# Redirecionando tudo
$ ls /tmp /inexistente > saida.txt 2>&1 # stdout + stderr juntos
$ cat saida.txt
Exercício 3 — Pipes em cadeia
# Pipeline clássico: usuários com bash como shell
$ cat /etc/passwd | grep /bin/bash | cut -d: -f1 | sort
# Quantos processos estão rodando?
$ ps aux | wc -l
# Os 5 processos que mais consomem memória
$ ps aux | sort -k4 -rn | head -5
# Histórico: comandos mais usados
$ history | awk '{print $2}' | sort | uniq -c | sort -rn | head -10
Exercício 4 — Variáveis e configuração
# Criando e usando variáveis
$ NOME="Linux Essentials"
$ echo $NOME
# Exportando para subprocessos
$ export CURSO="LPI 010-160"
$ bash -c 'echo "Curso: $CURSO"' # subprocesso herda a variável
# Adicionando ao PATH temporariamente
$ export PATH=$PATH:~/scripts
$ echo $PATH
# Verificar se mudança persiste (não persiste — é temporária)
$ bash # novo shell
$ echo $PATH # não tem ~/scripts (não foi exportado para .bashrc)
$ exit
🗣️ EXPLICAR — Revisão Geral
Teste final: explique cada conceito em uma frase.
GNU/Linux: O kernel Linux (Torvalds, 1991) + ferramentas GNU (Stallman, 1983) formam o sistema operacional GNU/Linux. Cada um precisava do outro para ser completo.
Distribuições: São "receitas" diferentes usando os mesmos ingredientes base (kernel Linux). Ubuntu foca em facilidade, Arch em controle, Fedora em inovação. A família define o gerenciador de pacotes (.deb/apt vs .rpm/dnf).
Software Livre vs Open Source: Software Livre (FSF) é uma questão de ética e liberdades dos usuários. Open Source (OSI) é uma questão de metodologia de desenvolvimento. FOSS cobre os dois. A diferença é filosófica, não técnica.
GPL (Copyleft): A GPL usa o copyright para garantir liberdade. Código GPL que você modifica e distribui DEVE também ser GPL. É o "efeito viral" que mantém o software livre sendo livre.
Shell:
O shell interpreta seus comandos e os envia ao kernel. O $PATH define onde ele procura executáveis. Builtins (cd, echo) existem dentro do shell; externos (ls, grep) são binários em disco.
Pipes e Redirecionamento:
O poder do Linux está em combinar ferramentas simples. | conecta stdout de um ao stdin do próximo. > redireciona saída para arquivo. 2>&1 une stderr ao stdout.
🗂️ Mapa Mental Completo — Tópico 1 + 2.1
CERTIFICAÇÃO LINUX ESSENTIALS — REVISÃO DIA 08
│
├── TÓPICO 1: Comunidade Linux e Open Source
│ │
│ ├── 1.1 Evolução do Linux
│ │ ├── 1969: Unix → 1983: GNU → 1991: Linux → hoje
│ │ ├── Kernel ≠ Distro ≠ Sistema Operacional
│ │ └── Famílias: Debian(apt/.deb) | Red Hat(dnf/.rpm) | Arch(pacman)
│ │
│ ├── 1.2 Aplicações Open Source
│ │ ├── Desktop: LibreOffice, Firefox, Thunderbird, GIMP
│ │ └── Servidor: Apache, Nginx, MySQL, MariaDB, Git
│ │
│ ├── 1.3 Licenças e Software Livre
│ │ ├── 4 liberdades: 0(usar), 1(estudar), 2(redistribuir), 3(modificar)
│ │ ├── Copyleft: GPL > LGPL > permissivas (MIT, Apache)
│ │ └── Creative Commons → conteúdo, não código
│ │
│ └── 1.4 Habilidades ICT
│ ├── DEs: GNOME, KDE, XFCE, Cinnamon (interface separada do sistema)
│ ├── Permissões: rwx / octal (644, 755, 600)
│ └── SSH para acesso remoto seguro
│
└── TÓPICO 2.1: Básico da Linha de Comando
├── Shell: bash(padrão), zsh, fish, dash
├── Prompt: $ (usuário) | # (root)
├── Anatomia: comando [opções] [argumentos]
├── $PATH: onde o shell busca executáveis
├── Variáveis: $HOME, $USER, $SHELL, $PATH, $?
├── Atalhos: Ctrl+R, Ctrl+A/E, Ctrl+U/K, Tab
├── Histórico: history, !!, !n, !cmd
├── Redirecionamento: >, >>, 2>, 2>&1, /dev/null
├── Pipes: | conecta stdout → stdin
└── Operadores: && (AND), || (OR), ; (sequência), & (background)
🧪 SIMULADO FINAL — 15 questões estilo prova
1. Qual o nome correto do sistema completo com kernel Linux + ferramentas GNU?
✅ GNU/Linux
2. As 4 liberdades do software livre são numeradas de:
✅ 0 a 3 (começam em zero)
3. O kernel Linux usa qual licença?
✅ GPLv2
4. MariaDB é derivado de qual banco de dados?
✅ MySQL
5. Qual ambiente gráfico é padrão no Ubuntu?
✅ GNOME
6. O que faz chmod 755 script.sh?
✅ Dono: rwx (7) | Grupo: r-x (5) | Outros: r-x (5). O dono pode tudo; grupo e outros podem ler e executar.
7. Qual licença permite uso em software proprietário sem obrigação de abrir o código?
✅ MIT (e Apache 2.0, BSD — todas permissivas)
8. O que é $? no Bash?
✅ O exit code do último comando executado (0 = sucesso)
9. Como re-executar o último comando com sudo?
✅
sudo !!
10. O que indica o caractere # no prompt do Linux?
✅ O usuário está logado como root
11. cmd1 || cmd2 — quando cmd2 é executado?
✅ Apenas se
cmd1falhar (retornar exit code diferente de 0)
12. Qual arquivo configura aliases e funções pessoais no Bash?
✅ ~/.bashrc
13. O que faz ls 2>/dev/null?
✅ Executa
lsdescartando mensagens de erro (redireciona stderr para /dev/null)
14. Qual a diferença entre type e which?
✅
whichmostra apenas o caminho do executável no PATH.typeidentifica se é builtin, alias, função ou externo.
15. O que é FOSS?
✅ Free and Open Source Software — termo que une Software Livre (FSF) e Open Source (OSI)
✅ Checklist do Dia 08
- Linha do tempo do Linux (1969 → 2026)
- Kernel vs Shell vs Distribuição vs GNU/Linux
- Famílias de distros e seus gerenciadores de pacotes
- Aplicações Open Source desktop e servidor
- As 4 liberdades do software livre (começam em 0!)
- Copyleft e todas as licenças: GPL, LGPL, AGPL, MIT, Apache, BSD, CC
- Ambientes gráficos e suas características
- Sistema de permissões com notação octal
- SSH para acesso remoto
- Anatomia do comando Linux
- $PATH e como o shell localiza executáveis
- Variáveis de ambiente essenciais
- Atalhos do terminal (Ctrl+R, Tab, Ctrl+A/E...)
- Histórico de comandos (history, !!, !n)
- Redirecionamento: >, >>, 2>, 2>&1, /dev/null
- Pipes e encadeamento de comandos
- Operadores: &&, ||, ;, &
- Tipos de comandos: builtin, externo, alias, função
- Configuração do shell: ~/.bashrc vs ~/.profile
- Simulado com 15 questões
📅 Próximo passo — Dia 09
Amanhã avanço para:
- 2.2 — Usando a linha de comando para obter ajuda (man, apropos, whatis)
- 2.3 — Usando diretórios e listando arquivos (ls avançado, FHS completo)
💻 Pratique tudo que foi revisado hoje no terminal virtual e nos simulados:
👉 https://uplinux.waldoeller.com/
+1.000 questões e +100 desafios práticos esperando por você!
Acompanhe o desafio completo aqui no blog.
Material de referência: LPI Learning Materials 010-160
