GNU/Linux >> LINUX-Kenntnisse >  >> Ubuntu

Wartung entfernter Websites mit Sitecopy unter Ubuntu 16.04

sitecopy ist ein Tool zum Kopieren lokal gespeicherter Websites auf einen entfernten Webserver (unter Verwendung von FTP oder WebDAV). Es hilft Ihnen, die Remote-Site mit Ihrer lokalen Kopie zu synchronisieren, indem geänderte lokale Dateien hochgeladen und Remote-Dateien gelöscht werden, die auf dem lokalen Computer gelöscht wurden. Dieses Tutorial zeigt, wie Sie Ihre Remote-Website von Ihrem lokalen Ubuntu 16.04-Desktop mit Sitecopy verwalten können.

1 Vorbemerkung

Ich verwende den Benutzernamen bis auf meinem lokalen Ubuntu-Desktop (ich bin auf meinem lokalen Linux-Desktop als dieser Benutzer angemeldet – bitte melden Sie sich nicht als Root an). Die Dateien für die entfernte Website example.com werden im Verzeichnis /home/till/sites/example.com/ auf dem lokalen Rechner gespeichert. Das entfernte Dokumentenstammverzeichnis ist /var/www/example.com/web/.

Sie können Sitecopy mit FTP und WebDAV verwenden, daher sollten Sie entweder ein FTP- oder ein WebDAV-Konto auf dem Remote-Server haben. Ich verwende den FTP-Nutzernamen defaulttill und das Passwort howtoforge hier.

Die Remote-Website, die ich für diese Beispiele verwende, wurde mit ISPConfig erstellt. Aber jede Site, auf die Sie FTP- oder WebDAV-Zugriff haben, funktioniert.

2 Sitecopy installieren

Sitecopy kann wie folgt auf dem lokalen Desktop installiert werden (wir benötigen Root-Rechte, daher verwenden wir sudo):

sudo apt-get -y install sitecopy

Sie sollten sich jetzt die Manpage von sitecopy ansehen, um sich mit den Optionen vertraut zu machen:

man sitecopy

3 Sitecopy konfigurieren

Wechseln Sie in Ihr Home-Verzeichnis auf dem lokalen Desktop...

CD ~

... und erstellen Sie das Verzeichnis .sitecopy mit den Berechtigungen 700 (sitecopy verwendet dieses Verzeichnis, um Dateidetails zu speichern):

mkdir -m 700 .sitecopy

Als nächstes erstellen Sie die Sitecopy-Konfigurationsdatei .sitecopyrc:

touch .sitecopyrc
chmod 600 .sitecopyrc

Öffnen Sie die Datei...

nano .sitecopyrc

... und füllen Sie die Konfiguration für die Seite example.com aus. Hier sind zwei Beispiele, eines für FTP...

site example.com server example.com username defaulttill password howtoforge local /home/till/sites/example.com/ remote ~/web/ Exclude *.bak Exclude *~

... und eine für WebDAV:

site example.com server example.com protocol webdav username defaulttill password howtoforge local /home/till/sites/example.com/ remote /var/www/example.com/web/ Exclude *.bak Exclude *~ 

(Sie können für jede Website, die Sie mit sitecopy verwalten möchten, eine Strophe definieren.)

Der Site-Direktive muss ein Name für die Website folgen - Sie können einen frei wählen, z. example.com oder mysite. Dieser Name wird später in den Sitecopy-Befehlen verwendet. Die folgenden Konfigurationsoptionen, die zu dieser Site gehören, müssen eingerückt werden!

Die meisten der folgenden Konfigurationsoptionen sind selbsterklärend. Das Standardprotokoll ist FTP; Wenn Sie WebDAV verwenden möchten, geben Sie bitte das Protokoll webdav an. Die Direktive local enthält den lokalen Pfad der Website-Kopie, remote enthält den Pfad der Website auf dem Remote-Server – er kann absolut oder relativ sein. Wenn Ihr Benutzer chrooted ist (wie es normalerweise bei FTP-Benutzern der Fall ist), sollten Sie einen relativen Pfad verwenden (wie etwa ~/ oder ~/web). Verwenden Sie andernfalls einen absoluten Pfad.

