70

UM BREVE HISTÓRICO Unix é um sistema de grande popularidade por sua portabilidade e flexibilidade; O Unix foi criado pelo laboratório Bell subsidiária

Embed Size (px)

Citation preview

Page 1: UM BREVE HISTÓRICO Unix é um sistema de grande popularidade por sua portabilidade e flexibilidade; O Unix foi criado pelo laboratório Bell subsidiária
Page 2: UM BREVE HISTÓRICO Unix é um sistema de grande popularidade por sua portabilidade e flexibilidade; O Unix foi criado pelo laboratório Bell subsidiária

UM BREVE HISTÓRICO

•Unix é um sistema de grande popularidade por sua portabilidade e flexibilidade;

•O Unix foi criado pelo laboratório Bell subsidiária da AT&T no final da década de 60, sendo suas primeiras versões criadas em Assembler;

•Em 1973, Dennis Ritchie reescreveu o UNIX na linguagem C, o que tronou possível transportar o sistema Unix de uma arquitetura para outra com um mínimo de esforço.

Page 3: UM BREVE HISTÓRICO Unix é um sistema de grande popularidade por sua portabilidade e flexibilidade; O Unix foi criado pelo laboratório Bell subsidiária

CONCEITOS BÁSICOS

•Sistema Operacional

É um programa que gerencia a utilização dos recursos da máquina.

- Multiusuário

Vários usuários têm acesso ao sistema simultaneamente

- Multitarefa

Cada usuário pode executar várias tarefas simultaneamente

Page 4: UM BREVE HISTÓRICO Unix é um sistema de grande popularidade por sua portabilidade e flexibilidade; O Unix foi criado pelo laboratório Bell subsidiária

CONCEITOS BÁSICOS

•Programa

É uma seqüência de instruções que o computador executa. Normalmente está armazenado em disco sob a forma de um arquivo.

•Processo

Quando um programa está executando, é chamado processo.

Page 5: UM BREVE HISTÓRICO Unix é um sistema de grande popularidade por sua portabilidade e flexibilidade; O Unix foi criado pelo laboratório Bell subsidiária

ARQUITETURA DO SISTEMA UNIX

COMANDOSAPLICAÇÕES

SHELL

NÚCLEO

HARDWARE

USUÁRIOS

Kernel/NúcleoFunção:•Organizar processos;•Gerenciar memória;•Gerenciar armazenamento em disco;•Supervisiona a transferência de dados dos meios de armazenamento.

Kernel/NúcleoCaracterísticas:•Isola o HW através de uma interface Unix padronizada (SVR4, X-OPEN, POSIX), facilitando a portabilidade do sistema;•O usuário só acessa o Kernel via comandos;•Poucos serviços.

Page 6: UM BREVE HISTÓRICO Unix é um sistema de grande popularidade por sua portabilidade e flexibilidade; O Unix foi criado pelo laboratório Bell subsidiária

ARQUITETURA DO SISTEMA UNIX

COMANDOSAPLICAÇÕES

SHELL

NÚCLEO

HARDWARE

USUÁRIOS

ShellCaracterísticas:•É o interpretador de comandos do Unix e responsável pela comunicação entre o usuário e o computador;•Possui ferramentas que permitem programar de maneira estruturada, como linguagens de alto nível.

Page 7: UM BREVE HISTÓRICO Unix é um sistema de grande popularidade por sua portabilidade e flexibilidade; O Unix foi criado pelo laboratório Bell subsidiária

SESSÕES DO UNIXLoggin in•Um usuário no sistema Unix só pode usar o sistema se for devida- mente autorizado no procedimento de “loggin in”, isto é ter licença para uso.

Page 8: UM BREVE HISTÓRICO Unix é um sistema de grande popularidade por sua portabilidade e flexibilidade; O Unix foi criado pelo laboratório Bell subsidiária

SESSÕES DO UNIX

Loggin in

•Para evitar que usuários distintos ou não cadastrados usem o sistema em nome do outro, um usuário autorizado tem nome de sessão público e uma senha só de seu conhecimento ou do administrador por rede..

Page 9: UM BREVE HISTÓRICO Unix é um sistema de grande popularidade por sua portabilidade e flexibilidade; O Unix foi criado pelo laboratório Bell subsidiária

SESSÕES DO UNIX

Loggin off

•O comando exit fecha a sessão.

Page 10: UM BREVE HISTÓRICO Unix é um sistema de grande popularidade por sua portabilidade e flexibilidade; O Unix foi criado pelo laboratório Bell subsidiária

SESSÕES DO UNIX

Administrador do sistema

•É um usuário especial (também chamado de superusuário), com poderes ilimitados, e com tarefas administrativas tais como cadastrar usuários, realizar backups, instalar ou configurar softwares ou periféricos, etc.

Page 11: UM BREVE HISTÓRICO Unix é um sistema de grande popularidade por sua portabilidade e flexibilidade; O Unix foi criado pelo laboratório Bell subsidiária

