PhpPgAdmin als 3rd-Party Applikation

Aus Synology Wiki
Wechseln zu: Navigation, Suche

Es steht inzwischen auch ein Community-Paket zur Verfügung.
Hiermit wird phpPgAdmin auf der Synology DiskStation installiert.


Voraussetzungen

Deine DiskStation besitzt die Firmware DSM 2.2-0942 (Ebenfalls getestet in DSM 2.3 & 3.0)

  • Windows-Netzwerk ist eingerichtet,
  • Terminaldienste SSH und Telnet sind eingeschaltet,
  • Du hast Erfahrung mit dem Betrieb des Webservers,
  • kennst dich mit Telnet, SSH und den Programmen Putty und dem Editor VI aus.

VI Befehlsreferenz

Hier ist kleine Hilfe zur Bedienung und Befehlsreferenz für den VI Editor. Etwas ausführlicher: Der Editor vi

vi beispieldatei.conf – Editor starten.
i – Umschalten von Befehlsmodus (Ansichtsmodus) auf Editormodus
Esc – Umschalten von Editormodus zum Befehlsmodus
:w – Datei speichern
:q – Programm verlassen

Willst du die geöffnete Datei editieren musst du „i“ drücken, willst sie speichern - „Esc“ und „:w“

Installation von phpPgAdmin

In der File Station den Ordner /web/phppgadmin anlegen.

Per Windows-Netzwerk die heruntergeladene und entpackte phpPgAdmin-Version in den Ordner kopieren. Link zu phpPgAdmin

Per File Station kontrollieren. Die entpackten Dateien sollen im Ordner /web/phppgadmin liegen.

Weiter mit Telnet:

- Telnet und SSH aktivieren

- Mit dem Programm Putty als root auf der DS anmelden

Ausführen:

Anschauen, wo man sich befindet. Es sollte Verzeichnis root sein.

dir

Da phpPgAdmin nur aus dem Verzeichnis /usr/syno/synoman/phpsrc läuft muss das Verzeichnis verschoben werden. Sonst wirst du dich bei phpPgAdmin nicht anmelden können.

Verzeichnis verschieben:

mv /volume1/web/phppgadmin /usr/syno/synoman/phpsrc

Ins Verzeichnis wechseln

cd /usr/syno/synoman/phpsrc

Rechte setzen damit die Dateien nicht nur von root sondern auch von Apache gelesen werden können.

chmod 755 -R phppgadmin

Nun muss noch die Konfigurationsdatei für phpPgAdmin aus der Vorlage angelegt werden.

cp /usr/syno/synoman/phpsrc/phppgadmin/conf/config.inc.php-dist /usr/syno/synoman/phpsrc/phppgadmin/conf/config.inc.php

Wer möchte kann die Einstellungen in der Datei config.inc.php mittels dem weiter unten genutzten vi noch anpassen. Für die Exportfunition benötigt phpPgAdmin korrigierte Pfadangaben für die "database dump utilities". Für die Diskstation sind das /usr/syno/pgsql/bin/pg_dump und /usr/syno/pgsql/bin/pg_dumpall. Zu empfehlen ist auch die Anpassung des "Display name" von PostgreSQL nach Synology-System. Zunächst kann man das alles erst mal auf dem Standard belassen und zum nächsten Punkt übergehen.


Dem Apache mitteilen, dass der Ordner gestartet werden muss. Dazu muss die Konfigurationsdatei httpd-autoindex.conf-user angepasst werden. In des Verzeichnis wechseln.

cd /usr/syno/apache/conf/extra/

Datei zum Editieren mit dem Editor vi öffnen.

vi httpd-autoindex.conf-user

Mit der Taste "i" in den Editormodus umschalten. Zeile hinzufügen (nach der Zeile Alias):

Alias /phppgadmin/ "/usr/syno/synoman/phpsrc/phppgadmin/"

mit "Esc" - Editor-Modus verlassen mit ":w" speichern mit ":q" beenden

Apache-Server neu starten:

/usr/syno/etc/rc.d/S97apache-user.sh restart

Installation eines Menüpunktes in DSM 2.2

Hier wird ein neuer Menüpunkt im Bereich "Third-party-applications" angelegt.

In root Verzeichnis wechseln

cd

Verzeichnis erstellen

mkdir /usr/syno/synoman/webman/3rdparty/phpPgAdmin

Ins Verzeichnis wechseln

