FTP mit Netzwerkplatte synchronisieren

chriskatz17

Lt. Commander
Registriert
Juni 2009
Beiträge
1.332
Hallo!

Ich würde gerne Nachts teile von meiner Netzwerkfestplatte mit einem FTP Server im Netz synchronisieren, leider finde ich keine Einstellung dazu bei meiner Festplatte und meinem FTP Server.

Es handelt sich hierbei um eine Bufallo Linkstation Live 1 TB und um ein Strato Powerplus Paket.

Kann mir jemand sagen, ob es da eine einstellmöglichkeit bzw. Programme dafür gibt, die Selbständig ohne eingeschalteten Rechner laufen?

Schonmal danke im voraus
 
Zuletzt bearbeitet:
Erlaubt die Linkstation denn die Ausführung von Programmen? (z.B. mit einem Linux)

Und sind die Daten schützenswert? Dann ist FTP nämlich mangels Verschlüsselung schonmal nicht geeignet.
 
Oder nimm SyncToy von Microsoft ist kostenlos in 32 und bit Bit zu haben.
Das macht genau was du willst in jede richtung.

Nas PC Oder PC Nas ohne einschränkung.

Ein Kumpel sichert seine Musiksammlung damit zur Zeit ca 150.000 Files.
 
Thema verfehlt :)

Die einzige Idee die mir dazu einfällt wäre den FTP-Server der LinkStation zu nutzen, den entsprechenden Port 21 im Router zu öffnen und auf dem Webspace einen Cronjob auszuführen der sich die Daten holt.
Dazu wäre dann noch eine feste Adresse nötig, was sich z.B. mit DynDNS machen lässt.

Ein PHP-Script, das diesen Job macht könnte ungefähr so aussehen:
PHP:
<?php
	header('Content-type: text/plain');

	$ftp_server = "DYNDNS_ADRESSE";	
	print("Verbinde zu Server ".$ftp_server."...");
	if ($cid = ftp_connect($ftp_server))
		print("erfolgreich\n");
	else
		die("fehlgeschlagen");
	
	$username = "BENUTZERNAME";
	$password = "PASSWORT";
	print("Logge ein als ".$username."...");
	if (ftp_login($cid, $username, $password))
		print("erfolgreich\n");
	else
		die("fehlgeschlagen");
	
	print("Gehe in passiven Modus...");
	if (ftp_pasv($cid, true))
		print("erfolgreich\n");
	else
		die("fehlgeschlagen");
		
	$scriptFilename = getenv("SCRIPT_FILENAME");
	$currentDirectory = dirname($scriptFilename);
	$localDir = $currentDirectory."/ftp";
	
	$dirlist = ftp_nlist($cid, "/");
	
	foreach ($dirlist as $remote_file) {
		print("lade ".$remote_file."...");
		
		if (ftp_get($cid, $localDir.$remote_file, $remote_file, FTP_BINARY))
			print("erfolgreich\n");
		else
			print("fehlgeschlagen\n");
	}
	
	ftp_close($cid);
	print("Verbindung getrennt.");
?>

Achtung! Script braucht für den Produktiveinsatz noch Änderungen und ist nur als Beispiel / Proof of Concept gedacht!
 
Zuletzt bearbeitet: (PHP-Script)
Zurück
Oben