ALGUNS COMANDOS

passwd - Troca a senha do usuário. Um usuário só pode alterar sua senha,

Page 12: UM BREVE HISTÓRICO Unix é um sistema de grande popularidade por sua portabilidade e flexibilidade; O Unix foi criado pelo laboratório Bell subsidiária

ALGUNS COMANDOS

who am i - Lista o nome do usuário.

Page 13: UM BREVE HISTÓRICO Unix é um sistema de grande popularidade por sua portabilidade e flexibilidade; O Unix foi criado pelo laboratório Bell subsidiária

ALGUNS COMANDOS

who - Lista todos os usuários que estão ativos na máquina, seus respectivos terminais e a data e hora de abertura de sessão.

Page 14: UM BREVE HISTÓRICO Unix é um sistema de grande popularidade por sua portabilidade e flexibilidade; O Unix foi criado pelo laboratório Bell subsidiária

ALGUNS COMANDOS

date - Lista a data e hora do sistema. O superusuário pode executar o programa para alterar a data corrente.

Page 15: UM BREVE HISTÓRICO Unix é um sistema de grande popularidade por sua portabilidade e flexibilidade; O Unix foi criado pelo laboratório Bell subsidiária

ALGUNS COMANDOS

tty - Exibe o nome do terminal do usuário.

Page 16: UM BREVE HISTÓRICO Unix é um sistema de grande popularidade por sua portabilidade e flexibilidade; O Unix foi criado pelo laboratório Bell subsidiária

ALGUNS COMANDOS

man - Exibe um manual sobre o comando. Deve ser utilizado para se conhecer a sintaxe do comando desejado.

Page 17: UM BREVE HISTÓRICO Unix é um sistema de grande popularidade por sua portabilidade e flexibilidade; O Unix foi criado pelo laboratório Bell subsidiária

USUÁRIOS UNIX

Usuário/Grupo - Todo o usuário UNIX possui dois números que o identificam.

UID (User Identifier)

Identificador de usuário, está associado ao nome da sessão, que o identifica univocamente um usuário do sistema.

GID (Group Identifier)

Identificador de Grupo, cria o conceito de grupo, onde estão cadastrados usuários que possuem alguma coisa em comum, por exemplo, trabalham no mesmo departamento, ou em um determinado projeto.

Page 18: UM BREVE HISTÓRICO Unix é um sistema de grande popularidade por sua portabilidade e flexibilidade; O Unix foi criado pelo laboratório Bell subsidiária

USUÁRIOS UNIX

Estes identificadores são também utilizados para controle de permissão de acesso a arquivos, conforme será visto mais tarde.

Exemplo de usuários e grupos de uma instalação

USUÁRIO UID GRUPO GIDaluno1 5001 curso 3333aluno2 5002 curso 3333carlos 1000 vendas 230jose 2134 vendas 230pedro 5879 suporte 534paulo 3020 suporte 534

Page 19: UM BREVE HISTÓRICO Unix é um sistema de grande popularidade por sua portabilidade e flexibilidade; O Unix foi criado pelo laboratório Bell subsidiária

USUÁRIOS UNIX

Comando id

Page 20: UM BREVE HISTÓRICO Unix é um sistema de grande popularidade por sua portabilidade e flexibilidade; O Unix foi criado pelo laboratório Bell subsidiária

USUÁRIOS UNIX

Superusuário - Identifica o usuário com privilégios de acesso irrestrito a qualquer arquivo. Seu UID é sempre 0. Normalmente o administrador do sistema assume esta condição para poder realizar tarefas de sua competência.

O comando id lista os identificadores de usuário e grupo de sua sessão.

Ex.

$id

uid=5001(aluno1) gid=3333(curso)

Page 21: UM BREVE HISTÓRICO Unix é um sistema de grande popularidade por sua portabilidade e flexibilidade; O Unix foi criado pelo laboratório Bell subsidiária

FORMATO DE UM COMANDO UNIX

Os comandos Unix seguem um padrão,composto basicamente por três campos: nome do comando, opções e argumentos.

Comando -opções argumentos

O nome do comando corresponde ao nome do arquivo que contém o programa.

As opções são modificadores do comportamento do comando.

Os argumentos são os objetos sobre os quais o comando irá atuar.

Page 22: UM BREVE HISTÓRICO Unix é um sistema de grande popularidade por sua portabilidade e flexibilidade; O Unix foi criado pelo laboratório Bell subsidiária

FORMATO DE UM COMANDO UNIX

Cada um destes campos deve ser separado por um ou mais caracteres em branco (espaços).

Normalmente as opções são letras, que devem ser precedidas pelo caractere -, podendo ser em qualquer ordem, cada letra tem um significado.

Para comandos que recebem mais de um argumento, estes devem estar separados por um ou mais espaços.

Em caso de dúvida, ou retorno de erro no comando, consultar o comando man referente ao comando.

