Ir para o conteúdo

Perguntas Frequentes sobre GNU/Linux

Nota importante: O comando sudo é usado para ganhar privilégios de super-utilizador (root), mas não é usado (ou não está activado por padrão) em todas as distribuições, pelo que se na vossa distribuição vos der um erro com este comando, devem executar su e ficar como root e só depois executar os comandos sem sudo. Quando aparece atrás de um comando $ ou #, esses caracteres não são para escrever, simplesmente indicam que podem ser escritos como utilizador normal ($) ou que têm de ser como root (#).

O que é o GNU/Linux

Linux é apenas um núcleo (kernel) baseado no antigo UNIX (sistema operativo desenvolvido pela AT&T nos anos 70), englobado por todo um ambiente gráfico e programas que diferem de sistema operativo GNU/Linux, para sistema operativo. No entanto, a base, ou seja, o kernel, é sempre o mesmo. Este resultou da proposta feita por Linus Torvalds à comunidade cibernética em Agosto de 1991, onde pedia feedback sobre um sistema operativo que este estava a desenvolver baseado no UNIX. Ao projecto foram-se juntando progressivamente milhares de pessoas, acabando Linus por só ter criado o kernel do sistema, devendo-se tudo o resto à cooperação de milhares de programadores de todo o mundo, e à aliança com o projecto GNU. Aos poucos foram portanto surgindo os primeiros sistemas operativos GNU/Linux.

