sistema operacional unix

Propaganda
COMPANHIA DE INFORMÁTICA DO PARANÁ
DISOP - DIVISÃO DE SUPORTE E PROJETOS DE AMBIENTES INFORMATIZADOS
DOCUMENTO
AUTHOR
DATA
curso.doc
[email protected]
10/03/98
SISTEMA OPERACIONAL UNIX
HISTÓRICO
CARACTERÍSTICAS
Capacidade Multiusuária
Capacidade Multitarefa
Spooler de Impressão
Portabilidade
Comunicação
ESTRUTURA DO SISTEMA
Kernel
Shell
Arquitetura do Sistema
Sistemas de Arquivos
Arquivos
Arquivos diretórios
Arquivos Especiais
Proteção
Administração do Sistema
Usuários
Sessões
Ambiente Unix
Acesso ao Sistema
Redirecionamento
Conexões e canalizações
COMANDOS
Formato Geral
Comandos de Manipulação de Diretórios e Arquivos
Comandos de Manipulação de Textos
Comandos de Manipulação de Impressão
Comandos Genéricos
EDITOR DE TEXTO VI
Movimentação do Cursor
Movimentação da Janela de Edição
Inserção de Texto
Remoção de Texto
Pesquisa de Texto
Outros Recursos
Comandos de Deleção
Comandos de Troca
Comandos de Gravação e Saída do Editor.
HISTÓRICO
1969
 Beel Laboratories da AT&T sai do projeto Multics
 Ken Thompson desenvolve a primeira versão monotarefa/monousuário do UNIX em um
Digital PDP-7
 Dennis Ritchie junta-se a Thompson
 Primeira Versão do UNIX multitarefa escrita em ASSEMBLY no PDP-7
1971
 O UNIX é portado para o PDP-11/20, escrito em linguagem B subconjunto de BCPL
1973
 Reescrito em Linguagem C num PDP-11/70 [Portabilidade]
 Versão 5 licenciada com fontes
 Preço Simbólico para Universidades
1975
 É lançada a versão 6
 Ken Thompson passa um ano na Universidade de Berkeley como professor convidado
1977
 É lançado o BSD-UNIX (Berkeley System Distribution), o primeiro Sistema UNIX com
suporte comercial
 Em Berkeley foram desenvolvidos diversos recursos para o Sistema UNIX:
 Editor VI
 C-Shell
 INGRESS [Banco de Dados]
1979
 É lançada a versão 7
 Surgem vários UNIX - Like com suporte comercial. Dentre eles , destaca-se o XENIX da
Microsoft
1981
 Fim do acordo de pesquisa entre AT&T e o governo americano. A Bell Laboratories entra no
mercado de Informática
1983
 Lançamento do System V com a incorporação de recursos necessários para o sucesso
comercial UNIX:
 Lock de registro de arquivos
 Memória compartilhada
 Semáforos
 Filas de Mensagens
 Lock de Programas na memória
