Pular para o conteúdo principal

MÓDULO 1 - Introdução ao Linux

Visão Geral​

Este primeiro módulo apresenta o Linux, o sistema operacional open source mais utilizado no mundo. Você vai descobrir por que o Linux existe, como ele funciona e quais são os conceitos fundamentais que você usará ao longo deste curso.

Objetivos de Aprendizagem​

Ao final deste módulo, você será capaz de:

  • Explicar o que é Linux e por que ele é essencial
  • Compreender a evolução do Unix para o Linux
  • Identificar os principais componentes de um sistema Linux
  • Distinguir as diferentes distribuições Linux
  • Utilizar o terminal para interagir com o sistema
  • Instalar e configurar um ambiente Linux

Duração Estimada​

Teoria: 3-4 horas
Prática: 2-3 horas
Total: 5-7 horas


Índice​

Parte 1: Introdução e Conceitos​

  1. Capítulo 1.1 - O que é Linux?
  2. Capítulo 1.2 - Por que Linux?
  3. Capítulo 1.3 - História e Evolução
  4. Capítulo 1.4 - Arquitetura de Alto Nível
  5. Capítulo 1.5 - Conceitos Fundamentais

Parte 2: Instalação e Prática​

  1. Capítulo 1.6 - Instalação e Primeiros Passos

Laboratórios Práticos​

Validação​


O que é Linux?​

Linux é um sistema operacional open source do tipo Unix que gerencia os recursos de hardware e software de um computador. Ele é utilizado em todos os lugares: de servidores a smartphones, passando por supercomputadores e dispositivos embarcados.

Definição Simples​

Linux é o sistema operacional que:

  • Gerencia os recursos do seu computador (CPU, memória, disco)
  • Permite executar aplicações e programas
  • Fornece uma interface entre o hardware e os softwares
  • Oferece um ambiente estável e seguro para o trabalho

O Linux está em toda parte ao seu redor, muitas vezes sem que você perceba!

Analogia: A Fundação de uma Casa​

Assim como as fundações de uma casa suportam toda a estrutura, o Linux suporta e gerencia todas as aplicações e recursos do seu sistema computacional.

Principais Características​

O Linux oferece:

  1. Open Source e Livre

    • Código fonte acessível e modificável
    • Gratuito para uso
    • Comunidade ativa e suporte
  2. Estabilidade e Confiabilidade

    • Sistema robusto e estável
    • Pode funcionar por anos sem reinicialização
    • Ideal para servidores críticos
  3. Segurança

    • Arquitetura segura por padrão
    • Atualizações de segurança regulares
    • Controle de acesso granular
  4. Flexibilidade e Personalização

    • Diversas distribuições (Ubuntu, Debian, Red Hat, etc.)
    • Personalizável conforme a necessidade
    • Interface gráfica ou linha de comando
  5. Performance

    • Uso eficiente dos recursos
    • Funciona em hardware antigo ou moderno
    • Otimizado para servidores e cloud

Por que Linux?​

Os Desafios Sem Linux (Sistemas Proprietários)​

Com sistemas operacionais proprietários, você fica limitado:

Problemas:

  • Custos elevados de licenças
  • Pouco controle sobre o sistema
  • Dependência de um fornecedor
  • Personalização limitada
  • Suporte pago ou restrito
  • Menos flexibilidade

As Vantagens Com Linux​

Vantagens:

  • Gratuito e open source
  • Controle total sobre o sistema
  • Personalizável ao extremo
  • Comunidade ativa e suporte
  • Segurança reforçada
  • Performance otimizada

Casos de Uso Típicos​

O Linux é utilizado em todos os lugares:

  1. Servidores Web e Cloud

    • A maioria dos servidores web utiliza Linux
    • Infraestrutura de cloud (AWS, Azure, GCP)
    • Hospedagem de sites
  2. Supercomputadores e HPC

    • 100% dos 500 supercomputadores mais potentes
    • Computação de alto desempenho
    • Pesquisa científica
  3. Dispositivos Embarcados e IoT

    • Smartphones Android (baseados em Linux)
    • Roteadores e equipamentos de rede
    • Dispositivos IoT e automação residencial
  4. Desenvolvimento e DevOps

    • Ambiente de desenvolvimento
    • Ferramentas DevOps e CI/CD
    • Containers Docker

História e Evolução​

A Evolução do Unix para o Linux​

Linus Torvalds e a Criação do Linux​

O Linux foi criado por Linus Torvalds, um estudante finlandês, em 1991.

Contexto (1991):

  • Unix era caro e proprietário
  • Minix (Unix-like educacional) era limitado
  • Linus queria um sistema livre e completo

