Mudanças entre as edições de "Oficina de Linux/Ubuntu"
(11 revisões intermediárias por 2 usuários não estão sendo mostradas) | |||
Linha 1: | Linha 1: | ||
= Introdução ao funcionamento do computador = | = Introdução ao funcionamento do computador = | ||
− | * | + | |
+ | *Partes de um computador: | ||
+ | **UCP ([http://en.wikipedia.org/wiki/Central_processing_unit CPU]) (Unidade Central de Processamento); | ||
+ | **[http://en.wikipedia.org/wiki/Computer_bus Barramentos]; | ||
+ | **[http://en.wikipedia.org/wiki/Memory_%28computers%29 Memórias]: Primária (semicondutora -> RAM e ROM) e Secundárias (disco, pendrive) | ||
+ | **Dispositivos de Entrada e Saída de Dados (Teclado, Monitor etc). | ||
+ | |||
+ | *O computador é digital: | ||
+ | ** Dados e Instruções são sequências de bits | ||
+ | ** Representação de dados em sistemas computacionais: uso de códigos (ex:[http://pt.wikipedia.org/wiki/ASCII código ASCII]); | ||
A -> 01000001 | A -> 01000001 | ||
B -> 01000010 | B -> 01000010 | ||
− | * | + | ** As instruções também são palavras binárias interpretadas pela CPU; |
− | * | + | |
− | + | De forma simplificada podemos dizer que as instruções ficam em uma | |
+ | memória de programa enquanto os dados a serem processados pelo programa | ||
+ | ficam em uma memória de DADOS; | ||
+ | |||
+ | O programa que está na '''memória de programa''' está escrito | ||
+ | em LINGUAGEM DE MÁQUINA | ||
+ | |||
+ | *Funcionamento Simplificado de um Computador | ||
+ | |||
+ | Suponha que um programa a ser executado se encontra em uma memória de programa. | ||
+ | Ao ligar o sistema, a CPU busca na memória de programa uma instrução a ser executada | ||
+ | (ciclo de busca) e, então, executa a instrução (ciclo de execução). Na SEQUÊNCIA, | ||
+ | a CPU busca a PRÓXIMA instrução na memória de programa, e assim sucessivamente... | ||
+ | |||
+ | O fluxo de execução do programa é, a princípio SEQUENCIAL no sentido | ||
+ | que a execução de uma instrução é realizada somente após a execução da instrução | ||
+ | antecedente. | ||
= Conceito de Sistema Operacional (OS) = | = Conceito de Sistema Operacional (OS) = | ||
Linha 15: | Linha 40: | ||
São características de um OS: | São características de um OS: | ||
− | * | + | * gerenciamento de [http://en.wikipedia.org/wiki/Process_%28computing%29 processos]; |
* gerenciamento de memória; | * gerenciamento de memória; | ||
− | * sistema de arquivos; | + | * gerenciamento de entradas/saídas; |
− | * drivers | + | * gerenciamento de sistema de [http://en.wikipedia.org/wiki/Computer_file arquivos]; |
− | * networking | + | * acionamento dispositivos via [http://en.wikipedia.org/wiki/Device_driver ''drivers'']; |
− | + | * networking (capacidade de operação em rede). | |
− | |||
− | Duas grandes abstrações são criadas por um OS: a noção de '''arquivos''' e '''processos'''. | + | Duas grandes abstrações são criadas por um OS: a noção de '''arquivos''' e '''processos'''. |
= O Linux = | = O Linux = | ||
Linha 46: | Linha 70: | ||
'''Uma distribuição é um conjunto de software (livre e não livre), incluindo o kernel linux, softwares aplicativos, ferramentas de configuração etc, que são mantidos por indivíduos, empresas ou outras organizações.''' | '''Uma distribuição é um conjunto de software (livre e não livre), incluindo o kernel linux, softwares aplicativos, ferramentas de configuração etc, que são mantidos por indivíduos, empresas ou outras organizações.''' | ||
− | Confira as principais distribuições aqui: [https://www.linux.com/learn/tutorials/ | + | Confira as principais distribuições aqui: [https://www.linux.com/learn/tutorials/571815-the-2012-top-7-best-linux-distributions-for-you melhores distribuições linux 2012] |
O Linux usado oficialmente no IFSC-SJ é versão UBUNTU LTE 10.04. | O Linux usado oficialmente no IFSC-SJ é versão UBUNTU LTE 10.04. | ||
Linha 58: | Linha 82: | ||
* Gnome; | * Gnome; | ||
− | Quase todas GUIs rodam sobre um sistema de base de janelas, o [http://en.wikipedia.org/wiki/X_Window_SystemX Windows System]. Confira uma comparação entre GUIs [http://en.wikipedia.org/wiki/Comparison_of_X_Window_System_desktop_environments aqui]. | + | Quase todas GUIs rodam sobre um sistema de base de janelas, o [http://en.wikipedia.org/wiki/X_Window_SystemX X Windows System]. Confira uma comparação entre GUIs [http://en.wikipedia.org/wiki/Comparison_of_X_Window_System_desktop_environments aqui]. |
== Instalando a distribuição Ubuntu == | == Instalando a distribuição Ubuntu == | ||
Linha 103: | Linha 127: | ||
Para tanto pode-se usar um programa interpretador de comandos chamado [http://en.wikipedia.org/wiki/Unix_shell shell]. | Para tanto pode-se usar um programa interpretador de comandos chamado [http://en.wikipedia.org/wiki/Unix_shell shell]. | ||
− | Uma série de comandos podem ser invocados a partir do shell. Estes comandos podem ser embutidos no próprio shell ou podem ser simplesmente outros comandos (programas) existentes no sistema. | + | Uma [http://pt.wikipedia.org/wiki/Anexo:Utilit%C3%A1rios_de_Linux/Unix série de comandos podem ser invocados a partir do shell]. Estes comandos podem ser embutidos no próprio shell ou podem ser simplesmente outros comandos (programas) existentes no sistema. |
− | Para a operação com arquivos é comum o uso dos comandos:pwd, cd, mkdir, rmdir, rm, ls, cp, ln, cat, more, less | + | Para a operação com arquivos é comum o uso dos comandos: |
+ | *[http://pt.wikipedia.org/wiki/Pwd pwd], | ||
+ | *[http://pt.wikipedia.org/wiki/Cd_%28Unix%29 cd], | ||
+ | *[http://pt.wikipedia.org/wiki/Mkdir mkdir], | ||
+ | *[http://pt.wikipedia.org/wiki/Rmdir rmdir], | ||
+ | *[http://pt.wikipedia.org/wiki/Rm rm], | ||
+ | *[http://pt.wikipedia.org/wiki/Ls ls], | ||
+ | *[http://pt.wikipedia.org/wiki/Cp_%28Unix%29 cp], | ||
+ | *[http://pt.wikipedia.org/wiki/Ln_%28Unix%29 ln], | ||
+ | *[http://pt.wikipedia.org/wiki/Cat_%28Unix%29 cat], | ||
+ | *[http://pt.wikipedia.org/wiki/More_%28Unix%29 more], | ||
+ | *[http://pt.wikipedia.org/wiki/Less less] | ||
Acompanhe os exercícios demonstrativos do professor: | Acompanhe os exercícios demonstrativos do professor: | ||
Linha 144: | Linha 179: | ||
:*Comando mkdir | :*Comando mkdir | ||
− | |||
− | |||
=== Proteção de arquivos === | === Proteção de arquivos === | ||
Linha 151: | Linha 184: | ||
Os comandos mais úteis neste aspecto são: | Os comandos mais úteis neste aspecto são: | ||
− | * chmod: muda o permissionamento de arquivos; | + | * [http://pt.wikipedia.org/wiki/Chmod chmod]: muda o permissionamento de arquivos; |
− | * id: lista o UID e GID dos grupos ao qual o usuário pertence; | + | * [http://pt.wikipedia.org/wiki/Id_%28Unix%29 id]: lista o UID e GID dos grupos ao qual o usuário pertence; |
− | * chown: muda o proprietário de um arquivo. | + | * [http://pt.wikipedia.org/wiki/Chown chown]: muda o proprietário de um arquivo. |
Acompanhe os exercícios demonstrativos do professor | Acompanhe os exercícios demonstrativos do professor | ||
− | |||
− | |||
=== Comandos de redirecionamento de entradas e saídas === | === Comandos de redirecionamento de entradas e saídas === | ||
Linha 164: | Linha 195: | ||
Acompanhe os exercícios demonstrativos do professor | Acompanhe os exercícios demonstrativos do professor | ||
− | |||
− | |||
=== Comandos de gerenciamento de processos === | === Comandos de gerenciamento de processos === | ||
Linha 172: | Linha 201: | ||
Os comandos mais utilizados são: | Os comandos mais utilizados são: | ||
− | * ps | + | * [http://pt.wikipedia.org/wiki/Ps_%28Unix%29 ps]; |
− | * top | + | * [http://pt.wikipedia.org/wiki/Top_%28Unix%29 top] |
− | Acompanhe os exercícios demonstrativos do professor | + | Acompanhe os exercícios demonstrativos do professor |
== Aplicações e Ferramentas úteis == | == Aplicações e Ferramentas úteis == | ||
Linha 182: | Linha 211: | ||
* Mozilla: navegador da Internet; | * Mozilla: navegador da Internet; | ||
− | |||
* BrOffice: conjunto de ferramentas similares ao Office; | * BrOffice: conjunto de ferramentas similares ao Office; | ||
− | |||
* Dia: ferramenta de desenho; | * Dia: ferramenta de desenho; | ||
== Instalações de pacotes no Ubuntu == | == Instalações de pacotes no Ubuntu == | ||
− | A instalação de novos pacotes se dá pelo uso do Ferramenta de Empacotamento Avançada (APT), usada nas | + | A instalação de novos pacotes se dá pelo uso do Ferramenta de Empacotamento Avançada (APT), usada nas distribuições Debian e derivadas do Debian. Esta ferramenta se apresenta com uma interface gráfica na forma do Synaptic ou também pode ser usado em linha de comando com o apt-get. |
− | Para maior detalhes consultar | + | Para maior detalhes consultar [http://www.vivaolinux.com.br/artigo/Instalando-pacotes-no-Ubuntu-e-distros-Debianlike aqui]. |
== Aprendendo mais sobre o sistema == | == Aprendendo mais sobre o sistema == | ||
[http://www.guiafoca.org/?page_id=238 Guia Foca Linux] | [http://www.guiafoca.org/?page_id=238 Guia Foca Linux] | ||
+ | |||
+ | {{ENGTELECO}} |
Edição atual tal como às 11h45min de 17 de outubro de 2012
Introdução ao funcionamento do computador
- Partes de um computador:
- UCP (CPU) (Unidade Central de Processamento);
- Barramentos;
- Memórias: Primária (semicondutora -> RAM e ROM) e Secundárias (disco, pendrive)
- Dispositivos de Entrada e Saída de Dados (Teclado, Monitor etc).
- O computador é digital:
- Dados e Instruções são sequências de bits
- Representação de dados em sistemas computacionais: uso de códigos (ex:código ASCII);
A -> 01000001 B -> 01000010
- As instruções também são palavras binárias interpretadas pela CPU;
De forma simplificada podemos dizer que as instruções ficam em uma memória de programa enquanto os dados a serem processados pelo programa ficam em uma memória de DADOS;
O programa que está na memória de programa está escrito em LINGUAGEM DE MÁQUINA
- Funcionamento Simplificado de um Computador
Suponha que um programa a ser executado se encontra em uma memória de programa. Ao ligar o sistema, a CPU busca na memória de programa uma instrução a ser executada (ciclo de busca) e, então, executa a instrução (ciclo de execução). Na SEQUÊNCIA, a CPU busca a PRÓXIMA instrução na memória de programa, e assim sucessivamente...
O fluxo de execução do programa é, a princípio SEQUENCIAL no sentido que a execução de uma instrução é realizada somente após a execução da instrução antecedente.
Conceito de Sistema Operacional (OS)
Um sistema operacional é um conjunto de programas que gerencia os recursos de hardware de um computador e fornece um conjunto comum de serviços para as aplicações.
Para um computador desktop, um sistema operacional torna a máquina utilizável para um usuário comum.
São características de um OS:
- gerenciamento de processos;
- gerenciamento de memória;
- gerenciamento de entradas/saídas;
- gerenciamento de sistema de arquivos;
- acionamento dispositivos via drivers;
- networking (capacidade de operação em rede).
Duas grandes abstrações são criadas por um OS: a noção de arquivos e processos.
O Linux
Características Gerais do Sistema
- multiusuário: vários usuários podem estar cadastrados no sistema e podem utilizá-lo simultaneamente;
- multitarefa: as tarefas podem se executar em pseudo-paralelismo (ou paralelismo real no caso de múltiplos processadores);
- gerenciamento de múltiplos processadores;
- proteção de arquivos;
- interface gráfica é independente do kernel do sistema, ao contrário do Windows onde o conceito de janelas é embutido no sistema;
- altamente portável;
O Kernel do Linux
- criado por Linus Torvald;
- implementado em C e assembly (partes dependentes de máquina);
- disponível em: kernel.org
As distribuições
Uma distribuição é um conjunto de software (livre e não livre), incluindo o kernel linux, softwares aplicativos, ferramentas de configuração etc, que são mantidos por indivíduos, empresas ou outras organizações.
Confira as principais distribuições aqui: melhores distribuições linux 2012
O Linux usado oficialmente no IFSC-SJ é versão UBUNTU LTE 10.04.
Interfaces gráficas (GUI)
O kernel do Linux não proporciona funcionalidades de janelas no seu kernel. É necessário executar tais GUIs como processos do sistema. As principas GUIs são:
- KDE;
- Gnome;
Quase todas GUIs rodam sobre um sistema de base de janelas, o X Windows System. Confira uma comparação entre GUIs aqui.
Instalando a distribuição Ubuntu
Consulte ubuntu-br
Para quem não quer se "livrar" do Windows pode instalar o Ubuntu em dual boot ou como uma aplicação do Windows (Wubi). Outra alternativa é "bootar" o Ubuntu a partir do CD.
Observe que você pode instalar no Linux um suporte para máquinas virtuais, por exemplo, a VirtualBox. Na máquina virtual é possível instalar outros Linux-es e outros OSs tais como o Windows XP etc.
Finalmente, você pode instalar uma ferramenta chamada wine que permite executar programas Windows sobre o Linux.
Usando o sistema
Ligando o sistema
- Ligar o computador e selecionar o sistema Linux, para boot, na tela do “loader” GRUB;
- Logar no sistema Linux através da interface gráfica;
- Através do menu Aplicativos->acessórios->Terminal iniciar um terminal para comandos em linha;
- Entrar no console em modo texto (use CTRL-ALT-F1);
- Volte para a interface gráfica com CTRL-ALT-F7;
- Pratique o chaveamento das interfaces;
Gerenciado o Sistema de Arquivos
Tipos de Arquivos
O Linux trata quase tudo como arquivos:
- arquivos ordinários: texto (.txt), imagem (.png,.jpeg), vídeo (.avi) etc;
- arquivos diretórios: encapsulam outros arquivos;
- arquivos dispositivos: representam dispositivoss de hardware tais como interfaces serias, hds etc;
- arquivos link simbólicos: similares a atalhos;
entre outros.
O gerenciador de arquivos Nautilus
- O Nautilus é o gerenciador de arquivos default do GNOME. Ele permite operar de forma gráfica sobre o sistema de arquivos, permitindo a criação/remoção de pastas, modificação de atributos de arquivos etc.
- Ver um guia de uso do Nautilus aqui.
- Veja também uma comparação entre gerenciadores de arquivo aqui.
Comandos shell de operação sobre arquivos
É possível trabalhar sobre o Linux sem nenhuma interface gráfica. Para tanto pode-se usar um programa interpretador de comandos chamado shell.
Uma série de comandos podem ser invocados a partir do shell. Estes comandos podem ser embutidos no próprio shell ou podem ser simplesmente outros comandos (programas) existentes no sistema.
Para a operação com arquivos é comum o uso dos comandos:
Acompanhe os exercícios demonstrativos do professor:
- Exercícios em aula
- Comando pwd (mostra o diretório corrente)
[aluno@labHwP ~]$ pwd /home/aluno
- Comando cd
[aluno@labHwP bin]$ cd / [aluno@labHwP ~]$ pwd /
[aluno@labHwP /]$ cd [aluno@labHwP ~]$ pwd /home/aluno
[aluno@labHwP /]$ cd /home [aluno@labHwP home]$ pwd /home
- Comando ls (listagem do diretório)
[aluno@labHwP home]$ cd [aluno@labHwP ~]$ ls
[aluno@labHwP ~]$ ls -l total 0
- Comando touch (cria arquivo vazio)
[aluno@labHwP ~]$ touch alfa [aluno@labHwP ~]$ ls alfa
[aluno@labHwP ~]$ ls -l total 0 -rw-rw-r-- 1 aluno aluno 0 Mar 1 15:07 alfa
- Comando mkdir
Proteção de arquivos
Os comandos mais úteis neste aspecto são:
- chmod: muda o permissionamento de arquivos;
- id: lista o UID e GID dos grupos ao qual o usuário pertence;
- chown: muda o proprietário de um arquivo.
Acompanhe os exercícios demonstrativos do professor
Comandos de redirecionamento de entradas e saídas
Estes comandos visam redirecionar as saídas e entradas de comandos que se utilizam de entrada e saída de dados.
Acompanhe os exercícios demonstrativos do professor
Comandos de gerenciamento de processos
Estes comandos permite o monitoramento de processos e o o envio de sinais para processos.
Os comandos mais utilizados são:
Acompanhe os exercícios demonstrativos do professor
Aplicações e Ferramentas úteis
Existem milhares de aplicações e ferramentas para o Linux. Talvez as mais importantes para você neste momento seja:
- Mozilla: navegador da Internet;
- BrOffice: conjunto de ferramentas similares ao Office;
- Dia: ferramenta de desenho;
Instalações de pacotes no Ubuntu
A instalação de novos pacotes se dá pelo uso do Ferramenta de Empacotamento Avançada (APT), usada nas distribuições Debian e derivadas do Debian. Esta ferramenta se apresenta com uma interface gráfica na forma do Synaptic ou também pode ser usado em linha de comando com o apt-get.
Para maior detalhes consultar aqui.
Aprendendo mais sobre o sistema