Page 23: UM BREVE HISTÓRICO Unix é um sistema de grande popularidade por sua portabilidade e flexibilidade; O Unix foi criado pelo laboratório Bell subsidiária

FORMATO DE UM COMANDO UNIX

1. Comando ls - Lista nomes de arquivos do diretório.

a) comando sem opções ou argumentos. Usa opções e agumentos default.

$ ls

arq1 arq2

Page 24: UM BREVE HISTÓRICO Unix é um sistema de grande popularidade por sua portabilidade e flexibilidade; O Unix foi criado pelo laboratório Bell subsidiária

FORMATO DE UM COMANDO UNIX

Exemplos:

b) comando com uma opção, sem argumentos. (argumentos default).

$ ls -l

-rw-r--r-- 1 aluno1 curso 221 May 15 11:20 arq1

-rwxr-xr-x 1 aluno1 curso 32544 Apr 11 08:00 arq2

Com esta opção é apresentada todas as informações do arquivo

Page 25: UM BREVE HISTÓRICO Unix é um sistema de grande popularidade por sua portabilidade e flexibilidade; O Unix foi criado pelo laboratório Bell subsidiária

FORMATO DE UM COMANDO UNIX

Exemplos:

c) comando com opções e argumentos. (opções: a,l,s,i; argumentos: /tmp e /var/adm):

$ ls -alsi /tmp /var/adm/tmp:total 14315 2 ... 12342 2 os-data316 2 ... 24357 10 license-log/var/admtotal 124012334 2 ... 38 messages.........

Page 26: UM BREVE HISTÓRICO Unix é um sistema de grande popularidade por sua portabilidade e flexibilidade; O Unix foi criado pelo laboratório Bell subsidiária

FORMATO DE UM COMANDO UNIX

Exemplos:2. Comando uname a) Lista o nome do Kernel do Unix (opção default):

$ unameSunOs

b) Lista o nome da máquina:$ uname -ncobra

c) Lista todas informações:$ uname -aSunOs cobra 5.5.1 Generic sun4u sparc SUNW,Ultra-1

Page 27: UM BREVE HISTÓRICO Unix é um sistema de grande popularidade por sua portabilidade e flexibilidade; O Unix foi criado pelo laboratório Bell subsidiária

PROCESSOS

Ao abrir uma sessão, o usuário ganha acesso à máquina.

O sistema, executa uma Shell que envia um prompt para a tela e passa a ler comandos.

Cada programa em execução corresponde a um processo.

Um processo tem ciclo de vida que consiste em nascer (ser criado - sempre filho de outro processo, que é quem o criou), viver (executar) e morrer (terminar sua execução).

Page 28: UM BREVE HISTÓRICO Unix é um sistema de grande popularidade por sua portabilidade e flexibilidade; O Unix foi criado pelo laboratório Bell subsidiária

PROCESSOS

Como funciona a Shell: lê um comando da linha de comandos e cria um novo processo associado ao comando. Este novo processo, depende de seu funcionamento, pode ou não criar novos.

Cada sessão aberta corresponde, a pelo menos um processo ativo, associado a shell, podendo ter outros processos associados às suas aplicações ou comandos.

Todo o processo possui um número que o identifica, PID (Process IDentifier). Este número é gerado pelo sistema no momento da criação do processo, desaparecendo ao seu fim.

No Unix o processo que é a origem de todos os processos e o INIT, correspondendo ao PID 1.

Page 29: UM BREVE HISTÓRICO Unix é um sistema de grande popularidade por sua portabilidade e flexibilidade; O Unix foi criado pelo laboratório Bell subsidiária

PROCESSOS

Comando ps - É o comando usado para listar o estado dos processos gerados por uma determinada sessão ou de todos os processos, listando apenas os identificadores ou informações completas.

Nos exemplos a seguir foi usado o comando sh. Este comando corresponde à Shell, e sua função é ler comandos do teclado e executá-los. Executar este comando várias vezes é equivalente a se abrir uma sessão dentro da outra.

Page 30: UM BREVE HISTÓRICO Unix é um sistema de grande popularidade por sua portabilidade e flexibilidade; O Unix foi criado pelo laboratório Bell subsidiária

PROCESSOS

Comando ps - Exemplos:

1. Listar os processos em execução, associados ao usuário atual

$ sh$ sh$ ps

PID TTY TIME CMD657 pts/5 0:01 ksh670 pts/5 0:00 sh669 pts/5 0:00 sh

Page 31: UM BREVE HISTÓRICO Unix é um sistema de grande popularidade por sua portabilidade e flexibilidade; O Unix foi criado pelo laboratório Bell subsidiária

PROCESSOS

Comando ps - Exemplos:

2. Listar informações completas dos processos do exemplo 1.

$ ps -fUID PID PPID C STIME TTY TIME CMDaluno1 657 655 0 09:15:19 pts/5 0:01 kshaluno1 670 657 0 09:15:37 pts/5 0:00 shaluno1 669 670 0 09:15:36 pts/5 0:00 sh

