Pular para o conteúdo principal

Questão de Sistemas Operacionais — Linux — FGV 2024

Sistemas OperacionaisLinux
Código
fg085338
Banca
FGV
Órgão
INPE
Ano
2024
Nível
Superior
Cargo
Tecnologista Júnior I - Ambientes Críticos de Tecnologia da Informação em Centro de Dados
O sistema de arquivos Linux é a estrutura onde são armazenadas todas as informações do computador. Logo, entender como gerenciar o sistema de arquivos a partir do shell é uma habilidade crítica para administradores de Linux. Diante disso, acerca de comandos referentes ao sistema de arquivos do Linux assinale a afirmativa correta.
  1. AO comando find pode ser usado para pesquisar arquivos ou diretórios com base em determinados critérios. No entanto, não pode ser combinado com a opção delete, com o objetivo de excluir arquivos.
  2. BO comando ‘mv $HOME/docs/arq/txt/ $HOME/docs/arq{3,4}’ move arq3 e arq4 para o diretório $HOME/docs/arq/txt.
  3. CA tentativa de execução do comando ‘rm -f $HOME/docs/arq[678]’ retorna um erro de sintaxe.
  4. DO comando ‘chmod -R o-w $HOME/docs’ remove recursivamente as permissões de gravação para “outros” em todos os arquivos e diretórios presentes no diretório /docs.
  5. EO comando ‘cp -R $HOME/docs/* $HOME/tmp’ copia todos os arquivos do diretório /docs (inclusive o diretório /docs) assim como todos os arquivos e subdiretórios existentes dentro dele para $HOME/tmp.
Revelar gabarito e comentário

GabaritoD — O comando ‘chmod -R o-w $HOME/docs’ remove recursivamente as permissões de gravação para “outros” em todos os arquivos e diretórios presentes no diretório /docs.

Comentário gerado por IA. É um apoio ao estudo, ancorado em fontes, mas pode conter imprecisões — confira sempre na fonte oficial (lei, súmula, edital e gabarito da banca). Encontrou um erro? Use “Reportar”.

Comandos do Sistema de Arquivos no Linux

Gabarito: letra D. O comando chmod -R o-w $HOME/docs realmente remove recursivamente as permissões de gravação para 'outros' em todos os arquivos e diretórios dentro de /docs. A opção -R (recursiva), o (others), -w (remove write) é a sintaxe correta. As demais alternativas contêm erros comuns de interpretação de comandos.

A questão testa o conhecimento prático de comandos essenciais do Linux: mv, rm, chmod, cp, e find. Cada alternativa explora um aspecto diferente: globbing, brace expansion, opções de exclusão e recursividade.

Alternativa A — ❌ Incorreta

Afirma que o find não pode ser combinado com a opção -delete. Isso é falso: o find possui a ação -delete que exclui arquivos encontrados. O comando find . -name '*.tmp' -delete é perfeitamente válido. A alternativa confunde a inexistência de uma opção curta -d com a inexistência da funcionalidade.

Alternativa B — ❌ Incorreta

O comando mv $HOME/docs/arq/txt/ $HOME/docs/arq{3,4} tem dois problemas: (1) a expansão de chaves {3,4} gera dois argumentos de destino (arq3 e arq4), mas o mv espera um único destino quando a origem é um diretório; (2) a origem é um diretório, não arquivos individuais. Para mover arquivos arq3 e arq4 para o diretório txt, o correto seria mv $HOME/docs/arq{3,4} $HOME/docs/arq/txt/.

Alternativa C — ❌ Incorreta

O comando rm -f $HOME/docs/arq[678] é sintaticamente válido. O colchete [678] é um padrão glob que corresponde a arquivos arq6, arq7 ou arq8. Não há erro de sintaxe; se nenhum desses arquivos existir, o rm -f simplesmente não fará nada (sem erro). A alternativa incorretamente alega que a sintaxe é inválida.

Alternativa D — ✅ Correta ⟵ GABARITO

chmod -R o-w $HOME/docs altera permissões recursivamente (-R). O modo o-w significa: para a classe 'others' (o), remove (-) a permissão de escrita (w). Portanto, todos os arquivos e diretórios dentro de /docs (exceto o próprio /docs, a menos que o caminho seja /docs/.*, mas aqui o alvo é o diretório /docs e seu conteúdo recursivo) perdem a permissão de gravação para usuários que não são donos nem estão no grupo. A descrição está correta.

Alternativa E — ❌ Incorreta

O comando cp -R $HOME/docs/* $HOME/tmp copia o conteúdo do diretório /docs (arquivos e subdiretórios) para /tmp, mas não copia o próprio diretório /docs. O glob * expande-se para os itens dentro de /docs, excluindo o diretório pai. Para copiar o diretório docs inteiro, o correto seria cp -R $HOME/docs $HOME/tmp (sem o *). A afirmação diz que inclui o diretório /docs, o que é um erro conceitual.

Conclusão: A única afirmativa correta é a letra D. As demais contêm erros típicos de interpretação de comandos e expansões de shell.

Link permanente: /questoes/fg085338