700 likes | 842 Views
UNIX BÁSICO. UNIX BÁSICO. 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;
E N D
UNIX BÁSICO 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.
UNIX BÁSICO 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
UNIX BÁSICO 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.
APLICAÇÕES COMANDOS USUÁRIOS SHELL NÚCLEO HARDWARE UNIX BÁSICO ARQUITETURA DO SISTEMA UNIX • Kernel/Núcleo • Caracterí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. • Kernel/Núcleo • Função: • Organizar processos; • Gerenciar memória; • Gerenciar armazenamento • em disco; • Supervisiona a transferência • de dados dos meios de • armazenamento.
APLICAÇÕES COMANDOS USUÁRIOS SHELL NÚCLEO HARDWARE UNIX BÁSICO ARQUITETURA DO SISTEMA UNIX • Shell • Caracterí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.
UNIX BÁSICO SESSÕES DO UNIX • Loggin 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.
UNIX BÁSICO 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..
UNIX BÁSICO SESSÕES DO UNIX • Loggin off • O comando exit fecha a sessão.
UNIX BÁSICO 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.
UNIX BÁSICO ALGUNS COMANDOS passwd - Troca a senha do usuário. Um usuário só pode alterar sua senha,
UNIX BÁSICO ALGUNS COMANDOS who am i - Lista o nome do usuário.
UNIX BÁSICO 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.
UNIX BÁSICO ALGUNS COMANDOS date - Lista a data e hora do sistema. O superusuário pode executar o programa para alterar a data corrente.
UNIX BÁSICO ALGUNS COMANDOS tty - Exibe o nome do terminal do usuário.
UNIX BÁSICO ALGUNS COMANDOS man - Exibe um manual sobre o comando. Deve ser utilizado para se conhecer a sintaxe do comando desejado.
UNIX BÁSICO 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.
UNIX BÁSICO 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 GID aluno1 5001 curso 3333 aluno2 5002 curso 3333 carlos 1000 vendas 230 jose 2134 vendas 230 pedro 5879 suporte 534 paulo 3020 suporte 534
UNIX BÁSICO USUÁRIOS UNIX Comando id
UNIX BÁSICO 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)
UNIX BÁSICO 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.
UNIX BÁSICO 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.
UNIX BÁSICO FORMATO DE UM COMANDO UNIX • 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
SUN BÁSICO INTRODUÇÃO AO SOLARIS 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
SUN BÁSICO INTRODUÇÃO AO SOLARIS 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 14 315 2 ... 12342 2 os-data 316 2 ... 24357 10 license-log /var/adm total 1240 12334 2 ... 38 messages .........
SUN BÁSICO INTRODUÇÃO AO SOLARIS FORMATO DE UM COMANDO UNIX Exemplos: 2. Comando uname a) Lista o nome do Kernel do Unix (opção default): $ uname SunOs b) Lista o nome da máquina: $ uname -n cobra c) Lista todas informações: $ uname -a SunOs cobra 5.5.1 Generic sun4u sparc SUNW,Ultra-1
SUN BÁSICO INTRODUÇÃO AO SOLARIS 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).
SUN BÁSICO INTRODUÇÃO AO SOLARIS 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.
SUN BÁSICO INTRODUÇÃO AO SOLARIS 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.
SUN BÁSICO INTRODUÇÃO AO SOLARIS PROCESSOS Comando ps - Exemplos: 1. Listar os processos em execução, associados ao usuário atual $ sh $ sh $ ps PID TTY TIME CMD 657 pts/5 0:01 ksh 670 pts/5 0:00 sh 669 pts/5 0:00 sh
SUN BÁSICO INTRODUÇÃO AO SOLARIS PROCESSOS Comando ps - Exemplos: 2. Listar informações completas dos processos do exemplo 1. $ ps -f UID PID PPID C STIME TTY TIME CMD aluno1 657 655 0 09:15:19 pts/5 0:01 ksh aluno1 670 657 0 09:15:37 pts/5 0:00 sh aluno1 669 670 0 09:15:36 pts/5 0:00 sh
SUN BÁSICO INTRODUÇÃO AO SOLARIS PROCESSOS 3. Listar todas as informações, de todos os processos $ ps -ef UID PID PPID C STIME TTY TIME CMD root 0 0 0 08:11:27 ? 0:00 sched root 1 0 0 08:11:30 ? 0:00 /etc/init root 2 0 0 08:11:30 ? 0:00 pageout root 238 1 0 08:12:10 ? 0:00 /sbin/vold ................................... aluno1 657 655 0 09:15:19 pts/5 0:01 ksh aluno1 670 657 0 09:15:37 pts/5 0:00 sh aluno1 669 670 0 09:15:36 pts/5 0:00 sh root 770 670 1 09:24:28 pts/5 0:00 ps -ef
SUN BÁSICO INTRODUÇÃO AO SOLARIS 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.
SUN BÁSICO INTRODUÇÃO AO SOLARIS 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.
SUN BÁSICO INTRODUÇÃO AO SOLARIS SINAIS O 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)
SUN BÁSICO INTRODUÇÃO AO SOLARIS 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.
SUN BÁSICO INTRODUÇÃO AO SOLARIS 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.
SUN BÁSICO INTRODUÇÃO AO SOLARIS COMUNICAÇÃO ENTRE USUÁRIOS Exemplos: 1. Ler mensagens recebidas: $ mail From root Wed Jun 25 09:12:04 1997 Return-Path: <root> Received: by dolly. (SMI-8.6/SMI-SVR4) id JAA00638; Wed, 25 Jun 1997 09:12:03 - 0300 Date: Wed, 25 Jun 1997 09:12:03 -0300 Message-Id:<199706251212.JAA00638@dolly.> Subject: Boa tarde Content- Type: text Apparently-To:aluno@dolly Content-Length: 35 Isto e so para desejar boa tarde.
SUN BÁSICO INTRODUÇÃO AO SOLARIS COMUNICAÇÃO ENTRE USUÁRIOS Exemplos: ? 2 From guga@sardinha Wed Jun 25 09:11:20 1997 Return-Path: <guga@sardinha> Received: from sardinha by dolly. (SMI-8.6/SMI-SVR4) id JAA00632; Wed, 25 Jun 1997 09:11:20 -0300 Date: Wed, 25 Jun 1997 09:11:20 -0300 Recebido: por sardinha (5.0/SMI-SVR4) id AA00388; Tue, 25 May 1993 09:12:03 +0300 Data: Tue, 25 May 1993 09:12:03 + 0300 De: guga@sardinha Message-Id: <9305251212.AAA00388@sardinha> Content-Type: text Apparently-To: aluno1@dolly Content-Length: 21 Isto é outro teste.
SUN BÁSICO INTRODUÇÃO AO SOLARIS COMUNICAÇÃO ENTRE USUÁRIOS Exemplos: ? 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
SUN BÁSICO INTRODUÇÃO AO SOLARIS COMUNICAÇÃO ENTRE USUÁRIOS Para 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
SUN BÁSICO INTRODUÇÃO AO SOLARIS COMUNICAÇÃO ENTRE USUÁRIOS Exemplo: 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
SUN BÁSICO INTRODUÇÃO AO SOLARIS 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.
SUN BÁSICO INTRODUÇÃO AO SOLARIS COMUNICAÇÃO ENTRE USUÁRIOS Exemplo: 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>
SUN BÁSICO INTRODUÇÃO AO SOLARIS COMUNICAÇÃO ENTRE USUÁRIOS Exemplo: write 1. Se o aluno2 desejar responder, deve usar $write aluno1 Vamos! ^d $
SUN BÁSICO INTRODUÇÃO AO SOLARIS 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.
SUN BÁSICO INTRODUÇÃO AO SOLARIS COMUNICAÇÃO ENTRE USUÁRIOS Comando talk Exemplo: 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
SUN BÁSICO INTRODUÇÃO AO SOLARIS 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
SUN BÁSICO INTRODUÇÃO AO SOLARIS 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 $
SUN BÁSICO INTRODUÇÃO AO SOLARIS SISTEMA DE ARQUIVAMENTO Arquivos 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.