SO 11ºANO » MÓDULO 4 - Sistema Operativo Open Source

SISTEMAS OPERATIVOS


1. Open Source

O Sofware Open Source (OSS) é o software cujo código-fonte é disponibilizado e que surge ao abrigo de uma licença de código aberto que  fornece a qualquer um, o direito a de estudar, modificar e distribuir o software gratuitamente.  

O OSS pode ser desenvolvido por autores singulares ou de forma colaborativa.

O termo OSS foi criado pela OSI (Open Source Initiative) que o utiliza sob um ponto de vista essencialmente técnico.

Por não possuir um custo de licença, um software open source oferece a oportunidade de um maior investimento em serviços e formação, garantindo um retorno dos investimentos em TI maior e melhor. Na grande maioria dos casos, essas ferramentas são partilhadas gratuitamente (online) pelos desenvolvedores.

O termo open source (termo que surgiu em fevereiro de 1998), bem como o seus estatutos, foi desenvolvido por Eric Raymond e outros fundadores da OSI com a finalidade de apresentar o software livre às empresas de uma forma mais comercial, evitando um discurso ético e de direitos.

A sigla FLOSS, que em inglês significa Free/Libre and Open Source Software, é uma forma agregadora de utilizar os conceitos de Software Livre e Código Aberto a favor dos mesmos softwares, visto que ambos se diferenciam apenas na argumentação.

A OSI impõe 10 pontos importantes para que um software possa ser considerado Open Source:

1 - Distribuição livre
A licença do programa não deve de nenhuma forma restringir o acesso gratuito por meio de venda ou mesmo de permutas.

2 - Código fonte
De fundamental importância, o software deve conter um código fonte que deve permitir a distribuição também na forma compilada. Caso o programa não seja distribuído com seu código fonte, o desenvolvedor deve fornecer um meio para se obter o mesmo. O código fonte deve ser legível e inteligível para qualquer programador.

3 - Trabalhos derivados
A licença do software deve fornecer permissão para que modificações sejam realizadas, bem como trabalhos derivados. Também deve permitir que sejam distribuídos, mesmo após modificação, sobre os mesmos termos da licença original.

4- Integridade do autor do código fonte
A licença deve, de maneira clara e explícita, permitir a distribuição do programa construído por meio do código fonte modificado. No entanto, a licença pode requerer que programas derivados tenham um nome ou número de versão distintos do programa original. Isso dependerá da preferência do desenvolvedor do código.

5 - Não discriminação contra pessoas ou grupos
A licença deve estar disponível para qualquer grupo de pessoas e qualquer indivíduo.

6 - Não discriminação contra áreas de atuação
A licença deve permitir que qualquer pessoa de qualquer ramo específico possa fazer a utilização do programa. Ela não deve impedir, por exemplo, que uma empresa faça uso de seu código.

7 - Distribuição da Licença
Os direitos associados ao software devem ser aplicáveis para todos aqueles cujo programa é redistribuído, sem que exista a necessidade da execução de uma nova licença, ou licença adicional para estas partes.

8 - Licença não específica a um produto
O programa não fazer parte de um outro software, sendo que para utilizá-lo é obrigatório que seja distribuído todo o programa. Se o programa é extraído dessa distribuição, é necessário assegurar que todas as partes sejam disponibilizadas e redistribuídas para todos, visto que todos possuem os mesmos direitos que aqueles que são garantidos em conjunção com a distribuição de programas original.

9 - Licença não restrinja outros programas
A licença não pode ser considerada open source se colocar restrições em outros programas que são distribuídos juntos com o programa licenciado. 

10 - Licença neutra em relação à tecnologia
A licença deve permitir que sejam adotadas interfaces, estilos e tecnologias sem restrições. Isso quer dizer que nenhuma cláusula da licença pode estabelecer regras para que estes quesitos mencionados sejam aplicados ao programa.


2. Visão Geral do Sistema GNU - O Projeto GNU - Free Software Foundation

O Sistema Operativo GNU

Patrocinado pela Free Software Foundation

O sistema operativo GNU é um sistema de software livre completo, compatível com o Unix.
GNU significa “GNU's Not Unix” (GNU Não é Unix).

O projecto GNU foi lançado em Setembro de 1983 por Richard M. Stallman para criar um sistema operativo completo de Software Livre. O trabalho de desenvolvimento de software iniciou-se em Janeiro seguinte. Hoje temos vários sistemas operativos baseados exclusivamente no Software Livre que respeitam a liberdade dos utilizadores dando a todos o direito de usar, (com)partilhar, estudar e melhorar o software para qualquer finalidade.