cd /usr/syno/synoman/webman/3rdparty/phpPgAdmin

Datei erstellen

touch application.cfg

Mit dem VI-Editor öffnen

vi application.cfg

i - Bearbeitungsmodus

In die Datei einfügen:

text = phpPgAdmin
description = phpPgAdmin
type = popup
protocol = http
address = localhost
port = 80
path = /phppgadmin/index.php

Mit "Esc" - Editor-Modus verlassen ":w" - Speichern ":q" - Editor verlassen

Installation eines Menüpunktes in DSM 3.0

Hier wird ein neuer Menüpunkt auf dem Desktop bzw. in der Applikationsliste angelegt.

In root Verzeichnis wechseln

cd

Verzeichnis erstellen

mkdir /usr/syno/synoman/webman/3rdparty/phpPgAdmin

Ins Verzeichnis wechseln

cd /usr/syno/synoman/webman/3rdparty/phpPgAdmin

Datei erstellen

touch config

Mit dem VI-Editor öffnen

vi config

i - Bearbeitungsmodus

In die Datei einfügen:

{
".url": {
	"com.sourceforge.phpPgAdmin": {
		"type": "legacy",
		"allUsers": false,
		"title": "phpPgAdmin",
		"desc": "PostgreSQL Adminstration in PHP",
		"icon": "images/PgAdmin_{0}.png",
		"url": "http://DeineDS/phppgadmin/index.php"
		}
	}
}

(Der Wert "legacy" führt zu einem Fenster innerhalb der Admin-Oberfläche, alternativ kann man dort "url" eintragen wodurch ein separates Fenster geöffnet wird.)

Mit "Esc" - Editor-Modus verlassen ":w" - Speichern ":q" - Editor verlassen

Passende Icons

Für das DSM 3.x werden die Icons im Format PNG mit Alphakanal in den Grössen 48x48, 32x32, 24x24 und 16x16 Pixel benötigt.

Verzeichnis erstellen

mkdir /usr/syno/synoman/webman/3rdparty/phpPgAdmin/images

und in das Verzeichnis das gewünschte Icon als PNG Graphiken kopieren. Zuvor die Bilder entsprechend der erstellten config Datei als PgAdmin_{0}.png benennen. Die {0} fungiert als Platzhalter für die Bildgrösse. Die passenden Dateinamen sind also entsprechend PgAdmin_48.png, PgAdmin_32.png, etc.

Ein Satz Icons als Beispiel zum Download:
Fehler beim Erstellen des Vorschaubildes: Die Miniaturansicht konnte nicht am vorgesehenen Ort gespeichert werden
Fehler beim Erstellen des Vorschaubildes: Die Miniaturansicht konnte nicht am vorgesehenen Ort gespeichert werden
Fehler beim Erstellen des Vorschaubildes: Die Miniaturansicht konnte nicht am vorgesehenen Ort gespeichert werden
Fehler beim Erstellen des Vorschaubildes: Die Miniaturansicht konnte nicht am vorgesehenen Ort gespeichert werden

Verzeichnis absichern

Für mich habe ich zusätzlich die Seite von außen gesperrt. Dabei wird der Zugriff nur von dem Netzwerk 192.168.178.0 (Fritz!Box DHCP-Server) gestattet. Dazu habe ich eine Datei .htaccess im Ordner /usr/syno/synoman/phpsrc/phppgadmin/ angelegt mit folgendem Inhalt:


Hier ist die Absicherung:

Ins Verzeichnis wechseln:

cd /usr/syno/synoman/phpsrc/phppgadmin/

Datei anlegen:

touch .htaccess

Datei editieren:

vi .htaccess

VI Editor-Modus: i

Aufruf auf das lokale Netzwerk (hier 192.168.178.0) begrenzen:

Order Deny,Allow
Deny from all
Allow from 192.168.178

Mit "Esc" Editormodus verlassen. ":w" abspeichern, ":q" VI verlassen.


Eventuell Apache neu starten:

cd
/usr/syno/etc/rc.d/S97apache-user.sh restart

phpPgAdmin starten und anmelden

Zum Starten des phpPgAdmin kann man entweder einfach auf den gerade erstellten Menulink klicken, oder direkt über den Link aufrufen

http://DeineDS/phppgadmin/index.php

Zum Anmelden an die Systemdatenbank gilt:

Benutzername: admin
Passwort: adminpasswort