Page 32: UM BREVE HISTÓRICO Unix é um sistema de grande popularidade por sua portabilidade e flexibilidade; O Unix foi criado pelo laboratório Bell subsidiária

PROCESSOS

3. Listar todas as informações, de todos os processos

$ ps -ef

UID PID PPID C STIME TTY TIME CMDroot 0 0 0 08:11:27 ? 0:00 schedroot 1 0 0 08:11:30 ? 0:00 /etc/initroot 2 0 0 08:11:30 ? 0:00 pageoutroot 238 1 0 08:12:10 ? 0:00 /sbin/vold...................................aluno1 657 655 0 09:15:19 pts/5 0:01 kshaluno1 670 657 0 09:15:37 pts/5 0:00 shaluno1 669 670 0 09:15:36 pts/5 0:00 shroot 770 670 1 09:24:28 pts/5 0:00 ps -ef

Page 33: UM BREVE HISTÓRICO Unix é um sistema de grande popularidade por sua portabilidade e flexibilidade; O Unix foi criado pelo laboratório Bell subsidiária

PROCESSOS

3. Listar todas as informações, de todos os processos

$ ps -ef

UID PID PPID C STIME TTY TIME CMD

UID - nome da sessão (identificação de usuário);PID - identificador de processo;PPID - identificador de processo pai;C - parâmetro associado à prioridade (não mais usado);STIME - hora de início do processo;TTY - nome do terminal;TIME - tempo de execução acumulado do processo;COMMAND - nome do comando que está sendo executado.

Page 34: UM BREVE HISTÓRICO Unix é um sistema de grande popularidade por sua portabilidade e flexibilidade; O Unix foi criado pelo laboratório Bell subsidiária

SINAIS

Sinais (signal, em inglês) é uma de comunicação entre processos;

É possível enviar um sinal a um processo, para alterar sua execução ou informar a ocorrência de algum evento;

Os sinais correspondem a números (1,2,3,4,...);

Que sinais são usados e o que significam, depende da implementação do programa ou aplicação;

Existe um sinal especial, o de número 9 (chamado SIGKILL), que causa o cancelamento do processo que o receber;

O comando Kill gera o envio do sinal especificado ao processo indicado.

Page 35: UM BREVE HISTÓRICO Unix é um sistema de grande popularidade por sua portabilidade e flexibilidade; O Unix foi criado pelo laboratório Bell subsidiária

SINAISO Comando kill pode ser usado por qualquer usuário, porém somente é permitido o envio de sinais a processos que tenham sido gerados pela mesma sessão de quem está enviando o sinal, no caso de superusuário é permitido o envio a qualquer processo.

Exemplo: Cancelar o processo de PID=657

$ kill -9 657

Existe um outro sinal (chamado SIGINTR), que pode ser gerado pelo teclado e causa, para a maioria dos comandos, o seu cancelamento.

Para ser gerado deve ser digitado o caractere c, estando pressionando a tecla crtl (representado por ^c)

Page 36: UM BREVE HISTÓRICO Unix é um sistema de grande popularidade por sua portabilidade e flexibilidade; O Unix foi criado pelo laboratório Bell subsidiária

COMUNICAÇÃO ENTRE USUÁRIOS

Neste item serão discutidos três comandos de comunicação entre usuários: mail, write e talk.

mail - Comando usado para ler ou enviar correio eletrônico para outros usuários ou grupo de usuários.

Use o comando mail, sem parâmetros, para ler as mensagens recebidas.

Uma vez executado, o comando lista a última mensagem recebida e envia um prompt(?), passando a aceitar comandos.

Page 37: UM BREVE HISTÓRICO Unix é um sistema de grande popularidade por sua portabilidade e flexibilidade; O Unix foi criado pelo laboratório Bell subsidiária

COMUNICAÇÃO ENTRE USUÁRIOS

mail

Comandos válidos:

d - remove mensagem corrente;

h - lista cabeçalhos das mensagens recebidas;

num - lista a mensagem de número num;

q - termina o comando.

Page 38: UM BREVE HISTÓRICO Unix é um sistema de grande popularidade por sua portabilidade e flexibilidade; O Unix foi criado pelo laboratório Bell subsidiária

COMUNICAÇÃO ENTRE USUÁRIOSExemplos:1. Ler mensagens recebidas:$ mailFrom root Wed Jun 25 09:12:04 1997Return-Path: <root>Received: by dolly. (SMI-8.6/SMI-SVR4)

id JAA00638; Wed, 25 Jun 1997 09:12:03 - 0300Date: Wed, 25 Jun 1997 09:12:03 -0300Message-Id:<199706251212.JAA00638@dolly.>Subject: Boa tardeContent- Type: textApparently-To:aluno@dollyContent-Length: 35

Isto e so para desejar boa tarde.