Stallman fundou a "Free Software Foundation" (Fundação de Software Livre) em Outubro de 1985 para suportar aspectos administrativos, legais e organizacionais do projecto GNU e também para difundir o uso e conhecimento do Software Livre. As principais licenças do projeto GNU são a "GNU General Public License (GPL)" (Licença Pública Geral) e a "GNU Lesser General Public License" (LGPL, Licença Pública Geral Menor, originalmente designada por "GNU Library General Public License"). Ao longo dos anos tornaram-se nas licenças mais utilizadas para o Software Livre.

O projecto GNU consiste em inúmeros pequenos sub-projetos mantidos por voluntários ou empresas ou combinações destas duas. Estes mesmos sub-projetos são também designados por "GNU projects" (projetos GNU) ou "GNU packages" (pacotes GNU).

 

O nome do projeto GNU é resultado do acrônimo redundante "GNU's Not Unix." O Unix era um sistema operativo muito conhecido e utilizado nos anos 80, por isso Stallman desenvolveu o GNU por forma a ser o mais compatível possível com o Unix porque assim seria vantajoso para as pessoas migrarem para o GNU. Contrariamente ao Unix, o GNU é Software Livre.

Sendo semelhante ao Unix, o GNU é desenvolvido por módulos. Isto significa que componentes de terceiros podem ser inseridos no GNU. Hoje em dia, é muito comum as pessoas utilizarem um "kernel" (núcleo) de terceiros designado por Linux com os sistemas GNU. Muitas pessoas utilizam o nome "Linux" para esta variante do GNU, mas isto impede que as pessoas saibam do projeto GNU e o seu propósito da liberdade do software. A FSFE pede às pessoas para utilizarem os termos "GNU/Linux" ou "GNU+Linux" quando fazem referência a estes mesmos sistemas.


3. A Evolução do Linux

Linux refere-se aos sistemas operativos que usam o núcleo Linux, que foi desenvolvido pelo programador finlandês Linus Torvalds, inspirado no sistema Minix. O seu código fonte está disponível sob a licença GPL(versão 2 da licença GNU General Public License designada por GNU GPL ou GPL) para que se possa utilizar, estudar, modificar e distribuir livremente de acordo com os termos da licença. Desenvolvido e utilizado por grupos de entusiastas em computadores pessoais, os sistemas operativos com núcleo Linux têm atualmente a colaboração de grandes empresas como a IBM, Sun Microsystems, Hewlett-Packard (HP), Red Hat, Novell, Oracle, Google, Mandriva e Canonical.

O Linux evoluiu a partir do UNIX, cuja história começou em 1965, quando se formou um grupo de programadores, que incluía Ken Thompson, Dennis Ritchie, Douglas McIlroy e Peter Weiner, num esforço conjunto da AT&T (Laboratórios Bell), General Electric (GE) e MIT (Massachussets Institute of Technology) para o desenvolvimento de um sistema operativo chamado Multics. Porém, o computador GE 465, que era o recurso computacional disponível na época, foi insuficiente para os objetivos do projeto. Em 1969, a Bell retirou-se do projeto, alegando que três instituições com objetivos distintos dificilmente alcançariam uma solução satisfatória para cada uma delas.

Ken Thompson, no mesmo ano (1969), usou um computador DEC PDP-7 para reescrever o Multics num contexto menos ambicioso, com o apoio de Rudd Canaday, Doug McIlroy, Joe Ossanna e Dennis Ritchie. Usou a linguagem de máquina e chamou o sistema de Unics. O sistema revelou-se suficiente para atrair o interesse dosutilizadores e a credibilidade necessária para a aquisição de uma máquina maior, um PDP-11/20. Ritchie também escreveu um compilador para a linguagem de programação C. Brian Kernighan batizou o sistema de UNIX.

Em 1973, Dennis Ritchie e Ken Thompson reescreveram o UNIX na linguagem C, para um computador PDP-11, quebrando a tradição de que o software de sistema deveria ser escrito em linguagem assembly. A linguagem C desenvolvida por Ritchie veio substituir linguagem B, desenvolvida por Thompson. O seu uso tornou o sistema portável e é uma das razões para a rápida difusão do UNIX.

