Introdução ao GNU/Linux & *nix World
O que é o Linux?
- O Linux [1] é o núcleo (kernel) do sistema operativo GNU/Linux. O seu criador, Linus Torvalds, lançou-o em 1991.
Resposta Original de pt.wikipedia
Naquela altura, o Projecto GNU tinha criado muitos dos componentes necessários a um sistema operativo livre, mas o seu núcleo, o GNU Hurd, ainda não tinha sido completo e estava assim indisponível. O sistema operativoBSD ainda não se tinha libertado de complicações legais. Isso abriu um espaço que o Linux preencheu, e apesar da funcionalidade limitada das versões iniciais, acumulou rapidamente desenvolvedores e utilizadores.
E GNU/Linux, o que é?
- O GNU/Linux [2] é um Sistema Operativo formado pela união entre os componentes do kernel Linux (ler abaixo) e uma série de programas essenciais desenvolvidos pelo Projecto GNU [3] (como por exemplo o compilador GCC, as bibliotecas glibc, o gestor de arranque GRUB, entre outros).
- É também o mais portentoso caso de software livre e open-source. De facto, todo o código que provém desta união é totalmente livre e aberto: pode ser redistribuido, modificado, remexido, reunido ou mesmo aproveitado na sua totalidade.
- É comum as pessoas referirem-se aos sistemas baseados em GNU/Linux (normalmente chamados “distribuições Linux [4]“) como Linux – pura e simplesmente. Isso não é de todo correcto posto que o Linux é uma ínfima parte desses sistemas e, apesar da sua relevância (devido ao papel do Kernel num SO), não é mais que qualquer outro componente.
- É, portanto, incorrecta esta referencia. No entanto é um erro tolerado e todos percebem o significado de Linux enquanto se fala de um Sistema GNU/Linux.
Estou a ler em todo o lado software proprietário, open-source, software livre; o que é que isso quer mesmo dizer?
- São expressões relativas à forma como se licencia a utilização e divulgação (e as restrições a elas aplicadas) do código-fonte [5] (source-code) do software.
- Open-source, código aberto ou software livre:
Resposta Original de pt.wikipedia
é um tipo de software cujo código fonte é visível publicamente. O software de código aberto respeita as quatro liberdades definidas pela Free Software Foundation. Porém, não estabelece certas restrições como as contidas na GPL. É advogado pela Iniciativa do Código Aberto (Open Source Initiative). @ http://pt.wikipedia.org/wiki/Open_source
Mas afinal, o Linux não é a mesma coisa que o GNU/Linux. Está correcto dizer das duas maneiras?
Resposta Original de pt.wikipedia
GNU/Linux é free, portanto não vou ter de pagar por ele e estarei a usar software legal, certo?
- Não. Os Sistemas derivados de GNU/Linux, ao seguirem a licença GPL [6], *devem* ser free, o que significa livre, não gratuito. O seu código fonte deve ser acessível a todos os que têm a licença para usar a aplicação para ser livrementedistribuido.
- Há que ter em conta que a maior parte do software com este tipo de licenciamento é divulgada através de “download” a partir da internet. Isso, só por si, tem custos para o utilizador. Se a distribuição for feita por qualquer outro processo o distribuidor tem o direito de cobrar o serviço de distribuição e documentação.
- É verdade, porém, que devido à essência dos projectos GNU e Linux na sua origem, e ao impulso dado pelas licenças de copyleft [7] grande parte (a maior parte) das distribuições Linux são gratuitas. Idem aspas para a maior parte das aplicações open-source.
Se eu usar open-source sei que o meu software é, de facto, melhor?
- É profundamente incorrecto estabelecer qualquer relação directa entre ser open-source e ser “melhor”. É necessário ver que por um lado há factores que tendencialmente o fazem melhor e outros que o tornam “menos bom”:
- Por um lado, embora o open-source tenha, por vezes (frequentemente), o seu desenvolvimento liderado por uma equipa profissional (empresas), tem sempre um apoio muito forte por parte da comunidade de utilizadores (isto também devido ao facto de, como muitas vezes é gratuito, tem muita gente a experimentar só pelo teste) que pode sempre corrigir “bocados de código” e submetê-los corrigidos aos developers.
- Por outro, as empresas líderes de mercado nalguns tipos concretos de aplicações (leia-se, p.e., a Adobe no design gráfico ou a Corel no mesmo universo) investem muito dinheiro e contratam os melhores profissionais, têm o melhor equipamento e são capazes de desenvolver tecnologias que patenteiam imediatamente e ficam com aplicações de qualidade superior nalguns tipos de aplicações.
- Também, em muitas situações, a solução a implementar é muito específica e a comunidade adepta do “open-source” não se presta ao trabalho de desenvolver aplicações para nichos de utilizadores.
- Os “desenvolvedores” de software tendencialmente gratuito também precisam de viver!
O mundo do open-source não se resume ao GNU/Linux, que alternativas há e o que é que representam?
- Há efectivamente muitas alternativas de Sistemas Operativos livres não GNU/Linux, a maior parte também estão integradas no projecto GNU. Exemplos disso são o FreeBSD [8], o OpenBSD [9]… Embora normalmente sejam orientados para um uso avançado, que exige alguma experiência com sistemas UNIX-based. Muito frequentemente usados em servidores.
- O open-source não depende exclusivamente do GNU/Linux. De facto, esta é muitas vezes uma ideia erradamente pré-concebida e que leva a que muitas vezes não se faça a devida separação entre aplicações e sistema operativo. Há um sem número de aplicações opensource que podem correr em sistemas proprietários (Windows) e que podem ser claramente uma mais valia para diversos utilizadores, não só caseiros (browsers, clientes de mail, players multimédia, etc) como empresariais (apache – http server, bases de dados, etc). Como exemplo pode-se consultar o site: http://www.opensourcewindows.org/
Vejo muitas vezes referida a expressão distro (distribuição). O que é que quer dizer realmente?
- Segundo o artigo da Wikipedia, uma distro é “composta do kernel do Linux e mais uma série de aplicações com vários propósitos”.
- Uma distribuição pode ser, conforme o seu público alvo, mais fácil de usar (quantidade de material de suporte a hardware, ferramentas gráficas para configuração, aplicações de uso prático seleccionadas, etc) ou mais apropriada para um uso por parte de utilizadores experientes.
- Um bom sítio para ver as distros mais usadas, a sua classificação e sites com informação acerca destas é: http://distrowatch.com/
Como é que escolho a distribuição para mim?
- É talvez a pergunta mais frequente e cuja reposta é a mais complicada de obter pelo simples facto de não haver uma resposta pré-definida; tudo depende de alguns factores: a sua disponibilidade, os seus conhecimentos, o seu hardware, os seus gostos pessoais, entre outros.
- Na essência, as bases de todas as distros são apenas três: Debian, Red Hat e Slackware. São estas que actualmente, e em conjunto com Gentoo, que dominam o mundo do GNU/Linux: são as suas filosofias e os seus package managers que abarcam quase a totalidade das distros.
- Mas, na verdade, no caso de ser um iniciante, é bastante provável que a sua escolha não recaia numa das acima descritas. O seu leque de escolha vai mudar e passar a ser constituido por Ubuntu, Linux Mint, OpenSUSE, Fedora, PCLinuxOS e Mandriva. São distros com bastantes utilizadores e que são pensadas para utilizadores que percebem nada ou quase nada do mundo onde entram.
- Existem também testes [10], que após ser feito um inquérito, lhe apresentam todas as hipóteses que mais se adequam à sua realidade.
Posso instalar GNU/Linux num computador com Windows, sem alterar este ultimo?
- Sim. As distribuições têm de ser instaladas com um bootloader [11] que é encarregue de carregar uma instalação de um Sistema Operativo. O mais conhecido (e mais utilizado) é o GRUB que inclui um menu. Nas distros orientadas para userspouco experientes o bootloader é configurado de forma automática detectando uma já existente instalação do Windows que depois pode ser arrancada pelo menu.
- Outra possível solução é fazer uso de Virtual Machines [12].
Posso instalar uma distro a partir do meu Sistema Windows?
- Pode. Exemplo disso é o programa Wubi: um instalador da distribuição Ubuntu a partir dum desktop Windows, com toda a facilidade, sem precisar de partições.
Quais os requisitos de hardware para correr GNU/Linux no meu computador?
- É uma pergunta que não tem uma só resposta. Devido ao facto de se poder mudar todo o sistema, os requisitos mudam muito de opção para opção.
- Se estivermos a falar só do kernel Linux, um simples Pentium I, 16 MB de RAM e 40 MiB de disco. Com a componente GNU, pouco mais elevados são os requisitos minimos.
- Mas para o utilizador normal que utiliza um sistema de janelas (X Window System, conhecido simplesmente como X) os requisitos são superiores. Correr um Desktop Environment como o GNOME ou o KDE já exigirá um processador mais recente (Um Pentium III), mais memoria (256 MB+) e mais disco (100 a 300 MiB). Existe também o XFCE, mais simples mas também bastante completo, que é mais leve que os outros dois Desktop Environments (em que 128MB são suficientes). Não esquecer que quando instalamos o GNOME/KDE/XFCE não instalamos somente o gestor de janelas, mas também toda uma série de programas para os mais diversos fins (leitor multimedia, editor de texto, visualizadores de imagens, gestor de ficheiros, etc)
- Se o seu PC não cumprir esses requisitos, pode sempre optar por instalar somente um Window Manager e, à parte, as aplicações que precisa, eliminando tudo aquilo que lhe é superfluo. Temos o caso do Fluxbox, do Openbox, FVWM, twn, awesome, dwm, entre muitos outros. Pode consultar na TZ o tópico dedicado aos PCs antigos e uma lista de vários tipos de aplicações que pode usar.
Como posso saber se o meu hardware é suportado em Linux?
- Deve sempre consultar o site na Internet do fabricante do seu equipamento, se houver drivers oficiais elas devem estar lá.
- A utilização dum motor de pesquisa como o Google com palavras chave tipo
‘marca do hardware’ ‘modelo do hardware’ ‘linux’
- Procurar no fórum da sua distro.
- Consultar o tópico ‘Lista de Hardware Compatível Gnu/Linux
- Podem estar, como normalmente, embutidos no kernel, isto é, já disponíveis, sendo apenas necessário carregar os mesmos
É verdade que posso fazer num sistema GNU/Linux tudo o que faço no meu computador com um Sistema Operativo proprietário como o Windows?
- É uma matéria muito discutida. Por um lado uns dizem que se pode fazer num Sistema Operativo livre (leia-se GNU/Linux, p.e.) tudo o que se pode fazer na mesma máquina com outro SO. No entanto, convém distinguir o que é que realmente se pode fazer com código aberto e o que é que nisso envolve usar aplicações proprietárias – muitas vezes com emulações.
- Em resumo, diz-se que os problemas mais encontrados estão ao nível dos jogos (há jogos livres mas não são os mais jogados e, por vezes, com melhores qualidades) e das aplicações de design (edição de imagem, sobretudo) e CAD. Há, porém, alternativas livres para tudo o que foi referido acima, podem é não ter todas as funções que se encontram em software proprietário.
- Aqui no fórum verificar o tópico de discussão de limitações do sistema GNU/Linux: O que não consegues fazer em Linux?
Sim, definitivamente estou interessado, como posso experimentar?
- Se escolheu uma distro de uso “fácil” como as que foram recomendadas no tópico anterior pode dizer-se que coisa mais simples não há. Todas (as referidas acima) têm LiveCDs [13] à disposição que se podem introduzir na drive e, no arranque da máquina será carregado detectando todo o seu hardware de forma a correr um sistema funcional (normalmente já trazem aplicações de office, de edição de imagem, reprodução de música, etc) sem ser necessário instalar.
- Se realmente está interessado em “ficar” com o SO também se pode dizer que não terá problema nenhum. Quase todos os LiveCDs dão a opção de instalar directamente (como é o caso do Ubuntu, que traz um ícone no desktop) através de um programa de instalação gráfico extremamente intuitivo.
Onde é que posso arranjar (e qual é a melhor) documentação acerca deste SO?
- A melhor forma de aprender neste universo é, provavelmente, a consulta de Wikis, leitura da documentação de cada distro e à medida que se vai arranjando soluções para os problemas (por exemplo em fóruns) acaba-se por ganhar o know-how necessário.
- No caso de se querer um manual extra há alguns livros particularmente interessantes [14] [15]
- Podem e devem ser consultadas as páginas dos manuais de cada software. Podem ser consultadas localmente (via man <page_name>; p.e., man foobar) ou online [16] [17].
Posso correr aplicações desenhadas para Windows em GNU/Linux?
- Sim, pode. Há varias soluções para correr os binários feitos para Windows em Linux. A técnica da emulação [18] é sempre uma solução, no entanto é claramente preferível usar um programa tipo WINE [19] que cria uma camada “API” compatível com a do Windows. Há, contudo, muitas limitações e definitivamente convém sempre procurar uma alternativa nativa para GNU/Linux.
Quais são as aplicações open-source/nativas para GNU/Linux equivalentes às proprietárias que uso em Windows?
- Há muitos guias sobre isso com tabelas que mostram os nomes das aplicações proprietárias vs. as aplicações open-source [20]. Ver também o tópico aqui no fórum: Programas/Links Úteis
Em resumo: quais são as vantagens e as desvantagens em usar GNU/Linux?
– Vantagens:
- Algumas das vantagens já foram antes referidas. Nomeadamente a de ser desenvolvido pela comunidade o que em princípio propicia a correcção de bugs, e dá um software mais estável e optimizado.
- Na maior parte dos casos é grátis.
- É muito seguro. Virtualmente não há verdadeiro malware. O que pode acontecer é o utilizador provocar uma falha de segurança no sistema e aí torná-lo vulnerável. Informação acerca disso aqui.
– Desvantagens:
- Definitivamente alguns equivalentes open-source para certas aplicações “profissionais” em Windows são muito inferiores aos seus originais (que não costumam estar suportados em Linux).
- Os jogos open-source são – geralmente – inferiores aos proprietários que não têm versões nativas para GNU/Linux).