LFCA: Entendendo o sistema operacional Linux – Parte 1

A Linux Foundation revelou uma nova certificação pré-profissional em TI conhecida como o Linux Foundation Certified IT Associate (LFCA). Esta é uma nova certificação de nível básico que foca em testar conceitos fundamentais de TI como comandos básicos de administração de sistemas, computação em nuvem, segurança e DevOps.

LFCA: Visão Geral e Estrutura do Curso

Aqui está um resumo das competências e domínios que o LFCA buscará testar:

Fundamentos do Linux 20%
Fundamentos da Administração de Sistemas 20%
Fundamentos de Computação em Nuvem 20%
Fundamentos de Segurança 16%
Fundamentos do DevOps 16%
Suporte a Aplicações e Desenvolvedores 8%

Visão geral da certificação LFCA

A certificação LFCA fornece conhecimentos fundamentais sobre comandos básicos de gerenciamento de sistema e arquivos, comandos e solução de problemas de rede, conceitos de computação em nuvem e segurança de dados, que inclui segurança de sistema e rede, e noções básicas de DevOps.

Depois de dominar os conceitos fundamentais e passar no exame LFCA, você pode começar a se preparar para a certificação LFCS (Linux Foundation Certified Sysadmin), que é de nível intermediário, e depois buscar a certificação LFCE (Linux Foundation Certified Engineer).

O exame LFCA é um exame de múltipla escolha e custa $200. Ele é realizado online com um supervisor remoto que o observa por meio de uma webcam durante toda a prova. Após a aprovação no exame, você receberá um distintivo e certificado LFCA que é válido por 3 anos.

Linux Fundamentals

Nesta seção inaugural, abordaremos os seguintes capítulos:

Sem mais delongas, vamos direto ao ponto.

Este artigo é a Parte 1 da série LFCA, que abordará os domínios e competências necessários para o exame de certificação LFCA.

Compreensão do Sistema Operacional Linux

Ao começarmos, presumimos que você possa ter interagido com o Windows ou o macOS ou ambos ao realizar suas tarefas diárias de computação. Ambos são sistemas operacionais que permitem interagir com os componentes de hardware e software de um computador e executar uma infinidade de tarefas, incluindo navegação, jogos, streaming de música e vídeo e desenvolvimento de software, para mencionar apenas algumas.

O Windows é um sistema operacional comum e possui uma parcela substancial do mercado entre os usuários de desktop. É fácil de usar e aprender e geralmente é uma porta de entrada para aprendizes que dão os primeiros passos na aprendizagem de como interagir com computadores.

Qual é o problema com o Windows e o macOS?

Apesar de sua facilidade de uso e suporte para uma vasta gama de dispositivos de hardware, o Windows tem sua parcela justa de desvantagens. Em primeiro lugar, o Windows é um sistema operacional proprietário da Microsoft, e a maioria dos aplicativos de software, como o pacote Microsoft Office, é paga. Isso exclui muitos que não têm a capacidade financeira de adquirir uma licença para o produto.

O mesmo vale para o macOS da Apple, que, apesar de sua elegância e segurança elogiável, vem com uma etiqueta de preço pesada anexada. Na verdade, alguns aplicativos da AppStore geralmente são pagos. Os usuários frequentemente reclamam de pagar por assinaturas sorrateiras de aplicativos que, de outra forma, seriam gratuitos em outras plataformas.

Além disso, o Windows é bastante instável e frequentemente vulnerável a ataques de malware, como vírus e cavalos de Troia. Você poderia gastar centenas de dólares em programas antivírus robustos para se proteger contra ataques e violações, ou desembolsar uma fortuna pagando a um profissional para diagnosticar e remover o vírus.

Além disso, a aplicação de patches de segurança e atualizações de recursos é frequentemente um processo demorado. Na maioria das vezes, atualizar seu sistema pode levar de trinta minutos a uma hora, dependendo do tamanho da atualização, e isso muitas vezes é ocasionado por uma série de reinicializações do sistema.

Por que usar o sistema operacional Linux?

O Linux, assim como o Windows e o macOS, é mais um sistema operacional que conquistou a indústria de TI. O Linux é onipresente e é usado por milhares de usuários diariamente.

O popular sistema operacional Android, que alimenta milhões de dispositivos inteligentes, é baseado no kernel do Linux. Seu smartphone Android favorito ou a smart TV em sua sala de estar são alimentados pelo Linux. Mais importante ainda, o Linux é o sistema predominante na internet, ocupando uma grande parcela em plataformas de hospedagem na web e servidores de internet. Aproximadamente 90% da nuvem pública e 99% do mercado de supercomputadores são fundamentados no Linux.