Ao longo dos anos 1970 e 1980 foram desenvolvidas as primeiras distribuições profissionais, como os sistemas BSD, na Universidade de Berkeley na Califórnia, e o System III e V, no Laboratório Bell.

Em 1977, a AT&T começou a fornecer o UNIX para instituições comerciais, graças ao esforço de Peter Weiner, cientista da Universidade de Yale e fundador da Interactive System Corporation. Weiner conseguiu da AT&T uma licença para portar e comercializar o UNIX para o computador Interdata 8/32, usado em automação de escritório. Com a crescente oferta de microcomputadores, outras empresas portaram o UNIX para outras máquinas. De 1977 a 1981, a AT&T integrou variantes no primeiro sistema UNIX comercial, chamado de System III.

Em 1983, após melhorar o System III, a AT&T apresentou o UNIX comercial, chamado de System V. Atualmente, o UNIX System V é o padrão internacional no mercado UNIX. Há muitos sistemas desenvolvidos a partir de padrões como o Portable Operating System Interface (POSIX).

Alguns dos sistemas operativos derivados do UNIX são: BSD (FreeBSD, OpenBSD e NetBSD), Solaris (antes conhecido como SunOS), IRIXG, AIX, HP-UX, Tru64, SCO, Linux e o Mac OS X (baseado no núcleo Mach BSD chamado Darwin). Existem mais de quarenta sistemas operativos derivados, a funcionar em smartphones ou supercomputadores, relógios de pulso e sistemas de grande porte.

O núcleo Linux foi escrito por Linus Torvalds, do Departamento de Ciência da Computação da Universidade de Helsinki, na Finlândia, com a ajuda de muitos programadores voluntários por meio da Usenet, um sistema de listas de discussão existente desde os primórdios da Internet.

Linus Torvalds começou o desenvolvimento do núcleo inspirado no seu interesse no Minix, um pequeno sistema UNIX desenvolvido por Andrew S. Tanenbaum.

O nome Linux foi criado por Ari Lemmke, administrador do site ftp.funet.fi que deu esse nome ao diretório FTP no qual o núcleo Linux estava disponível. Antes disso, Linus nomeou o núcleo de “Freax”.

A 5 de outubro de 1991, Linus Torvalds anunciou a primeira versão “oficial” do núcleo Linux, versão 0.02. Muitos programadores atenderam ao seu apelo, e têm ajudado a fazer do Linux um dos melhores sistemas operativos existentes. No início era utilizado por programadores ou por quem tinha conhecimento de programação e usava linhas de comando. Atualmente existem muitas empresas que produzem os ambientes gráficos, as distribuições mais amigáveis, de forma a que todos consigam usar o Linux.


4. O Núcleo Linux

O termo Linux refere-se ao núcleo (kernel) do sistema operativo, mas também é usado pelos meios de comunicação e utilizadores para indicar os sistemas operativos baseados no núcleo Linux agregado a outros programas. Um núcleo pode ser considerado o próprio sistema operativo, quando este é definido como o gestor dos recursos de hardware.

O Linux é um núcleo monolítico, no qual as funções do núcleo (escalonamento de processos, gestão da memória, operações de entrada e saída, acesso ao sistema de ficheiros) são executadas no espaço de núcleo. Uma característica do núcleo Linux é que algumas das funções (drivers de dispositivos, suporte à rede, sistema de arquivos, por exemplo) podem ser compiladas e executadas como módulos (loadable kernel modules), que são bibliotecas compiladas separadamente da parte principal do núcleo e podem ser carregadas e descarregadas após o núcleo estar em execução.

Linus Torvalds não pretendia fazer do Linux um sistema portável, mas este evoluiu naturalmente nesse sentido. O Linux é provavelmente o núcleo dos sistemas operativos mais portável, dado que funciona em sistemas como iPaq (um computador portátil) e IBM S/390 (um mainframe potente e caro). Torvalds imaginava um tipo diferente de portabilidade, relacionada com a facilidade de compilar aplicações de uma variedade de códigos-fonte no sistema. Assim, o Linux tornou-se popular em parte devido ao esforço de fazer funcionar no sistema os códigos-fonte, do tipo General Public License (GPL). O Linux funciona em dezenas de plataformas, desde mainframes até relógios de pulso, passando por várias arquiteturas, como x86 (Intel, AMD), x86-64 (Intel EM64T, AMD64), ARM, PowerPC, Alpha, SPARC, com grande penetração também em sistemas embarcados, como handhelds, PVR, de vídeojogos, smartphones, TVs e centros multimédia.


