Gibt es eine Möglichkeit, einen anderen Server als externen Speicher über das Internet zu verwenden, ohne den Speicherplatz lokal zu verwenden?

390
Luke R

Ich arbeite an einem Ubuntu 14.04-Server mit einem sehr guten Prozessor und viel Arbeitsspeicher, jedoch nur einem begrenzten Festplattenkontingent (1 GB). Ich hätte jedoch wirklich gerne Zugang zu weiteren Servern. Ich habe einen weiteren Ubuntu 14.04-Server mit ausreichend Festplattenspeicher Platz, aber ich kann die Arbeit nicht machen, da ich die Rechenleistung und den Speicher benötige.
Meine Frage ist, ob es eine Möglichkeit gibt, etwas Ähnliches wie eine feste Verbindung von einem Server zu einem anderen zu erstellen, was bedeutet, dass, wenn ich einen Ordner "Backups" erstellen würde und das Skript automatisch diesem Ordner hinzufügen würde, alle Dateien hinzugefügt werden Der Ordner sollte auf den anderen Server hochgeladen werden, das Skript kann jedoch immer noch die Dateien auf diesem Server löschen (wie üblich, anstatt spezielle Befehle zu verwenden, kann ich das Skript nicht ändern).

Ich wäre nicht überrascht, wenn dies nicht möglich wäre oder nicht sehr einfach wäre, aber jede Hilfe wäre dankbar! Fühlen Sie sich frei, für weitere Informationen zu kommentieren.

0
Kein Grund, warum nicht, erwarten Sie nicht einen schnellen Zugriff ohne teure Standleitungen. Ich kenne viele Leute, die Dateien auf einem anderen Server verschieben, der in fstab zugeordnet ist, über einen SSH-Tunnel, der unter pfsense / mikrotik ausgeführt wird. Sie können die Dateien mit rsync verschieben der entfernte Server. JohnnyVegas vor 6 Jahren 0
@JohnnyVegas Meine Hauptfrage ist, dass dies einfach zu implementieren ist, ohne dass das Skript geändert werden muss. Ich habe noch nie mit einem der Dinge gearbeitet, die Sie erwähnt haben. Luke R vor 6 Jahren 0
@LukeR Ich glaube nicht, dass Sie nach rsync suchen, da es Dateien auf die lokale Festplatte klont - es gibt Ihnen nicht mehr Speicherplatz. sshfs ist jedoch ganz praktisch und verwende ich an den meisten Tagen. davidgo vor 6 Jahren 0

2 Antworten auf die Frage

1
davidgo

Ich denke, es gibt hier zwei verschiedene Dinge - das Problem, das Sie lösen wollen (einfach) und die Frage, die Sie gestellt haben (schwer).

Wenn Sie unter "Internet" Internet verstehen, ist das Problem einfach und es gibt viele Möglichkeiten, es zu lösen.

  • Verwenden von NFS zum Remote-Bereitstellen eines Verzeichnisses - dies ist wahrscheinlich die "Standardmethode".
  • Durch Verwendung eines FUSE-Dateisystems, z. B. sshfs oder ftpfs
  • Durch Verwenden von SAMBA zum Bereitstellen einer "Windows Filesharing" -Anordnung

    Es gibt auch Möglichkeiten, Remote-Block-Geräte zu mounten, wobei iSCSI, wie von @Hongkie erwähnt, die wichtigste ist, aber eigentlich alles, was "Ziegelsteine" verwendet und das Dateisystem abstrahiert - Glanz, Moosefs usw. - Sie könnten sogar nbd (Network Block Device) verwenden ) - obwohl ich es nicht weiterempfehlen würde.

Die Frage, die Sie tatsächlich gestellt haben - Mit dem Web

Das ist viel schwieriger, aber machbar. Im Allgemeinen würde dies das WebDav-Protokoll verwenden, das eine Erweiterung von HTTP ist, also etwas wie dav2fs

