INSTITUTO FEDERAL DE EDUCAÇÃO INSTITUTO FEDERAL DE EDUCAÇÃO,
CIÊNCIA E TECNOLOGIA DO RIO GRANDE DO NORTE GRANDE DO NORTE
A
LGORITMOS ET
ÉCNICAS DEP
ROGRAMAÇÃOP
ROGRAMAÇÃO ÉDocente: Éberton da Silva Marinho e-mail: ebertonsm@gmail.com
eberton.marinho@ifrn.edu.br
Curso de Tecnologia em Sistemas para Internet 22/08/2013
S
UMÁRIO| Introdução ao SO Linux | Ambiente Linux
S
ISTEMAO
PERACIONAL| Interface entre o usuário e seus programas com o
computador
É l t d f i
| É quem coloca o computador pra funcionar
realmente, pois traduz tudo o que o usuário quer para que o hardware entenda
para que o hardware entenda
| Responsável pelo gerenciamento de recursos e
periféricos (como memória, discos, arquivos, periféricos (como memória, discos, arquivos, impressoras, CD-ROMs, etc) e a execução de programas
O L
INUX| N i í i d 70 U i f i i d B ll | No início dos anos 70 o Unix foi criado na Bell
Laboratories, braço subsidiário da AT&T. y Era pago
E 1987 A d T b f
| Em 1987, Andrew Tanenbaum, professor em
Amsterdã, iniciou o projeto Minix, que seria um Unix gratuito
| Em 1991 Linux Torvalds, um estudante de Ciências da Computação da Universidade de Helsinque, capital da Finlândia, iniciou o projeto Linux
y A intenção de Linus era fazer um Minix melhor que o
Minix
| Linus começou a distribuir o código do Linux
t it t t d
gratuitamente para que outras pessoas pudessem melhorar o Linux
| Hoje o Linux continua sendo um sistema operacional
di ib íd i
D
ISTRIBUIÇÃOL
INUX| Quando uma empresa junta o núcleo do Linux
(kernel) a uma interface gráfica, à ferramentas gratuitas a um conjunto de programas
gratuitas, a um conjunto de programas
utilitários, escreve um manual e prepara um software de instalação, está pronta mais uma ç , p distribuição Linux
| Distribuições
y Red Hat, Debian, Ubuntu, Mandriva, Slackware,
C
ONCEITOSB
ÁSICOS| Multiusuário: vários usuários podem usar a
mesma máquina ao mesmo tempo
M tit f á i t f d t d
| Mutitarefa: várias tarefas podem ser executadas
concorrentemente ou em paralelo
| Compatível com vários protocolos de | Compatível com vários protocolos de
gerenciamento de discos
| Utiliza permissões de acesso a arquivos e | Utiliza permissões de acesso a arquivos e
diretórios
| Possui suporte a diversos drivers de dispositivos | Possui suporte a diversos drivers de dispositivos
A
RQUITETURA DOL
INUXUsuário
Aplicações
Shell
Controle de Processos Sistema de Arquivos Kernel
S
HELL| Programa que permite que você interaja com o
SO através de comandos Ti d á i
| Tipos de usuários
y Para usuários Administradores aparece no final da
linha do prompt de comando o símbolo ‘#’ linha do prompt de comando o símbolo #
y Para usuários normais aparece no final da linha do
K
ERNEL| Responsável pelo escalonamento de processos,
alocação de espaço em disco, supervisão da transferência de dados entre a memória e os transferência de dados entre a memória e os dispositivos periféricos e resolução das
A
RQUIVOS NOL
INUX| O Linux é case sensitive (sensível ao caso).
Diferencia maiúsculas de minúsculas IFRN é dif t d if
y IFRN é diferente de ifrn
| Arquivos ocultos no Linux são identificados por u
m ‘ ’ no início do nome m . no início do nome
y Exemplo: .bashrc y Comando: ls -a
E
STRUTURA DE DIRETÓRIO DOL
INUX / /bin /sbin /usr /usr/local /mnt /tmp /var /homeE
STRUTURA DE DIRETÓRIO DOL
INUX | Diretório raiz ( / )| O diretório “home” contém os diretórios dos
á i usuário
| O diretório “bin” contém arquivos executáveis
essenciais ao sistema essenciais ao sistema
| O diretório “lib” contém as bibliotecas básicas do
sistema sistema
| O diretório “usr” contém a maior parte dos
programas programas
| O diretório “boot” contém os arquivos necessários
para o kernel do Linux inicializar p
E
STRUTURA DE DIRETÓRIO DOL
INUX | O diretório “etc” contém arquivos deconfigurações de aplicativos e do SO
O di tó i “ ” té i t d
| O diretório “var” contém maior parte dos
arquivos que são gravados com freqüência pelos programas do sistema e-mails spool de
programas do sistema, e mails, spool de impressora, cache, etc
| O diretório “root” é o diretório home do super-| O diretório root é o diretório home do super
usuário
| O diretório “dev” contém arquivos de q
entrada/saída, como disquetes, discos rígidos, etc
| O diretório “mnt” contém o ponto de montagem
P
ERMISSÕES DEA
RQUIVOS NOL
INUXC d l l
| Comando ls –l
y -rwxrwxrwx 1 jose operador 21 Nov 08 16:06 teste
| Modificador de permissão de acesso – Comando chmod
h d ib i ã d i
y chmod atribuição do arquivo
| Pelo menos um dos caracteres “u” (dono), “g” (grupo), “o”
(outros)
O i i “+” “ ” “ ” i di d i õ ã
| Os sinais “+”, “-” ou “=”, indicando as permissões que serão
adicionadas (+), excluídas (-) ou definidas (=)
| Pelo menos um dos caracteres: “w” (escrita), “r” (leitura) ou “x”
(execução) indicando as permissões (execução) indicando as permissões
y Exemplos
| chmod ugo=rw teste.txt | chmod go-w teste txt | chmod go w teste.txt | Chmod g+w teste.txt
P
ERMISSÕES DEA
RQUIVOS NOL
INUXM difi d d i ã d C d h d
| Modificador de permissão de acesso – Comando chmod | Utilizando números segundo a tabela abaixo
Número Binário Permissões
0 000 ---1 001 x 1 001 --x 2 010 -w-3 011 -wr 4 100 r--5 101 r-x 6 110 rw-| Exemplo 6 110 rw 7 111 rwx | Exemplo y Chmod 777 teste.txt
C
OMANDOS NOL
INUXl [ õ ] t i di tó i | ls [opções]: mostra arquivos no diretório
y Para saber como funciona o comando digitar
| ls –help
| Opções do ls O õ
y Opções
| -a: lista todos os arquivos, inclusive os ocultos | -d: lista os nomes dos diretórios
l li i d lh d
| -l: lista os arquivos detalhadamente | –sort=[parâmetro] | none i | size | time | extension V i | Version
L
ISTANDO ARQUIVOS | Comando lsy ls –l *.txt
l l li t t i d f d t lh d
y ls –l : lista pastas e arquivos de forma detalhada y Os parâmetros dos arquivos também podem ser
concatenados co ca e a os
| ls –la
y ls /bin /sbin - Lista os arquivos do diretório /bin e
/ bi /sbin
y ls -la /bin - Listagem completa (vertical) dos arquivos
do diretório /bin inclusive os ocultos. do diretório /bin inclusive os ocultos.
E
STRUTURA DE DIRETÓRIOS DO SISTEMAL
INUX| Diretorio Raiz (/)
y Diretório principal do sistema. Nele estão todos os
diretórios do sistema diretórios do sistema
y O comando “cd” permite navegar entre diretórios y Exemplose p os | cd /home/usuario | cd programacao d | cd .. | cd ../../etc
N
AVEGANDO POR DIRETÓRIOS | Comando cd [caminho/diretório] y cd [parâmetro] E l y Exemplo | cd /etcy Subindo um diretórioSubindo um diretório
| cd .. y Descendo um diretório | cd [nome diretório] y Diretório home | cd ~ | cd | Comando pwd
C
OMANDOS NOL
INUX| pwd: mostra o caminho do diretório atual
| mkdir [caminho/diretório]: cria um diretório no
i t
sistema
y Exemplo
| mkdir teste | mkdir teste
| rmdir [caminho/diretório]: remove um diretório
do sistema. O diretório deve estar vazio e deve haver permissão para alterar o arquivo
C
OMANDOS NOL
INUX| rm [opções] [caminho][arquivo/diretório]: apaga
arquivos, diretórios ou subdiretórios O õ
y Opções
| -i: pergunta antes de remover
| -v: mostra os arquivos na medida em que são removidos | -r: remove arquivos e diretórios recursivamente
| -f: remove os arquivos sem perguntar
Exemplo
y Exemplo
R
EMOVENDO ARQUIVOS OU PASTAS | rmy Exemplos:
y rm teste txt - Apaga o arquivo teste txt no diretório y rm teste.txt Apaga o arquivo teste.txt no diretório
atual.
y rm *.txt - Apaga todos os arquivos do diretório atual
que terminam com txt que terminam com .txt.
y rm *.txt teste.novo - Apaga todos os arquivos do
diretório atual que terminam com .txt e também o i
arquivo teste.novo.
y rm -rf /tmp/teste/* - Apaga todos os arquivos e
sub-diretórios do diretório /tmp/teste mas mantém o sub-p diretório /tmp/teste.
y rm -rf /tmp/teste - Apaga todos os arquivos e
sub-diretórios do diretório /tmp/teste inclusive /tmp/teste diretórios do diretório /tmp/teste, inclusive /tmp/teste.
C
OMANDOS NOL
INUX| cp [opções] [origem] [destino]: copia arquivos de
origem para o destino O õ
y Opções
| -i: pergunta antes de substituir um arquivo existente | -f: substitui arquivos já existentes sem perguntar | -r: copia diretórios e subdiretórios
C
OPIANDO ARQUIVOS | Comando cp| Exemplos
y cp teste.txt teste1.txt Copia o arquivo teste.txt
para teste1.txt.
y cp teste txt /tmp Copia o arquivo teste txt para y cp teste.txt /tmp Copia o arquivo teste.txt para
dentro do diretório /tmp.
y cp * /tmp Copia todos os arquivos do diretório
atual para /tmp.
y cp /bin/* . Copia todos os arquivos do diretório
/bin para o diretório em que nos encontramos /bin para o diretório em que nos encontramos
C
OPIANDO ARQUIVOS | Comando cp| Exemplos
y cp -R /bin /tmp Copia o diretório /bin e todos os
arquivos/sub-diretórios existentes para o
diretório /tmp.p
y cp -R /bin/* /tmp Copia todos os arquivos do
diretório /bin (exceto o diretório /bin) e todos os
i / b di tó i i t t d t d l arquivos/sub-diretórios existentes dentro dele para /tmp.
y cp -R /bin /tmp Copia todos os arquivos e o cp R /bin /tmp Copia todos os arquivos e o
C
OMANDOS NOL
INUX| mv [opções] [origem] [destino]: move ou renomeia
arquivos e diretórios O õ
y Opções
| -i: pergunta antes de substituir um arquivo existente | -f: substitui arquivos já existentes sem perguntar | -r: copia diretórios e subdiretórios
M
OVER OUR
ENOMEAR ARQUIVOS EQ PASTAS| Exemplos
y mv teste.txt teste1.txt Muda o nome do arquivo
teste txt para teste1 txt teste.txt para teste1.txt.
y mv teste.txt /tmp Move o arquivo teste.txt para
/tmp. Lembre-se que o arquivo de origem é
apagado após ser movido.
y mv teste.txt teste.new (supondo que teste.new
já exista) Copia o arquivo já exista) Copia o arquivo
y teste.txt por cima de teste.new e apaga teste.txt após
C
OMANDOS NOL
INUX| cat [diretório/arquivo]: mostra o conteúdo de um
D
ÚVIDAS| e-mail:
ebertonsm@gmail.com
eberton.marinho@ifrn.edu.br
| Endereço eletrônico da disciplina:
| http://docente.ifrn.edu.br/ebertonmarinho
31 31