5. Licenciamento do Linux

Torvalds lançou o Linux sob uma licença de software que proibia o uso comercial. Esta situação foi alterada pela GNU General Public License. A licença permite a distribuição e a venda de versões modificadas do Linux, mas requer que todas as cópias sejam lançadas dentro da mesma licença e acompanhadas do código-fonte.

O Linux possui suporte de leitura e escrita para vários sistemas de ficheiros, de diversos sistemas operativos, além de alguns sistemas nativos. Por isso, quando o Linux é instalado em dual boot com outros sistemas (como o Windows) ou mesmo como Live CD, pode ler e escrever nas partições formatadas em FAT e NTFS. Sendo assim é usado na manutenção e recuperação de outros sistemas operativos. O Linux suporta os sistemas de ficheiros: FAT, NTFS, JFS, XFS, HPFS, Minix e ISO 9660 (usado em 4 CD-ROMs) incluindo as extensões RRIP (IEEE P1282) e ZISOFS. Alguns sistemas de ficheiros nativos são: Ext2, Ext3, Ext4, ReiserFS e Reiser4. Sistemas de ficheiros com características especiais incluem: SWAP, UnionFS, SquashFS, Tmpfs, Aufs e NFS.


6. O Sistema Operativo LINUX

O núcleo Linux, na versão 0.01, incluía um sistema básico para chamadas do sistema e acesso aos dispositivos do computador, com suporte para disco rígido, ecrã, teclado e portas de série. O sistema de ficheiros adotava o mesmo layout do Minix (mas não havia código do Minix no Linux), tinha textos extensos em assembly language e executava o bash (Unix shell) e o gcc (the GNU Compiler Collection). Em seguida surgiu o MCC Interim Linux, do Manchester Computer Centre, a primeira distribuição Linux, desenvolvida por Owen Le Blanc da Universidade de Manchester, capaz de ser instalada de forma independente num computador.

O núcleo de um sistema operativo define a gestão da memória, dos processos e dos dispositivos físicos do computador. Mas, para um sistema operativo ser útil, são necessários vários aplicativos com funções específicas como, por exemplo, interpretadores de comandos, gerenciadores de janelas (interface para o utilizador), editores de texto, editores de imagem, equipamentos de som e compiladores. Muitos sistemas incluem ferramentas e utilitários baseados na Berkeley Software Distribution (BSD) e tipicamente usam XFree86 ou X.Org para permitir a funcionalidade da Window X (interface gráfica), desenvolvidos pelo X Consortium. Também oferecem ferramentas desenvolvidas pelo projeto GNU, da Free Software Foundation, dirigida por Richard Matthew Stallman .

No desenvolvimento do Linux, estavam reunidos vários aplicativos no Projeto GNU da Free Software Foundation, que tinha como objetivo obter um núcleo, o GNU Hurd. Devido a complicações com o projeto GNU e a demora em desenvolver o Hurd, Richard Stallman adotou o núcleo Linux como base para distribuir os programas do projeto GNU.

Um sistema Linux tem duas partes principais:

Núcleo – o núcleo (kernel) do sistema operativo é a parte que se relaciona com o hardware e que funciona num espaço de memória privilegiado. O Kernel agenda processos, gere a memória, controla o acesso aos arquivos e aos dispositivos de hardware. O acesso ao núcleo é feito por chamadas de sistema, que são funções fornecidas pelo núcleo e disponibilizadas para as aplicações por bibliotecas de sistema C (libc).

Programas de sistema – são aplicações que se executam em espaços de memória não privilegiados, e que fazem a interface entre o utilizador e o núcleo, como:
• Conjunto de bibliotecas C (libc).
• Shell – um ambiente que permite ao utilizador digitar comandos.
• Programas utilitários diversos – são programas usados para manipular arquivos, controlar processos etc.
• Ambiente gráfico (Graphics User Interface – GUI), usado para facilitar a interação do utilizador com o sistema.

Atualmente, um sistema operativo Linux ou GNU/Linux completo é uma coleção de programas livres, como o LATEX, o conjunto de macros para o processador de textos TEX, utilizado amplamente para a produção de textos matemáticos e científicos devido à sua alta qualidade tipográfica.

O LATEX foi desenvolvido na década de 1980, por Leslie Lamport . O TEX é um sistema tipográfico projetado e escrito na sua maior parte por Donald Knuth, professor emérito da Universidade de Stanford, cuja primeira versão apareceu em 1978.