Então, como o Linux surgiu?

Neste momento, será prudente voltarmos no tempo e darmos uma olhada na origem de um dos sistemas operacionais mais amplamente utilizados.

História do Linux

A história do Linux remonta aos anos 1960 no AT&T Bell Labs, onde Dennis Ritchie – o pai da linguagem de programação C & KenThompson – um cientista da computação americano – junto com outros desenvolvedores estavam trabalhando no projeto Multics. Multics era um sistema operacional que alimentava os sistemas de computadores mainframe.

Os dois cientistas da computação estavam procurando construir um sistema operacional multiusuário e multitarefa com um sistema de arquivos hierárquico. Inicialmente, Multics era um projeto de pesquisa, mas rapidamente se tornou um produto comercial. Não impressionados com a direção que Multics estava tomando, os dois principais desenvolvedores traçaram seu próprio curso e partiram para desenvolver outro sistema baseado em Multics chamado UNICS, que mais tarde se metamorfoseou em UNIX.

Na década de 1970 e 80, o UNIX se tornou cada vez mais popular, especialmente nos círculos acadêmicos. Isso viu sua adoção por várias instituições, entre elas a University of Berkley California, que mais tarde mudou sua trajetória. Os desenvolvedores da universidade trabalharam ainda mais no código do UNIX e criaram o BSD, um acrônimo para Berkeley Software Development. BSD inspirou posteriormente múltiplos sistemas operacionais, alguns dos quais ainda são usados hoje, como FreeBSD e NetBSD.

Em Bells Labs, a pesquisa e desenvolvimento sobre o UNIX continuou, dando origem a outras variantes do UNIX que mais tarde foram adotadas por fornecedores comerciais. No entanto, o BSD era muito mais popular do que as variantes comerciais de Bells Labs.

Enquanto isso, em 1991, Linus Torvalds, um graduado finlandês, estava trabalhando em uma versão do UNIX chamada MINIX, mas ficou desapontado com a licença do projeto. Em uma carta endereçada ao seu grupo de usuários do MINIX, ele anunciou que estava trabalhando em um novo kernel que mais tarde foi apelidado de kernel Linux. Ele usou o código GNU, juntamente com o compilador GNU e o bash para criar o primeiro kernel Linux viável, que mais tarde foi licenciado sob o modelo GNU/GPL.

O kernel Linux preparou o terreno para o desenvolvimento de centenas de distribuições ou variantes do Linux. Você pode ter uma visão completa das distribuições Linux populares em distrowatch.

Distribuições Linux Populares

O Linux é um sistema operacional de código aberto. O que isso significa? Bem, isso implica que você pode visualizar o código-fonte do Linux, modificá-lo e redistribuí-lo livremente, sem nenhum custo. Usuários habilidosos, como desenvolvedores, também podem contribuir para o código para torná-lo melhor e mais interessante.

Por esse motivo, existem centenas de distribuições Linux com diferentes sistemas de gerenciamento de pacotes, aplicativos de software e apelo visual. Uma distribuição Linux, conhecida coloquialmente como distro, é uma versão do sistema operacional Linux que vem pré-empacotada com programas, bibliotecas, ferramentas de gerenciamento e outros softwares adicionais. Todas as distribuições são derivadas do kernel Linux.

A good number of Linux distros are free to download. However, there are exceptions such as Zorin OS which requires a small fee to download. Enterprise Linux distributions including RHEL – Red Hat Enterprise Linux – require a subscription for support, security, and feature updates.

Existem 4 famílias principais de distribuições Linux:

  • Sistemas da família Debian (por exemplo, Ubuntu, Mint, Elementary & Zorin).
  • Sistemas da família Fedora (por exemplo, CentOS, Red Hat 7 & Fedora).
  • Sistemas da família SUSE (por exemplo, OpenSUSE & SLES).
  • Sistemas Arch (por exemplo, Arch, Manjaro, ArchLabs, & ArcoLinux).

Algumas das distribuições Linux populares e amplamente utilizadas incluem:

  • Ubuntu
  • Debian
  • Linux Mint
  • Fedora
  • Deepin
  • Manjaro Linux
  • MX Linux
  • Elementary OS
  • CentOS
  • OpenSUSE

Distribuições amigáveis para iniciantes que são altamente recomendadas para novatos em Linux incluem Ubuntu, Mint, Zorin OS e Elementary OS. Isso se deve principalmente à sua facilidade de uso, interfaces simples e organizadas, e alta personalização.

