- Copie para seu diretório de login os diretórios
LabNum3 e LabNum4 (incluindo as respectivas subárvores)
que estão no diretório de login do usuário ci066.
- Opções de ls(1). Use ls(1) com a
opção -l para listar os arquivos de seu diretório de
login. Observe as permissões de acesso dos diretórios e
arquivos, bem como a ordem com que os arquivos são mostrados.
- Use agora ls(1) com a opção -a para
listar os arquivos de seu diretório de login. Observe os
arquivos que são exibidos. Use em seguida a opção
-la e observe o resultado. Observe especialmente os
arquivos . e ... O que eles representam? O que faz
a opção -a?
- Descreva o que fazem os comandos abaixo:
ls -l .
ls -ld .
ls -l ..
ls -ld ..
ls -l *
ls -ld *
DICAS: Além de simplesmente executar os comandos e observar
os resultados, lembre-se de usar man(1) para obter informações
sobre as opções de ls(1).
- Permissões de acesso. Crie
um arquivo qualquer com algum contéudo dentro do diretório
~/LabNum3/tmp/mail. Como devem ser as
permissões de acesso a este diretório e ao arquivo criado de forma que
qualquer usuário possa ler o arquivo, mas nenhum usuário (exceto você)
possa listar o conteúdo do diretório? Defina primeiro como devem ser
os 3 conjuntos de permissões rwx.
Como deve ser usado chmod(1) para definir estas permissões?
- Usando touch(1) e chmod(1),
crie 4 (quatro) arquivos no diretório ~/LabNum3/lib com
permissão completa para usuário e permissão apenas de leitura para
grupo e outros.
- Para todos os arquivos a partir de
~/LabNum3/pub, os arquivos devem ter permissão de leitura
para todos os usuários e NENHUMA permissão de escrita e execução para
grupo e outros.
Os diretórios devem ter permissão de navegação para todos e leitura e
escrita APENAS para o proprietário dos diretórios.
- Crie um arquivo qualquer em seu diretório de login e em
seguida, usando ls(1), verifique as permissões de acesso do
arquivo que você criou. Anote estas permissões em algum lugar de
fácil acesso.
- Usando chmod(1) e a notação textual, mude a permissão do
arquivo criado anteriormente de forma a se ter ao final as seguintes
permissões: r-x-wx--x. Em seguida, usando a notação octal,
mude as permissões para rw-rw--wx.
DICA: SEMPRE use ls(1) após uma execução de
chmod(1) para verificar se as permissões foram mudadas conforme
desejado.
- Repita os ítens 5, 6 e
7 usando notação octal.
- Deseja-se definir permissão de escrita para grupo e retirar a
permissão de execução para outros no arquivo
~/LabNum4/pub/arq_02.txt SEM ALTERAR as outras
permissões que já estão definidas para este arquivo. Como fazer isto
usando notação simbólica? E com notação octal?
- Deseja-se definir permissão de escrita para outros e retirar a
permissão de leitura para grupo no arquivo
~/LabNum3/pub/soft/doc/yz/yz-9 SEM ALTERAR as outras
permissões que já estão definidas para este arquivo.
Também se deseja alterar as permissões do diretório
~/LabNum3/pub/soft/doc/yz de forma que somente o
proprietário do diretório possa listar seu conteúdo. No entanto,
Outros usuários podem criar e acessar arquivos neste diretório.
Usuários do Grupo não podem listar e tampouco acessar arquivos no
diretório.
Como fazer isto usando notação simbólica? E com notação octal?
- Permissões default de acesso. Execute
o comandos abaixo, observando com ATENÇÃO as permissões de acesso:
touch arq_teste
cp /bin/ls meu_ls
ls -l arq_teste meu_ls
umask 733
touch arq_teste_2
cp /bin/ls meu_ls_2
ls -l arq_teste_2 meu_ls_2
Qual foi o efeito da execução de umask(1)?
DICA: As permissões em notação octal indicadas como
argumentos de umask(1) ``ligaram'' ou ``desligaram'' as
permissões finais dos arquivos criados após a execução de
umask?
NESTE PONTO, CHAME O PROFESSOR PARA ESCLARECIMENTOS.
- Qual o argumento de umask(1) para que, por
default, as permissões de escrita e execução para usuários
do grupo e outros usuários estejam sempre desabilitadas quando se
criar um arquivo?
- Encontrando arquivos. Use
find(1) para encontrar em seu diretório de login (e
toda sua subárvore de diretórios) qualquer arquivo chamado core
e todos os arquivos terminados com um dos sufixos .bak,
%, ~.
- Usando a solução do item
15, como você faria para REMOVER os arquivos
encontrados?
DICA 1: Primeiro faça um teste SEM EXECUTAR A
OPERAÇÃO DE REMOVER, mas imprimindo na tela os
arquivos selecionados. Quando você tiver certeza que
somente os arquivos desejados estão sendo
selecionados, acrescente a opção do find(1) que
efetua remoção de arquivos.
DICA 2: Leia COM ATENÇÃO E PACIÊNCIA o manual
on-line de find(1).
- Encontrar em seu diretório de login (e toda sua subárvore de
diretórios) todos os arquivos que possuem permissão de Execução e/ou
Escrita para Outros. Para cada um dos arquivos encontrados:
- Se o arquivo for DIRETÓRIO, definir permissão de Execução para
Grupo e Outros, mas retirar a permissão de Escrita e Leitura de
Grupo e Outros;
- Se o arquivo NÃO for diretório, retirar permissão de Escrita
e Execução para Outros e permissão de Escrita para Grupo.
DICA 1: Primeiro faça um teste SEM MUDAR AS
PERMISSÕES, mas imprimindo na tela os arquivos
selecionados. Quando você tiver certeza que somente os
arquivos desejados estão sendo selecionados, acrescente
a opção do find(1) que permite a mudança de
permissões.
DICA 2: Leia COM ATENÇÃO E PACIÊNCIA o manual
on-line de find(1).
- Controle de quotas. O que fazer quando você
descobre que sua quota foi atingida? Um comando conveniente é
du(1). Este comando permite que você verifique o espaço em
disco ocupado por arquivos e diretórios indicados como argumentos.
Por exemplo, ao executar
du -sh ~/* ~/.[a-zA-Z]*
você tem uma estatística do espaço ocupado por arquivos e diretórios
em sua área.
Neste item, entenda e explique em detalhes o que faz o comando acima
(o que faz cada opção e o que significam os outros argumentos da
linha de comando).
- Tarefa para casa: Descobertos os ``culpados''
pelo excesso de espaço ocupado, como você procederia para baixar o
espaço em disco aquém de sua quota?
DICA: Pense em como find(1) e rm(1)
podem ser usados. Também verifique se há um padrão nos nomes de
arquivos que costumam ocupar espaço desnecessário (por exemplo,
arquivos com sufixo .bak e *~, ou arquivos com
o nome core). Os arquivos em ``cache'' de navegadores
(firefox, galeon, etc.) também costumam ocupar bastante espaço.