A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

Introdução ao Unix LAGEMAR/UFF Dezembro 2001.

Apresentações semelhantes


Apresentação em tema: "Introdução ao Unix LAGEMAR/UFF Dezembro 2001."— Transcrição da apresentação:

1 Introdução ao Unix LAGEMAR/UFF Dezembro 2001

2 Conteúdo Introdução Arquivos e diretórios Manipulação de arquivos
Operações em arquivos Proteção, atalhos e localização Padrões e busca Edição Personalização Processos Armazenamento

3 Bibliografia Sato, H.K. - Comandos básicos para uso do Unix. PPPG/UFBa, 1993 Fiamingo, F.G. - Introduction to Unix. OSU, 1996 Jones, D. - Course CQU, 2000 Greenfield, L. - Linux Users Guide. LDP, 1996 Siever, E. - Linux - o guia essencial. Campus, 2000 Welsh, M. - Dominando o Linux. Ciência Moderna, 1997 Cornes, P. - Linux A-Z. Prentice-Hall, 1997

4 Aula 0 - Introdução Conceitos de sistemas operacionais
Características do Unix Login e Logout Ajuda online

5 Sistema operacional Gerenciador de recursos Máquina estendida
Processador Memória Dispositivos Entrada e saída Armazenagem Comunicações Máquina estendida Disco MEM CPU E/S Rede

6 Estrutura de um Sistema
Programas Sistema Operacional Hardware

7 Conceitos básicos Processo Arquivo
programa em execução Arquivo informações logicamente relacionadas Processos e arquivos são organizados em árvores

8 Estrutura do Unix Núcleo Chamadas do sistema Interpretador de comandos
interage com o hardware Chamadas do sistema acesso aos serviços do núcleo Interpretador de comandos interface para as chamadas do sistema Comandos programas utilitários do sistema

9 Estrutura de um Sistema
Programas Sistema Operacional Hardware

10 Estrutura do Unix Utilitários Shell System calls Kernel Hardware
Bibliotecas Aplicativos

11 Características do Unix
Multiusuário/Multitarefa Variedade de ferramentas Flexibilidade/Concisão Tudo é um arquivo Arquivos tem um lugar Processos tem vida

12 Componentes Compiladores Bibliotecas Rede TCP/IP X-Windows

13 Sabores de Unix SunOS/Solaris Sun Microsystems
Digital Unix (Tru64) Digital/Compaq AIX IBM HP-UX Hewlett Packard Irix SGI UNICOS Cray NetBSD, FreeBSD UC Berkeley / the Net Linux Linus Torvalds / the Net

14 Histórico do Unix Criado por Ken Thompson e Dennis Ritchie dos Lab. Bell (PDP-7) Transportado para um PDP-11 (memória 16 KB, disco 512 KB) Rescrito na linguagem C de Dennis Ritchie Distribuído pela AT&T para as universidades Versões para outras máquinas. 500 sistemas em uso BSD 4.1 de Berkeley Autorizada a comercialização do Unix sistemas em uso System V R4 (AT&T e Sun) Linus Torvalds anuncia Linux 0.01 para 386 na Internet Linux licenciado sob GPL USL comprado pela Novell Versão 2.0 do Linux

15 Acesso ao sistema Terminais Login Logout vt100, telnet, xterm
Nome do usuário Senha Logout exit ^D

16 Senhas Nunca use: Nunca escreva ou dê sua senha para ninguém
qualquer palavra de qualquer dicionário um nome, apelido, marca, título, slogan... informações que você carrega na carteira números ou informações associados a você exemplos publicados de senhas Nunca escreva ou dê sua senha para ninguém

17 Senhas Use: Troque sua senha com freqüência mínimo de 6 caracteres
misturas de letras, números e símbolos mistura de maiúsculas e minúsculas mistura de palavras erros de grafia senhas que você se lembre Troque sua senha com freqüência

18 Troca de senha Comando passwd Comando yppasswd (nis)
Comando nispasswd (nis+)

