Como posso fazer backup do meu sistema em um servidor remoto (compartilhamento AFP, Samba ou NFS)?

11

Aqui está o objetivo: Eu tenho um servidor de backup com um sistema de arquivos ZFS com compactação e snapshots integrados. Todas as nossas máquinas rsyncfazem backup lá todas as noites e , em seguida, é tirada uma captura instantânea do ZFS; portanto, temos backups de como a máquina de verificação ficava no final de cada dia.

O problema é que, no Mac OS X, os garfos de recursos não são copiados, pois a máquina remota não suporta garfos de recursos. O que eu gostaria de fazer é rsyncum arquivo .DMG que reside no servidor de backup. Dessa forma, eu teria uma imagem exata e inicializável de como meu sistema ficava todas as noites.

Como um bônus, o servidor de backup também é um servidor NetBoot, então isso realmente me permitiria inicializar como estava o meu Mac em qualquer ponto da história.

Criei uma imagem da unidade do meu Mac e a copiei no servidor de backup. Agora, quando eu o abro no meu Mac e corro rsync, ele é executado por um período (às vezes mais de uma hora, às vezes menos) e, em seguida, gera vários erros de E / S. A imagem é armazenada em uma matriz RAID, tenho certeza de que não há erros de E / S.

Acho que a conexão com o compartilhamento Samba pode estar ficando sobrecarregada ... Tentei também com a AFP e obtenho o mesmo resultado ... O que poderia estar causando isso e como posso resolvê-lo? Ou, alguma outra idéia sobre como atualizar o arquivo DMG remoto?

Josh
fonte
3
Em vez de reinventar o TimeMachine usando ferramentas de código aberto / unixy (que eu adoro e amo) - você já pensou em executar o software CrashPlan gratuito em ambas as máquinas? Eles estão oferecendo software muito avançado e bem suportado, se você precisar de ajuda deles.
bmike
Hmmm, eu vou ter que investigar isso! A razão pela qual estou "re-convidando" o TimeMachine, FYI, é que o TimeMachine requer uma grande unidade USB para cada máquina e, em nossa configuração, não temos isso; em vez disso, temos um enorme RAID de backup no local.
21413 Josh
Eu entendo totalmente suas razões. O ZFS é excelente e a reutilização da infraestrutura existente faz muito sentido. Para vários clientes com 10 a 30 macs - o ponto ideal foi um mini servidor mac compartilhando uma unidade para todos os clientes mac do Time Machine. Esse servidor possui um plano de falha no servidor principal para rotações de fita / fora do local (e os pacotes esparsos encapsulam HFS e metadados). O DeployStudio lida com imagens inicializáveis ​​e restaurações na rede. Boa sorte e deixe-nos saber como vai.
bmike
Mais uma sugestão para o CrashPlan de @ bmike. Usa o Hadoop sob o capô e pode fazer incrementais como o TimeMachine. Livre para enviar backups para outra unidade ou computador. A interface do usuário não é tão boa quanto o TimeMachine.
Ian C.
+1 para o plano de colisão. É um excelente software livre e possui o benefício adicional de poder adicionar facilmente mais pontos de backup - incluindo os próprios servidores por uma taxa.
precisa saber é

Respostas:

5

Configure um novo volume na caixa Nexenta / OS para o backup e configure-o para compartilhar como um LUN iSCSI. Em seguida, use um dos vários iniciadores iSCSI para MacOS X para anexar o volume de backup nas costas. No seu mac, formate o volume como HFS +. Agora você pode usar o CCC ou rsync, etc. para fazer seus backups.

tegbains
fonte
2
Esta é uma ideia fantástica. Vou tentar isso depois de terminar o trabalho do dia!
21413 Josh
1
+1 - Eu estava pensando em uma maneira de usar o iSCSI para chegar até lá e encapsular os dados específicos do mac. Quanto menos etapas, melhor.
bmike
Bah! Assim como eu estava escrevendo que este está funcionando muito bem, a conexão foi perdida. Mas ainda tenho esperança para esta solução ...
Josh
@ Josh: Você sabe por que a conexão foi perdida (desconexão física, etc). Você também possui uma NIC separada para sua conexão iSCSI?
tegbains
Não sei o que está causando a perda da conexão, mas como agora acontece com todos os protocolos, AFP, CIFS, NFS e iSCSI, é um problema com o servidor. Eu acho que a transferência de dados está sobrecarregando a máquina virtual e ela não responde ... mas vou fazer outra pergunta, provavelmente na troca de pilhas unix e linux.
Josh
3