Page 39: UM BREVE HISTÓRICO Unix é um sistema de grande popularidade por sua portabilidade e flexibilidade; O Unix foi criado pelo laboratório Bell subsidiária

COMUNICAÇÃO ENTRE USUÁRIOSExemplos:? 2From guga@sardinha Wed Jun 25 09:11:20 1997Return-Path: <guga@sardinha>Received: from sardinha by dolly. (SMI-8.6/SMI-SVR4)

id JAA00632; Wed, 25 Jun 1997 09:11:20 -0300Date: Wed, 25 Jun 1997 09:11:20 -0300Recebido: por sardinha (5.0/SMI-SVR4)

id AA00388; Tue, 25 May 1993 09:12:03 +0300Data: Tue, 25 May 1993 09:12:03 + 0300De: guga@sardinhaMessage-Id: <9305251212.AAA00388@sardinha>Content-Type: textApparently-To: aluno1@dollyContent-Length: 21

Isto é outro teste.

Page 40: UM BREVE HISTÓRICO Unix é um sistema de grande popularidade por sua portabilidade e flexibilidade; O Unix foi criado pelo laboratório Bell subsidiária

COMUNICAÇÃO ENTRE USUÁRIOSExemplos:

? h

3 letters found in /var/mail/aluno1, 0 scheduled for deletion, 0 newly arrived

3 369 root Wed Jun 25 09:12:04 1997

> 2 514 guga@sardinha Wed Jun 25 09:11:20 1997

1 362 root Wed Jun 25 09:07:19 1997

? q

Page 41: UM BREVE HISTÓRICO Unix é um sistema de grande popularidade por sua portabilidade e flexibilidade; O Unix foi criado pelo laboratório Bell subsidiária

COMUNICAÇÃO ENTRE USUÁRIOSPara enviar mensagens para um ou mais usuários, use a seguinte sintax:

mail usuário1 usuário2

A seguir digite o corpo da mensagem, e termine digitando uma linha apenas com o caractere . (ponto), ou a seqüência de caracteres ^d (control-d).

Se desejar que apareça o assunto da mensagem no cabeçalho, escreva na primeira linha a palavra.

Subject: seguida do texto indicando o assunto.

Para enviar mensagem para usuários de oura máquina, use a sintaxe:

nome_do_usuário@nome_da_máquina

Page 42: UM BREVE HISTÓRICO Unix é um sistema de grande popularidade por sua portabilidade e flexibilidade; O Unix foi criado pelo laboratório Bell subsidiária

COMUNICAÇÃO ENTRE USUÁRIOSExemplo:

Para enviar uma mensagem para o usuário aluno2 da máquina local e guga da máquina sardinha:

$ mail aluno2 guga@sardinha

Subject: Confirmação de reuinão

A reunião está marcada para as 16hs.

Será realizada na sala 12.

.

Obs. O domínio tem que ser o mesmo para se usar o mail

Page 43: UM BREVE HISTÓRICO Unix é um sistema de grande popularidade por sua portabilidade e flexibilidade; O Unix foi criado pelo laboratório Bell subsidiária

COMUNICAÇÃO ENTRE USUÁRIOS

write - comando usado para estabelecer entre dois usuários locais.

Quando algum usuário, este recebe uma mensagem informando a origem, em seguida recebe as linhas, à medida em que são digitadas pelo remetente.

Para terminar uma conexão digitar ^d(control d).

O usuário destino pode também executar o write inverso. De modo que os dois podem se comunicar ao mesmo tempo.

Page 44: UM BREVE HISTÓRICO Unix é um sistema de grande popularidade por sua portabilidade e flexibilidade; O Unix foi criado pelo laboratório Bell subsidiária

COMUNICAÇÃO ENTRE USUÁRIOSExemplo: write

1. O usuário aluno1 deseja se comunicar com o aluno2:

aluno1:

$write aluno2

Bom dia, Vamos almoçar?

^d

Na tela do aluno2, aparece a mensagem:

$

Message from aluno1 on cobra (pts/5) [Tue May 25 10:57:45]

Bom dia. Vamos almoçar?

<EOT>

Page 45: UM BREVE HISTÓRICO Unix é um sistema de grande popularidade por sua portabilidade e flexibilidade; O Unix foi criado pelo laboratório Bell subsidiária

COMUNICAÇÃO ENTRE USUÁRIOSExemplo: write

1. Se o aluno2 desejar responder, deve usar

$write aluno1

Vamos!

^d

$

Page 46: UM BREVE HISTÓRICO Unix é um sistema de grande popularidade por sua portabilidade e flexibilidade; O Unix foi criado pelo laboratório Bell subsidiária

COMUNICAÇÃO ENTRE USUÁRIOS

talk

Comando que abre um canal de comunicação entre dois usuários. O usuário que inicia a conversa executa o comando, passando a esperar que o interlocutor receba uma mensagem do sistema, informando a solicitação de estabelecimento de conexão e execute o mesmo comando para estabelecer a conexão.

