Yet Another Blog

Entradas com Etiqueta ‘Time Machine’

Time Machine no Tiger ou no Linux

Segunda-feira, 15 de Setembro de 2008

Há algum tempo atrás, depois de começar a usar um MacBook como a minha máquina principal, decidi voltar a meter o Tiger no meu PowerBook. Tendo em conta o pouco uso que lhe dou actualmente, chega perfeitamente. A única funcionalidade que senti mesmo falta, foi a Time Machine.

Tendo em conta que era uma funcionalidade que também me dava jeito no Linux, decidi investigar um pouco, para ver se encontrava alguma alternativa. Depois de ler isto e isto, consegui perceber o funcionamento da Time Machine. As scripts apresentadas nos sites indicados, tinha o problema de não fazer uma gestão tão elaborada dos backups antigos como a Time Machine. Assim, decidi fazer uma script um pouco mais completa.

O resultado final pode ser encontrado aqui.

É uma script Perl, que faz backups incrementais (usando o rsync), e que apenas apaga os antigos, caso seja usada uma opção disponível para esse efeito. A estratégia seguida para apagar backups antigos é semelhante à seguida na Time Machine: backups das últimas 24 horas, backups diários dos últimos 30 dias, e backups semanais no resto (no entanto, alterando algumas varáveis na script, podemos adaptar isto às nossas necessidade).

Para ter a script a correr de hora em hora, é só adicionar uma entrada no cron (o ideal seria usar o launchd, mas estava a ter alguns problemas com esta alternativa).

NOTA: A script foi testada em Linux (Debian 4.0) e em MacOSX, estando, aparentemente, a funcionar sem problemas. Ainda assim, recomendo algum cuidado com a sua utilização, pois pode conter bugs. Deverá funcionar em qualquer sistema UNIX, mas não testei em mais nenhum, para além dos 2 anteriormente citados.

Time Machine e SMB

Terça-feira, 29 de Julho de 2008

Depois de alguns dias de luta, finalmente consegui pôr a Time Machine a fazer backups para o disco do router!

Primeiro comecei por tentar usar SMB, e depois alguns problemas com permissões, lá consegui montar o volume com permissões de escrita. No entanto, quando tentava fazer o backup, dava sempre erro.
Depois, tentei pôr Netatalk a funcionar no router, para partilhar o disco por AFP, que sendo o protocolo da Apple, funcionaria de certeza com a Time Machine. Apesar de ter conseguido instalar o software necessário, nunca consegui arrancá-lo.
Depois virei-me para o NFS, e depois de muito tempo perdido de volta do ficheiro de configuração (mais uma vez, para acertar permissões), e de mais algum tempo de volta de um problema que fazia com que não conseguisse montar o volume no MacOSX, lá consegui ter o disco disponível. Mais uma vez, quando fui tentar usar a Time Machine com o disco, não consegui.
Pelo meio, ainda tentei usar FTP, mas a Time Machine nem aceitava o volume.

Resolvi então voltar a virar-me para o SMB (por ser o mais simples de pôr a funcionar no router), e tentar resolver o erro da Time Machine. Foi então que cheguei a este site, e depois de mais algumas hora, lá consegui fazer o backup!

Ficam então aqui os passos necessários para se pôr a Time Machine a usar um volume SMB.

O primeiro passo é, obviamente, pôr o SMB disponível, com permissões de escrita. Por omissão, a Time Machime não vai ver este volume, e não o poderemos escolher. Para corrigir este problema, basta executar o comando:

defaults write com.apple.systempreferences TMShowUnsupportedNetworkVolumes 1

Agora já podemos escolher o volume nas preferências da Time Machine. No entanto, no meu caso, quando tentava fazer o backup, depois de algum tempo em preparação, obtinha um erro a dizer que não conseguia criar a imagem.

Para resolver este problema, a solução parece ser criar uma sparsebundle image para a Time Machine usar. Isso pode ser feito através do Terminal, com o comando:

hdiutil create -size <tam>g -fs HFS+J -type SPARSEBUNDLE -volname <nome_vol> <nome_comp>_<mac_addr>.sparsebundle

Onde:

  • <tam> é o tamanho da imagem a criar, e será o tamanho máximo disponível para os backups (neste caso, a unidade é GB)
  • <nome_vol> é o nome que vamos dar à imagem (este parâmetro não é muito relevante)
  • <nome_comp> é o nome do computador (pode ser visto em System Preferences > Sharing)
  • <mac_addr> é o mac address da placa ethernet

No meu caso, fiquei com um comando semelhante a este:

hdiutil create -size 20g -fs HFS+J -type SPARSEBUNDLE -volname "Backup rcg" rcg_003f3baf65f1.sparsebundle

Depois disso, move-se a imagem criada para o volume onde queremos fazer os backups (não é boa ideia criar a imagem directamente onde vamos fazer backup, pois o processo será mais lento).

Supostamente, isto devia ser suficiente para os backups passarem a funcionar… No meu caso, ainda estava a obter um erro, a dizer que não conseguia montar o volume. Só quando desconectei o volume é que os backups deixaram de dar problemas (isto é um pouco estranho, mas pronto).

E é isto, agora já não preciso de passar a vida a ligar e desligar o disco externo. A velocidade não é grande coisa, mas se não fizerem grandes alterações às pastas que fazem backups, deve ser suficiente.
De referir que já li alguns relatos de erros que levaram à perda dos backups, por isso, se estes forem muito importantes para vocês, recomendo que não usem (apenas) este método.

Time Machine

Segunda-feira, 14 de Abril de 2008

Continuando a série de posts sobre o Leopard (que instalei recentemente), desta vez venho fazer algumas observações sobre a Time Machine.

É sem dúvida uma das novidades de destaque desta nova versão do Mac OS X, e é notável a forma como a Apple consegue pôr qualquer leigo em informática a manter um histórico de backups bem planeado, sem qualquer dificuldade (se bem que uma Time Capsule dava jeito para não ter que se andar sempre a ligar o disco externo).

Depois, a interface de navegação nos backups também me parece bem conseguida, sendo bastante intuitiva, e tendo um aspecto bastante agradável. Pois… mas mais uma vez, este agradável é muito bonito para quem tiver uma boa máquina. Não sei se existe alguma opção para simplificar a interface, tornado o mecanismo mais usável, eu pelo menos ainda não vi nada, e sem ela, tentar recuperar um ficheiro usando a Time Machine, é uma valente dor de cabeça.

PS: Presumo que nas máquinas mais recentes este problema não se levante, pois se assim não for, parece-me uma falha grave da Apple.