19 Ajuda online Comando man Comando info Manuais online (html, pdf)
Linux Documentation Project

20 Aula 1 - Arquivos e diretórios
Estrutura de diretórios Nomes e tipos de arquivos Caminhos Comandos pwd, cd, ls, mkdir, rmdir

21 Estrutura de Diretórios
Arquivos são organizados em diretórios Diretórios são arquivos com informações sobre outros arquivos Diretórios são organizados em árvores

22 Nomes e tipos de arquivos
O nome de um arquivo pode conter até 255 caracteres São permitidos caracteres alfanuméricos e alguns símbolos: . _ # % = Não devem ser usados os caracteres especiais definidos pelo interpretador de comandos

23 Caracteres especiais ; separador de comandos + execução em background
( ) agrupamento de comandos | concatenador de comandos > < símbolos de redirecionamento ” \ ’ enfatiza os outros caracteres ` substituição de comandos separadores de palavras: novalinha espaço tab metacaracteres de caminhos: * ? [ ] ~ + !

24 Caminhos Absolutos - referem-se à raiz dos diretórios:
/home/paulo/teste.f /etc/passwd /var/spool/mail Relativos - referem-se ao diretório corrente: dados/abc.xyz

25 Comandos pwd mostra o diretório corrente cd muda o diretório corrente
ls lista um diretório (opções l, a, r) mkdir cria um diretório rmdir remove um diretório

26 Arquivos ocultos Arquivos que começam por um ponto só são mostrados pelo comando ls -a . representa o diretório corrente .. representa o diretório acima

27 Aula 2 - Manipulação de arquivos
Expansão de caminhos Comandos cp, mv, rm, touch Visualização: cat, more, less, tail, head

28 Expansão de caminhos O Unix utiliza metacaracteres para abreviar os caminhos * qualquer número de caracteres ? um caracter [abc...] um dos caracteres na lista [a-z] um dos caracteres na faixa [^abc...] qualquer caracteres fora da lista (ou faixa) Os metacaracteres são traduzidos direta-mente pelo interpretador de comandos

29 Exemplos de expansão $ ls temp/* motd passwd $ ls /dev/tty?
/dev/tty0 /dev/tty2 /dev/tty4 /dev/tty6 /dev/tty8 /dev/ttyl /dev/tty3 /dev/tty5 /dev/tty7 /dev/tty9 $ ls /dev/tty?[23456] /dev/ttyS2 /dev/ttyp2 /dev/ttyq2 /dev/ttyr2 /dev/ttys2 /dev/ttyS3 /dev/ttyp3 /dev/ttyq3 /dev/ttyr3 /dev/ttys3 /dev/ttyS4 /dev/ttyp4 /dev/ttyq4 /dev/ttyr4 /dev/ttys4 /dev/ttyS5 /dev/ttyp5 /dev/ttyq5 /dev/ttyr5 /dev/ttys5 /dev/ttyS6 /dev/ttyp6 /dev/ttyq6 /dev/ttyr6 /dev/ttys6

30 Ênfase Para inibir a tradução dos caracteres especiais:
\ (contrabarra): protege o caracter especial seguinte ’ (aspa): protege todos os caracteres especiais até a próxima aspa ” (aspa dupla) protege todos os caracteres especiais até a próxima aspa dupla, exceto $ e ` (crase)

31 Exemplos de ênfase $ echo 'Aspas simples "protegem" aspas duplas’
$ echo "Isto nao e' \"especial\"?" Isto nao e' "especial"?

32 Copiando arquivos - cp cp copia arquivos ou diretórios
Formato: cp origem destino Se o destino for um diretório, copia um ou mais arquivos para o diretório Opções: -i pede confirmação -p preserva a data e hora -R copia recursivamente

