Mudanças entre as edições de "Sistemas Operacionais e Introdução a Programação (diário 2010-1) - Prova teórica - tipo B"

De MediaWiki do Campus São José
Ir para navegação Ir para pesquisar
 
(4 revisões intermediárias pelo mesmo usuário não estão sendo mostradas)
Linha 23: Linha 23:
 
  cp /etc/localtime /tmp/copia_do_etc/
 
  cp /etc/localtime /tmp/copia_do_etc/
 
  mkdir /tmp/copia_do_etc/copias/
 
  mkdir /tmp/copia_do_etc/copias/
  cp /tmp/copias_do_etc/localtime /tmp/copias_do_etc/copias/local
+
  cp /tmp/copia_do_etc/localtime /tmp/copia_do_etc/copias/local
  rm /tmp/copias_do_etc/localtime
+
  rm /tmp/copia_do_etc/localtime
  chmod 660 /tmp/copias_do_etc/copias/local
+
  chmod 660 /tmp/copia_do_etc/copias/local
  
 
=Questão 2=
 
=Questão 2=
Linha 34: Linha 34:
 
Informe a quantidade e o nome de cada um dos usuários.
 
Informe a quantidade e o nome de cada um dos usuários.
  
 +
==Resposta==
 +
Embora cada sistema possa apresentar pequenas variações, no laboratório de Redes II está instalado sistema Ubuntu Linux 9.10 versão ''desktop'', onde a configuração padrão apresenta os seguintes usuários (assumindo o usuário <tt>aluno</tt> rodando o ambiente gráfico):
 +
# <tt>syslog</tt>
 +
# <tt>avahi</tt>
 +
# <tt>aluno</tt>
  
 
=Questão 3=
 
=Questão 3=
Linha 42: Linha 47:
 
==Apresentação da resposta==
 
==Apresentação da resposta==
 
Apresente o ''script'' na forma de um arquivo executável, descrevendo a criação do arquivo e permissões mínimas de execução do programa.
 
Apresente o ''script'' na forma de um arquivo executável, descrevendo a criação do arquivo e permissões mínimas de execução do programa.
 +
 +
==Resposta==
 +
#!/bin/bash
 +
killall -TERM gnome-terminal
 +
sleep 3
 +
killall -KILL gnome-terminal
  
 
=Questão 4=
 
=Questão 4=
Linha 50: Linha 61:
 
** Leitura e escrita para usuário, apenas leitura para grupo, demais não têm acesso.
 
** Leitura e escrita para usuário, apenas leitura para grupo, demais não têm acesso.
 
Dica: diretórios devem possuir permissão de execução quando houver permissão de leitura (mesmo não sendo executáveis).
 
Dica: diretórios devem possuir permissão de execução quando houver permissão de leitura (mesmo não sendo executáveis).
 +
 
==Apresentação da resposta==
 
==Apresentação da resposta==
 
Informe a sequência de comandos para a solução do problema. E responda à seguinte pergunta: o arquivo <tt>/home/aluno/backup/passwd</tt> também não estará acessível aos outros usuários, seguindo a lógica do diretório-pai. Por quê?
 
Informe a sequência de comandos para a solução do problema. E responda à seguinte pergunta: o arquivo <tt>/home/aluno/backup/passwd</tt> também não estará acessível aos outros usuários, seguindo a lógica do diretório-pai. Por quê?
 +
 +
==Resposta==
 +
* Primeira parte
 +
cd /home/aluno/
 +
mkdir backup/
 +
cp /etc/passwd backup/
 +
cp /etc/shadow backup/
 +
cp /etc/gshadow backup/
 +
chgrp vboxusers backup/
 +
chmod 750 backup/
 +
* Segunda parte
 +
O acesso ao arquivo se dá de forma sequencial, iniciando no diretório <tt>/</tt> e avançando até o arquivo de interesse: <tt>/</tt>, <tt>/home/</tt>, <tt>/home/aluno/</tt> e <tt>/home/aluno/backup/</tt>. Se em algum deles houver restrição de acesso, o arquivo - não importando as suas permissões - estará inacessível.

Edição atual tal como às 15h46min de 19 de março de 2010

