[Cruzeiro] GSO II - Ferramentas de manutenção: Windows x Linux

Gestão de Sistemas Operacionais II — Técnico em Informática

Passo a passo: ferramentas de manutenção no Windows e no Linux

Tutorial completo da atividade, com cada comando, a saída esperada e a explicação do que está acontecendo. A parte Linux foi testada no Ubuntu 24.04, a mesma base do Lubuntu 24.04; no Windows, as mensagens podem variar um pouco conforme a versão.

0

Preparar os terminais

WindowsTerminal como Administrador

Win+X e escolha Terminal (Administrador) (Windows 11) ou Windows PowerShell (Administrador) (Windows 10). Confirme o aviso do Controle de Conta de Usuário. Personalize o prompt:

function prompt { "GSO2-SeuNome PS> " }

O que acontece: no PowerShell, o prompt é uma função. Redefini-la muda o texto antes de cada comando até você fechar a janela.

LinuxTerminal na VM Lubuntu

Abra o QTerminal com Ctrl+Alt+T. Copiar e colar no terminal usa Ctrl+Shift+C e Ctrl+Shift+V.

PS1="gso2-seunome:\w\$ "

O que acontece: PS1 é a variável que define o prompt do bash; \w mostra a pasta atual. Vale só para esta janela.

1

Diagnóstico inicial

1.1 Informações do sistema W1 L1

Windows
Get-ComputerInfo -Property CsName, OsName, OsVersion, OsLastBootUpTime
Saída esperada (valores do seu computador)
CsName           : LAB02-PC07
OsName           : Microsoft Windows 11 Pro
OsVersion        : 10.0.26100
OsLastBootUpTime : 30/09/2026 07:42:15

O comando pode levar alguns segundos: ele coleta dezenas de informações e exibe só as quatro pedidas. Alternativa clássica: systeminfo.

Linux
hostnamectl
uptime -p
Saída esperada (trecho)
 Static hostname: lubuntu-vm
Operating System: Ubuntu 24.04.1 LTS
          Kernel: Linux 6.8.0-45-generic
    Architecture: x86-64
up 1 hour, 12 minutes

1.2 Espaço em disco W2 L2

Windows
Get-PSDrive C
Saída esperada
Name   Used (GB)   Free (GB) Provider      Root
----   ---------   --------- --------      ----
C         142,35      95,82 FileSystem    C:\

% livre = livre ÷ (usado + livre) × 100. No exemplo: 95,82 ÷ 238,17 ≈ 40%.

Linux
df -h /
sudo du -sh /var/cache/apt /var/log ~/.cache
Saída esperada
Filesystem      Size  Used Avail Use% Mounted on
/dev/sda2        24G  9,1G   14G  41% /
312M    /var/cache/apt
187M    /var/log
96M     /home/aluno/.cache

-h mostra em K, M e G. O df mostra a partição; o du mede o que cada pasta ocupa. % livre = 100 − Use%.

1.3 Tipo de disco W3 L3

Windows
Get-PhysicalDisk | Select-Object FriendlyName, MediaType, Size
Saída esperada
FriendlyName            MediaType         Size
------------            ---------         ----
KINGSTON SA400S37240G   SSD       240057409536
Linux
lsblk -d -o NAME,ROTA,SIZE,MODEL
Saída esperada na VM
NAME ROTA  SIZE MODEL
sda     1   25G VBOX HARDDISK
sr0     1 1024M CD-ROM

ROTA = rotational: 1 é disco giratório (HDD), 0 é SSD. Na VM, o disco virtual do VirtualBox costuma aparecer como 1 mesmo que o computador tenha SSD.

2

Limpeza

2.1 WindowsArquivos temporários W4