Uma vez estabelecida a conexão, os dois podem digitar ao mesmo tempo, sendo que a tela do terminal de cada um deles será dividida em duas sessões, aparecendo o que for digitado pelos dois.

Para encerrar a conversa, deve ser digitado ^d.

Este comando pode ser executado entre máquinas remotas.

Page 47: UM BREVE HISTÓRICO Unix é um sistema de grande popularidade por sua portabilidade e flexibilidade; O Unix foi criado pelo laboratório Bell subsidiária

COMUNICAÇÃO ENTRE USUÁRIOSComando talkExemplo:

1. Usuário aluno1deseja se comunicar com aluno2:

$talk aluno2

(waiting for your party to respond)

2. Na tela do usuário aluno2 aparecerá:

$

Message from Talk_Deamon@sardinha at 11:38 ...

talk: connection requested by aluno1@sardinha.

talk: respond with: talk aluno1@sardinha.

3. O usuário aluno2, para estabelecer a conexão, deve executar:

$talk aluno1@sardinha

Page 48: UM BREVE HISTÓRICO Unix é um sistema de grande popularidade por sua portabilidade e flexibilidade; O Unix foi criado pelo laboratório Bell subsidiária

COMUNICAÇÃO ENTRE USUÁRIOS

mesg

O comando permite o usuário receber ou não mensagens

Se o usuário destino com recebimento inibido, o comando indicará erro.

Exemplos:

1. Para listar o estado de recebimento de mensagens (mensagens habilitadas):

$mesg

is y

Page 49: UM BREVE HISTÓRICO Unix é um sistema de grande popularidade por sua portabilidade e flexibilidade; O Unix foi criado pelo laboratório Bell subsidiária

COMUNICAÇÃO ENTRE USUÁRIOS

mesg

Exemplos:

2. Para inibir, e depois habilitar o recebimento de mensagens:

$mesg -n

$mesg -y

$

3. Com o recebimento inibido em aluno1, write de aluno2:

$ write aluno1

permission denied

$

Page 50: UM BREVE HISTÓRICO Unix é um sistema de grande popularidade por sua portabilidade e flexibilidade; O Unix foi criado pelo laboratório Bell subsidiária

SISTEMA DE ARQUIVAMENTOArquivos são dados armazenados em um dispositivo de armazenamento como disco, CDROM ou disquete.

O sistema de arquivamento do Unix organiza os arquivos na forma de uma árvore hierárquica, permitindo que os arquivos sejam agrupados em determinadas áreas da árvore, podendo conter quantos subgrupos forem necessários.

h os ts in it.d

e tc

rm t tty

d ev

c rash d h cp

var

roo t /

Page 51: UM BREVE HISTÓRICO Unix é um sistema de grande popularidade por sua portabilidade e flexibilidade; O Unix foi criado pelo laboratório Bell subsidiária

SISTEMA DE ARQUIVAMENTOO Unix é um sistema multiusuário, em que muitos usuários estão autorizados a usá-lo.

É implementado um mecanismo de permissões de acesso a arquivos, para que um usuário, e principalmente o próprio sistema, possa se proteger contra outros usuários. O mecanismo é baseado no identificador de usuário (UID) e grupo de usuário (GID).

Todo arquivo do Unix possui um nome e um tipo. O nome pode ser qualquer um, com qualquer número de caracteres, podendo conter caracteres, maiúsculos e minúsculos (são considerados diferentes).

Em um mesmo grupo, os nomes não podem ser repetidos.

O tipo do arquivo corresponde a uma característica interna (não podendo ser repetido), que indica a espécie de dados que o arquivo contém.

Page 52: UM BREVE HISTÓRICO Unix é um sistema de grande popularidade por sua portabilidade e flexibilidade; O Unix foi criado pelo laboratório Bell subsidiária

SISTEMA DE ARQUIVAMENTO

Existem dois tipos de arquivos, mas os mais importantes são dois:

Arquivo tipo Diretório

Arquivo tipo Regular

Page 53: UM BREVE HISTÓRICO Unix é um sistema de grande popularidade por sua portabilidade e flexibilidade; O Unix foi criado pelo laboratório Bell subsidiária

SISTEMA DE ARQUIVAMENTO

Arquivo Diretório

Sua função é implementar a estrutura hierárquica da árvore de arquivamento. Corresponde aos nós intermediários da árvore.

Um arquivo do tipo diretório, ou simplesmente diretório, contém nomes de outros arquivos, de qualquer tipo, que são aqueles imediatamente abaixo na árvore hierárquica.

Page 54: UM BREVE HISTÓRICO Unix é um sistema de grande popularidade por sua portabilidade e flexibilidade; O Unix foi criado pelo laboratório Bell subsidiária

SISTEMA DE ARQUIVAMENTOArquivo Regular

É usado para armazenar informações genéricas. Para o sistema, o conteúdo e formato de um arquivo deste tipo é diferente.O conteúdo é de responsabilidade de quem o criou, por exemplo texto de um editor criado por um usuário, ou um banco de dados criado por uma aplicação.

