sábado, 12 de março de 2016

Introdução ao Linux

Tentarei aqui ser o mais completo mas sem me aprofundar, só descreverei alguns poucos detalhes do que é que estão lidando.

Linux: Não é uma marca, não é uma empresa, é apenas um software que faz o intermédio entre o usuário ou uma aplicação e o hardware. É desenvolvido de forma em que seu código é acessível a qualquer um, ou seja, qualquer um pode modificar para seu uso ou então até mesmo sugerir melhorias para versões futuras, esse formato é chamado open source. Ele por definição nem se quer é um sistema operacional (S.O.), ele é o núcleo do sistema (kernel) que para ter utilidade depende de um sistema operacional como o Android, ou então uma distribuição para desktop (conhecido como distro).

Tux - o mascote do Linux

Kernel: Há várias formas de núcleos, eles podem ser MicroKernel que traz apenas gerenciamento da CPU, memória e IPC (comunicação com o S.O.), Monolithic Kernel que é oposto ao micro, trazendo gerenciamento de todos dispositivos, drivers, etc, e por fim o Hybrid Kernel que une um pouco dos dois. O Linux é um kernel monolítico, e tem versões apropriadas dependendo da função desejada para o sistema, pode ser um kernel Generic, Low Latency e Realtime, a diferença é que esses dois últimos possuem uma resposta mais rápida a interpretar comandos, eles dão prioridade máxima ao processo principal, e isso faz com o que o restante do sistema possa se tornar instável. Ou seja, a não ser que realmente precise, o ideal é usar o Generic pois lida melhor com multitarefas.

Distro: É um sistema operacional baseado em Linux, existem milhares de distribuições, qualquer pessoa pode criar a sua. Existem ótimas distribuições mas também existem péssimas, como as que vinham nos PCs, ou então os Linux disponíveis nas escolas públicas, o que é uma pena visto que isso mancha muito a imagem. As coisas começaram a mudar com o tempo, nos meados da década passada surgiram distribuições com a finalidade de tornar mais acessível ao público, como o brasileiro Kurumin e o mais importante, o Ubuntu. Hoje em dia há distribuições para o mais leigo como o Mint como ainda possui para os mais avançados como o Gentoo, em que depois de bem configurado possui ótimo desempenho, mas já aviso que não é pra qualquer um. Merecem ser citados também o Fedora e o OpenSUSE. A variedade de distribuições é tanta, com diversos sabores (flavors) que é fica tudo a gosto do cliente, e agora com o SteamOS conseguindo seu espaço, pode-se ter até mesmo uma plataforma completa de jogos. As distribuições podem ser de duas formas de atualizações, ou pode ser Standard Release Cycle ou Rolling Release.

Saudades Kurumin

Standard Release Cycle: São distribuições em que tem suas atualizações lançadas em períodos de tempo, é o formato mais comum. Possui um prazo para lançamento de uma nova versão, e um prazo maior para termino do suporte, não é uma regra padrão entre as distribuições. Há versões em que seu ciclo de suporte é maior, e é claro, possuem maior estabilidade, são chamados de Long Term Support, mais conhecido como LTS.

Rolling Release: São distribuições em que é atualizada constantemente, priorizando aplicativos e recursos atuais do que versões estáveis dos mesmos. Por um lado é ótimo por usar tudo do mais recente, mas tem seu lado ruim, que é as instabilidades que o usuário está suscetível.

Flavor: Os sabores nada mais são que variantes de uma mesma distribuição, mudando sua interface gráfica (ambiente gráfico) e aplicativos ou apenas uma adequação ao seu uso, o Ubuntu é um ótimo exemplo, pois além do Ubuntu oficial ele tem: Ubuntu GNOME, Kubuntu, Lubuntu, Xubuntu, Ubuntu MATE em que mudam apenas o ambiente gráfico e alguns apps, e tem também Edubuntu, que é feito com foco para educação, Ubuntu Kylin para chineses, Mythbuntu com foco em media center, Ubuntu Studio que seu foco é em criação e edição multimídia, ele carrega consigo um kernel low-latency.

Logotipos dos sabores do Ubuntu

