I have two machines this is happening on now, and can't figure out why or what I've done wrong. They're both OpenSuSE Linux, running a relatively current release of Tumbleweed (meaning current kernel, etc.)
I have installed the Firebird-4.0.2.2816-0.amd64 package off the web site - it was current when I started this project, although I see there's a minor rev out now. This is a very old web site that used to be Interbase and has migrated along all this way to Firebird 4, mostly without major problems.
Recently, two machines have started returning this when running queries against a DB as a non-root user:
$ /opt/firebird/bin/isql -u db_owner -p db_pw /home/firebird/data/db.gdb
Statement failed, SQLSTATE = 08001
I/O error during "open" operation for file "/home/firebird/data/db.gdb"
-Error while trying to open file
-Permission denied
-/tmp/firebird/
Use CONNECT or CREATE DATABASE to specify a database
SQL> ^D
If I run the same command as the root user, it works and data is returned.
It doesn't seem to matter what DB user I try as; SYSDBA performs the same errors as the DB owner.
It's acting like it is trying direct file i/o instead of going through the running server, but that's only a guess on my part.
There is a running server on port 3050 of the same machine.
All the database files are owned by firebird:firebird, and should be readable by the running server. Only root seems able to see them, however.
Any idea what I've done wrong here, or where to look to get more debugging information to see what can't read what?