Empresas como Red Hat, SuSE, Mandriva (união da Mandrake com a Conectiva) e a Canonical (desenvolvedora do Ubuntu Linux), e projetos de comunidades como Debian ou Gentoo, compilam o software e fornecem um sistema completo, pronto para instalação e uso.

Patrick Volkerding também fornece a distribuição Slackware do Linux.

As principais diferenças entre as distribuições podem ser encontradas nos sistemas de pacotes, nas estruturas dos diretórios e na biblioteca básica. Geralmente, todos seguem o padrão File Hierarchy System (FHS), que é o mais novo.

Entretanto, qualquer aplicativo ou driver desenvolvido para Linux pode ser compilado em qualquer distribuição e funciona da mesma maneira. A biblioteca usada é a libc, contendo funções básicas para o sistema operativo Linux. Como existe uma variedade grande de funções, há um movimento chamado Linux Standard Base (LSB) para padronizar os programas. O sistema de pacotes não é padronizado.

ArchLinux, Debian, Fedora, Mandriva, Mint, Opensuse, PCLinuxOS, Puppy, Sabayon, Slackware e Ubuntu são algumas das distribuições mais utilizadas atualmente.

Existem distribuições Linux para sistemas móveis, como tablets e smartphones. O Android, desenvolvido pelo Google, é a distribuição mais difundida, mas existem o Maemo e o MeeGo.

O sistema de ficheiros é uma estrutura lógica que possibilita o armazenamento e a recuperação de ficheiros. No Linux os ficheiros estão contidos em diretórios (ou pastas), que são ligadas numa árvore que começa no diretório raiz (designado por “/”). Mesmo os arquivos que se encontram em dispositivos de armazenamento diferentes (discos rígidos, disquetes, CDs, DVDs, sistemas de ficheiros em rede) precisam de ser ligados à árvore para que se possa ter acesso ao seu conteúdo.

Cada dispositivo de armazenamento possui a sua própria árvore de diretórios. A árvore de diretórios do Linux é dividida em ramificações menores e pode mudar de uma versão para outra.

Os diretórios mais comuns são os seguintes:

/ – diretório raiz, o diretório principal do sistema.
/bin – contém ficheiros e programas do sistema, que são usados com frequência pelos utilizadores. /boot – contém ficheiros necessários para a inicialização do sistema.
/dev – contém arquivos usados para aceder aos dispositivos (periféricos) do computador.
/etc – ficheiros de configuração do computador.
/home – diretório que contém os ficheiros dos utilizadores.
/lib – bibliotecas partilhadas pelos programas do sistema e módulos do núcleo.
/mnt – diretório "de montagem" de dispositivos.
/cdrom – subdiretório no qual são montados os CDs.
/proc – sistema de arquivos do núcleo.
/root – diretório do utilizador root.
/sbin – diretório de programas usados pelo superutilizador (root) para administração e controle do funcionamento do sistema.
/tmp – diretório para armazenamento de ficheiros temporários criados por programas.
/usr – contém a maior parte dos programas.
/var – contém a maior parte dos ficheiros que são gravados com frequência pelos programas do sistema.


7. LINUX v WINDOWS

O LINUX
- É considerado um Software básico.
- É um Software Livre (Open Source). O Windows é considerado um software proprietário.
- Licença de uso: GPL/GNU. GPL/GNU – significa  Licença Pública geral, consiste na designação da licença para softwares livres.
- É um SO Multitarefa, assim como o Windows. Multitarefa – o sistema multitarefa é capaz de executar mais de uma aplicação ao mesmo tempo.
- É um SO Multissessão, assim como o Windows. Multissessão – consiste em ter várias contas de utilizadores no mesmo computador.
- É Preemptivo – permite a interrupção de processos (é também característica do Windows). Preemptivo é a ideia de ter vários programas a ser processados ao mesmo tempo, e com isso, conseguimos alternar de um para o outro, interrompendo desta forma, o processo de um para executar outro.
- É um sistema Multiutilizador  (também característica do Windows). Um sistema é Multiutilizador quando existe uma rede de computadores e um servidor (pode este ser usado tanto em Linux como no Windows), e com isso, os utilizadores podem ter acesso simultâneo ao sistema (vários utilizadores a aceder ao servidor ao mesmo tempo).
- Multiprocessamento (também característica do Windows). Multiprocessamento é um computador com mais de um processador.
- Sistema Monolítico (também característica do Windows). Sistema monolítico – todos os processos num só núcleo.
- Partilha de bibliotecas (também característica do Windows). É a partilha de recursos com os softwares instalados no computador. Exemplo: as fontes instaladas no computador podem ser utilizadas em vários programas como Word, Excel, Power Point, Photoshop e etc.
- Capacidade de processamento 32/ 64 bits (também característica do Windows) – Há versões de 32 e 64 bits. Pode ser instalado tanto em processadores de 32 bits, como de 64 bits.
- # Superutilizador (também presente no Windows, mas com o nome de Administrador) é o utilizador com controlo total do computador.
- $ Utilizador comum (também presente no Windows, mas com o nome de Utilizador Limitado) é o utilizador que não tem poder para manipular todos os recursos existentes no computador.
- Interface gráfica e Prompt de comando (também existente no Windows) – É possível interagir com o Linux de duas maneiras: Pela Interface Gráfica ou Prompt de Comando (Shell, bash sh, etc).


