Carregar apresentação
A apresentação está carregando. Por favor, espere
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
Apresentações semelhantes
© 2024 SlidePlayer.com.br Inc.
All rights reserved.