Você já pensou em usar o Carbon Copy Cloner ? Eu uso isso em um backup manual de bit a bit do meu SSD em uma unidade de rede uma vez por mês ou mais e funciona perfeitamente. Eu sei que ele faz backups incrementais e não tive problemas para despejar minha unidade na Ethernet gigabit.

alampros
fonte
Infelizmente, quando eu uso CCC para um backup incremental, ele apenas corre rsynce eu obter o mesmo resultado :-(
Josh
Quando você despeja sua unidade na unidade de rede, o que hospeda a unidade de rede? OS X? Linux? Como você se conecta? Samba? AFP? Você usa o CCC direto para a unidade de rede ou vai a um DMG na unidade de rede?
21413 Josh
@ Josh: Você poderia CCC ao montado de imagem de disco
tegbains
Isso é o que eu estava fazendo - e CCC estava correndo rsynce eu estava ficando os mesmos erros de E / S :-(
Josh
2

Não é a resposta exata para sua pergunta, mas você também pode sincronizar os garfos de recursos. Aqui estão realmente bons artigos sobre:

ps: você usa solaris ou freebsd?

Então, o que eu tentei agora:

Eu tenho um sistema operacional remoto (não mac) e montou-o via fuse / sshfs (sobre o ADSL lento).

sshfs [email protected]:/path/to/dir /Users/me/Mount/myfs -oauto_cache,reconnect,volname=MyFs

No meu macbook entrou isso:

/usr/bin/rsync -avE /Users/me/tmp/bk /Users/me/Mount/myfs/tmp/test

(o teste / tmp / já existe no computador remoto)

e entendi:

building file list ... done
bk/
._bk
bk/.DS_Store
bk/._.DS_Store
bk/Icon\#015
bk/._Icon\#015
bk/test.rtfd/
bk/test.rtfd/.LSOverride
bk/test.rtfd/TXT.rtf

sent 311127 bytes  received 186 bytes  15186.00 bytes/sec
total size is 6874  speedup is 0.02

Como você pode ver, os garfos de recursos são convertidos em arquivos dot_underscore e copiados em um local remoto. (por exemplo, o ícone personalizado para o diretório bk também).

Portanto, eu não entendo, por que você não pode fazer o rsync no zfs remoto?

jm666
fonte
1
Não importa o que tentei, não consigo o rsync copiar os forks de recursos, acho que porque o sistema ZFS não os suporta ... Não tenho certeza. Tentei pela primeira vez com um servidor Debian kBSD, mas mudei para o Nexenta (kernel do OpenSolaris + núcleo do Debian) porque ele possui suporte a NFS e Netatalk.
21413 Josh
E o terceiro link? (que mostram um OS / FS solução independendent)
jm666
1
Estou realmente interessado nisso. Aqui está outro link para zfs + timemachine. blogs.oracle.com/constantin/entry/zfs_and_mac_os_x
jm666
Ah, entendo, você está montando o diretório e rsyncing localmente! Eu estava tentando rsync do Mac para o servidor! Vou tentar isso e voltar para você.
21711 Josh
0

Não sei por que , mas a conexão com o servidor estava sendo interrompida durante a cópia do arquivo e estou assumindo que foi porque a grande quantidade de dados transferidos em alta velocidade era mais do que o servidor de backup suportava; deixaria de responder por um curto período e o Mac desconectaria à força o DMG e o backup falharia.

Encontrei uma solução: antes de fazer o backup, nas Preferências do Sistema, reduzi a velocidade da minha placa de rede Ethernet de 1000Mbps para 100Mbps. Então, o backup parecia funcionar perfeitamente, porque a taxa de dados estava restrita e o servidor de backup não ficou sobrecarregado.

Josh
fonte