Usa-se a referência GNU aliada a Linux, devido a este ser um projecto anterior ao Linux (de 1984) que tinha como objectivo a criação de um sistema operativo, acima de tudo, livre mas também gratuito e funcional, fruto da ideia de Stallman (http://www.gnu.org/). A este projecto acaba por aliar-se o kernel desenvolvido por Linus (última grande peça que faltava ao GNU para poder surgir como SO), tendo como resultado as primeiras distribuições GNU/Linux.

Aquilo que muitos hoje designam por Linux, querendo designar o sistema operativo, é considerado por muitos errado. O correcto é GNU/Linux, pois todo o sistema é GNU, Linux é só o kernel, ou seja, a base---núcleo interno. Richard Stallman explica:

There really is a Linux, and these people are using it, but it is not the operating system. Linux is the kernel: the program in the system that allocates the machine's resources to the other programs that you run. The kernel is an essential part of an operating system, but useless by itself; it can only function in the context of a complete operating system. Linux is normally used in a combination with the GNU operating system: the whole system is basically GNU, with Linux functioning as its kernel.

Ouvi dizer que tudo no mundo GNU/Linux é grátis, é verdade?

Nem sempre. Ser livre/código aberto não significa gratuito. Se bem que grande parte o é. Quando falamos em free software ou free and open source software, estamos sempre a referir-nos a liberdade (free as in freedom) e não preço (free as in free beer). Se for software não livre distribuído gratuitamente, esse software tem a designação de freeware e não free software. O movimento de software livre levado a cabo por Richard Stallman (criador da FSF e do sistema GNU) não está contra a venda de software, aliás isso está mais que explicito aqui: http://www.gnu.org/philosophy/selling.html. Está sim contra o desenvolvimento de software não livre (proprietário) quer seja gratuito ou não.

Quais são as vantagens destes sistemas operativos?

As vantagens são bastantes e podem ser encontradas em diversos sites. Deixam-se aqui algumas das mais importantes:

  • Segurança: Um sistema operativo GNU/Linux tem uma arquitectura que só por si já garante uma segurança maior do que em certos sistemas operativos proprietários e pagos, através, por exemplo, do sistema de permissões. De qualquer maneira, o facto de todo o código ser open source, tendo sempre por trás uma comunidade muita activa, permite que quaisquer erros encontrados nos sistemas possam ser identificados e solucionados em muito pouco tempo, muitas vezes com soluções dadas pelos próprios utilizadores que reportaram o problema. Não quer dizer que não hajam falhas, mas estas são rapidamente solucionados antes que se alastrem.
  • Flexibilidade: Diz-se que é raro haver dois sistemas GNU/Linux iguais, e é verdade. Isto é devido à sua elevada personalização e flexibilidade. Ou seja, qualquer um pode alterar e distribuir o código-fonte conforme as suas necessidades, factor que influenciou na grande evolução deste sistema operativo.
  • Fiabilidade: Prima por ser dos sistemas operativos mais estáveis, com menos falhas, e que poucos recursos consome da máquina (comparativamente a outros SOs). Como tal obtêm-se melhores desempenhos em programas que muito provavelmente noutros sistemas tinham resultados piores. É bastante indicado para computadores mais modestos, sem nunca pôr de lado todas as características anteriores.
  • Economia: Como é bom não estar preso a licenças, como é bom poder usar algo que é livre, e geralmente grátis. Assim, é bastante rentável ter um PC com GNU/Linux como sistema operativo, pois obtêm-se tudo o que estamos habituados tanto num desktop caseiro, como num servidor, a custo 0.
  • Multiplaforma: Os sistemas GNU/Linux não são específicos dos computadores e podem ser inseridos em diversas plataformas, desde consolas, a telemóveis.

O que é uma distribuição?

Anteriormente falou-se que Linux era apenas o kernel em que muitos sistemas operativos se apoiavam, estes mesmos sistemas operativos designam-se distribuições de GNU/Linux. Estas são portanto o conjunto de kernel+programas. E vai ser precisamente no conjunto de programas incorporados que estas vão diferir de umas para as outras.

Em que diferem as distribuições, qual escolher?

À primeira vista, as distribuições diferem entre elas num aspecto muito importante, no DE ou WM que utilizam. DE é a sigla que significa Desktop Environment, referencia um conjunto completo de aplicações todas integradas, que no conjunto formam um pacote que proporciona ao utilizador de GNU/Linux tudo aquilo que ele precisa para trabalhar normalmente. Inclui desde o próprio WM (windows manager), a processadores de texto (simples), gravadores de CDs, leitores de áudio, etc. Já os WMs são apenas aplicações que transformam a interface de consola em interface gráfica. São esses mesmos WMs que ditam o aspecto gráfico da distribuição em questão, embora, claro, possa ser personalizado ao extremo consoante a criatividade do utilizador.

Os principais Desktop Environments são:

Não vale muito a pena entrar-se em discussão sobre qual o melhor, pois é algo que tem muito a ver com os nossos gostos pessoais. Como tal, só experimentando todos é que se pode saber de qual se gosta mais.

No entanto, as distribuições variam em muitas mais coisas. Há distribuição viradas para utilizações standard, enquanto há outras próprias para servidores, incluindo diferentes programas, diferentes ferramentas, diferentes filosofias, consoante o serviço para que foram concebidas. Podem-se considerar 4 distribuições base a partir das quais outras surgiram:

  • RedHat
  • Debian
  • SlackWare
  • Gentoo

É portanto normal ouvir-se a expressão de que, por exemplo, Ubuntu é uma distribuição Debian-based.

Distribuições é o que não falta, como tal torna-se difícil saber qual a ideal para nos iniciarmos, sites como o DistroWatch podem ajudar.

Quero mudar para GNU/Linux, mas terei depois todos os programas que preciso, incluído os jogos que tanto gosto?

Se vens de um sistema operativo Windows, não verás em GNU/Linux todos os programas a que estás habituado, mas isso não é problema, visto que para qualquer programa de Windows existem várias alternativas semelhantes. Podes ver aqui uma pequena lista de programas.

Uma coisa trivial em GNU/Linux, e que muitas vezes os utilizadores mais novos desconhecem, é que ao contrário do Windows, cada distribuição de GNU/Linux já traz geralmente todos os programas que um utilizador normal necessita para trabalhar, desde pacotes office, a gravadores de CDs, players multimédia, browsers de internet, clientes de email, clientes de instant messanging, etc.

Se quiseres correr os teus programas de Windows em GNU/Linux, podes sempre utilizar o WINE, que te permite a emulação de milhares de aplicações de Windows. Contudo, em certos casos a performance pode ser afectada.

Quanto aos jogos, são cada vez menos as empresas que fazem versões destes apenas para sistemas operativos Windows. Como tal, há uma grande parte de jogos que podem ser instalados nativamente em GNU/Linux sem qualquer problema, como por exemplo o Unreal Tournament 2004, Doom3, America's Army, Quake e Wolfenstein Enemy Territory.

Então e para todos os outros jogos?

Bem, para isso há emuladores, como o Cedega que é bastante eficiente a portar jogos de Windows para GNU/Linux.

A lista de alguns equivalente de programas Windows em sistemas GNU/Linux pode ser encontrada nos seguintes sites:

É difícil usar distribuições de GNU/Linux?

Não, não é difícil, é diferente. Todos nós demorámos um certo tempo a aprender a trabalhar com o primeiro sistema operativo que nos foi posto à frente. Após o termos bem aprendido torna-se difícil a adaptação a novos sistemas, mas é algo que com a prática é superado e que requer paciência e força de vontade do utilizador. Em GNU/Linux o problema não se resolve com um format, e raramente com um reboot, estando a ajuda presente algures na net à espera de ser encontrada, só tendo o utilizador de se habituar a procurar, e expor as suas dúvidas.

Actualmente o GNU/Linux já não é algo for geeks only, visto que praticamente tudo já se pode fazer por interface gráfica, enquanto que anteriormente ainda era usada para a maior parte das coisas a consola (espécie de MS-DOS).

É possível experimentar estes sistemas operativos sem compromisso?

Na maior parte das distribuições, sim. Devido à existência de LiveCDs ou LiveDVDs. Estes não são mais que sistemas operativos demonstração, que ao serem gravados no sistema de armazenamente correspondente, e ao serem postos aquando do arranque do PC, são lidos e permitem uma viagem por esse mundo novo, sem nunca escrever nada no disco rígido.

Nota: para o arranque se dar pelo LiveCD ou LiveDVD deves verificar se a propriedade bootsequence da tua BIOS está definida para correr pelo leitor de CD/DVD em questão.

É possível ter Windows e GNU/Linux a correr no mesmo pc?

Sim, é possível e bastante aconselhável a todos os utilizadores que têm dúvidas na sua permanência em GNU/Linux, ou que não estão certos se o GNU/Linux lhes poderá dar tudo o que estão habituados a fazer em Windows.

Ver: Quais são os passos prévios a fazer antes de instalar uma distribuição GNU/Linux?

Onde arranjar as distribuições de GNU/Linux?

Ver aqui.

Como verificar a integridade da distribuição descarregada?

Algo de muito importante, e que geralmente os novatos no mundo GNU/Linux se esquecem, é de verificar a integridade do ficheiro de imagem de CD (md5 hash). Para isso basta fazer o download do seguinte programa: http://digestit.kennethballard.com (para Windows). Seguidamente deve-se selecionar o ficheiro a verificar a hash com o botão direito do rato, digestiT > Calcule MD5 Hash. É retornado um valor que deve ser comparado ao valor dado no site do qual se descarregou a distribuição (atenção que nem todas as distribuições fornecem a hash. Se este for igual, o ficheiro descarregado é integro, se não for igual deve-se proceder a um novo download da imagem de CD.

Quais os passos prévios a fazer antes de se instalar uma distribuição de GNU/Linux?

Instalar uma distribuição deve ser algo feito com muita atenção, principalmente se queres fazer um sistema dual boot.

Vamos dividir portanto esta parte em duas: se queres fazer um sistema dual boot, ou se apenas queres instalar GNU/Linux.

Instalar GNU/Linux querendo fazer um dual boot

Vamos dizer-te os passos principais que deves fazer, para que nada de errado corra na tua tentativa de execução de um dual boot. Contudo, é necessário avançar com precaução.

Primeiro de tudo, se ainda não tens o Windows instalado (caso seja este o sistema a fazer boot com GNU/Linux), deves instalá-lo no PC em questão primeiro, pois caso este seja instalado após o GNU/Linux, corres o risco de ver a tabela de sistemas de arranque apagada, e apenas com referência ao Windows, ficando assim o GNU/Linux "perdido" algures no disco, situação que não é desejável.

Se já tens Windows instalado segue estes passos (pressupondo que só tens Windows no teu computador).

Verifica se a partição de Windows te está a ocupar todo o espaço do disco rígido. Para tal, podes simplesmente ir ao Meu computador e verificar se a partição tem de tamanho total, um valor aproximado do espaço que tu sabes que o disco rígido possui. Ou seja, se sabes que tens um disco rígido de 160GB e vês que a partição C: tem 159GB, por exemplo, ou mesmo 160GB certos. Se for este o caso, o que deves fazer imediatamente a seguir é instalar um programa tipo PartitionMagic. Após a sua instalação deves desfragmentar o disco (passo muito importante), e por fim, usar o programa em questão para redimensionar a partição C:, de maneira a teres espaço livre não particionado no computador. Isto consiste em tornar a partição C: mais pequena. Por exemplo, seguindo o exemplo anterior, se esta tinha 160GB, para um bom sistema GNU/Linux poder lá ser instalado, deve ser redimensionada para, no mínimo, 155GB. De referir também que é impossível redimensionar partições para valores menores que o espaço nelas ocupado. Só se quiseres estragá-las por completo e deixar de ter acesso ao sistema operativo lá instalado.

Distribuições mais recentes de GNU/Linux também já permitem redimensionar a partição do Windows durante a instalação.

Se por acaso já tiveres espaço livre não particionado suficiente para lá poder ser criada uma partição de GNU/Linux, podes saltar os passos anteriores. Entende-se como espaço livre não particionado suficiente, o que te permita criar uma partição swap e de sistema, com espaço suficiente para lá instalares completamente a distribuição de GNU/Linux (não é recomendado ter menos de 4GB de espaço livre não particionado).

Posteriormente a estes passos, poderás então proceder à tua instalação, só tendo o cuidado de, no ecrã sobre as partições do instalador da distribuição, seleccionar esse mesmo espaço livre não particionado e escolher a hipótese de o formatar automaticamente.

Instalar GNU/Linux como único sistema operativo do PC

Neste caso não há grande coisa para falar. Basta meteres o CD de instalação da distribuição que desejas no leitor, e seguir os passos.

Como instalar?

Existem alguns tutoriais na secção de Tutoriais do P@P que te podem ajudar a instalar a distribuição que desejas. Tens de apenas ter em mente que a maior parte deles forma feitos para casos de instalação default, ou seja, instalar GNU/Linux como único sistema operativo dum PC, pelo que alguns passos podem divergir se, por exemplo, quiseres fazer um dual boot.

Qualquer distribuição deverá ter no seu site, um espaço a explicar como proceder na instalação.

Após a instalação

Aqui seguem-se alguns problemas comuns após a instalação do GNU/Linux, como instalação de modems, descompactar ficheiros, etc.

Como descompactar os formatos mais conhecidos de arquivo?

Muitas vezes o mais pequeno pormenor pode ser uma dor de cabeça para um iniciante, e entre eles pode encontrar-se a descompactação de arquivos.

Actualmente, os dois Desktop Environments mais conhecidos, Gnome e KDE, incluem gestores gráficos para a descompactação de ficheiros. O primeiro utiliza o File Roller (denominado Archive Manager na distribuição Ubuntu) e o segundo utiliza o Ark.

Apesar disso, pode haver momentos em que, por uma razão ou por outra, seja mais prático descompactar os ficheiros na consola, por isso segue-se uma lista dos formatos mais conhecidos e as maneiras de descompactar o ficheiro na consola:

  • Ficheiros .tar.gz:
    $ tar -zxvf nomedoficheiro.tar.gz
    
  • Ficheiros .zip:
    $ unzip nomedoficheiro.zip
    
  • Ficheiros .rar:
    $ rar x nomedoficheiro.rar
    
  • Ficheiros .tar.bz2:
    $ tar -vxjpf nomedofile.tar.bz2
    

Queria ligar-me à net pelo meu modem USB, mas... como?

Ver aqui.

Como instalar programas em sistemas GNU/Linux?

Bem, este é um aspecto que pode diferir um pouco de distribuição para distribuição, pois algumas delas têm incorporados meios de instalação simples de programas que devem ser usados em detrimento dos tradicionais. Vamos fazer uma revisão a todos eles para que ninguém fique com o programa que deseja na mão sem saber o que fazer.

Instalação a partir de repositórios

Cada distribuição tem uma comunidade por trás que testa programas e inclui-os com a distribuição. Não é por acaso que uma distribuição tem imensas aplicações, sem necessidade de fazer download daqui e de lá. Normalmente os programas mais populares encontram-se nos repositórios, que nada mais são que "pastas" onde todo o software está armazenado nos servidores da distribuição. É apenas necessária uma ligação à internet, e podemos ter acesso a todo o conteúdo deste repositório.

  • Para distribuições baseadas no Debian (por exemplo, Ubuntu):
$ sudo apt-get install nomedoprograma

Ideia: Como não se sabe muitas vezes bem o nome exacto, podem procurar pelo nome mais parecido possível usando o comando:

$ apt-cache search nomedoprograma

Pacotes RPM, DEB, ...

Estes pacotes são específicos para cada distribuição. Normalmente nos websites aparece a indicação da distribuição, cada uma com um link diferente. Neste caso, os fornecedores do software preocuparam-se em testar o software nestes ambientes, e criaram um pacote específico para a distribuição.

  • O ficheiro é .deb (sistemas debian-based):
    $ sudo dpkg -i nomedoficheiro.deb
    
  • O ficheiro é .rpm:
    $ sudo rpm -ivh file.rpm
    
  • Converter o .rpm em .deb (programa alien necessário):
    $ sudo alien nomedoficheiro.rpm
    
  • O ficheiro é .sh:
    $ sudo sh nomedoficheiro.sh
    
  • O ficheiro é .run:
    $ sudo chmod u+x nomedofile.run
    sudo sh ./nomedofile.run
    
  • O ficheiro é .bin:
    $ sudo ./nomedofile.bin
    

Pacotes tar.gz, src, ...

Estes são os pacotes que mais dúvidas causam a quem se inicia no mundo GNU/Linux. Eles contêm o código-fonte da aplicação, e têm de ser compilados para a distribuição em causa; da mesma forma que há pacotes diferentes para distribuições diferentes, também haverá diferentes maneiras de compilar o código, sendo essa a razão de muitas vezes o código-fonte ser distribuído em vez de pacotes de instalação.

  1. Descomprimir o arquivo com base no tópico sobre esse mesmo assunto destas FAQ
  2. Entrar na pasta com os conteúdos descompactados pela consola, com o comando:
    $ cd nomedapasta
    
  3. Efectuar a compilação do programa com os seguintes comandos (um de cada vez):
    $ ./configure
    $ make
    $ sudo make install
    

Importante: Um erro em qualquer um destes passos resultará numa compilação falhada.

Não sei usar a consola, que comandos usar?

O ideal para aprender a usar bash, a shell utilizada na consola da maioria das distribuições de GNU/Linux, será adquirir a Linux Bible que explica, em inglês, todo o seu funcionamento e comandos.

No entanto, no fórum temos algo que poderá ajudar caso não pretenda estudar a fundo esta matéria, e que lhe dará uma ideia geral dos comandos.

Outra alternativa que poderá ajudar a iniciar na shell de GNU/Linux, corrigindo erros mais comuns, é a Fish Shell.

Como editar as permissões dos ficheiros por consola?

Devido ao sistema hierárquico dos utilizadores, os ficheiros têm diferentes níveis de permissões conforme as necessidades e o utilizador que os queira aceder. Neste tutorial explicamos detalhadamente este sistema, de maneira a poder tirar todo o partido desta grande funcionalidade dos sistemas UNIX.

Também poderá consultar o Tutorial do CHMOD existente aqui no Wiki.

Como agendar tarefas?

Ver aqui.