Entschuldigung, ich habe es tatsächlich über das Internet gemeint. Informalität ist eine brutale Sache. Luke R vor 6 Jahren 0
Danke für den Tipp zu sshfs. Könnten Sie dafür die Unterschiede zwischen sshfs und NFS-Mounting anbieten? Luke R vor 6 Jahren 0
Dies sollte eine separate Frage sein - anders als der Fernzugriff auf Dateiebene sind sie völlig unterschiedlich - ssh ist einfach und behandelt verschlüsselt und erfolgt im Benutzerbereich. NFS wird im Kernelbereich ausgeführt, behandelt also Berechtigungen besser, ist jedoch ein komplexeres Protokoll. Ich sehe sshfs als einfachen Hack für die kurzfristige Verwendung, während NFS als strukturiertes Design für die gemeinsame Nutzung von Dateien über ein LAN - WAN - NFS zusätzliche Sicherheit erfordert - wie ein VPN, um es sicher über das Internet auszuführen. davidgo vor 6 Jahren 0
Sie sollten es als selbst beantwortete Frage posten! Und ah okay, das ist großartig, ich sollte denken, dass ssh dafür eine bessere Option wäre, vielen Dank! Luke R vor 6 Jahren 0
@LukeR Das ist aber deine Frage? Ramhound vor 6 Jahren 0
Aber Davidgo ist über die von mir gestellte Unterfrage klar informiert und könnte eine bessere Frage stellen, um sich selbst zu beantworten. Luke R vor 6 Jahren 0
Aber David hat keine Frage. Du bist derjenige mit der Frage. Wenn Sie Ihre andere Frage stellen möchten, sollten Sie sie stellen. Ramhound vor 6 Jahren 0
Möglicherweise. Luke R vor 6 Jahren 0
@davidgo, ich habe eine neue Herausforderung für Sie: Wie kann ich sshfs ohne Sudo verwenden? Viel Glück! Luke R vor 6 Jahren 0
@LukeR sshfs erfordert nicht, dass Sudo funktioniert. Tatsächlich bricht die Verwendung von Sudo wahrscheinlich mehr, als für sshfs-Perms korrigiert wird. Wenn Sie Unterstützung für mehrere Benutzer benötigen, ist NFS wahrscheinlich geeigneter. Wenn Sie ein "Mapping" von einem Benutzer zu einem anderen benötigen, können Sie mit der SSH-Syntax einen anderen Benutzernamen angeben. davidgo vor 6 Jahren 0
Mein Fehler! Ich habe folgende Fehler erhalten: fusermount: Fehler beim Öffnen von /etc/fuse.conf: Berechtigung verweigert fusermount: Option allow_other ist nur zulässig, wenn 'user_allow_other' in /etc/fuse.conf festgelegt ist, aber 'allow_other' jetzt entfernt wurde und nun alle angezeigt werden Arbeiten! Obwohl es scheint, Speicherplatz auf dem lokalen Server zu verwenden? (Wie in, wenn ich -sh das Verzeichnis, gibt mir die Größe des Inhalts.) Luke R vor 6 Jahren 0
Führen Sie ein "df" aus, um zu sehen, ob es eingehängt ist - es sollte eine Zeile mit xxxx: / path beginnen, die auch die Verwendung des FS anzeigt. Ich bin mir nicht sicher, was Sie erwarten würden - natürlich zeigt es die Größe der Dateien, die verarbeitet werden. Der einzige Sinn des Mountings bestand darin, Speicher von einem anderen System zu "pfropfen" und als sichtbar zu machen wenn es lokal wäre. davidgo vor 6 Jahren 0
Ich entschuldige mich natürlich, alles funktioniert gut, vielen Dank! Luke R vor 6 Jahren 0
0
Hongkie

Die Festplattenverbindung wird als iSCSI bezeichnet

Das Endergebnis: Auf dem schnellen Server wird eine lokale Festplatte auf den langsamen Server verweisen. Es ist eine lokale Festplatte aus Ubuntu-Sicht, unabhängig davon, woanders physisch.

Für die vollständige Einrichtung finden Sie hier den Link zu Ubuntu:

http://dalaris.com/how-to-configure-iscsi-target-and-iscsi-initiator-using-ubuntu-14-04-1/

Nicht sicher, warum dies abgelehnt wurde - es ist vielleicht nicht ideal, dass es als Blockgerät präsentiert werden soll, aber es ist eine recht schnelle und praktische Lösung. davidgo vor 6 Jahren 0