gvfsd process does not have the KRB5CCNAME environment set
Affects | Status | Importance | Assigned to | Milestone | ||
---|---|---|---|---|---|---|
gvfs (Ubuntu) | Status tracked in Mantic | |||||
Bionic |
Invalid
|
Undecided
|
Unassigned | |||
Focal |
Invalid
|
Undecided
|
Unassigned | |||
Jammy |
Invalid
|
Undecided
|
Unassigned | |||
Kinetic |
Invalid
|
Undecided
|
Unassigned | |||
Lunar |
Invalid
|
Undecided
|
Unassigned | |||
Mantic |
Confirmed
|
Unknown
|
Unassigned | |||
tracker-miners (Ubuntu) | Status tracked in Mantic | |||||
Bionic |
Won't Fix
|
Undecided
|
Unassigned | |||
Focal |
In Progress
|
Medium
|
Matthew Ruffell | |||
Jammy |
In Progress
|
Medium
|
Denison Barbosa | |||
Kinetic |
Won't Fix
|
Medium
|
Denison Barbosa | |||
Lunar |
Confirmed
|
High
|
Denison Barbosa | |||
Mantic |
Fix Released
|
High
|
Denison Barbosa |
Bug Description
[ Impact ]
The KRB5CCNAME environment variable points to the Kerberos ticket of the current machine and this ticket is used for authentication in Active Directory servers.
This variable is set by pam_sss when the user authenticates and can be used by other processes, such as gio, to skip the credentials input when accessing network shares, for example.
Some services rely on gvfs-daemon in order to properly function, such as tracker-
As of version 3.1 of tracker-miners, the install target of tracker-
However, the tracker-
Starting tracker-extract too early is also starting gvfsd too early, before the session environment gets fully updated. Which means that gvfsd does not have the KRB5CCNAME variable and can not do any operations with it.
Tracker-extract is supposed to be a helper service managed by tracker-
So, by removing the [Install] section and having tracker-
[ Test Plan ]
In order to test this issue, it's required to have an Active Directory server running.
1) Authenticate with an AD user (as this would set the KRB5CCNAME env);
2) Check gvfsd environment. This can be done by running:
cat /proc/$(pidof gvfsd)/environ | xargs --null -n1
You will be able to see that it does not have the variable listed.
3) Check that the information mentioned above about tracker-miner-fs-
3.service is true.
4) Disable tracker-
target was default.target. The easiest way is to remove the symlink that
systemd created when enabling the unit, located under
/etc/
5) Reboot the machine;
6) Repeat steps 1 and 2.
This will show that gvfsd is now started with the proper environment.
Is not enough to look at ptree and the pids of the processes, instead it's better to look into the session logs with:
journalctl --user -b
And check the order in which the services were started and when they were triggered.
Test packages are available in the following ppa:
https:/
After installing test packages of tracker-miners, KRB5CCNAME should be set in gvfs environment upon login to gnome.
[ Where problems could occur ]
The tracker project is a search engine that speeds up search operations in Gnome. The tracker-miners is the indexing daemon that populates the database with information, so changing its start does not affect the system behavior.
This changes fix the startup of gvfs-daemon.
[ Other info ]
This was fixed upstream by the following commit:
commit 29a2320c1e4f0f7
From: Denison Barbosa <email address hidden>
Date: Tue, 21 Mar 2023 15:04:28 +0000
Subject: Removing [Install] section from tracker-
Link: https:/
Focal requires four additional patches to solve the issue, namely:
commit 8065985c8d81841
Author: Laurent Bigonville <email address hidden>
Date: Sat, 4 Apr 2020 19:18:00 +0200
Subject: Move the Install section to the systemd .service file instead
of the udev one
Link: https:/
commit 74ae33ce01b8d31
Author: Sam Thursfield <email address hidden>
Date: Tue, 3 Nov 2020 12:50:02 +0100
Subject: miners: Opt out of systemd / XDG autostart integration
Link: https:/
commit 3a75f93865e8eb0
Author: Sam Thursfield <email address hidden>
Date: Tue, 27 Oct 2020 22:05:07 +0100
Subject: miners: Tie systemd startup to gnome-session.
Link: https:/
commit 395e719f70829dc
Author: Abderrahim Kitouni <email address hidden>
Date: Fri, 5 Mar 2021 10:30:06 +0100
Subject: miners: fix After= usage in systemd service files
Link: https:/
## Original description ##
Nautilus prompts for username and password when accessing a Samba share on a network drive, despite having a perfectly valid unexpired Kerberos ticket. The Kerberos ticket is obtained automatically at logon by authentication against a Samba Active Directory server (Samba AD-DC).
Accessing the same Samba share with the same Kerberos ticket via "smbclient //host/sharename -k" works fine.
One known workaround is: "nautilus -q", and then "killall gvfsd". After that, accessing the Samba share with Nautilus works normally as it should.
I did not experience this issue in Ubuntu 16.04. It appears that a regression was introduced somewhere between 16.04 and 18.04.
The issue is quite annoying and confusing for the users who are used to accessing Samba shares on the network drive without being prompted for their username and password.
The issue appears to manifest itself usually not on the first access to a Samba share, but on subsequent accesses after a system reboot or upon user logout/login. Strangely, removing ~/.cache/
Nemo appears to have the same problem as Nautilus.
Changed in gvfs (Ubuntu): | |
importance: | Low → High |
tags: | added: desktop-lts-wishlist focal |
Changed in gvfs: | |
status: | Unknown → New |
tags: | added: dt-798 |
affects: | gvfs (Ubuntu) → tracker-miners (Ubuntu) |
Changed in tracker-miners (Ubuntu): | |
assignee: | nobody → Denison Barbosa (justdenis) |
summary: |
- Nautilus does not use a valid Kerberos ticket when accessing Samba share + gvfsd process does not have the KRB5CCNAME environment set |
description: | updated |
Changed in tracker-miners (Ubuntu Jammy): | |
status: | New → In Progress |
Changed in tracker-miners (Ubuntu Kinetic): | |
status: | New → In Progress |
Changed in tracker-miners (Ubuntu Jammy): | |
importance: | Undecided → Medium |
Changed in tracker-miners (Ubuntu Kinetic): | |
importance: | Undecided → Medium |
Changed in tracker-miners (Ubuntu Jammy): | |
assignee: | nobody → Denison Barbosa (justdenis) |
Changed in tracker-miners (Ubuntu Kinetic): | |
assignee: | nobody → Denison Barbosa (justdenis) |
Changed in tracker-miners (Ubuntu Focal): | |
status: | New → In Progress |
importance: | Undecided → Medium |
assignee: | nobody → Matthew Ruffell (mruffell) |
description: | updated |
Changed in tracker-miners (Ubuntu Bionic): | |
status: | New → Won't Fix |
tags: | added: sts-sponsor |
Changed in gvfs (Ubuntu): | |
status: | Confirmed → New |
tags: |
added: se-sponsor-halves removed: sts-sponsor |
Changed in gvfs (Ubuntu Lunar): | |
importance: | Unknown → Undecided |
status: | Confirmed → Invalid |
Changed in gvfs (Ubuntu Kinetic): | |
status: | Confirmed → Invalid |
Changed in gvfs (Ubuntu Jammy): | |
status: | Confirmed → Invalid |
Changed in gvfs (Ubuntu Focal): | |
status: | Confirmed → Invalid |
Changed in gvfs (Ubuntu Bionic): | |
status: | Confirmed → Invalid |
Changed in tracker-miners (Ubuntu Lunar): | |
status: | Fix Released → Confirmed |
Status changed to 'Confirmed' because the bug affects multiple users.