Ambiente Gráfico: É a interface do sistema operacional, para o Linux há uma infinidade, do mais simples ao mais estiloso, alguns tão leves que podem ressuscitar aquele seu PC jurássico. Os mais conhecidos são: Unity, Gnome, KDE, XFCE, LXDE, Cinnamon, MATE, e um novo mas que vale citar: Budgie (acho ele muito bonito). Existem ainda muitos outros, mas geralmente não são tão práticos. Você pode instalar todos, porém não recomendo pois pode causar conflitos e dar muita dor de cabeça. O ideal é escolher uma e usar uma distribuição com ela pré-instalada, ou testar em uma maquina virtual.

São bonitos, não?

Sistema de arquivos: É a forma em que os dados são armazenados em um dispositivo de armazenamento, o Linux suporta dezenas de sistemas de arquivos, sendo atualmente o mais comum EXT4.

SWAP: É a memória virtual do Linux, a partição SWAP é alocada no HD, serve para caso o sistema ocupe toda memória RAM do computador, o restante é alocado na memória SWAP. Dizem que o ideal é ter pelo menos o tamanho igual ao da memória RAM do sistema, eu acho besteira, visto que é um sistema leve, um PC com 8GB muito dificilmente ocupará tudo. Pra mim caso tenha 8GB ou mais, 2GB de memória SWAP já é o suficiente para o uso comum, no caso de trabalhar com criação multimídia acho que é mais seguro aumentar esse valor.

Estrutura dos diretórios: Isso pode ser um pouco complicado para se entender pois no Windows é ridiculamente simples, mas com o passar do tempo verá que torna o sistema muito mais organizado e aberto (desde que para modificar o usuário seja root). Não é necessário decorar para que cada um serve, provavelmente não usará nem a metade, e usará só o /home, um breve resumo:
/ : diretório raiz do sistema
/bin : diretório dos executáveis
/boot : arquivos referentes a inicialização do sistema
/dev : representação de todos dispositivos no sistema
/etc : arquivos de configuração/scripts
/home : é onde ficam as pastas do usuário, seria como "Meus Documentos" do Windows
/lib : onde ficam as bibliotecas do sistema, ou dos executáveis
/media: aqui são montadas as mídias removíveis, como Pendrive, HD externo, DVDs, etc.
/mnt : aqui são montadas um sistema de arquivos externo, como outro HD interno por ex.
/opt : dados de aplicativos opcionais que não tem relação com o sistema
/proc : são armazenados informações sobre processos ou recursos em execução
/root : diretório pessoal do usuário root
/run : permite que aplicativos armazenem dados para sua execução
/sbin : mesmo que o /bin, porém são executáveis que só são executados por um root
/srv : dados de servidores e serviços em execução
/sys : provê informações sobre vários dispositivos e kernel
/tmp : arquivos e diretórios temporários
/usr : executáveis de uso entre os usuários comuns
/var : arquivos variáveis, como logs por exemplo.

Root: Ou super usuário, é o usuário com poder total no sistema, pode acessar e executar qualquer arquivo. Abaixo dele é o administrador, que pode executar comandos como root porém precisa dar o comando para acesso, e abaixo é o usuário comum, que não pode alterar em nada o sistema.

Console: Ou terminal, é a janela de comandos do Linux. Ele é o acusado por ser "difícil usar o Linux", o que é mentira, visto que hoje em dia seu uso é opcional, dá para ser feito tudo sem nem se quer tocar nele. Mas a questão é, ele agiliza demais as coisas, por exemplo enquanto consegue instalar o VLC com 4 palavrinhas e uma senha nele, olha o trabalho e o tempo que dá fazer isso no Windows: abrir o navegador, pesquisar o software, baixar, executar instalador.

Não é tão difícil vai...

GRUB: ele seria o bootloader do sistema, você pode colocar vários sistemas paralelamente, criando o que é chamado de dualboot. Seu arquivo de configuração é localizado em /boot/grub/grub.conf, porém há aplicativos para auxiliar a configuração do mesmo.

FSTAB: contem configurações para automatizar o processo de montagem das partições que são salvas em /mnt. Seu arquivo de configuração é /etc/fstab, mas há como fazer isso com aplicativos.



Por enquanto é só, acho que com essas informações já dá para se ter uma base do que esperar de um sistema Linux, se eu errei em alguma coisa ou faltou algo a dizer, opinem nos comentários.

Nenhum comentário:

Postar um comentário