SISTEMA DE ARQUIVAMENTO

Exemplo de arquivos Regular•Um texto de um documento;•Registros dos empregados de uma empresa;•Um arquivos de comando Shell;•Um programa a ser executado;•Um desenho ou um relatório a ser impresso;•Um arquivo de som.

Page 55: UM BREVE HISTÓRICO Unix é um sistema de grande popularidade por sua portabilidade e flexibilidade; O Unix foi criado pelo laboratório Bell subsidiária

O caminho de uma arquivo é a forma de se referenciar um arquivo na árvore de arquivamento

Contém os nomes de todos os diretórios que se deve passar para alcançar o arquivo. Cada nome é separado pelo caracter / (barra), sem espaços intermediários

CAMINHO DE ARQUIVO

Existem duas formas de se especificar o caminho de um arquivo:

• Caminho absoluto;

• Caminho relativo.

Os arquivos podem ter o mesmo nome, mas com caminhos diferentes

Page 56: UM BREVE HISTÓRICO Unix é um sistema de grande popularidade por sua portabilidade e flexibilidade; O Unix foi criado pelo laboratório Bell subsidiária

É quando se fornece o caminho do arquivo a partir da raiz da árvoreA raiz do sistema de arquivamento é única, e é indistintamente chamada de / (barra), raiz, ou root

CAMINHO ABSOLUTO

Um caminho absoluto representa apenas um arquivo da árvore

Sempre que o caminho do arquivo começar pelo caractere / (barra), será considerado absoluto

Exemplos:

/export/home/aluno1/textos/teste

/export/home/aluno1

/etc/passwd

/usr/openwin/bin/openwin

/openwin/bin/openwin

Page 57: UM BREVE HISTÓRICO Unix é um sistema de grande popularidade por sua portabilidade e flexibilidade; O Unix foi criado pelo laboratório Bell subsidiária

O caminho relativo representa a localização do arquivo a partir de um ponto da árvore, ou seja, é relativo a uma determinada posição. Esta posição é dada pelo que é chamado diretório-correnteO diretório-corrente especifica o diretório onde o usuário está posicionado.

CAMINHO RELATIVO - DIRETÓRIO-CORRENTE

Todo caminho relativo começa com um nome de arquivo imediatamente abaixo do diretório-corrente Exemplos:

teste

textos

textos/teste

export/home/aluno1

usr/openwin/bin/openwin

Page 58: UM BREVE HISTÓRICO Unix é um sistema de grande popularidade por sua portabilidade e flexibilidade; O Unix foi criado pelo laboratório Bell subsidiária

Todo usuário tem um diretório de trabalho. Este diretório representa a localização preferencial do usuário dentro da árvore de arquivamento tabém conhecido como diretório HOME.

Nesta região da árvore os usuários normalmente possuem poderes totais, podendo criar arquivos regulares ou diretórios, remover, alterar permissões liberando para outros, etc.

DIRETÓRIO DE TRABALHO

Este diretório é onde se encontram seus arquivos de trabalho.

Ao abrir sua sessão, o usuário é automaticamente posicionado neste diretório. Posteriormente, se necessário, ele pode se posicionar em outros pontos da árvore, desde que tenha permissão para tal.

Page 59: UM BREVE HISTÓRICO Unix é um sistema de grande popularidade por sua portabilidade e flexibilidade; O Unix foi criado pelo laboratório Bell subsidiária

O diretório de trabalho de um usuário é atribuído pelo Administrador ao cadastrar o usuário.

Exemplos:

/export/home/aluno1

/export/home/aluno2

DIRETÓRIO DE TRABALHO

Normalmente corresponde ao diretório com o nome da sessão, localizado no diretório /export/home

Page 60: UM BREVE HISTÓRICO Unix é um sistema de grande popularidade por sua portabilidade e flexibilidade; O Unix foi criado pelo laboratório Bell subsidiária

ls Lista nomes e informações de arquivos. É o comando básico de arquivos

1. Para listar os nomes dos arquivos contidos no diretório-corrente:

$ lsa b c d texto

COMANDOS

Exemplos

2. Para listar os arquivos de diretório:$ ls /var /export/home/aluno1/export/home/aluno1:a b c d texto

/var:adm sadm uucp saf spool

Page 61: UM BREVE HISTÓRICO Unix é um sistema de grande popularidade por sua portabilidade e flexibilidade; O Unix foi criado pelo laboratório Bell subsidiária

ls Informações geradas pelo comando ls, opção l:

COMANDOS

drwxr-xr-x 3 aluno1 curso 512 May 16 10:34 aluno1 nome

datatamanhogrup

odono

Num. de links

permissões

tipo

Page 62: UM BREVE HISTÓRICO Unix é um sistema de grande popularidade por sua portabilidade e flexibilidade; O Unix foi criado pelo laboratório Bell subsidiária

