Mestrado em Gestão de Informação
Computadores e Redes de Comunicação, 2004/07
Sistema Operativo UNIX – Ficha de Exercícios Nº1
Observação: Os alunos são encorajados a experimentar para além dos exemplos propostos,
especialmente nas matérias em que se sintam menos confortáveis.
Objectivos da ficha: Conhecer a FEUPnet. Estabelecer uma sessão numa
máquina UNIX. Utilização de um interpretador de comandos. Utilização de
comandos UNIX. Filtragem de resultados. Redireccionamento da entrada e
saída. Sistema de ficheiros. Manipulação de ficheiros e directórios.
Permissões de ficheiros.
1. Estabelecer uma ligação a um sistema remoto.
a. Criar uma sessão remota com a máquina gnomo.fe.up.pt .
b. Tentar alterar a palavra-chave usando o comando passwd .
c. Usar o comando pwd (print working directory) para saber qual o directório
actual.
d. Consultar os conteúdos do directório com os comandos: ls , ls –l ,
ls –la . Existem diferenças entre as listagens?
2. Comandos base
a. Consultar informação sobre o sistema com o comando uptime .
b. Utilizar o comando echo com um argumento: echo “Hello World” .
c. Listar os utilizadores ligados no sistema com o comando who , finger e w .
Observar as diferenças entre as listagens.
d. Testar o envio de uma mensagem a um colega com o comando write .
Exemplo: write mgi01000 . Escrever linhas de texto. Para terminar usar a
combinação de teclas CTRL+D .
e. Estabelecer uma conversação com um colega usando o comando talk .
Exemplo: talk mgi01000 . Terminar a sessão com CTRL+D .
3. Sistema de ajuda
a. Consultar ajuda sobre o comando w com man w .
Para navegar na ajuda utilizar ENTER ou SPACE .
Para sair da ajuda utilizar a tecla q .
b. O que fazem os comandos wc , quota , mail e history ?
Sérgio Nunes (DEEC-FEUP)
c. Execute e interprete os resultados do comando quota .
d. Usando o comando apropos , descubra o comando que permite apresentar
um calendário. Usando esse comando verifique em que dia da semana
calhou 1 de Janeiro de 1999? E o seu nascimento?
e. Descubra quais os comandos que disponibilizam uma calculadora ao
utilizador.
4. Combinação de comandos.
a. Execute o comando history . Consulte apenas as últimas 5 linhas com
history | tail –n5 , as primeiras 10 linhas com
history | head –n10 e apenas os comandos em que foi o usada a
palavra “man” com history | grep man . Experimente.
b. Saiba quantos comandos já executou com a instrução history | wc –l .
O que faz o comando wc –l ?
c. Obtenha uma listagem com os utilizadores do MGI que estão ligados no
sistema com finger | grep mgi . Como obter apenas os alunos do MGI
inscritos este ano lectivo?
5. Sistema de ficheiros
a. Use o comando cd para voltar à home.
b. Criar um directório chamado “CRC” usando o comando mkdir CRC .
c. Criar outro directório chamado “crc” (caixa baixa) usando o comando
mkdir crc .
d. Entrar no directório “CRC” com cd CRC . Criar uma nova pasta:
mkdir aulas .
e. Voltar à home com cd .
f. Entrar no directório “crc” com cd crc . Criar uma nova pasta:
mkdir aulas .
g. Voltar à home com cd e executar os comandos tree e tree –d . O que
significa a opção –d ?
h. Tentar apagar o directório “crc” com rmdir crc . Qual o problema? Tentar
resolver de forma a ficar apenas com os directórios “CRC” e “CRC/aulas”.
i. Ir para a raiz do sistema com cd / .
j. Executar o comando tree –d .
k. Guardar o resultado deste comando num ficheiro com redireccionamento:
tree –d > ~mgi_____/CRC/aulas/arvore_sistema.txt .
l. Voltar à home com cd .
m. Ir para a pasta “CRC/aulas” com cd CRC/aulas .
n. Consultar o conteúdo do ficheiro página a página com:
cat arvore_sistema.txt | more . Usar o SPACE para avançar página a
página, ENTER para avançar linha a linha ou o q para sair.
Sérgio Nunes (DEEC-FEUP)
o. Voltar à home com cd .
p. Entrar directamente no directório “aulas” com cd CRC/aulas .
q. Executar o comando
wget http://www.fe.up.pt/~ssn/2004/crc/canto1.TXT . Consultar a
página do manual sobre o comando wget . Para que serve este comando?
r. Executar o comando file canto1.TXT . Que tipo de ficheiro é este?
s. Utilize o comando ls –lh para saber a dimensão do ficheiro. Qual é? Para
que serve a opção –h ?
t. Renomear o ficheiro com o comando mv canto1.TXT canto1.txt .
u. Fazer uma cópia do ficheiro com o comando
cp canto1.txt canto1-copia.txt .
v. Visualizar o ficheiro com cat canto1.txt . Que texto é?
w. Executar o comando wc canto1.txt . O que significam os três valores?
x. Contar o número de linhas em que aparece a referência à palavra “mar”,
usando o comando cat canto1.txt | grep mar | wc –l .
Experimentar outras combinações.
6. Redireccionamento da entrada e saída
a. Voltar à home com o comando cd .
b. Guardar o resultado do comando tree num ficheiro, usando o comando
tree > arvore.txt . Alternativamente pode ser usado o comando find
para ver a estrutura de ficheiros e pastas.
c. Enviar um e-mail com este ficheiro em anexo, usando
mail <endereço> < arvore.txt. Confirmar a recepção do e-mail.
d. Mover o ficheiro “arvore.txt” para a pasta aulas:
mv arvore.txt CRC/aulas/arvore.txt .
7. Permissões de ficheiros
a. Voltar à home com o comando cd .
b. Entrar no directório “CRC/aulas” com o comando cd CRC/aulas .
c. Consultar as permissões dos ficheiros nesse directório com o comando
ls –l .
d. Dar permissões de escrita e leitura para o grupo e para outros ao ficheiro
“canto1-copia.txt” usando os comandos chmod g+rw canto1-copia.txt
e chmod o+rw canto1-copia.txt .
e. Retirar as permissões de leitura ao ficheiro “canto1.txt” para o grupo e
para outros, usando os comandos chmod g-r canto1.txt e
chmod o-r canto1.txt .
8. Exemplos avançados
a. Visualizar o número de visitas às páginas dos alunos do MGI com:
cat /var/log/apache/access_log | grep \~mgi . Adapte o caminho
ao local do ficheiro de registo do Apache.
Sérgio Nunes (DEEC-FEUP)
b. Contar o número de visitas a estas páginas com:
cat /var/log/apache/access_log | grep \~mgi | wc –l .
c. 10 recursos mais vezes requisitados com:
cat /var/log/apache/access_log | cut -d ' ' -f 6- | sort |
uniq -c | sort -n | tail -n10 .
9. Terminar a sessão
a. Para terminar uma sessão executar o comando logout .
Sérgio Nunes (DEEC-FEUP)
Download

Mestrado em Gestão de Informação