$antes = (Get-ChildItem $env:TEMP -Recurse -Force -File -ErrorAction SilentlyContinue | Measure-Object Length -Sum).Sum / 1MB
"Antes:  {0:N1} MB" -f $antes
Remove-Item "$env:TEMP\*" -Recurse -Force -ErrorAction SilentlyContinue
$depois = (Get-ChildItem $env:TEMP -Recurse -Force -File -ErrorAction SilentlyContinue | Measure-Object Length -Sum).Sum / 1MB
"Depois: {0:N1} MB" -f $depois
Saída esperada
Antes:  486,3 MB
Depois: 21,7 MB

Por que não zera: arquivos em uso por programas abertos não podem ser apagados; o -ErrorAction SilentlyContinue pula esses arquivos sem encher a tela de erros.

2.2 WindowsLimpeza de Disco W5

cleanmgr /d C:

A janela lista categorias (Arquivos de Programas Baixados, Lixeira, Miniaturas…) e o total que pode ser liberado. Tire o print da janela; não é obrigatório confirmar a limpeza.

2.3 LinuxCache de pacotes e logs L4

sudo du -sh /var/cache/apt
sudo apt clean
sudo apt autoremove -y
sudo du -sh /var/cache/apt
sudo journalctl --disk-usage
sudo journalctl --vacuum-time=7d
Saída esperada (trecho)
312M    /var/cache/apt
0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
92K     /var/cache/apt
Archived and active journals take up 184.0M in the file system.
Vacuuming done, freed 120.0M of archived journals from /var/log/journal/...

apt clean apaga os pacotes .deb já baixados; autoremove remove dependências que nenhum programa usa mais; --vacuum-time=7d apaga logs arquivados com mais de 7 dias. Os números dependem de quanto a VM já foi usada.

3

Verificação do sistema de arquivos

3.1 Windowschkdsk somente leitura requer Administrador W6

chkdsk C:
Saída esperada (trecho)
Aviso! O parâmetro /F não foi especificado.
Executando CHKDSK no modo somente leitura.

Estágio 1: Examinando a estrutura do sistema de arquivos básica...
Estágio 2: Examinando a vinculação de nome de arquivo...
Estágio 3: Examinando descritores de segurança...

O Windows examinou o sistema de arquivos e não encontrou problemas.
Nenhuma ação adicional é necessária.

Sem /f, o chkdsk apenas examina. Com /f na unidade do sistema, ele não consegue bloquear o volume em uso e oferece agendar a correção para a próxima reinicialização.

3.2 LinuxCriar e verificar um disco de teste L5

truncate -s 200M ~/disco_teste.img
mkfs.ext4 -F ~/disco_teste.img
e2fsck -f ~/disco_teste.img
tune2fs -l ~/disco_teste.img | grep -i state
Saída esperada (trecho)
Creating filesystem with 51200 4k blocks and 51200 inodes
Superblock backups stored on blocks:
	32768
...
Pass 1: Checking inodes, blocks, and sizes
Pass 2: Checking directory structure
Pass 3: Checking directory connectivity
Pass 4: Checking reference counts
Pass 5: Checking group summary information
/home/aluno/disco_teste.img: 11/51200 files (0.0% non-contiguous), 7358/51200 blocks
Filesystem state:         clean

Por que um arquivo: verificar a partição onde o sistema está rodando pode corrompê-la. Um arquivo formatado se comporta como um disco de verdade e pode ser testado sem risco. As cinco passagens (Pass 1 a 5) conferem inodes, diretórios, ligações e contagens.

3.3 LinuxSimular uma falha e recuperar L6

dd if=/dev/zero of=~/disco_teste.img bs=1024 seek=1 count=1 conv=notrunc
tune2fs -l ~/disco_teste.img
Saída esperada — o disco não abre mais
1+0 records in
1+0 records out
1024 bytes (1,0 kB, 1,0 KiB) copied, 0,0001 s, 20 MB/s
tune2fs 1.47.0 (5-Feb-2023)
tune2fs: Bad magic number in super-block while trying to open /home/aluno/disco_teste.img
e2fsck -b 32768 -y ~/disco_teste.img
tune2fs -l ~/disco_teste.img | grep -i state
Saída esperada — recuperado
/home/aluno/disco_teste.img was not cleanly unmounted, check forced.
Pass 1: Checking inodes, blocks, and sizes
...
Padding at end of inode bitmap is not set. Fix? yes

