Um Analista de Tecnologia da Informação desenvolveu um script em Bash para automatizar a sincronização e a cópia de arquivos entre servidores Linux em um ambiente corporativo.
O script realiza as seguintes operações:
verifica se o diretório de origem existe;
sincroniza arquivos para um servidor remoto, utilizando rsync, preservando permissões e removendo arquivos que não existem mais na origem;
copia um relatório gerado para outro servidor, utilizando scp;
registra a operação em um arquivo de log com timestamp.
#!/bin/bash
SRC="/dados"
DEST="backup@192.168.1.10:/backup/dados"
REPORT="/tmp/relatorio.txt"
REMOTE="admin@192.168.1.20:/relatorios"
LOG="/var/log/backup.log"
if [ ! -d "$SRC" ]; then
echo "Diretório não encontrado"
exit 1
fi
echo "Iniciando sincronização em $(date)" >> $LOG
rsync -avz --delete $SRC $DEST
echo "Backup realizado em $(date)" > $REPORT
scp $REPORT $REMOTE
echo "Processo finalizado em $(date)" >> $LOG
Fonte: dados do elaborador
Analise o código acima e assinale a alternativa que apresenta as afirmações sobre o funcionamento CORRETO do script:
I. O script verifica se o diretório de origem existe antes de iniciar o processo de sincronização.
II. O comando rsync -avz --delete sincroniza os arquivos, preservando permissões, e remove no destino arquivos que não existem mais na origem.
III. O comando scp é utilizado para copiar o arquivo de relatório para outro servidor remoto.
IV. O comando rsync utilizado no script realiza apenas cópia simples de arquivos, sem suporte à sincronização.
V. O comando rsync registra automaticamente todas as operações realizadas em um arquivo de log contendo timestamps.