Algumas versões, como o Zorin OS, se assemelham bastante ao Windows 10, o que as torna ideais para usuários do Windows que estão migrando para o Linux. Outras, como o Elementary OS, imitam de perto o macOS com um menu dock característico.

Para usuários intermediários ou aqueles com um bom entendimento de Linux, CentOS, Debian e Fedora são suficientes. Usuários experientes que conhecem todos os detalhes da administração do sistema Linux, geralmente se sentem confortáveis trabalhando com sistemas Linux baseados em Arch e Gentoo.

Cada distribuição Linux é única à sua maneira em termos de ambiente de desktop ou Interface Gráfica do Usuário (GUI) e aplicativos padrão. No entanto, a maioria vem com aplicativos prontos para uso, como a suíte LibreOffice, cliente de e-mail Thunderbird, editor de imagens GIMP e aplicativos multimídia para você começar.

As distribuições Linux amplamente utilizadas em ambientes de servidor incluem:

  • Red Hat Enterprise Linux (RHEL)
  • SUSE Linux Enterprise Server (SLES)
  • Ubuntu Server
  • Debian

Por que o Linux é tão popular

O Linux engloba os seguintes componentes principais.

1. Núcleo do Linux

No cerne de qualquer sistema Linux está o núcleo do Linux. Escrito em C, o núcleo interage com os componentes de hardware e os programas subjacentes. O núcleo gerencia os processos em execução e determina quais deles podem usar a CPU e por quanto tempo. Ele também determina a quantidade de memória que cada processo recebe. Além disso, gerencia os drivers de dispositivo e recebe solicitações de serviço dos processos em execução.

2. Carregador de inicialização

O carregador de inicialização é o programa que gerencia o processo de inicialização em um sistema Linux. Ele carrega o sistema operacional do disco rígido para a memória principal. O carregador de inicialização não é específico apenas para o Linux. Ele está presente também no Windows e no macOS. No Linux, o carregador de inicialização é chamado de GRUB. A versão mais recente é GRUB2, que é utilizada pelas distribuições systemd.

3. Init

Inicialização, uma forma abreviada para Inicialização, é o primeiro processo que é executado uma vez que um sistema é ligado. É atribuído um ID de processo (PID) de 1 e ele inicia todos os outros processos no sistema Linux, incluindo daemons e outros processos em segundo plano e serviços. É assim chamado de a mãe de todos os processos. A Inicialização é executada em segundo plano até o momento em que o sistema é desligado.

Os primeiros sistemas de Inicialização incluíam o Sistema V Init (SysV) e o Upstart. Estes foram substituídos pelo sistema de inicialização systemd em sistemas modernos.

4. Daemons

Daemons são processos que são executados silenciosamente em segundo plano desde o momento em que o sistema é inicializado. Os daemons podem ser controlados pelo usuário na linha de comando. Eles podem ser parados, reiniciados, desabilitados ou habilitados no momento do boot. Exemplos de daemons incluem o sshd, que é o daemon SSH que controla conexões remotas SSH e o ntpd que lida com a sincronização de tempo em servidores.

5. Shell

O shell do Linux é uma interface de linha de comando, abreviada como CLI, onde comandos são executados ou invocados para realizar e automatizar tarefas administrativas. Shells populares incluem o shell bash (bash) e o Z shell (zsh).

6. Ambiente de Desktop

A desktop environment is what a user uses to interact with the Linux system. It provides a GUI (graphical user interface ) which is made possible through the X windows system software. The X windows system (X11, also referred to as X) is a system that provides a display framework or GUI and determines how users interact with windows, keyboard, mouse, and touchpad.

Ambientes de desktop comuns incluem GNOME, MATE, XFCE, LXDE, Enlightenment, Cinnamon, Budgie e KDE Plasma. Gerenciadores de desktop vêm com componentes gráficos como gerenciadores de arquivos, widgets de desktop, papéis de parede, ícones e outros elementos gráficos.

7. Aplicações

O ambiente de desktop fornece apenas as aplicações básicas para começar. Assim como no Windows ou macOS, você pode instalar aplicações para uso diário. Estas incluem aplicações como Google Chrome, VLC media player, Skype, suíte LibreOffice, DropBox, editor de imagens GIMP e assim por diante. Algumas distribuições vêm com seu próprio Centro de Software que atua como uma loja de onde você pode baixar as aplicações que precisa.

Vantagens de Usar Linux em Vez de Outros Sistemas Operacionais