Tipo do arquivo - Contém um caractere indicando o tipo do arquivo:

- : indica arquivo tipo regular;

d : indica arquivo tipo diretório.

COMANDOS

Permissões do arquivo: Será visto em outro capítulo deste curso.

Número de links do arquivo: Será visto em outro capítulo deste curso.Dono e Grupo: Identificador de usuário e de grupo do processo que criou o arquivo.

Tamanho do arquivo: Tamanho em bytes do arquivo.

Data: Data e hora da última modificação do arquivo.

Nome: Nome do arquivo - relativo ao absoluto, dependendo de como foi fornecido o nome no argumento do comando

Page 63: UM BREVE HISTÓRICO Unix é um sistema de grande popularidade por sua portabilidade e flexibilidade; O Unix foi criado pelo laboratório Bell subsidiária

ls Lista nomes e informações de arquivos. É o comando básico de arquivos

3. Para listar informações sobre arquivos de um diretório (opção l, argumento, o nome):

$ ls -l /export/home/aluno1-rwxr--r-- 1 aluno1 curso 235 May 16

10:34 a-rwxr--r-- 1 aluno1 curso 425 May 16 10:34 b-rwxr--r-- 1 aluno1 curso 2134 May 16

10:34 cdrwxr-xr-x 2 aluno1 curso 512 May 16

10:34 texto

COMANDOS

Exemplos

Page 64: UM BREVE HISTÓRICO Unix é um sistema de grande popularidade por sua portabilidade e flexibilidade; O Unix foi criado pelo laboratório Bell subsidiária

pwd

Mostra o diretório-corrente, onde o processo do usuário está posicionado no momento.(print working directory)

COMANDOS

cd

Altera Mostra o diretório-corrente, onde o processo do usuário está posicionado no momento.(change directory)

Page 65: UM BREVE HISTÓRICO Unix é um sistema de grande popularidade por sua portabilidade e flexibilidade; O Unix foi criado pelo laboratório Bell subsidiária

pwd e cd

1. Listar e alterar o diretório-corrente:

$ pwd /export/home/aluno1

$ cd textos

$ pwd /export/home/aluno1/textos

$ cd /etc

$ pwd /etc

COMANDOS

Exemplos

Page 66: UM BREVE HISTÓRICO Unix é um sistema de grande popularidade por sua portabilidade e flexibilidade; O Unix foi criado pelo laboratório Bell subsidiária

pwd e cd

1. Para se posicionar novamente no diretório de trabalho, use cd sem argumentos:

$ cd

$ pwd /export/home/aluno1

COMANDOS

Exemplos

Page 67: UM BREVE HISTÓRICO Unix é um sistema de grande popularidade por sua portabilidade e flexibilidade; O Unix foi criado pelo laboratório Bell subsidiária

mkdir e rmdir

Estes comandos são usados para criar ou remover diretórios. Um diretório, para ser removido, deve estar vazio.

COMANDOS

1. Para criar três diretórios, no diretório- corrente:

$ mkdir dir1 dir2 dir3

$ ls -l “lista os arquivos e diretórios do diretório corrente”

Exemplos

2. Para remover um diretório:

$ rmdir dir2

$ ls -l “lista os arquivos e diretórios do diretório corrente”

Page 68: UM BREVE HISTÓRICO Unix é um sistema de grande popularidade por sua portabilidade e flexibilidade; O Unix foi criado pelo laboratório Bell subsidiária

mkdir e rmdir

Estes comandos são usados para criar ou remover diretórios. Um diretório, para ser removido, deve estar vazio.

COMANDOS

1. Para criar diretórios, criando também os diretórios intermediários, se estes não existirem (opção p):

$ mkdir -p dir1/dir/dir dir3/dir /export/home/aluno1/dir4/dir

$ ls -lR “lista os arquivos e diretórios recurssivamente”

Exemplos

Page 69: UM BREVE HISTÓRICO Unix é um sistema de grande popularidade por sua portabilidade e flexibilidade; O Unix foi criado pelo laboratório Bell subsidiária

Diretórios “.” e “..”

Todo diretório, mesmo vazio, possui duas entradas chamadas “.” (ponto) e “..”(ponto-ponto).

A entrada . é um ponteiro para o próprio diretório e .. (ponto-ponto) um ponteiro para o diretório-pai.

O diretório “.” representa o diretório-corrente

COMANDOS

Obs.

O default do comando ls é o ponto. Portanto, os dois comandos a seguir são equivalentes:

$ls

$ls .

Page 70: UM BREVE HISTÓRICO Unix é um sistema de grande popularidade por sua portabilidade e flexibilidade; O Unix foi criado pelo laboratório Bell subsidiária

COMANDOS

1. Para criar diretórios, criando também os diretórios intermediários, se estes não existirem (opção p):

Exemplos

Obs.

O default do comando ls é o ponto. Portanto, os dois comandos a seguir são equivalentes:

$ls

$ls .