Questão de Sistemas Operacionais — Linux — VUNESP 2024
Sistemas Operacionais›Linux
Código
vu212395
Banca
VUNESP
Órgão
Pref Monte Alto
Ano
2024
Cargo
ASTI ( )
Em um sistema operacional Linux, o administrador do sistema digitou no terminal o seguinte comado: awk -F: `{print $3}´ /etc/group O retorno desse comando no terminal será(ão)
Aas senhas dos grupos cadastrados no sistema.
Bo número de membros dos grupos cadastrados no sistema.
Cos “ids” dos grupos cadastrados no sistema.
Dos nomes dos grupos cadastrados no sistema.
Eos nomes dos membros dos grupos cadastrados no sistema.
Revelar gabarito e comentário▾
GabaritoC — os “ids” dos grupos cadastrados no sistema.
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”.
Comando awk e o arquivo /etc/group
Gabarito: letra C. O comando awk -F: '{print $3}' /etc/group exibe o terceiro campo de cada linha do arquivo /etc/group, que, nesse arquivo, corresponde ao GID (Group ID), ou seja, o identificador numérico do grupo. A opção -F: define o separador de campos como dois-pontos (:), e $3 seleciona o terceiro campo.
O arquivo /etc/group é um arquivo de texto que armazena informações sobre os grupos do sistema. Cada linha representa um grupo e é dividida em quatro campos, separados por dois-pontos (:). A estrutura padrão é:
nome_do_grupo:senha:GID:lista_de_membros
Vamos detalhar cada campo:
Nome do grupo: o nome textual que identifica o grupo (ex.: root, users, sudo).
Senha: normalmente um x ou vazio, indicando que a senha do grupo está armazenada em outro arquivo (geralmente /etc/gshadow).
GID (Group ID): o número que identifica o grupo no sistema (ex.: 0 para root, 1000 para o primeiro grupo de usuário).
Membros: a lista de usuários que pertencem ao grupo, separados por vírgulas (ex.: user1,user2).
O comando awk é um processador de texto que opera linha por linha. A opção -F: define o delimitador de campos como :. Assim, para cada linha, $1 é o nome do grupo, $2 é a senha, $3 é o GID e $4 é a lista de membros. O comando {print $3} imprime apenas o terceiro campo, ou seja, o GID de cada grupo.
Por exemplo, se o arquivo /etc/group contiver a linha sudo:x:27:alice,bob, o comando imprimirá 27.
A pegadinha desta questão está em confundir o terceiro campo com outro dado. A banca explora a falta de familiaridade com a estrutura do arquivo /etc/group. É comum o candidato lembrar que o arquivo contém nomes de grupos e membros, mas não saber a posição exata de cada informação. A alternativa C é a única que identifica corretamente o GID.
NÃO CAIA NESSA!
A banca troca o conteúdo do terceiro campo do arquivo /etc/group. O candidato que não conhece a estrutura exata do arquivo pode achar que $3 é o nome do grupo (que é $1) ou a lista de membros (que é $4). A chave é lembrar que a ordem é: nome, senha, GID, membros.
Arquivo /etc/group
1Estrutura (4 campos, separados por :)
$1: nome do grupo
$2: senha (x ou vazio)
$3: GID (identificador numérico)
$4: lista de membros
2Comando awk -F: '{print $3}'
-F: define separador como :
$3 seleciona o terceiro campo
Saída: GIDs dos grupos
LEVEL · soulevel.com.br
Alternativa A — ❌ Incorreta
As senhas dos grupos estão no segundo campo ($2), não no terceiro. Além disso, na maioria dos sistemas, o campo de senha contém apenas um x ou está vazio, pois as senhas reais são armazenadas em /etc/gshadow.
Alternativa B — ❌ Incorreta
O número de membros não é um campo do arquivo. A lista de membros está no quarto campo ($4), mas o comando não conta quantos membros existem; ele apenas imprime o terceiro campo. Para contar membros, seria necessário um processamento adicional.
Alternativa C — ✅ Correta ⟵ GABARITO
O terceiro campo ($3) do arquivo /etc/group é o GID (Group ID), o identificador numérico do grupo. O comando awk -F: '{print $3}' /etc/group imprime exatamente esse valor para cada grupo cadastrado.
Alternativa D — ❌ Incorreta
Os nomes dos grupos estão no primeiro campo ($1), não no terceiro. Para imprimir os nomes, o comando correto seria awk -F: '{print $1}' /etc/group.
Alternativa E — ❌ Incorreta
Os nomes dos membros estão no quarto campo ($4), não no terceiro. Para imprimir os membros, o comando seria awk -F: '{print $4}' /etc/group.