Aula 11 semana

518 views

Published on

Published in: Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
518
On SlideShare
0
From Embeds
0
Number of Embeds
93
Actions
Shares
0
Downloads
20
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Aula 11 semana

  1. 1. Administração de Redes Jorge Ávila Linux/Servidores Linux
  2. 2. Exercicio Crie dos diretórios direrotio1 e diretorio2 Dentro do diretorio1 crie dois arquivos arquivo1 e arquivo2 Copie o diretorio1 para dentro do diretorio2 Exclua o diretorio2
  3. 3. Operações avançadas find  grep  head  tail  Redirecionamento de E/S  Pipe  Criação de links  Empacotamento, compactação e descompactação de arquivos
  4. 4. Operações Avançadas O comando “find”  O comando find pode ser utilizado para pesquisar arquivos pelo nome, data de criação ou modificação, proprietário, tamanho do arquivo e até o tipo do arquivo  A estrutura básica do comando $ find [diretório inicial] [parâmetros] [ações] Vejamos o que significam estes campos...
  5. 5. Operações Avançadas $ find [diretório inicial] [parâmetros] [ações] Diretório inicial – especifica o diretório onde a pesquisa será iniciada  Os parâmetros – critérios da busca  As ações – especifica que ações serão executadas nos arquivos encontrados na busca
  6. 6. Operações Avançadas Exemplos: $ find / -name passwd $ find /home/user -name arq* $find /etc –name ‘mo*’  $ find /etc -size +1M
  7. 7. Operações Avançadas Comando “grep” Comando Grep é usado para verificar o conteúdo de um ou mais arquivos na tentativa de encontrar a ocorrência de um padrão de texto específico dentro dos arquivos. Em geral, o padrão para o comando é: $ grep [opções] <texto para pesquisa> <arquivos>
  8. 8. Operações Avançadas Comando “grep” Exemplos: grep <seu usuário> /etc/passwd cat /etc/passwd | grep <seu usuário>
  9. 9. Operações Avançadas Parâmetros importantes: -l –mostra o nome dos arquivos que contêm o texto de busca -i – não diferencia letras maiúsculas e minúsculas para o termo pesquisado
  10. 10. Operações Avançadas Comando “head” Exibe as primeiras linhas de um arquivo Por padrão, exibe as primeiras 10 linhas Para especificar a quantidade de linhas, utilize o parâmetro –n <número>  Ex: $ head –n 5 /etc/passwd
  11. 11. Operações Avançadas Se temos um comando para ver o início do arquivo??? O comando “tail” é utilizado para visualizar o final do arquivo  Assim como no comando head, utilize o parâmetro –n <número> para exibir a quantidade de linhas desejadas O tail tem um parâmetro especial para que possamos visualizar o arquivo enquanto o mesmo é alterado.
  12. 12. Operações Avançadas Exemplo: Conecte-se a dois terminais (ALT+F1 e ALT+F2)  No primeiro digite o comando  $ echo texto >> teste1.txt  No segundo terminal, digite o comando  $ tail –f teste1.txt  No primeiro, execute  $ echo texto >> teste1.txt  Observe o que aconteceu no segundo terminal
  13. 13. Operações Avançadas Dutos ou pipes ( | ) Utilizado como conexão de utilitários. É uma maneira de redirecionar as entradas e saídas, de modo que a saída de um comando torna-se a entrada do comando seguinte. Pode-se usar vários dutos em uma mesma linha de comando, de maneira que é possível combinar tantos comandos quantos forem necessários.
  14. 14. Operações Avançadas Dutos ou pipes ( | ) Exemplos  $ cat /etc/passwd | grep <seu usuario>  ls /etc | more  cat /etc/passwd | sort
  15. 15. Operações Avançadas Empacotamento, compactação e descompactação de arquivos O programa “tar” é utilizado para arquivamento utilizado para agrupar e extrair arquivos de um tarfile;  Pode ser considerado o comando mais utilizado para realizar backups no sistema Linux (Tape ARchives);  Possui uma série de parâmetros para a realização de suas funções.
  16. 16. Operações Avançadas O comando “tar” – agrupando arquivos $ tar –cvf backupEtc.tar /etc
  17. 17. Operações Avançadas O comando “tar” – agrupando arquivos Observe que o arquivo backupEtc.tar foi criado. Ele contêm todos os arquivos e subdiretórios do diretório /etc. Uma forma fácil de visualizar o conteúdo de um arquivo tar é utilizando o comando “less” $ less backupEtc.tar
  18. 18. Operações Avançadas O comando “tar” – extraindo arquivos $ tar –xvf backupEtc.tar
  19. 19. Operações Avançadas O comando “tar” – extraindo arquivos Observe que um diretório “etc” foi criado no diretório atual. Caso você queira extrair o conteúdo de um tarfile em um outro local, basta passar o “–C <destino>” como parâmetro: $ tar –xvf backupEtc.tar –C /tmp
  20. 20. Operações Avançadas Mas o que os parâmetros utilizados até agora querem dizer: -c : criar um arquivo -v : lista detalhadamente os arquivos processados -f : especifica o arquivo ou dispositivo a ser utilizado -x : extrai arquivos de um pacote
  21. 21. Operações Avançadas Observe que, apesar de agrupados, os arquivos de um tarfile não são compactados. Para fazer a compactação, é necessário a utilização de um parâmetro adicional: -z : compacta utilizando o gzip Exemplo:  $ tar –zcvf backupEtc.tar.gz /etc
  22. 22. Exercício 1 Crie um tarfile do diretório /etc – com e sem compactação e compare o tamanho dos dois arquivos gerados. Crie um diretório temporário e descompacte o arquivo compactado neste diretório. Lembre-se do parâmetro “– C”.
  23. 23. Exercício 2 Crie um diretório para armazenar o backup compactado do arquivo /home/aluno Após isso descompacte esse mesmo diretório e leia o mesmo com os comandos que você conhece
  24. 24. Exercício 3 Crie dois diretório sendo que um deles serve para armazenar o backup compactado do arquivo /home Após isso descompacte dentro do dentro do segundo diretorio
  25. 25. Editor de texto VIM O vi é sigla de “Visual Interface” Quando ao vi foi criado (começo da década de 80), os textos digitados não podiam ser vistos! Em 1992 foi criado o vim (vi imitator), um clone do vi, porém com muitas outras funcionalidades Após um tempo, o vim passou a ser chamado de vi improved (vi melhorado) Atualmente, é um dos editores mais utilizados no mundo Unix
  26. 26. Editor de texto VIM O vim é um editor de textos extremamente poderoso;  Ele pode abrir vários arquivos ao mesmo tempo;  Possui sistema de autocorreção;  Recursos de seleção visual, macros, expressões regulares, etc...  Dica para quem gostar do vim: ele não é exclusivo da plataforma Unix. Funciona nas plataformas MacOS, Linux, Windows.
  27. 27. Editor de texto VIM Operações básicas do vim  $ vim -> abre o vim vazio, sem nenhum arquivo;  $ vim <arquivo> –> abre o arquivo para edição  $ vim <arquivo> + -> abre o arquivo com o cursos no final do mesmo  $ vim <arquivo> +10 -> abre o arquivo com o cursos na linha 10  $ vim <arquivo> +/iso9660 -> abre o arquivo com o cursos na primeira ocorrência da palavra iso9660
  28. 28. Editor de texto VIM Operações básicas do vim  Ao iniciar o vim executa o modo de comando  Para iniciar o modo de edição pressione “i” no seu teclado;  Desta forma o vim entra em modo de inserção (observe a marcação -- INSERT -- no rodapé).
  29. 29. Editor de texto VIM Comandos para salvar o arquivo :w => Salva o arquivo que está sendo editado no momento. :wq => Salva e sai. x => Idem. :w! => Salva forçado. :wq! => Salva e sai forçado.
  30. 30. Editor de texto VIM Modos edição: “i” - entra em modo de inserção Tecla “ESC” sai do modo de inserção e retorna ao modo de comando Comandos para sair sem salvar  Caso você não queira salvar as alterações no arquivo, utilize: q! => sai sem salvar.
  31. 31. Editor de texto VIM Copiando e colando textos  Posicione o cursor na linha a ser copiada;  Alterne para o modo de comando (ESC);  Pressione a tecla “y” duas vezes  Posicione o cursor onde deseja colar a linha copiada  Pressione a tecla “p”  Cole quantas vezes for necessário digitando a letra “p”
  32. 32. Editor de texto VIM Deletando linhas inteiras  Posicione o cursor na linha a ser removida  Entre em modo de comando  Pressione a tecla “d” duas vezes
  33. 33. Editor de texto VIM Exercício  Crie um novo arquivo no vim com o seguinte comando $ vim teste1 teste2  Digite um texto em teste1 Copie esse texto para texte2
  34. 34. Editor de texto VIM Vim: Importando o resultado de comandos do sistema O editor vim pode importar arquivos e tambem o resultado de comandos do sistema. Para importar um arquivo: :r /etc/passwd Para importar o resultado de um comando: :r ! find /home -user grw O comando acima ira procurar por arquivos pertencentes ao sera inserido diretamente
  35. 35. Editor de texto VIM Exemplos de operações avançadas  Pesquisa de conteúdo no arquivo com a /  Abrindo múltiplos arquivos com o comando split Mudando de arquivos com o comando: :bn  Carregando o conteúdo de outros arquivos no arquivo atual com o comando (:r)
  36. 36. Editor de texto VIM Exercício  Crie um novo arquivo com o comando vim com o seguinte conteúdo:  Teste do editor de textos vim.  Duplique esta linha 10x  Utilizando a substituição automática, substitua a palavra Teste por TESTE das linhas 5 a 10  Salve o arquivo  Utilize o comando grep para buscar a palavra teste tanto maiúsculas quanto minúsculas
  37. 37. Editor de texto VIM Para saber mais sobre o vim  man vim  http://www.infowester.com/linuxvi.php
  38. 38. Gerenciamento de Contas Gerenciamento de Usuários, Grupos e Permissões Trataremos nesta parte de comandos para gerenciamento de contas de usuários, grupos e permissões de acesso à arquivos e diretórios do GNU/Linux
  39. 39. Gerenciamento de Contas Comando: adduser  Adiciona um usuário ao sistema  Por padrão, seu diretório será /home/<nome_do_usuario>  A identificação do usuário (UID) escolhida será a primeira disponível no sistema especificada de acordo com a faixa de UIDS de usuários permitidas no arquivo de configuração /etc/adduser.conf. Este é o arquivo que contém os padrões para a criação de novos usuários no sistema.
  40. 40. Gerenciamento de Contas Comando: adduser  Principais parâmetros  -disable-passwd: Não executa o programa passwd para escolher a senha e somente permite o uso da conta após o usuário escolher uma senha.  --force-badname: Desativa a checagem de senhas ruins durante a adição do novo usuário. Por padrão o adduser checa se a senha pode ser facilmente adivinhada.  --group: Cria um novo grupo ao invés de um novo usuário. A criação de grupos também pode ser feita pelo comando addgroup. -uid [num]: Cria um novo usuário com a identificação
  41. 41. Gerenciamento de Contas e Permissões Comando: adduser  Principais parâmetros  -gid [num]: Faz com que o usuário seja parte do grupo [gid] ao invés de pertencer a um novo grupo que será criado com seu nome. Isto é útil caso deseje permitir que grupos de usuários possam ter acesso a arquivos comuns. Caso estiver criando um novo grupo com adduser, a identificação do novo grupo será [num].
  42. 42. Gerenciamento de Contas e Permissões --home [dir]: Usa o diretório [dir] para a criação do diretório home do usuário ao invés de usar o especificado no arquivo de configuração /etc/adduser.conf.  --ingroup [nome]: Quando adicionar um novo usuário no sistema, coloca o usuário no grupo [nome] ao invés de criar um novo grupo.  --quiet: Não mostra mensagens durante a operação.  --system: Cria um usuário de sistema ao invés de um usuário normal.  --shell: Interpretador de comandos do usuário
  43. 43. Gerenciamento de Contas e Permissões Comando: adduser Exemplos: # adduser jorge.avila --force-badname # adduser luiz  Após a execução dos comandos, observe os arquivos /etc/passwd e /etc/group  Experimente alterar o shell do usuário luiz para /bin/false no arquivo /etc/passwd e tente realizar um logon com esta conta. Dica – utilize o editor vim
  44. 44. Gerenciamento de Contas e Permissões Comando: addgroup  Adiciona um novo grupo de usuários ao sistema  Exemplo:  # addgroup financeiro  Observe o arquivo de grupos (/etc/group) e veja qual foi o ID do grupo associado ao usuário  Adicionando um usuário existente a um grupo:  # adduser <usuario> --in-group financeiro
  45. 45. Gerenciamento de Contas e Permissões Comando usermod  Modifica características de contas de usuários  Parâmetros  -c <comentário> : adiciona um novo valor ao campo comentário do passwd do usuário -d <home_dir>: o novo diretório home do usuário (com o –m, o conteúdo do diretório atual é movido para o novo) -e <expire-date>: data para expiração da conta (YYYY- MMDD) -G: lista suplementar de grupos do usuário – separados por vírgula  -L: bloqueia a conta do usuário -U: desbloqueia a conta do usuário
  46. 46. Gerenciamento de Contas Exercício 1  Crie uma nova conta de usuário no sistema com o nome security.team Crie um novo grupo chamado sec  Com o comando usermod, altere o grupo do usuário security.team para grupo sec Configure uma data de expiração desta conta
  47. 47. Gerenciamento de Contas e Permissões Comando: passwd  Muda a senha do usuário ou grupo. Um usuário somente pode alterar a senha de sua conta, mas o superusuário (root) pode alterar a senha de qualquer conta de usuário, inclusive a data de validade da conta, etc. Os donos de grupos também podem alterar a senha do grupo com este comando.  Dica de Segurança: Procure sempre combinar letras maiúsculas, minúsculas, e números ao escolher suas senhas. Não é recomendado escolher palavras normais como sua senha pois podem ser vulneráveis a ataques de dicionários cracker.
  48. 48. Gerenciamento de Contas e Permissões Comando userdel  Utilizado para exclusão de usuários do sistema  Caso você queira excluir os arquivos do diretório home do usuário, especifique o parâmetro “–r”
  49. 49. Gerenciamento de Contas e Permissões Exercício  Crie dois usuários para teste: usuario1 e usuario2  Exclua o usuario1 sem remover o diretório home  Exclua o usuario2 excluindo seu diretório home  Verifique o resultado listando o diretório /home
  50. 50. Gerenciamento de Contas Comando groupdel  Utilizado para exclusão de grupos do sistema  Exemplo de utilização  # groupdel <nome_do_grupo>
  51. 51. Gerenciamento de Contas Controle de permissões  O controle de acesso protege o sistema de arquivos do Linux do acesso indevido de pessoas ou sistemas (ex: códigos maliciosos)  Esta proteção torna o sistema mais seguro e confiável, evitando a ocorrência de erros por acidente ou até mesmo por usuários ou programas mal intencionados.
  52. 52. Gerenciamento de Contas Dono  É o usuário que criou o arquivo ou diretório  A identificação do dono do arquivo é também chamada de user id (UID)  A identificação do usuário e grupo de um arquivo estão, respectivamente, nos arquivos /etc/passwd e /etc/group  Listando o UID do dono de um arquivo  $ ls -n
  53. 53. Gerenciamento de Contas Grupo  Para permitir que vários usuários diferentes tivessem acesso a um mesmo arquivo foi criado o recurso do grupo;  Cada usuário pode fazer parte de um ou mais grupos;  A identificação do grupo é chamada GID  O mesmo parâmetro (-n) no comando ls mostra o GID do arquivo
  54. 54. Gerenciamento de Contas Outros usuários  Categoria de usuários que não são donos ou não pertencem ao grupo do arquivo.
  55. 55. Gerenciamento de Contas Cada um destas categorias possuem três tipos básicos de permissão de acesso  Permissão para leitura do arquivo. No caso de diretórios, permite a listagem de seu conteúdo;  Permissão para gravação no arquivo. No caso de diretórios, permite a gravação de arquivos ou outros diretórios; Permissão para execução do arquivo (programa). No caso de diretório permite que seja acessado através do comando “cd”
  56. 56. Gerenciamento de Contas Exemplo  $ ls –l teste1  -rw-r--r-- 1 jorge jorge ... Teste1 Calma.... Vamos por parte!
  57. 57. Gerenciamento de Contas
  58. 58. Gerenciamento de Contas Alterando as permissões com o comando “chmod”
  59. 59. Gerenciamento de Contas Utilizando os octais 0 – nenhuma permissão 1 – apenas execução 2 – apenas gravação 3 – execução e gravação 4 – apenas leitura 5 – execução e leitura 6 – leitura e gravação 7 – Todos; leitura, gravação e execução Chmod 751 <nome do arquivo> Para o proprietário: Tudo; leitura, gravação, execução(7) Para o grupo: execução e leitura(5) Para o publico: apenas execução(1)
  60. 60. Gerenciamento de Contas Representação numérica das permissões
  61. 61. Gerenciamento de Contas Tabela de comandos e permissões
  62. 62. Gerenciamento de Contas Exemplos  # chmod u=rwx,g=r,o=r teste.txt  Dono – permissão total  Grupo – permissão de leitura  Outros – permissão de leitura  # chmod o-r teste.txt Removendo a permissão de leitura dos outros
  63. 63. Gerenciamento de Contas Exercício 1. Crie o arquivo /tmp/perm.txt com o seu usuário 2. Crie um usuário chamado aluno2. 3. Utilizando o usuário aluno2 tente ler o arquivo 4. Com o seu usuário, remova a permissão de leitura para “outros” 5. Verifique se o aluno2 continua com poder de leitura sobre o arquivo (experimente um “cat” no arquivo) 6. Crie um grupo chamado adm e inclua os dois usuários neste grupo 7. Verifique se o aluno2 agora pode ler o arquivo.
  64. 64. Gerenciamento de Contas Chown Muda dono de um arquivo/diretório. Opcionalmente pode também ser usado para mudar o grupo. chown [opções] [dono.grupo] [diretório/arquivo] Opções -v, –verbose Mostra os arquivos enquanto são alterados. -f, –supress Não mostra mensagens de erro durante a execução do programa. -c, –changes Mostra somente arquivos que forem alterados. -R, –recursive Altera dono e grupo de arquivos no diretório atual e sub-diretórios.
  65. 65. Gerenciamento de Contas chown joao teste.txt - Muda o dono do arquivo teste.txt para joao chown joao.users teste.txt - Muda o dono do arquivo teste.txt para joao e seu grupo para users. chown -R joao.users * - Muda o dono/grupo dos arquivos do diretório atual e subdiretórios para joao/users (desde que você tenha permissões de gravação no diretórios e sub-diretórios).

×