Questão 1

  • Vá ao diretório /etc/, copie o arquivo localtime para o diretório /tmp/copia_do_etc/ (crie-o, se necessário).
  • Copie o conteúdo desse arquivo (/tmp/copia_do_etc/localtime) para o arquivo /tmp/copia_do_etc/copias/local.
  • Remova o arquivo anterior (/tmp/copia_do_etc/localtime) e altere as permissões do novo (/tmp/copia_do_etc/copias/local) para que usuário e grupo associados ao novo arquivo possam ler e escrever - demais não tem qualquer acesso.

Apresentação da resposta

Apresente a sequência de comandos para a solução do problema em dois formatos:

  1. Utilizando endereços relativos.
  2. Utilizando endereços absolutos.

Resposta

  • Utilizando endereços relativos: assumindo que o usuário aluno está no seu diretório pessoal, /home/aluno:
cd /etc/
mkdir ../tmp/copia_do_etc/
cp localtime ../tmp/copia_do_etc/
cd ../tmp/copia_do_etc/
mkdir copias/
cp localtime copias/local
rm localtime
chmod 660 copias/local
  • Utilizando endereços absolutos (indifere o caminho atual do usuário):
mkdir /tmp/copia_do_etc/
cp /etc/localtime /tmp/copia_do_etc/
mkdir /tmp/copia_do_etc/copias/
cp /tmp/copia_do_etc/localtime /tmp/copia_do_etc/copias/local
rm /tmp/copia_do_etc/localtime
chmod 660 /tmp/copia_do_etc/copias/local

Questão 2

  • Quantos e quais usuários possuem processos no S.O. da sua estação de trabalho? Ignore o usuário root dessa lista.

Dica: use o comando more para apresentar o resultado de um comando de forma paginada. Ex.: ls | more

Apresentação da reposta

Informe a quantidade e o nome de cada um dos usuários.

Resposta

Embora cada sistema possa apresentar pequenas variações, no laboratório de Redes II está instalado sistema Ubuntu Linux 9.10 versão desktop, onde a configuração padrão apresenta os seguintes usuários (assumindo o usuário aluno rodando o ambiente gráfico):

  1. syslog
  2. avahi
  3. aluno

Questão 3

  • Crie um script para finalizar todos os processos chamados gnome-terminal. Ele deve:
    1. Enviar um sinal TERM para todos os processos com esse nome.
    2. Esperar por pelos 3s (comando: sleep 3) para que a aplicação feche normalmente.
    3. Enviar um sinal KILL para todos os processos com esse nome.

Apresentação da resposta

Apresente o script na forma de um arquivo executável, descrevendo a criação do arquivo e permissões mínimas de execução do programa.

Resposta

#!/bin/bash
killall -TERM gnome-terminal
sleep 3
killall -KILL gnome-terminal

Questão 4

  • Na pasta pessoal do aluno (/home/aluno), crie um diretório chamado backup.
  • Copie para esse diretório os arquivos /etc/passwd, /etc/shadow e /etc/gshadow. Se não for possível copiar algum deles, explique o porquê.
  • Para esse diretório novo (/home/aluno/backup), altere as permissões da seguinte forma:
    • O grupo deve ser vboxusers.
    • Leitura e escrita para usuário, apenas leitura para grupo, demais não têm acesso.

Dica: diretórios devem possuir permissão de execução quando houver permissão de leitura (mesmo não sendo executáveis).

Apresentação da resposta

Informe a sequência de comandos para a solução do problema. E responda à seguinte pergunta: o arquivo /home/aluno/backup/passwd também não estará acessível aos outros usuários, seguindo a lógica do diretório-pai. Por quê?

Resposta

  • Primeira parte
cd /home/aluno/
mkdir backup/
cp /etc/passwd backup/
cp /etc/shadow backup/
cp /etc/gshadow backup/
chgrp vboxusers backup/
chmod 750 backup/
  • Segunda parte

O acesso ao arquivo se dá de forma sequencial, iniciando no diretório / e avançando até o arquivo de interesse: /, /home/, /home/aluno/ e /home/aluno/backup/. Se em algum deles houver restrição de acesso, o arquivo - não importando as suas permissões - estará inacessível.