33 Copiando arquivos - exemplos
cp file1.f file2.f *.c /home/joao/geral cp ../fonte . cp fonte .. cp fonte ./abc cp fonte /home/maria cp /home/joao/abc/* /home/maria/xyz cp -R /home/joao/abc/* /home/maria/xyz

34 Movendo arquivos - mv mv move ou renomeia arquivos ou diretórios
Formato: mv origens destino Se o destino for um diretório, copia para o diretório Opções: -i pede confirmação -f força a movimentação, mesmo que o arquivo exista

35 Movendo arquivos - exemplos
mv abc xyz.a mv book manual mv manual/* .

36 Apagando arquivos - rm rm apaga arquivos Formato: rm arquivos Opções:
-i pede confirmação -f força a remoção -r remove recursivamente - PERIGO

37 Apagando arquivos - exemplos
rm abc rm abc def rm -i *.o rm -r testes rm -r * .o  espaço em branco fatal

38 Alterando a data - touch
touch atualiza a data (e hora) de acessso ou modificação de arquivos Formato: touch arquivos Opções -a altera apenas a data de acesso -m altera apenas a data de modificação data altera para data especificada Se o arquivo não existir, é criado com tamanho 0 bytes

39 Visualização: cat cat mostra o conteúdo de arquivos
Formato: cat arquivos Pode ser usado para concatenar arquivos, como veremos adiante

40 Visualização: more e less
more mostra, por partes, o conteúdo de arquivos Formato: more arquivos Comandos: return para avançar uma linha espaço para avançar uma página b para voltar uma página h para ajuda de outros comandos Versão moderna: less

41 Visualização: tail e head
head mostra as 10 primeira linhas de um arquivo tail mostra as 10 últimas linhas de um arquivo Opção -n mostra n linhas tail -r mostra de trás para a frente tail -f mostra continuamente

42 Resumo da visualização
more tail head cat

43 Aula 3 - Proteção e atalhos
Atributos de arquivos Comandos chmod, umask, chown e chgrp Links Comando ln

44 Proteção no Unix Baseado no UID e GID Relações Acessos usuário (u)
grupo (g) outros (o) Acessos leitura (r) gravação (w) execução (x)

45 Atributos de arquivos n UID GID tam. data nome outros grupo usuário
$ ls -l drwxr-x--- 2 sato staff 512 Aug 16 14:17 biblio -rw-r--r-- 1 sato staff 13 Aug 27 15:50 carta -rwxr-xr-x 1 sato staff 3339 Sep 03 13:35 prog1 n UID GID tam. data nome outros grupo usuário tipo

46 Alterando a proteção - chmod
chmod altera a proteção dos arquivos Formato: chmod proteção arquivos Opção -R recursivo Modos mneumônico numérico

47 chmod - funcionamento Modo mneumônico Quem Operação Acesso
u usuário + acrescenta r leitura g grupo - retira w gravação o outros = atribui x execução a todos (all) Modo numérico r = 4 w = 2 x = 1

48 chmod - exemplos chmod +x abc chmod uo-w abc chmod a=rx abc
chmod 640 abc chmod 5 abc chmod -R a+r .

49 Acesso a arquivos e diretórios
Bit Arquivos Diretórios r ler listar w escrever alterar x executar acessar

50 Definindo a proteção - umask
umask define a proteção no momento da criação do arquivo ou diretório Formato: umask nnn onde n é o complemento da proteção Arquivos nunca são criados com o bit de execução

51 Definindo a proteção - exemplos
umask 002 cria arquivos com 664 e diretórios com 775 umask 077 cria arquivos com 600 e diretórios com 700

52 Aula 4 - Operações em arquivos
Localizando arquivos - find Redirecionamento de entrada e saída Comandos wc, sort, cut, cmp e diff

53 Localizando arquivos - find
find procura arquivos em uma árvore Formato: find origem opções Opções -name procura por nome (padrão) -print mostra o resultado (padrão) -type procura por tipo de arquivo -size procura por tamanho Existem muito mais opções (use o man)

54 find - exemplos $ find . -print ./backup ./backup/motd.bak
./backup/passwd.bak ./text ./text/motd ./text/passwd $ find

55 find - exemplos $ find . -name "*.bak" -print ./backup/motd.bak
./backup/passwd.bak $ find . -name "*.bak" -exec rm -i {} \; rm: remove ./backup/passwd.bak (yes/no)? y rm: remove ./backup/motd.bak (yes/no)? y

56 Redirecionamento de E/S
Funcionamento padrão dos comandos: Comando Saída padrão Saída de erros Entrada 1 2

57 Redirecionamento de E/S
Formas de redirecionamento: Desc. Nome Abrev. Padrão Redir 0 Entrada padrão stdin Teclado < 1 Saída padrão stdout Vídeo > 2 Saída de erros stderr Vídeo 2> O símbolo >> indica uma anexação O símbolo << indica um delimitador O símbolo < pode ser omitido na maioria dos comandos

58 Redirecionamento - exemplos
$ ls -l /usr/local/bin > lista $ ls -l /etc >> lista $ mail alfredo < arquivo $ mail alfredo << fim $ ls /bin | mail alfredo $ ls -l /var/spool 2> acesso_negado $ ls -l /var/spool 2> acesso_negado 1>&2

59 Redirecionamento - exemplos
$ find / -name passwd -print find: /var/spool/cron: Permission denied find: /var/spool/atjobs: Permission denied find: /var/spool/atspool: Permission denied /usr/bin/passwd find: /root: Permission denied /etc/passwd $ find / -name passwd -print 2> /dev/null

60 Encadeamento de comandos
É comum um programa utilizar como entrada o resultado de outro: > Comando Saída padrão Entrada Arquivo temporário <

61 Encadeamento de comandos
A saída de um comando pode ser enviada diretamente para a entrada de outro: O símbolo | representa a canalização (ou pipe) Os comandos do Unix funcionam como filtros Comando Saída padrão Entrada |

62 Encadeamento - exemplos
$ ls /bin | more $ find . -name "*.bak" -print | xargs rm rm: remove ./backup/passwd.bak (yes/no)? y rm: remove ./backup/motd.bak (yes/no)? y

63 Contando arquivos - wc wc quantifica o conteúdo de um arquivo
Formato: wc opções arquivos Opções -l conta linhas -w conta palavras -c conta caracteres (bytes)

64 Contando arquivos - exemplos
$ wc < /etc/passwd $ wc /etc/passwd $ ls /bin | wc -l 82

65 Ordenação - sort sort ordena o conteúdo de um arquivo
Formato: sort opções arquivos Pode ser combinado com uniq para eliminar linhas repetidas Opções: -n ordem numérica -r ordem reversa -t separador de campos (padrão: tab) +n salta n campos

66 Ordenação - exemplos $ wc -l * | sort -r $ sort lista | uniq -c
$ sort +2 -n -t: /etc/passwd $ sort -k3 -n -t: /etc/passwd GNU sort

67 Seleção - cut cut seleciona as colunas de um arquivo
Formato: cut opções arquivos Dois ou mais arquivos podem ser unidos em colunas pelos comandos paste e join Opções -d delimitador (padrão: tab) -f lista de campos selecionados -c lista de colunas (bytes)

68 Seleção - exemplos $ cut -d: -f1,5 /etc/passwd
$ cut -c4 arquivo | paste - arquivo

69 Comparação - cmp, diff cmp compara o conteúdo de dois arquivos
Formato: cmp arq1 arq2 Use diff para obter a lista de diferenças Opções -l lista os bytes diferentes -s só retorna o código de terminação

70 Aula 5 - Padrões e busca Reconhecimento de padrões Metacaracteres
Comando grep

71 Reconhecimento de padrões
Expressões regulares (regexp) permitem reconhecer padrões de texto As regexp são formadas por caracteres e metacaracteres interpretados pelos programas aplicativos Devem ser colocadas entre aspas para evitar a expansão pelo interpretador de comandos

72 Metacaracteres Carac. Casa com c o caracter c . qualquer caracter
* 0 ou mais ocorrências da expressão regular anterior ^ o início da linha $ o fim da linha [abc] lista de caracteres \ inibe o sentido do caracter especial seguinte

73 Regexp - exemplos mal a cadeia mal ^mal mal no início da linha
mal$ mal no fim da linha ^mal$ uma linha só com mal [Mm]al Mal ou mal m[aeiou]l a segunda letra é uma vogal m[^aeiou]l a segunda letra não é uma vogal m.l a segunda letra é qualquer caracter

74 Regexp - exemplos ^...$ qualquer linha com exatamente 3 caracteres
^\. qualquer linha que comece por um ponto ^[^.] qualquer linha que não comece por um ponto bugs* bug, bugs, bugss, etc... ”word” uma palavra entre aspas ”*word”* uma palavra com ou sem aspas

75 Regexp - exemplos [A-Z][A-Z]* uma ou mais letras maiúsculas
[A-Z].* uma letra maiúscula, seguida por zero ou mais caracteres [A-Z]* zero ou mais letras maiúsculas [^0-9A-Za-z] qualquer símbolo (exceto letra ou algarismo

76 Busca de texto - grep grep procura uma expressão regular em um ou mais arquivos Formato: grep [opções] regexp [arquivos] Opções: -i não diferencia maiúsculas ou minúsculas -v mostra as linhas que não contém a expressão -c mostra o número de linhas encontradas

77 grep - exemplos $ grep aluno1 /etc/passwd
aluno1:*:500:500::/home/aluno1:/bin/bash $ ls -l |grep Aug -rw-rw-rw- 1 pb staff Aug aliases.text -rw-rw-rw- 1 pb staff Aug aniv.htm drwxr-xr-x 2 pb staff Aug 14 15:44 c++ drwxr-xr-x 2 pb staff Aug 22 15:59 linuxbin -rw-rw-rw- 1 pb staff Aug qaviso.html -rw-r--r pb staff Aug 29 18:56 uso

78 Aula 6 - Edição Comandos tr e sed Editor vi

79 Tradução de caracteres - tr
tr traduz um conjunto de caracteres em outro Formato: tr cadeia1 [cadeia2] Opções: -c traduz pelos caracteres que não estão na cadeia1 -d apaga os caracteres definidos na cadeia1 -s elimina os caracteres múltiplos

80 tr - exemplos $ tr a z < /etc/passwd
$ tr ’[A-Z]’ ’[a-z]’ < /etc/passwd $ tr -d ’ ’ < /etc/passwd

81 Edição de Arquivos - sed
sed edita um ou mais arquivos sem intervenção do usuário Formato: sed [opções] [arquivos] Opções: -e ’instruções’ aplica as instruções aos arquivos -f arquivo aplica as instruções do arquivo -n suprime a saída normal

82 Instruções sed As instruções tem a forma geral Endereços:
[endereço1][,endereço2] comando [argumentos] Endereços: n a linha n . a linha corrente $ a última linha do arquivo , o mesmo que 1,$ ; o mesmo que .,$ /padrão/ qualquer linha com o padrão

83 Comandos sed d apagar linhas p imprime linhas
s substitui um padrão por uma cadeia n primeiras ocorrências na linha (padrão: n=1) g todas as ocorrências p mostra as linhas com substituições w escreve as linhas com substituições w escreve as linhas em um arquivo y traduz caracteres

84 sed - exemplos 1,$s/antes/depois/g /George/s/W// 4d3 d 1,10w/tmp/hello

85 Editor vi Disponível em todos os UNIX Péssima interface com o usuário
Comandos são letras Modos de operação Edição Inserção Comando

86 Editor vi - Modo de edição
h,j,k,l esquerda, direita, cima, baixo 0. $ início e fim da linha x apaga caracter r, R substitui caracter ou texto dd apaga linha yy copia linha p, P insere texto apagado J junta duas linhas ZZ salva e sai um número antes do comando indica repetição

87 Editor vi - Modo de inserção
a, A insere depois do cursor, no fim da linha i, I insere antes do cursor, no início da linha o, O abre uma linha abaixo, acima do cursor BS apaga o caracter anterior ESC sai do modo de inserção

88 Editor vi - Modo comando
/ procura um padrão ! executa um comando do UNIX : comandos de editor (aceita comandos sed) w grava em um arquivo q abandona a edição x o mesmo que wq ou ZZ r lê de um arquivo n edita próximo arquivo ! força a execução do comando

89 Aula 7 - Personalização Perfis Variáveis de ambiente Aliases
Histórico de comandos Outros editores (emacs, pico, ...)

90 Perfis Arquivos com comandos do UNIX Executados logo após o login
Configuram o ambiente de um usuário Ocultos no diretório de login do usuário Dependem do tipo de login e shell Exemplos: .profile, .login, .bashrc, .xsession

91 Variáveis de ambiente Armazenam informações sobre: Escopo: caminhos
parâmetros de programas ou do sistema Escopo: locais ao interpretador de comando globais para todas as cópias do shell

92 Variáveis de ambiente - exemplos
Exemplos de variáveis do sistema: PATH caminhos onde buscar os programas MANPATH caminhos das páginas de manuais HOME diretório de login PWD diretório atual PS1 texto do prompt TERM tipo do terminal SHELL interpretador de comandos Exemplos de variáveis de programas: GS_LIB bibliotecas do Ghostscript CWPROOT diretório raiz do Seismic Unix

93 Variáveis de ambiente - uso
Referência: adicionar $ ao início do nome Inicialização: arquivos de perfil do usuário ou do sistema Comandos: echo $var mostra o valor de var set exibe todas as variáveis ativas

94 Variáveis de ambiente - atribuição
Bourne shell e assemelhados: MANPATH=/usr/man:/usr/local/man PATH=$PATH:/usr/local/bin export PATH C shell set manpath=/usr/man:/usr/local/man setenv path=($path /usr/local/bin)

95 Aliases Aliases são sinônimos para comandos
Formato: alias nome=comando Outros comandos: alias mostra todos os sinônimos unalias elimina um sinônimo

96 Aliases - configuração
Arquivos de configuração: .cshrc C shell .kshrc Korn shell .bashrc Bourne Again shell Executados a cada nova shell Devem ser definidos na variável ENV nos casos ksh e bash

97 Histórico de comandos Os comandos utilizados são guardados em um arquivo histórico Utilizaçao do arquivo: Csh comandos ! e fc Ksh comandos do vi ou emacs Bash setas do teclado O tamanho do histórico é determinado pelo usuário

98 O comando fc Formato: fc [opção] [comando]
O comando é um nome ou número Opções: -e edita o comando (padrão: anterior) -l lista os comandos anteriores Alias r reexecuta um comando equivale a fc -e -

99 O editor emacs Poderoso (= complicado) Domínio público
Disponível em muitos ambientes Multi-janela Multi-função (mail, desenvolvimento) Comandos são letras precedidas de Ctrl (C) ou Esc (M) Usado pela shell Korn

100 emacs - comandos essenciais
C-h ajuda online (inclui tutorial) C-x C-s salva arquivo C-x C-c sai do editor C-x C-u desfaz a última edição C-x i inclui arquivo C-g aborta a operação corrente C-s localiza caracteres C-d elimina caracter sob o cursor

101 Aula 8 - Processos Comando ps e top Subprocessos
Comandos crtl-Z, &, jobs, fg, bg, kill e at

102 Aula 9 - Armazenamento Comandos mount e umount
Uso do espaço em disco: df e du Comandos tar, compress e zip Discos removíveis e fitas Comandos dd e cpio


Carregar ppt "Introdução ao Unix LAGEMAR/UFF Dezembro 2001."

Apresentações semelhantes


Anúncios Google