PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : rsync von Linux auf Win2k



schnebeck
21.10.03, 08:57
Hi!

Ich habe ein Problem mit NTFS. Zur Ausnutzung einer sehr leistungsfähigen Backupstruktur möchte ich die Platten eines Linuxservers in ein Backup-Verzeichnis eines Win2000-Servers kopieren. Da das ganze über das Netzwerk geht, hätte ich das gerne per rsync gemacht.

Dazu habe ich auf dem Win2000-Server cygwin + sshd + rsync installiert und setze den rsync-Befehl von der Linuxmaschine ab. Das klappt auch im Prinzip prima, bis auf ca. 200 Dateien, die einen Doppelpunkt im Dateinamen haben, der ist nämlich unter NTFS verboten und rsync mault rum. Ebenfalls wird nicht zwischen Groß- und Kleinschreibung unterschieden, somit lassen sich die Dateien "test" und "Test" nicht per rsync sichern.

Nun könnte ich auch per "tar" das ganze System übertragen, aber jede Nacht 9 GB Daten zu übertragen, wenn sich vielleicht 200MB Daten geändert haben, ist auch nicht so sinnvoll.

Als Alternative sehe ich, zuvor mit "find" die Dateien mit Doppelpunkt auszusortieren und sepatat als tar-Archive zu übertragen, bleibt das Problem mit der Schreibung - aber vielleicht kennt ihr ja eine bessere Lösung.

Am liebsten würde ich unter cygwin eine Datei erzeugen, diese Datei als virtuelle Platte z.B. als ext2 mounten und rsync ohne Dateinamensprobleme ausführen. Dann die virtuelle Platte unmounten und die Datei dem Windows-Backup-System übergeben. Geht sowas?

Bye

Thorsten

Hitman
21.10.03, 09:21
Unison is a file-synchronization tool for Unix and Windows.
http://www.cis.upenn.edu/~bcpierce/unison/

schnebeck
21.10.03, 11:17
Gleiches Problem!
Aus der Doku:

Cross-Platform Synchronization

If you use Unison to synchronize files between Windows and Unix systems, there are a few special issues to be aware of.

Case conflicts. In Unix, filenames are case sensitive: foo and FOO can refer to different files. In Windows, on the other hand, filenames are not case sensitive: foo and FOO can only refer to the same file. This means that a Unix foo and FOO cannot be synchronized onto a Windows system --- Windows won't allow two different files to have the ``same'' name. Unison detects this situation for you, and reports that it cannot synchronize the files.

You can deal with a case conflict in a couple of ways. If you need to have both files on the Windows system, your only choice is to rename one of the Unix files to avoid the case conflict, and re-synchronize. If you don't need the files on the Windows system, you can simply disregard Unison's warning message, and go ahead with the synchronization; Unison won't touch those files. If you don't want to see the warning on each synchronization, you can tell Unison to ignore the files (see the Ignore section).

Illegal filenames. Unix allows some filenames that are illegal in Windows. For example, colons (`:') are not allowed in Windows filenames, but they are legal in Unix filenames. This means that a Unix file foo:bar can't be synchronized to a Windows system. As with case conflicts, Unison detects this situation for you, and you have the same options: you can either rename the Unix file and re-synchronize, or you can ignore it.

Weitere Ideen?

Bye

Thorsten

Hitman
21.10.03, 15:05
Hi Thorsten,

dann bleibt dir doch wohl nur "tar" als imkrementelles Backup übrig.

Siehe: http://www.selflinux.org/selflinux/html/backups03.html Punkt 3.2.

Gruß

Bernd