Firebird Fehler beim erstellen der Datei, Permission denied
Ich versuche zu schaffen, eine Firebird Datenbank in meinem home-Verzeichnis durch Flamerobin jedoch bekomme ich immer
*** IBPP::SQLException ***
Context: Database::Create
Message: isc_dsql_execute_immediate failed
SQL Message : -902
Unsuccessful execution caused by a system error that precludes successful execution of subsequent statements
Engine Code : 335544344
Engine Message :
I/O error during "open O_CREAT" operation for file "/home/user/test.fdb"
Error while trying to create file
Permission denied
obwohl die Datei chmod 777 die Datei " /etc/firebird/2.5/firebird.conf wurde so geändert, dass:
DatabaseAccess = Full
ist eingestellt, dass der Zugriff auf alle Dateien.
Der Dienst ausgeführt wird:
$ ps ax | grep fireb
3909 ? S 0:00 /usr/sbin/fbguard -daemon -forever -pidfile /var/run/firebird/2.5/fbserver.pid
obwohl seltsamerweise die netstat nicht die port-Anschluss:
netstat | grep 3050
und gibt leere Liste.
Wenn ich eine Verbindung zu einer bestehenden Datenbank alle Werke, zum Beispiel die Verbindung zu
/var/lib/firebird/2.5/system/help.fdb
richtig zeigt Tabellen.
InformationsquelleAutor saimiris_devel | 2015-04-29
Du musst angemeldet sein, um einen Kommentar abzugeben.
Sehe ich zwei mögliche Ursachen:
Du erwähnen, dass die Datei chmod 777, das bedeutet, dass die Datei bereits vorhanden ist, so erstellen Sie eine neue Datenbank schlägt fehl.
Sie versuchen, zu erstellen, (oder verbinden), um eine Datei in einem Benutzer-Ordner (ich nehme an, deine), über den Firebird-server (obwohl in der Tat kein server ausgeführt wird, könnte darauf hindeuten, ist dies nicht der Fall ist).
Ich gehe davon aus, dass der Firebird-server nicht läuft, die unter Ihrem Konto (aber unter der firebird-user), und daher ist es nicht erlaubt, den Zugriff auf Dateien in Ihrem Ordner.
Müssen Sie erstellen (oder access) die Datenbank in eine Lage, wo die Firebird-Benutzer die erforderlichen Zugriffsrechte, oder die Verwendung einer lokalen (eingebetteten) - Verbindung (obwohl ich bin mir nicht sicher, ob das unterstützt wird von flamerobin.
InformationsquelleAutor Mark Rotteveel
Müssen Sie einige Dinge tun... lassen Sie uns zuerst sehen, die security-Kram...
in der Datei
/etc/firebird/2.5/firebird.conf
Abschnitt: DatabaseAccess es muss so sein:
nun, in der Datei
/etc/firebird/2.5/aliases.conf
setzen Sie ein alias und directory...
speichern und starten Sie den firebird-Dienst wie:
müssen Sie das Verzeichnis ändern, Besitzer, wie diese:
und jetzt können Sie mit flamerobin ohne Probleme...
InformationsquelleAutor edgar rodriguez
Check /home/user Eigentümer und Modus und firebird process owner. Ich bin mir ziemlich sicher, dass der Benutzer das ausführen von firebird einfach nicht haben Zugriff auf dieses Verzeichnis.
InformationsquelleAutor Artyom Smirnov
Ich hatte das gleiche problem, wie beschrieben, versucht firebird 2.5 in einer Oracle-Linux-Betriebssystem, können Sie nicht wiederherstellen, die Datenbank mit gbak, gleiche Fehlermeldung.
Nach einer Suche, fand ich eine Antwort sagen, über die Berechtigungen auf dem Ziel-Verzeichnis und im temp-Verzeichnis.
Meine Lösung: als root:
erste re-run firebird installer zu gewähren, dass keine Probleme bei der installation;
nach dem erstellen spezifische Verzeichnis für firebird-Datenbanken auf /(z.B. /fdb),
verschieben Sie die backup-Dateien in dieses Verzeichnis;
ändern Sie Eigentümer des gesamten Verzeichnis zu firebird mit diesem Befehle
danach gbak ist normal für mich, es als root zu starten.
Referenz: http://forums.devshed.com/firebird-sql-development-61/gbak-restore-linux-453690.html
InformationsquelleAutor Luiz Soares