Acordar automaticamente cadernos não na rede ethernet

4

Estou à procura de um sistema de backup automático e gosto de bacula. Eu tenho 3 notebooks e um computador desktop que precisam de backup regular. Agora eu não quero deixá-los correr a noite toda apenas para fazer o backup, então eu estava pensando que poderia usar o wake-on-lan para que baculas acordassem as máquinas, depois fizessem os backups e os desligassem depois. Embora isso possa funcionar com dispositivos na ethernet, ele não funcionará com os notebooks do Wi-Fi. Então, é possível ter os agendamentos do Notebooks para ativar automaticamente a partir da suspensão ou desligamento?

Ou é possível inserir um comando de desligamento se ele estiver após uma determinada hora e ligar para o diretor bacula para iniciar o backup agora?

Eu sou novo em controlar o sistema linux usando scripts, então qualquer sugestão sobre como e onde começar é muito apreciada.

Muito obrigado pela sua ajuda, sugestões e ideias.

    
por gletscher 24.03.2010 / 14:35

5 respostas

2

Portanto, esta é a minha solução de backup e consiste em dois scripts:

1.) eu substitui o padrão     / usr / lib / hal / scripts / hal-system-power-suspend script com o código a seguir para garantir que toda vez que o computador for suspenso (por exemplo, fechar a tampa), ele será ativado para o backup:

#!/bin/sh

#Determine when to wake up computer
waketime="01:30"
waketimesec="0"

if [ 'date --date=$waketime +%s' -gt 'date +%s' ]
then
  echo today
  waketimesec='date --date=$waketime +%s'
else
  echo tomorrow
  waketimesec='date --date="tomorrow $waketime" +%s'
fi


#Determine switch sleep modus to choose
state='cat /proc/acpi/ac_adapter/AC0/state | grep on-line'
if [ "$state" = '' ]
then
  echo Computer on battery mode
  sudo /usr/sbin/pm-suspend           
else
  echo Computer on AC mode
  sudo rtcwake -m mem -t $waketimesec

  state='cat /proc/acpi/ac_adapter/AC0/state | grep on-line'
  if [ "$state" = '' ]
  then
  sudo /usr/sbin/pm-suspend
  fi
fi

Observe que nenhum backup será feito se o adaptador CA for desconectado e o computador estiver funcionando com bateria.

2.) O segundo script faz o backup real e é acionado pelo cron alguns minutos após o wake-up. Ele ativa o computador de destino remoto, monta um compartilhamento smbfs, executa um backup diferencial usando o backintime e desliga o computador remoto e, em seguida, coloca o PC local de volta ao modo de suspensão:

#!/bin/bash
echo Wake up destination computer and sleep...
wakeonlan <mac_address>
date
echo ..sleep for 90s #the time your computer needs to boot and start smb
sleep 90
echo Mounting share..
sudo smbmount //<ip_address>/backup_folder /home/<user>/local_folder/ -o username=<user>,password=<pass>,file_mode=0777,dir_mode=0777,uid=1000,user
echo ..share mounted!
echo Starting backup!
backintime --backup > backintime.log
echo Backup finished, giving it time to settle..
sleep 10
echo Unmounting share..
sudo smbumount /home/<user>/local_folder/
sleep 5
echo Shutdown remote computer...
ssh '<user>@<ip_address>' "sudo shutdown -h now"
echo Going back to sleep..
/usr/lib/hal/scripts/hal-system-power-suspend

Para cada comando sudo use visudo para conceder direitos de superusuário. Use autorização de chave pública para evitar prompts de senha no comando ssh.

Agora você tem backups novos todas as noites com consumo mínimo de energia. Espero que isso ajude alguém.

    
por 26.03.2010 / 23:01
2

Minha resposta não foi movida do SO. Hunh.

O comando que você pode querer pesquisar é apmsleep , embora possa ser específico do Debian.

    
por 24.03.2010 / 15:01
0

Então, é possível ter os agendamentos do Notebooks para ativar automaticamente a suspensão ou o desligamento?

Sim, é possível. Eu fiz isso há muito tempo - no entanto, eu não consigo lembrar exatamente como, mas não foi difícil, pelo que eu lembro, havia um arquivo de configuração que você simplesmente editou.

Tente ver a configuração do kernel, deve ser relacionado ao APM / ACPI. Boa sorte.

EDIT: Encontrado o comando, é apmsleep . Eu acho que é isso que você está procurando.

    
por 24.03.2010 / 14:49
0

Esse problema é bem conhecido pelos usuários de sistemas PVR domésticos baseados em Linux como MythTV (eles querem que sua máquina de gravação de vídeo acorde quando há algo para gravar) e o wiki MythTV dá muita informação sobre este tópico: < href="http://www.mythtv.org/wiki/System_wakeup"> link

    
por 24.03.2010 / 15:36
0

A maneira mais fácil de realizar isso, provavelmente seria definir o temporizador de ativação no BIOS. Assim, o computador sempre inicializa no tempo de backup. E, em seguida, escreva um script para garantir que ninguém esteja conectado e o backup seja concluído para um desligamento.

    
por 25.03.2010 / 13:36