You’ll find out what SELinux was complaining about by setting it to enforcing, then trying to start gpsd while doing tail -f /var/log/audit/audit.log
You can then see the various AVC denials to see why it isn’t working and troubleshoot them using the various SELinux tools
On 28 Aug 2019, at 18:43, pisymbol . <address@hidden> wrote:
Hi,
On 8/28/19 6:22 PM, pisymbol . wrote:
/var/log/messages I believe on Fedora.
Any output related to gpsd in there?
No, nothing related to gpsd there.
[mellon@mellon-hp log]$ pwd
/var/log
[mellon@mellon-hp log]$ sudo find | grep gps
[mellon@mellon-hp log]$
No, no. /varlog/messages
grep gpsd /var/log/messages
etc.
The strace shows that gpsd did write to standard output
(1) the version information. But you aren't seeing it? Is
that correct?
Yes, that's correct.
Definitely your tty is off.
Are you just ssh'ing into your machine and running gpsd?
I assume you have a valid tty.
I'm trying to run it directly from a terminal emulator on my
machine. It's not a remote machine, so no ssh involved. I do think I
have a valid tty.
Ah ha!
Any chance SELINUX is causing an issue? (if it's enabled
(sestatus), try disabling it or making it permissive and see
what happens).
That was exactly it! Disabling SELinux solved the problem.
[mellon@mellon-hp log]$ gpsd -V
[mellon@mellon-hp log]$ sudo setenforce 0
[mellon@mellon-hp log]$ gpsd -V
gpsd: 3.17 (revision 3.17)
[mellon@mellon-hp log]$
Now I wonder, why is SELinux the cause this problem? Why didn't it
cause problems when running from valgrind or by systemctl?
Look at /varlog/secure for clues. My guess is you don't have permissions for the emulation device or something to that effect.
-aps
|