Como obter o rsync para gravar somente no disco USB e falhar se não estiver montado?

1

Ubuntu 9.10, conectado à unidade USB WD 1.5GB externa, chamada "data_3"

Conectei o cabo USB e tudo ficou bem por muito tempo. Realizava tarefas noturnas no cron, rssiniciando dados através da rede interna.

Após uma queda de energia, após o qual o USB externo não foi iniciado, o trabalho de rsync COPIED os dados para / media / data_3, na unidade interna, que é muito menor e ficou sem espaço.

O script rsync aponta para a unidade USB montada supostamente em / media / data_3, mas quando não existe ele escreve para / media / data_3, na unidade interna.

Como obter o rsync para gravar somente no disco USB e falhar se não estiver montado?

    
por user19496 27.09.2010 / 22:50

2 respostas

0

Você precisará verificar antecipadamente se o disco está montado (via mount e grep ) e, em seguida, o script falhará se não estiver.

    
por 27.09.2010 / 23:03
0

Você pode criar um arquivo no disco externo e testar sua presença antes de executar o rsync.

if [ -e /media/data_3/testfile ]; then rsync /source/directory /media/data_3/destination; fi deve funcionar como uma linha no bash pelo menos. Você pode adicionar uma outra condição para enviar um e-mail se o arquivo não existir (o que significa que a partição não está montada ou não está montada no lugar certo).

    
por 27.09.2010 / 23:09