Die Exclude-Zeilen sind optional, sie dienen nur dazu, zu demonstrieren, wie Sie Dateien von der Wartung durch Sitecopy ausschließen können.

Weitere Informationen zur Sitecopy-Konfiguration finden Sie auf der Manpage:

man sitecopy

4 Erste Nutzung

Bevor Sie Sitecopy zum ersten Mal verwenden, müssen Sie entscheiden, welches der folgenden drei Szenarien zu Ihrer Situation passt:

  1. Vorhandene Remote-Site und lokale Kopie, beide synchron.
  2. Vorhandene Remote-Site, keine lokale Kopie.
  3. Neue Remote-Site, bestehende lokale Kopie.

4.1 Existierende Remote-Site und lokale Kopie, beide synchron

Wenn sowohl die Remote-Site als auch die lokale Kopie vorhanden und synchronisiert sind, führen Sie

aus
sitecopy --catchup example.com

um Sitecopy glauben zu machen, dass die lokale Site genau dieselbe ist wie die Remote-Kopie. Ersetzen Sie example.com durch den Namen der Site, die Sie in der Datei .sitecopyrc verwenden.

[email protected]:~$ sitecopy --catchup example.com
sitecopy:Website `example.com' aufholen (auf example.com in ~/web/)
sitecopy:Alle Dateien und Verzeichnisse werden als remote aktualisiert markiert.

4.2 Existierende Remote-Site, keine lokale Kopie

Wenn Sie keine lokale Kopie der vorhandenen Remote-Website haben, führen Sie

aus
sitecopy --fetch example.com

zuerst, damit sitecopy die Liste der Dateien vom Remote-Server abruft (ersetzen Sie example.com durch den Namen der Site, die Sie in der Datei .sitecopyrc verwenden):

[email protected]:~$ sitecopy --fetch example.com
sitecopy:Abrufen der Website „example.com“ (auf example.com in ~/web/)
Datei:error/503 .html - Größe 1906
Datei:error/502.html - Größe 1881
Datei:error/500.html - Größe 1851
Datei:error/405.html - Größe 1810
Datei:error/404.html - Größe 1806
Datei:error/403.html - Größe 1809
Datei:error/401.html - Größe 1806
Datei:error/400.html - Größe 1792
Datei:stats/.htaccess - Größe 128
Datei:robots.txt - Größe 14
Datei:index.html - Größe 1861
Datei:favicon.ico - Größe 7358
Datei:.htaccess - Größe 26
Verzeichnis:Fehler/
Verzeichnis:Statistik/
Sitecopy:Abruf erfolgreich abgeschlossen.

Dann ausführen

sitecopy --synch example.com

um die lokale Site von der Remote-Kopie aus zu aktualisieren.

sitecopy:Website `example.com' wird synchronisiert (auf example.com in ~/web/)
Erstellungsfehler/:erledigt.
Erstellung von Statistiken/:erledigt.
Fehler beim Herunterladen/ 503.html:[.] fertig.
Download error/502.html:[.] done.
Download error/500.html:[.] done.
Download error/405. html:[.] fertig.
Download error/404.html:[.] done.
Download error/403.html:[.] done.
Download error/401.html:[.] fertig.
Herunterladen von error/400.html:[.] fertig.
Herunterladen von Statistiken/.htaccess:[.] fertig.
Herunterladen von robots.txt:[.] fertig.
Download von index.html:[.] erledigt.
Download von favicon.ico:[.] erledigt.
Download von .htaccess:[.] erledigt.
Sitecopy:Synchronisierung erfolgreich abgeschlossen .

4.3 Neue Remote-Site, vorhandene lokale Kopie

Wenn die lokale Kopie vorhanden ist, Sie aber eine leere Remote-Site haben, führen Sie

aus
sitecopy --init example.com

zuerst, um die Seite zu initialisieren. Ersetzen Sie example.com durch den Namen der Site, die Sie in der Datei .sitecopyrc verwenden.