O sistema é multiutilizador quando consegue atender a mais de um utilizador em simultâneo.
A ideia do sistema multiutilizador vem de  algumas décadas atrás, quando o custo do hardware  era muito elevado. Nessa época todos os recursos de computador tinham que  ser partilhados para diminuir (ou diluir) os custos.  É dessa época que vem o conceito de terminais "burros", ou seja, os recursos computacionais (CPU, memória RAM, disco, impressora, etc.) estão num computador central e os utilizadores acedem a  esse computador através de terminais remotos, ditos "burros" por não terem capacidade computacional nem disco. Convém notar que esse acesso via terminal, embora remoto, não se encaixa na definição de rede de computadores.

Atualmente, os sistemas multiutilizador normalmente atendem aos seus utilizadores num acesso em rede, geralmente usando o protocolo padrão TCP/IP. A característica multiutilizador obriga o SO a executar mecanismos de proteção para impedir que os utilizadores possam interferir no trabalho uns dos outros. A entrada no sistema é feita por login. Após o login é criada uma sessão de trabalho em que o sistema executa todas as ordens recebidas do utilizador. As tarefas solicitadas ao sistema pelo utilizador ou lançadas automaticamente pelo sistema (daemons) denominam-se processos. Para terminar o trabalho o utilizador faz o logout.

Existem tarefas relacionadas com o controlo do sistema que estão apenas reservadas a um utilizador especial, chamado root (administrador).


8. O UTILIZADOR root

No Linux um utilizador pode ser identificado de 3 formas diferentes:

O superutilizador, ou root, é o administrador do sistema. Apenas este poderá executar alguns comandos e tarefas às quais o utilizador normal não tem acesso.

O superutilizador tem uma área de trabalho definida a partir da raiz do sistema: /root.

Todos os ficheiros criados pelo utilizador serão guardados na sua própria área e outros utilizadores não têm acesso, a não ser que o superutilizador ( root) assim o defina.

Para trabalhar no Terminal com comandos que requerem o privilégio de root é necessário usar o "sudo".

COMO SE TORNAR ROOT NO UBUNTU COM 2 COMANDOS
Para se tornar root no Ubuntu, abra o terminal ( CTRL+ALT+T) e digite:
sudo bash
Será pedida a senha do utilizador root.

o Bash é o shell padrão do utilizador root no Ubuntu (interpretador de comandos).
Ao executar o comando "bash" como root, usando o sudo na frente, tem acesso ao shell do root e pode fazer tudo que o root faz na máquina. Os logs gerados pela utilização do bash também serão os logs do root.


9. LINUX: Comandos Básicos

Download Ubuntu 10.04.4 LTS (ubuntu-10.04-desktop-i386.iso)


Terminal Ubuntu (CTRL+ALT+T)


O comando shutdown (desligar o PC)

se necessário Configurar o teclado para a linguagem Portuguese

Sintaxe:
shutdown -r (reboot)
sudo shutdown -r tempo "mensagem"

OBS. O comando sudo (su + do =superutilizador +fazer) permite executar outros comandos com privilégios de super utilizador)


shutdown -h (halt)
sudo shutdown -h tempo "mensagem"


shutdown -p (power off)
sudo shutdown -P tempo "mensagem"

shutdown -c (cancel)
sudo shutdown -c
 ou CTRL+C