/home/aluno/disco_teste.img: ***** FILE SYSTEM WAS MODIFIED *****
Filesystem state:         clean

O que aconteceu: o dd escreveu zeros sobre o byte 1024, onde fica o superbloco principal — o "índice" do sistema de arquivos. O ext4 guarda cópias do superbloco; -b 32768 manda o e2fsck usar a cópia e reconstruir o principal. -y responde sim a todas as correções.

4

Integridade e atualizações

4.1 Windowssfc e DISM requer Administrador W7 W8

sfc /scannow
Saída esperada ao fim (10 a 20 minutos)
Iniciando verificação do sistema. Este processo levará algum tempo.
Verificação 100% concluída.

A Proteção de Recursos do Windows não encontrou nenhuma violação de integridade.
DISM /Online /Cleanup-Image /CheckHealth
Saída esperada (poucos segundos)
Ferramenta de Gerenciamento e Manutenção de Imagens de Implantação
Versão: 10.0.26100.1

Versão da Imagem: 10.0.26100.1742

Nenhum dano ao repositório de componentes foi detectado.
A operação foi concluída com êxito.

Diferença: o sfc compara os arquivos do Windows com cópias guardadas no repositório de componentes (WinSxS) e restaura os alterados. O DISM verifica e repara esse repositório. Se o sfc não conseguir reparar, rode DISM /Online /Cleanup-Image /RestoreHealth (precisa de internet) e depois o sfc de novo.

Dica de tempo: inicie o sfc e vá fazer a parte Linux enquanto ele roda.

4.2 LinuxIntegridade dos pacotes L7

sudo dpkg --verify coreutils bash
echo "Codigo de saida: $?"
Saída esperada num sistema íntegro
Codigo de saida: 0

Como ler: o dpkg guarda o hash (MD5) de cada arquivo instalado. O --verify recalcula e só lista o que mudou — nenhuma linha e código 0 significam tudo íntegro. Uma linha como ??5?????? c /etc/arquivo indica hash diferente (o 5) em um arquivo de configuração (c), o que é normal quando alguém editou a configuração. Para restaurar um pacote alterado: sudo apt install --reinstall pacote.

4.3 Atualizações disponíveis W9 L8

Windows
winget upgrade
Saída esperada (trecho)
Nome              ID                        Versão    Disponível Origem
---------------------------------------------------------------------------
Google Chrome     Google.Chrome             128.0.1   129.0.2    winget
7-Zip 23.01 (x64) 7zip.7zip                 23.01     24.08      winget
2 atualizações disponíveis.

Sem --all, o comando só lista. Na primeira execução ele pede para aceitar os termos da origem: digite Y. Se aparecer "winget não é reconhecido", o App Installer não está instalado — registre isso no PDF.

Linux
sudo apt update
apt list --upgradable
Saída esperada (trecho)
12 packages can be upgraded. Run 'apt list --upgradable' to see them.
Listing... Done
firefox/noble-updates 1:1snap1-0ubuntu5.1 amd64 [upgradable from: 1:1snap1-0ubuntu5]
libssl3t64/noble-updates 3.0.13-0ubuntu3.4 amd64 [upgradable from: 3.0.13-0ubuntu3.1]

apt update só baixa a lista do que existe; quem instala é apt upgrade, que não faz parte desta atividade.

5

Processos e logs

5.1 Processos W10 L9

Windows
Get-Process | Sort-Object WorkingSet64 -Descending | Select-Object -First 5 Name, Id, @{n='MB';e={[math]::Round($_.WorkingSet64/1MB)}}
Start-Process notepad
Get-Process notepad
Stop-Process -Name notepad
Saída esperada (trecho)
Name        Id   MB
----        --   --
chrome    8120  412
MsMpEng   3304  287
explorer  5516  198
...
Handles  NPM(K)    PM(K)      WS(K)     CPU(s)     Id  SI ProcessName
-------  ------    -----      -----     ------     --  -- -----------
    245      14     3120      18432       0,08  11240   1 Notepad