[email protected]:~$ sitecopy --init example.com
sitecopy:Initialisierung der Website "example.com" (auf example.com in ~/web/)
sitecopy:Alle Dateien und Verzeichnisse werden als NICHT remote aktualisiert markiert.

Führen Sie dann Folgendes aus:

sitecopy --update example.com

So laden Sie die lokale Kopie auf die Remote-Site hoch:

[email protected]:~$ sitecopy --update example.com
sitecopy:Aktualisieren der Website "example.com" (auf example.com in ~/web/)
Statistiken erstellen/:fertig .
Erstellen von Daten/:erledigt.
Erstellen von Fehlern/:erledigt.
Hochladen von Statistiken/.htaccess:[.] erledigt.
Hochladen von Daten/index.html:[.] fertig.
Upload error/403.html:[.] done.
Upload error/401.html:[.] done.
Upload error/404.html:[.] done.
Uploading error/503.html:[.] done.
Uploading error/400.html:[.] done.
Uploading error/502.html:[.] done.
Uploading error/405.html:[.] done.
Uploading error/500.html:[.] done.
Uploading index.html:[.] done.
Uploading robots .txt:[.] fertig.
Hochladen von .htaccess:[.] fertig.
Hochladen von favicon.ico:[.] fertig.
sitecopy:Update erfolgreich abgeschlossen.

5 Sitecopy verwenden

Danach ist die Sitecopy-Nutzung wirklich einfach. Sie können mit Ihrer lokalen Kopie arbeiten und Dateien aktualisieren, erstellen und löschen. Ein erster, aber optionaler Schritt ist die Ausführung

Sitecopy-Beispiel.com

um herauszufinden, welche Dateien sich lokal geändert haben (ersetzen Sie example.com durch den Namen der Site, die Sie in der .sitecopyrc-Datei verwenden):

[email protected]:~$ sitecopy example.com
sitecopy:Änderungen an der Website "example.com" anzeigen (auf example.com in ~/web/)
* Diese Elemente wurden hinzugefügt seit dem letzten Update:
info.php
sitecopy:Die Remote-Site muss aktualisiert werden (1 Element muss aktualisiert werden).

Um Ihre Remote-Website mit Ihrer lokalen Kopie zu synchronisieren (d. h. neue und geänderte Dateien auf den Remote-Server hochzuladen und Dateien auf dem Remote-Server zu löschen, die lokal gelöscht wurden), führen Sie einfach

aus
sitecopy --update example.com
[email protected]:~$ sitecopy --update example.com
sitecopy:Aktualisieren der Website "example.com" (auf example.com in ~/web/)
Hochladen von info.php:[] erledigt.
sitecopy:Update erfolgreich abgeschlossen.

Das ist es! Viel Spaß mit Sitecopy!

  • Sitecopy:http://www.manyfish.co.uk/sitecopy/
  • Ubuntu:http://www.ubuntu.com/

Ubuntu
  1. Remote-Desktop-Sharing mit NoMachine auf Ubuntu 20.04 Focal Fossa

  2. Spiegeln Sie Ihre Website mit rsync

  3. Fernwartung von Websites mit Sitecopy auf Ubuntu 18.04

  4. So installieren Sie den Cherokee-Webserver mit PHP5 und MySQL unter Ubuntu 11.04

  5. Richten Sie Apache für mehrere Benutzer auf Ubuntu mit dem Modul userdir ein

So richten Sie WordPress Multisite mit Apache Web Server auf Ubuntu ein

Installieren von AWStats (Advanced Web Statistics) auf Ubuntu 18.04 mit Apache

Installieren Sie Matomo Web Analytics (Piwik) auf Ubuntu 18.04 mit Apache/Nginx

Installieren Sie Matomo Web Analytics (Piwik) auf Ubuntu 20.04 mit Apache/Nginx

So installieren Sie Calibre Web auf Ubuntu 20.04 mit Docker

Ruby on Rails auf Azure App Service (Websites) mit Linux (und Ubuntu auf Windows 10)