Linux (1991):

  • Kernel open source
  • Nomeado a partir de Linus + Unix
  • Licença GPL (GNU General Public License)
  • Desenvolvimento colaborativo via Internet

Adoção e Crescimento​

Números chave:

  • Utilizado em 100% dos 500 supercomputadores
  • 96% dos 1 milhão de servidores web mais importantes
  • Android (baseado em Linux): mais de 70% do mercado mobile
  • Milhões de contribuidores e desenvolvedores
  • Maior ecossistema open source

Arquitetura de Alto Nível​

Visão Geral de um Sistema Linux​

Um sistema Linux é composto por várias camadas que trabalham juntas:

O Kernel Linux​

O Kernel é o "coração" do sistema. Ele gerencia todas as interações entre o hardware e os softwares.

Funções do Kernel:

  1. Gerenciamento de Processos

    • Criação, escalonamento e finalização de processos
    • Multitarefa e multiprocessamento
    • Comunicação entre processos
  2. Gerenciamento de Memória

    • Alocação e liberação de memória
    • Memória virtual e swap
    • Proteção de memória
  3. Sistema de Arquivos

    • Gerenciamento de arquivos e diretórios
    • Suporte a múltiplos sistemas de arquivos
    • Permissões e segurança
  4. Gerenciamento de Rede

    • Protocolos de rede (TCP/IP, UDP, etc.)
    • Gerenciamento de interfaces de rede
    • Firewall e segurança de rede
  5. Gerenciamento de Dispositivos

    • Drivers de dispositivos
    • Interface com o hardware
    • Plug and play

Espaço do Usuário vs Espaço do Kernel​

O Linux separa o espaço do usuário (user space) do espaço do kernel (kernel space):

Separação importante:

  • User Space: Aplicações e programas do usuário
  • Kernel Space: Funções críticas do sistema
  • Segurança: As aplicações não podem acessar o hardware diretamente

Conceitos Fundamentais​

Processos​

Um processo é uma instância de um programa em execução. Cada processo possui um identificador único (PID).

Características:

  • Cada processo tem um PID único
  • Processos pai e filhos (hierarquia)
  • Estados: running, sleeping, stopped, zombie
  • Recursos: CPU, memória, arquivos abertos

Sistema de Arquivos​

O sistema de arquivos organiza os dados no disco em arquivos e diretórios.

Estrutura importante:

  • / : Raiz do sistema
  • /bin, /usr/bin : Executáveis do sistema
  • /etc : Arquivos de configuração
  • /home : Diretórios dos usuários
  • /var : Dados variáveis (logs, cache)
  • /tmp : Arquivos temporários

Usuários e Permissões​

O Linux é um sistema multiusuário com um sistema de permissões granular.

Tipos de usuários:

  • Root (superusuário): Acesso completo ao sistema
  • Usuários normais: Acesso limitado aos próprios arquivos
  • Grupos: Permissões compartilhadas entre usuários

Permissões de arquivos:

  • Leitura (r): Ler o arquivo
  • Escrita (w): Modificar o arquivo
  • Execução (x): Executar o arquivo
  • Aplicadas a: Proprietário, Grupo, Outros

Shell e Linha de Comando​

O shell é a interface entre o usuário e o sistema. Ele interpreta os comandos.

Funcionalidades do shell:

  • Execução de comandos
  • Scripting e automação
  • Redirecionamento e pipelines
  • Variáveis de ambiente
  • Histórico de comandos

Ecossistema Linux​

O Linux não está sozinho. Ele faz parte de um ecossistema rico de ferramentas e projetos open source.

Principais Distribuições​

As distribuições Linux são variantes do Linux com ferramentas e configurações diferentes:

  • Debian/Ubuntu: Populares, fáceis de usar, baseadas em Debian
  • Red Hat/CentOS/Fedora: Corporativas, estáveis, baseadas em Red Hat
  • Arch Linux: Avançada, rolling release, altamente personalizável
  • SUSE/openSUSE: Corporativa, estável, popular na Europa
  • E centenas de outras...

Resumo do Módulo​

Neste módulo, você aprendeu:

Linux é um sistema operacional open source do tipo Unix
Ele gerencia os recursos de hardware e software de um computador
Um sistema Linux é composto pelo Kernel e pelo Espaço do Usuário
Os processos são instâncias de programas em execução
O sistema de arquivos organiza os dados em arquivos e diretórios
Os usuários e permissões controlam o acesso aos recursos
O shell é a interface entre o usuário e o sistema


Próximos Passos​

Agora que você entende os conceitos básicos, está pronto para:

Módulo 2: Arquitetura detalhada do sistema Linux
Módulo 3: Sistema de arquivos e navegação


Recursos Complementares​


Módulo criado em: Dezembro de 2024