Equivalente clássico no CMD: tasklist e taskkill /IM notepad.exe.

Linux
ps aux --sort=-%mem | head -6
free -h
sleep 600 &
pgrep -a sleep
kill PID_DO_SLEEP
pgrep -a sleep
Saída esperada (trecho)
USER   PID %CPU %MEM    VSZ   RSS TTY  STAT START TIME COMMAND
aluno 1432  2.1  9.8 2987412 198232 ?  Sl  07:44 0:41 /usr/lib/firefox/firefox
...
               total   used   free  shared  buff/cache  available
Mem:           3,8Gi  1,4Gi  1,1Gi    52Mi       1,3Gi      2,2Gi
[1] 4821
4821 sleep 600
[1]+  Terminated              sleep 600

Troque PID_DO_SLEEP pelo número mostrado pelo pgrep. O & coloca o processo em segundo plano; depois do kill, o último pgrep não mostra nada.

5.2 Logs de erro W11 L10

Windows
Get-WinEvent -FilterHashtable @{LogName='System'; Level=2} -MaxEvents 5
Saída esperada (trecho)
TimeCreated          Id LevelDisplayName Message
-----------          -- ---------------- -------
30/09/2026 07:43:02 10016 Erro           As configurações de permissão específicas do aplicativo...
29/09/2026 18:10:55  7023 Erro           O serviço ... foi encerrado com o seguinte erro...

Level=2 filtra apenas eventos de erro (1 crítico, 3 aviso, 4 informação). A versão gráfica é o Visualizador de Eventos: eventvwr.msc.

Linux
sudo journalctl -p err -b --no-pager | tail -n 10
Saída esperada (trecho)
set 30 07:41:12 lubuntu-vm kernel: vboxvideo: Unknown symbol ...
set 30 07:41:15 lubuntu-vm pulseaudio[912]: Failed to load module ...

-p err mostra só erros e mais graves; -b limita ao boot atual. Em VM é comum aparecerem erros de vídeo e som sem importância. Se não houver nenhum, a saída fica vazia — tire o print assim mesmo.

Para terminar, apague o disco de teste: rm ~/disco_teste.img

6

Comparativo, questões e entrega

Monte a tabela comparativa com os comandos que você usou em cada tarefa e responda as cinco questões com suas palavras, usando as explicações deste tutorial como base. Respostas iguais entre alunos serão zeradas.

Entregue o PDF GSO2_Manutencao_SeuNome.pdf com capa, prints W1–W11 e L1–L10, anotações, tabela e respostas.

Enviar pelo Google Forms

Se algo der errado

MensagemCausa provávelSolução
Acesso negado / requer privilégios elevadosTerminal do Windows aberto sem AdministradorFeche e abra com Win+X > Terminal (Administrador)
winget não é reconhecidoApp Installer ausenteRegistre no PDF; o professor avalia a W9 como não aplicável
Could not get lock /var/lib/dpkg/lock-frontendAtualização automática em andamentoAguarde de 2 a 5 minutos e repita
e2fsck: need terminal for interactive repairsComando executado fora de um terminal interativoRode no QTerminal ou use -y
e2fsck: Bad magic number mesmo com -bNúmero do backup erradoConfira o número na saída do mkfs.ext4 (32768 para 200 MB)
O sfc encontrou arquivos corrompidos e não conseguiu repararRepositório de componentes danificadoRode DISM /Online /Cleanup-Image /RestoreHealth e depois o sfc de novo

Prof. Elton Alex Silva — ETEC Cruzeiro — Caderno de TI

Comentários

Postagens mais visitadas deste blog

Introdução aos Sistemas de Gerenciamento de Banco de Dados

Comandos de Rede via CMD

Introdução ao HTML, CSS e JavaScript - Guia para Iniciantes