Bug 1278881

Summary: Upgrading Fedora 22 to 23 leaves /var/lib/boinc owned by root:root
Product: [Fedora] Fedora Reporter: Adri Verhoef <bugzilla>
Component: boinc-clientAssignee: Laurence Field <Laurence.Field>
Status: CLOSED ERRATA QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: 23CC: bugzilla, cheekyboinc, cheese, germano.massullo, keesdejong+dev, Laurence.Field, mattia.verga, mmahut, msuchy, rc040203, svandermeer7, xjakub
Target Milestone: ---   
Target Release: ---   
Hardware: Unspecified   
OS: Linux   
Whiteboard:
Fixed In Version: boinc-client-7.2.42-7.gitdd0d630.fc23 Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2015-11-19 09:58:30 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description Adri Verhoef 2015-11-06 16:05:26 UTC
Description of problem:
I have used 'fedora-upgrade' to upgrade my installation of Fedora 22 to 23 and after booting into Fedora 23 the boinc-client refuses to run workunits because BOINC's homedirectory is suddenly owned by root.
I'm not sure what did this, but it happened during the upgrade process while executing 'fedora-upgrade', so I'm guessing it has to do with dnf-plugin-system-upgrade, although boinc-client could be a candidate for the problem, too.

Version-Release number of selected component (if applicable):
fedora-upgrade-23.1-1.fc22.noarch.rpm
dnf-plugin-system-upgrade-0.7.0-1.fc22.noarch.rpm
boinc-client-7.2.42-6.gitdd0d630.fc23.x86_64

How reproducible:
Upgrade from Fedora 22 to 23 using fedora-upgrade

Steps to Reproduce:
1. On Fedora 22, verify that /var/lib/boinc is owned by boinc:boinc
2. Upgrade from Fedora 22 to 23 using fedora-upgrade
3. On Fedora 23, ascertain that /var/lib/boinc has changed ownership to root:root

Actual results:
/var/lib/boinc has changed ownership to root:root

Expected results:
/var/lib/boinc would still be owned by boinc:boinc

Additional info:

Comment 1 Adri Verhoef 2015-11-06 16:40:34 UTC
Doing:
$ rpm -qlv boinc-client-7.2.42-6.gitdd0d630.fc23.x86_64 | tail -1
drwxr-xr-x    2 root    root                        0 Aug  3 15:20 /var/lib/boinc

Maybe this should be set to boinc:boinc?

Comment 2 Fedora Update System 2015-11-09 22:13:26 UTC
boinc-client-7.2.42-7.gitdd0d630.fc23 has been submitted as an update to Fedora 23. https://bodhi.fedoraproject.org/updates/FEDORA-2015-666300858f

Comment 3 Germano Massullo 2015-11-09 22:15:00 UTC
Hi Adri, thank you for submitting the bugreport. Comment-2 update should fix your problem.
Have a nice day

Comment 4 Fedora Update System 2015-11-11 02:23:39 UTC
boinc-client-7.2.42-7.gitdd0d630.fc23 has been pushed to the Fedora 23 testing repository. If problems still persist, please make note of it in this bug report.
If you want to test the update, you can install it with
$ su -c 'dnf --enablerepo=updates-testing update boinc-client'
You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2015-666300858f

Comment 5 Ralf Corsepius 2015-11-19 04:08:54 UTC
boinc-client-*.7* not only sets permissions on /var/lib/boinc to 0775/boinc, but also on a couple of other files (e.g. /usr/share/locale/*/*.mo).

What you probably want is using %attr instead of %defattr:

diff --git a/boinc-client.spec b/boinc-client.spec
index a336334..3167505 100644
--- a/boinc-client.spec
+++ b/boinc-client.spec
@@ -277,8 +277,7 @@ fi
 %{_mandir}/man1/boinccmd.1.gz
 %{_mandir}/man1/boinc.1.gz
 %{_libdir}/*.so.*
-%defattr(775,boinc,boinc,775)
-%{_localstatedir}/lib/boinc/
+%attr(775,boinc,boinc) %{_localstatedir}/lib/boinc/

 %files doc
 %doc checkin_notes checkin_notes_*

Comment 6 Fedora Update System 2015-11-19 09:58:25 UTC
boinc-client-7.2.42-7.gitdd0d630.fc23 has been pushed to the Fedora 23 stable repository. If problems still persist, please make note of it in this bug report.

Comment 7 Sybren 2015-11-21 07:52:54 UTC
I did a fresh install of Fedora 23 but seem to have the same problem, which still persists after installing 7.2.42-7.
Before installing output of 'sudo ls -al /var/lib/boinc':
ls: cannot access /var/lib/boinc: No such file or directory
After 'sudo dnf install boinc-client boinc-manager' the result of the ls-command:
total 0
drwxrwxr-x. 1 boinc boinc   0 Nov  9 15:53 .
drwxr-xr-x. 1 root  root  770 Nov 21 08:28 ..
So still no files in the directory.

Comment 8 Germano Massullo 2015-11-21 08:56:27 UTC
(In reply to Sybren from comment #7)
> I did a fresh install of Fedora 23 but seem to have the same problem, which
> still persists after installing 7.2.42-7.
> Before installing output of 'sudo ls -al /var/lib/boinc':
> ls: cannot access /var/lib/boinc: No such file or directory
> After 'sudo dnf install boinc-client boinc-manager' the result of the
> ls-command:
> total 0
> drwxrwxr-x. 1 boinc boinc   0 Nov  9 15:53 .
> drwxr-xr-x. 1 root  root  770 Nov 21 08:28 ..
> So still no files in the directory.

Your folder permissions are okay, then your problem is some elsewhere.

Comment 9 Adri Verhoef 2015-11-21 11:59:58 UTC
It is correct that the directory /var/lib/boinc is empty after installing boinc-client and boinc-manager for the first time:
$ rpm -ql boinc-client boinc-manager | grep /var
/var/lib/boinc

After the fresh installment of boinc-client and boinc-manager you would populate the directory by setting up an account (see http://boinc.berkeley.edu/wiki/Installing_BOINC_on_Fedora) and choosing a project (see http://boinc.berkeley.edu/projects.php). :-)

Comment 10 Sybren 2015-11-21 20:13:32 UTC
Sorry: I was too early indeed.
Boinc is working fine again after restarting the service and the manager.
I didn't even had to follow the steps in https://boinc.berkeley.edu/wiki/Installing_BOINC_on_Fedora:
    Select Advanced -> Select computer... from the Boinc Manager menu.
   Put localhost in for "Host name" and the contents of /var/lib/boinc   /gui_rpc_auth.cfg for "Password" and hit "OK".

In the past I had to follow those steps before getting boinc working, that's why missing files in /var/lib/boinc seemed a showstopper to me.

Comment 11 Germano Massullo 2015-12-04 12:50:22 UTC
*** Bug 1284394 has been marked as a duplicate of this bug. ***