A esta altura, está se tornando claro por que o Linux é um sistema operacional favorito para muitos usuários e empresas. Vamos resumir brevemente algumas das vantagens de usar o Linux.

1. Linux é Opensource

Como apontado anteriormente, Linux é totalmente opensource. Usuários qualificados podem visualizar o código, modificá-lo sem quaisquer restrições para qualquer finalidade que desejarem e compartilhá-lo com a comunidade. Além disso, a maioria das distribuições – com exceção de algumas – são gratuitas para baixar e usar sem pagar por licenças.

Windows é proprietário e alguns de seus produtos são bastante caros. No momento, o preço do pacote Microsoft Office é $430. A licença do Windows Server 2019 chega a custar até $6.000. O macOS também é caro e uma boa quantidade de aplicativos da App Store são pagos através de uma assinatura.

2. Altamente Personalizável

Uma das principais vantagens que o Linux oferece aos seus usuários é a capacidade de personalizar virtualmente qualquer componente conforme sua preferência. Você pode ajustar o visual, incluindo papel de parede, imagem de fundo, esquema de cores, aparência de ícones, e assim por diante para aprimorar sua aparência.

3. Estabilidade e Segurança Excepcionais

O Linux possui um grau admirável de estabilidade e segurança. O Linux é menos suscetível a ataques e é muito menos provável que você seja vítima de malware, como vírus e cavalos de Troia, se atualizar constantemente seu sistema.

4. Uma Escolha Perfeita para Servidores

Graças à sua segurança e estabilidade, o Linux é a escolha preferida para ambientes de servidor em hospedagem de sites, bancos de dados e aplicativos. Leva apenas alguns comandos para iniciar um servidor web completo ao lado de outros componentes, como bancos de dados e ferramentas de script. Um exemplo clássico é o popular servidor LAMP, que é uma agregação do servidor web Apache, banco de dados MySQL e linguagem de script PHP.

Com a estabilidade que o Linux oferece, você raramente precisará reiniciar seu servidor, exceto quando precisar realizar uma atualização de kernel. Isso garante tempo de atividade máximo para servidores e alta disponibilidade.

5. Requisitos de sistema baixos

A maioria das distribuições Linux tem a capacidade de ser executada em PCs com especificações de sistema baixas, como CPU e RAM. Na verdade, você pode reviver alguns PCs antigos instalando algumas distribuições Linux leves, como Linux Lite, Puppy Linux e AntiX.

Alguns podem ser executados em um sistema com apenas 1GB de RAM, CPU de 512 MHZ e disco rígido de 5GB. O que é ainda mais impressionante é que você pode até executar essas distribuições em um pendrive USB ao vivo e ainda conseguir fazer algum trabalho.

6. Disponibilidade de Toneladas de Pacotes de Software

Grandes distribuições Linux como Debian e Ubuntu hospedam milhares de pacotes de software em seus repositórios. Somente o Ubuntu conta com mais de 47.000 pacotes. Você pode facilmente instalar aplicativos executando alguns comandos no terminal ou usando Centros de Aplicativos que vêm incluídos nas distribuições.

Também, você pode obter uma variedade de aplicativos que realizam tarefas semelhantes, como processamento de texto, compartilhamento de arquivos, reprodução de áudio/vídeo, edição de fotos, design gráfico e muito mais. Você simplesmente tem muitas opções e pode escolher entre uma variedade de aplicativos para executar uma tarefa.

7. Vasto Suporte da Comunidade

O sistema operacional Linux é desenvolvido e mantido por uma comunidade vibrante de desenvolvedores que trabalham incansavelmente para garantir que você obtenha o melhor em termos de aplicativos de software, atualizações de segurança e correções de bugs.

Distribuições importantes como Ubuntu e Debian possuem uma grande comunidade de desenvolvedores e toneladas de fóruns que oferecem assistência e orientação aos usuários, especialmente quando encontram dificuldades ou desafios ao longo do caminho.

Resumo

Essa foi uma visão geral do sistema operacional Linux e seu lugar em um ambiente de computação em constante evolução. Admitidamente, o Linux é onipresente e deixou uma marca indelével no mundo tecnológico acelerado em que vivemos. Portanto, adquirir habilidades fundamentais do Linux é essencial para qualquer profissional de TI que deseje avançar na profissão de TI competitiva.

Aprender o Linux abrirá portas para outros campos avançados de TI, como DevOps, cibersegurança e computação em nuvem. Em nossos próximos tópicos, focaremos em comandos básicos do Linux que você precisa dominar enquanto avançamos.

Source:
https://www.tecmint.com/understanding-linux-operating-system/