O comando clear (limpar o terminal)


Ficheiros e diretórios

pwd - O comando pwd  permite saber qual diretório atual, onde pwd significa "print working directory".

cd -permite-nos navegar na árvore de diretórios do sistema.

  • "cd /" para ir ao diretório raiz.
  • "cd" para ir ao seu diretório pessoal.
  • "cd .." para aceder a um diretório no nível acima do atual.
  • ”cd -” para voltar ao diretório que se encontrava antes de mudar.
  • Para navegar através de múltiplos níveis de diretórios num só comando, use por exemplo, "cd /var/www", que o levará diretamente ao sub-diretório /www do diretório /var.


cp – Copia arquivos e diretórios.

"cp file foo" para fazer uma cópia exata do arquivo "file" dando-lhe o nome de "foo".

"sudo cp /etc/X11/xorg.conf /etc/X11/xorg.conf-bkp" para gerar uma cópia de segurança exata do arquivo "/etc/X11/xorg.conf" dando-lhe o nome de "/etc/X11/xorg.conf-bkp"


mv - Este comando move arquivos e diretórios, sendo usado também para renomear um determinado arquivo.

”mv arquivo1 arquivo2” para renomear o arquivo “arquivo1” localizado no diretório pessoal do utilizador para “arquivo2” no mesmo local.

"mv foo ~/Desktop" moverá o arquivo "foo" para o diretório Desktop sem alterar o seu nome. Deve especificar um novo nome se quiser renomear um arquivo.


ls - Comando utilizado para listar o conteúdo de um diretório. Usado com certas opções, é possível ver o tamanho dos arquivos, quando foram criados, e as permissões de cada um.

"ls ~" para mostrar os arquivos que estão no seu diretório pessoal.

”ls -hal ~” para mostrar os arquivos que estão no seu diretório pessoal, inclusive os ocultos (-a) em forma de uma listagem (-l) e com as informações de tamanho mais amigável a nós seres humanos (-h).


rm - Utilize este comando para remover (deletar) arquivos e opcionalmente diretórios. Por padrão o comando rm exibe um prompt onde o utilizador deve confirmar a exclusão de cada arquivo, digitando a letra “y” seguido de “Enter”.

”rm arquivo1” para remover o arquivo chamado “arquivo1” do diretório corrente após confirmação no prompt.

”rm -f arquivo1” para remover o arquivo chamado “arquivo1” do diretório corrente sem que lhe seja exibido o prompt de confirmação.

”rm -R ~/temp/” para remover de forma recursiva o diretório /temp localizado na sua pasta pessoal e todo o seu conteúdo, seja ele arquivos ou outras arvores de sub-diretórios.


mkdir - Comando cuja finalidade é permitir a criação de um ou mais diretórios.

"mkdir musicas" para criar um diretório chamado “musicas” dentro do diretório atual.


Estudo de caso:

1º Criar um documento de texto com gedit (editor de texto localizado nos acessórios)

2º Gravar o documento de texto no ambiente de trabalho com o nome notas

3º Iniciar o terminal

4º Na pasta atual, criar uma pasta designada docs

5º Copiar o documento que está no ambiente de trabalho para a pasta docs

6º Apagar o documento notas do ambiente de trabalho


Exercício 1

1º Crie 2 documentos de texto (doc1 e doc2) e grave-os no ambiente de trabalho

2º Inicie o terminal

3º Avance para a pasta Documents do utilizador

4º Em Documents crie 2 pastas (pasta1 e pasta2)

5º Mova o doc1 do ambiente de trabalho para a pasta1

6º Mova o doc2 do ambiente de trabalho para a pasta2

7º Apague doc1 e doc2 do ambiente de trabalho

8º Renomear o doc1 para Ficha1

9º Renomear o doc2 para Ficha2


Exercício 2

1- Inicie o terminal e tome conhecimento do diretório atual.

2- Navegue para o diretório raíz.

3- Visualize as pastas do diretório raíz.

4- Navegue para a pasta home.

5- Em home crie uma pasta designada por backup.

6- Navegue para a pasta backup.

7- Inicie o editor GEDIT e crie na pasta backup 3 arquivos: arquivo1arquivo2 e arquivo3.

8- Renomeie os arquivos: arquivo1 para arquivo_1; arquivo2 para arquivo_2; arquivo3 para arquivo_3.

9- Mova a pasta backup para a pasta Desktop;

10- Exclua a pasta backup.