CARACTERÍSTICAS
CAPACIDADE MULTIUSUÁRIO
A capacidade multiusuário do UNIX significa que vários usuários do sistema podem ter acesso
aos mesmos dados simultaneamente. Ou seja várias pessoas envolvidas em projetos comuns podem
ter acesso uma aos dados das outras. O UNIX suporta esquemas de proteção embutidos, como
senhas e permissões para arquivos. Isso permite que cada usuário de um grupo tenha sua conta
individual com seu próprio diretório de entrada para acesso.
CAPACIDADE MULTITAREFA
O UNIX suporta a execução simultânea de vários programas em um mesmo computador. Isso
significa que enquanto você executa um programa aplicativo, como uma planilha eletrônica , você pode
usar outros aplicativos, como um editor de texto, para rascunhar uma carta e ainda receber
correspondência eletrônica sem interferência em seu trabalho.
SPOOLER DE IMPRESSÃO
O Sistema UNIX System V tem como implementação para administração de impressão
recurso denominado “SPOOLER de IMPRESSÃO”. Este recurso permite que o sistema operacional
gerencie as impressoras cadastradas, controlando a fila de pedidos das mesmas. Permite, também a
configuração de recursos como salto de página, label de relatórios com data de emissão, usuário que
emitiu e outros recursos. Existe um processo encarregado de verificar continuamente se existe algum
pedido de impressão.
PORTABILIDADE
Um dos pontos fortes do Sistema Operacional UNIX é sua portabilidade. Como o UNIX é
escrito em Linguagem C ele pode ser portado para outros sistemas de computadores. Por este motivo
temos os Sistemas UNIX para plataforma Intel, RISC IBM, RISC HP, RISC SUN e outros.
COMUNICAÇÃO
O Sistema UNIX possui vários programas de comunicação. O programa MAIL é usado para
enviar e receber mensagens eletrônicas, permitindo que usuários de seu computador e de outros
computadores transfiram mensagens. As mensagens enviadas por outros usuários são colocadas em
sua caixa de postal e você pode lê-las uma de cada vez, de acordo com sua disponibilidade. O
programa WRITE pode comunicar diretamente com um outro usuário que esteja ligado ao seu sistema
UNIX. Acessando este comando tudo que você digitar aparece no terminal receptor. Se o receptor
também acessar o comando WRITE, uma comunicação bidirecional estará estabelecida. Tudo que for
digitado em um terminal aparecerá diretamente no terminal do outro usuário.
ESTRUTURA
KERNEL
O KERNEL ou núcleo é o coração do sistema operacional, controlando o hardware e na
verdade ligando e desligando partes do computador ao comando de um programa. Todos os Sistemas
Operacionais têm um KERNEL, embora ele possa ter outros nomes. Por exemplo quando um usuário
digita o comando “ls” [para listar nomes dos arquivos e sub-diretórios contidos em seu diretório], o
KERNEL direciona o computador para a leitura dos nomes dos arquivos no disco e os coloca na tela
para que o usuário os veja.
SHELL
É o programa que conecta e interpreta os comandos digitados por um usuário. Ele interpreta os
pedidos do usuário, chama programas em memória para executá-los individualmente ou em uma
seqüência chamada PIPE.
O SHELL fornece uma conexão fácil entre pessoas que “falam” línguas diferentes, fica entre o
usuário e o KERNEL. Ele fala tanto a linguagem do usuário quanto a de máquina entendida pelo
computador. O programa SHELL interpreta os comandos que o usuário digita quando trabalha com
sistema operacional e os traduz para comandos que o KERNEL compreende. O SHELL diz ao
KERNEL para fazer o trabalho que o usuário solicitou, eliminando a necessidade do usuário ter de falar
com o KERNEL diretamente em uma linguagem que ele não entenda.
ARQUITETURA DO SISTEMA
USUÁRIO
SHELL
KERNEL
UTILITÁRIOS
RECURSOS
ADICIONAIS
COMPILADORES
NFS
X25
SISTEMAS DE ARQUIVO
C
PASCAL
COBOL
FERRAMENTAS
GERAIS
pr
grep
find
EDITORES
DE
TEXTO
VI
ED
DESENVOL.
DE
APLICAÇÕES
ORACLE
SYBASE
Um arquivo é uma unidade de dados que é armazenado em disco magnético ou fita. O nome
do arquivo identifica-o de forma exclusiva. O diretório é um tipo especial de arquivo que contém a lista
dos nomes dos arquivos. O Sistema UNIX de arquivamento permite uma estrutura hierárquica. E
possui os seguintes arquivos característicos:
/
/etc
/etc
/bin
/usr
/dev
/lib
/tmp
/bin
/dev
/usr
/lib
/tmp
Comandos de Administração do Sistema
Comandos UNIX de uso comum
Diretórios de Administração, Comandos , Contas de Usuários
Arquivos de dispositivos
Biblioteca para programação C
Armazenamento temporário
ARQUIVOS
Toda e qualquer informação armazenada em um sistema UNIX utiliza uma estrutura
denominada arquivo. Existem no UNIX três tipos de arquivos: comum, diretório e especial. O nome de
cada arquivo deve ter no máximo 14 caracteres e o tipo do arquivo é identificado pelo primeiro caracter
da listagem gerada pelo comando “ls -l”.
EXEMPLO:
-
arquivo comum
-r-xr-xr-x
d
bin
25684 ago
22
1997
find
3
root
root
704
fev
13
1997
notes
sys
3,0
fev
23
08.21
wch0
arquivos especiais
b--x--x--OBS:
bin
arquivo diretório
drwxrwxrwx
c, b
1
1
root
Arquivos especiais são arquivos de interfaces entre dispositivos lógicos e físicos.
b
c
Acesso a bloco
Acesso a caracter
ARQUIVOS DIRETÓRIO
Um arquivo diretório armazena os nomes dos arquivos agrupados por ele em um ponteiro indicando
onde encontram as informações sobre arquivos. A criação e manipulação de um arquivo diretório são
feitas através de programas utilitários.
ARQUIVOS ESPECIAIS
Um arquivo especial é interface entre os sistemas de arquivos e a rotina do sistema operacional, que
controla um dispositivo periférico. Para cada dispositivo periférico presente na máquina deve existir um
arquivo especial. Por convenção os arquivos especiais ficam no diretório /dev e os nomes são
constituídos por um símbolo que identifica o tipo do periférico e por um número que seleciona uma
lógica do dispositivo.
PROTEÇÃO
Normalmente todo tipo de arquivo contém informações que não devem ser acessadas por qualquer
usuário. Para atender a esta necessidade, o UNIX estabeleceu os seguintes modos de permissão nos
arquivos.
leitura
gravação
execução
(r)
(w)
(x)
Estas permissões existem em nível de usuário, grupo de usuários e outros grupos e podem ser
alteradas através do comando chmod.
ADMINISTRAÇÃO DE SISTEMA
Este bloco é representado por um grupo restrito de usuários que tem por atividade a
administração técnica da instalação do servidor. Ao administrador cabe a responsabilidade de
cadastrar novos usuários com suas limitações de atuação, bem como exercer a auditoria sobre as
atividades de usuário. O administrador é um superusuário, uma categoria de usuário que possui níveis
de atuação ilimitada.
USUÁRIOS
Em contraste com o superusuário, existem usuários formados por analistas, programadores,
operadores e usuários finais. As suas atuações se restringem às atividades especificas de cada um ou
ao grupo a que pertencem.
Existe um local na estrutura interna do UNIX onde são registradas as informações relativas a
um usuário. Seu nome, senha de acesso, diretório de trabalho, identificação e outras informações.
SESSÕES
O conceito de sessão se refere à parcela de tempo em que um dado sistema permanece à
disposição do usuário. A sessão se inicia quando um usuário solicita acesso ao sistema [login] e se
encerra quando o usuário solicita o seu desvinculamento do sistema [logout].
AMBIENTE UNIX
Convencionamos como Ambiente UNIX a totalidade dos recursos disponíveis num servidor
UNIX. Isto inclui sistema operacional, software adicionais, estruturas de arquivo, hierarquias,
informações armazenadas, etc. O administrador do sistema UNIX prepara um ambiente de trabalho
para cada usuário do sistema. Cada ambiente possui a particularidade que melhor atende as
necessidades de cada usuário.
Para ser um usuário UNIX é necessário ser cadastrado através de um nome ou conta. Este
cadastro é efetuado pelo administrador do sistema.
ACESSO AO SISTEMA
Login : aluno
passwd: *****
$ ls
arquivo
$
arquivo2 aluno1
REDIRECIONAMENTO
O sistema UNIX tem como entrada padrão o teclado e como saída padrão o terminal do
usuário. Através do redirecionamento, o usuário pode alterar o padrão de entrada e saída do sistema.
O redirecionamento é representado pelos caracteres:
>
<
>>
redirecionamento da saída
redirecionamento da entrada
redirecionamento da saída com acréscimo no final do arquivo se este já existir. [APPEND]
EXEMPLOS
Redirecionamento da saída
$ cat arquivo >arquivo2
Ao invés do arquivo1 ser exibido na tela, sua saída original, o conteúdo do arquivo é
armazenada em arquivo2.
$ who >usuários
O arquivo usuários passa a ter armazenada a relação de todos os usuários ativos.
Redirecionamento da entrada
$ wc -l < usuarios
O arquivo usuários é direcionado como entrada para o contador [wc] com a opção de contar
linhas [-l], e temos como resultado o número de usuários.
Redirecionamento da saída com acréscimo no final do arquivo se este já existir. [APPEND]
$ cat arquivo >> arquivo2
O conteúdo do arquivo é adicionado em arquivo2.
COMANDOS
FORMATO GERAL
comando [ -opções ] [ argumentos ]
OBS:
Comandos com nomes curtos
Maiúsculas diferem de minúsculas
Não existe conceito de extensão
Metacaracteres
EXEMPLO
$ ls -l arq*
-r-xr-xr-x
-r-xr-xr-x
1 bin bin
1 bin bin
25684 jan
23456 fev
22
10
1997 arquivo1
1997 arquivo2
COMANDOS DE MANIPULAÇÃO DE DIRETÓRIOS E ARQUIVOS
NOME:
pwd
SINTAXE:
pwd
DESCRIÇÃO:
indicação do diretório de trabalho atual
EXEMPLO:
pwd
NOME:
cd
SINTAXE:
cd [diretório]
DESCRIÇÃO:
navegação entre diretórios
EXEMPLO:
cd ..
NOME:
mkdir
SINTAXE:
mkdir [diretório]
DESCRIÇÃO:
criação de diretórios
EXEMPLO:
mkdir curso
NOME:
rmdir
SINTAXE:
rmdir [diretório]
DESCRIÇÃO:
remoção de diretórios
EXEMPLO:
rmdir curso
NOME:
ls
SINTAXE:
ls [ -opções ] [ argumentos ]
DESCRIÇÃO:
listagem dos diretórios/arquivos
EXEMPLO:
ls -l
NOME:
cat
SINTAXE:
cat [arquivo]
DESCRIÇÃO:
listagem do conteúdo do arquivo indicado sem paginação
EXEMPLO:
cat arquivo1
NOME:
mv
SINTAXE:
mv arquivo1 arquivo2
DESCRIÇÃO:
renomeia arquivos
EXEMPLO:
mv arquivo1 arquivo2
NOME:
cp
SINTAXE:
cp arquivo1 arquivo2
DESCRIÇÃO:
cópia de arquivos
EXEMPLO:
cp arquivo2 arquivo3
NOME:
rm
SINTAXE:
rm arquivo1 arquivo2
4DESCRIÇÃO:
remoção de arquivos
EXEMPLO:
rm arquivo3
NOME:
wc
SINTAXE:
wc [ -opções ] [ argumentos ]
DESCRIÇÃO:
contador de palavras/linhas
EXEMPLO:
wc -l arquivo2
COMANDOS DE MANIPULAÇÃO DE TEXTOS
NOME:
grep
SINTAXE:
grep [ -opções ] [ argumentos ]
DESCRIÇÃO:
pesquisa em textos
EXEMPLO:
grep teste arquivo2
NOME:
tail
SINTAXE:
tail [ -opções ] [ argumentos ]
DESCRIÇÃO:
exibição de linhas de um texto
EXEMPLO:
tail -10 arquivo2
NOME:
pr
SINTAXE:
pr [ -opções ] [ argumentos ]
DESCRIÇÃO:
paginação de textos
EXEMPLO:
pr arquivo2
NOME:
pg
SINTAXE:
pg [ -opções ] [ argumentos ]
DESCRIÇÃO:
exibição de texto tela a tela
EXEMPLO:
pg arquivo2
COMANDOS DE MANIPULAÇÃO DE IMPRESSÃO
NOME:
lp
SINTAXE:
lp [ -opções ] [ argumentos ]
DESCRIÇÃO:
comando de impressão via spooler
EXEMPLO:
lp arquivo
NOME:
lpstat
SINTAXE:
lpstat [ -opções ] [ argumentos ]
DESCRIÇÃO:
verifica status de impressão
EXEMPLO:
lpstat -t
NOME:
cancel
SINTAXE:
cancel pedido
DESCRIÇÃO:
cancela solicitação de impressão
EXEMPLO:
cancel laser-2344
COMANDOS GENÉRICOS
NOME:
write
SINTAXE:
write usuário
DESCRIÇÃO:
conversação entre usuários
EXEMPLO:
write aluno
NOME:
talk
SINTAXE:
talk usuário
DESCRIÇÃO:
conversação entre usuários
EXEMPLO:
talk aluno
NOME:
mail
SINTAXE:
mail usuário
DESCRIÇÃO:
remessa de mensagem entre usuários
EXEMPLO:
mail aluno
mensagem
CTRL d
NOME:
ps
SINTAXE:
ps [ -opções ] [ argumentos ]
DESCRIÇÃO:
contrôle de processos associados ao usuário
EXEMPLO:
ps
NOME:
kill
SINTAXE:
kill [ -opções ] [ argumentos ]
DESCRIÇÃO:
Mata processos
EXEMPLO:
kill PID
EDITOR DE TEXTO VI
NOME
SINTAXE
OBS
vi “Visual”
vi arquivo
Se o arquivo não existir, ele é criado.
MOVIMENTAÇÃO DE CURSOR
[n]k
[n]j
[n]h
[n]l
movimenta n linhas acima
movimenta n linhas abaixo
movimenta n caracteres à esquerda
movimenta n caracteres à direita
^
$
w
b
e
início da linha
final da linha
avança palavras
retorna palavras
final da palavra
OBS Todos os comandos de movimentação podem ser precedidos pelo número de vezes que deve
ser repetido.
3w
3k
8b
avança 3 palavras
3 linhas acima
8 palavras para trás
MOVIMENTAÇÃO DA JANELA DE EDIÇÃO
CTRL d
CTRL u
CTRL f
CTRL b
desce meia tela
sobe meia tela
desce uma tela
sobe uma tela
H
M
L
NG
coloca o cursor no topo da tela
coloca o cursor no meio da tela
coloca o cursor no final da tela
vai para alinha N
INSERÇÃO DE TEXTO
o
O
i
I
a
A
OBS
Abre uma linha abaixo da linha corrente, posiciona o cursor no início da nova linha e
entra em modo inserção.
Abre uma linha acima da linha corrente, posiciona o cursor no início da nova linha e
entra em modo inserção.
Entra em modo inserção antes do cursor.
Posiciona o cursor no início da linha e entra em modo inserção.
Entra em modo inserção após o cursor.
Posiciona o cursor no final da linha e entra em modo inserção.
Modo comando ou modo inserção ??
Em caso de dúvida aperte a tecla “ESC”
REMOÇÃO DE TEXTO
x
r
nx
X
Elimina o caracter sob o cursor
Substitui o caracter sob o cursor
Elimina os próximos n caracteres
Elimina o caracter anterior ao cursor
PEQUISA DE TEXTO
/palavra
?palavra
n
N
Procura a próxima ocorrência de “palavra” para frente
Procura a próxima ocorrência de “palavra” para trás
Repete padrão e sentido da última busca
Repete padrão, mas em sentido contrário ao da última busca
OUTROS RECURSOS
s
Elimina o caracter abaixo do cursor, entrando em modo inserção
R
Coloca o editor em modo substituição. Tudo o que for digitado irá substituir o texto
abaixo do cursor.
J
Junção da linha corrente com a próxima, eliminando brancos e tab´s à esquerda da
linha de baixo.
COMANDOS DE DELEÇÃO
dw
d$
d10G
dG
dd
Deleta a próxima palavra
Deleta até o final da linha
Deleta da linha atual até a linha 10 inclusive
Deleta da linha atual até o fim do arquivo
Deleta somente a linha atual
COMANDOS DE TROCA
cw
Troca da posição do cursor até o final da palavra pelo texto inserido até <ESC>.
c$
Troca o conteúdo existente entre a posição atual do cursor e o final da linha pelo texto
inserido até <ESC>.
COMANDOS DE GRAVAÇÃO E SAÍDA DO EDITOR
:w
:q
:q!
:wq
Grava e continua a edição
Sai sem gravar
Sai sem gravar e elimina a confirmação
Grava e sai
Download