/var/log/maas/rsyslog has incorrect permission

Bug #1346703 reported by Nobuto Murata
20
This bug affects 2 people
Affects Status Importance Assigned to Milestone
maas (Ubuntu)
Fix Released
Medium
Louis Bouchard
Trusty
Fix Released
Medium
Louis Bouchard

Bug Description

[SRU justification]
This fix is required to allow maas to log rsyslog events

[Impact]
Without this fix, no d-i log from MAAS can be written

[Fix]
Change the post install script code that sets permissions in /var/log/maas
directory

[Test Case]

1. create pristine Ubuntu 14.04 LTS box
2. sudo apt-get update && sudo apt-get install maas

Actual result:
/var/log/maas/rsyslog/ is owned by maas:maas and not writable by syslog user. No log will be written.
$ ll /var/log/maas/rsyslog/
drwxr-xr-x 2 maas maas 4096 Jul 16 06:26 ./

Expected result:
/var/log/maas/rsyslog/ is writable by syslog user to store d-i log from MAAS nodes.

[Regression]
None expected as only the rsyslog ownership is changed explicitely

[Description of the problem]

/var/log/maas/rsyslog/ is owned by maas:maas and has 755 permission after maas package installation. Therefore rsyslogd cannot write logs into the directory.

How to reproduce:
 1. prepare pristine trusty box
 2. sudo apt-get install maas

Expected result:
/var/log/maas/rsyslog/ is owned by for example syslog:syslog.

Actual result:
$ ll /var/log/maas/rsyslog/
drwxr-xr-x 2 maas maas 4096 Jul 22 01:13 ./

Workaround:

$ sudo chown -R syslog:syslog /var/log/maas/rsyslog

It seems that 3 packages are trying to set owner related /var/log/maas/*.
====
$ grep -r chown.*/var/log/maas /var/lib/dpkg/info/
/var/lib/dpkg/info/maas-cluster-controller.postinst: chown -R maas:maas /var/log/maas
/var/lib/dpkg/info/maas-region-controller-min.postinst: chown -R maas:maas /var/log/maas
/var/lib/dpkg/info/maas-region-controller-min.postinst: chown -R syslog:syslog /var/log/maas/rsyslog
/var/lib/dpkg/info/maas-region-controller.postinst: chown -R maas:maas /var/log/maas
/var/lib/dpkg/info/maas-region-controller.postinst: chown -R syslog:syslog /var/log/maas/rsyslog
====

ProblemType: Bug
DistroRelease: Ubuntu 14.04
Package: maas 1.5.2+bzr2282-0ubuntu0.2
ProcVersionSignature: User Name 3.13.0-29.53-generic 3.13.11.2
Uname: Linux 3.13.0-29-generic x86_64
ApportVersion: 2.14.1-0ubuntu3.2
Architecture: amd64
Date: Tue Jul 22 01:15:20 2014
PackageArchitecture: all
ProcEnviron:
 TERM=screen-bce
 PATH=(custom, no user)
 XDG_RUNTIME_DIR=<set>
 LANG=en_US.UTF-8
 SHELL=/bin/bash
SourcePackage: maas
UpgradeStatus: No upgrade log present (probably fresh install)

Related branches

Revision history for this message
Nobuto Murata (nobuto) wrote :
Revision history for this message
Nobuto Murata (nobuto) wrote :

The owner depends on the order of setting up maas-cluster-controller and maas-region-controller?

$ grep -r chown.*/var/log/maas /var/lib/dpkg/info/
/var/lib/dpkg/info/maas-cluster-controller.postinst: chown -R maas:maas /var/log/maas
/var/lib/dpkg/info/maas-region-controller-min.postinst: chown -R maas:maas /var/log/maas
/var/lib/dpkg/info/maas-region-controller-min.postinst: chown -R syslog:syslog /var/log/maas/rsyslog
/var/lib/dpkg/info/maas-region-controller.postinst: chown -R maas:maas /var/log/maas
/var/lib/dpkg/info/maas-region-controller.postinst: chown -R syslog:syslog /var/log/maas/rsyslog

$ grep 'Setting up.*maas' apt-get_install_-y_maas.log
Setting up python-maas-client (1.5.2+bzr2282-0ubuntu0.2) ...
Setting up maas-cli (1.5.2+bzr2282-0ubuntu0.2) ...
Setting up maas-common (1.5.2+bzr2282-0ubuntu0.2) ...
Setting up python-maas-provisioningserver (1.5.2+bzr2282-0ubuntu0.2) ...
Setting up maas-dhcp (1.5.2+bzr2282-0ubuntu0.2) ...
Setting up python-django-maas (1.5.2+bzr2282-0ubuntu0.2) ...
Setting up maas-region-controller-min (1.5.2+bzr2282-0ubuntu0.2) ...
Setting up maas-dns (1.5.2+bzr2282-0ubuntu0.2) ...
Setting up maas-region-controller (1.5.2+bzr2282-0ubuntu0.2) ...
Setting up maas-cluster-controller (1.5.2+bzr2282-0ubuntu0.2) ...
Setting up maas (1.5.2+bzr2282-0ubuntu0.2) ...

Revision history for this message
Launchpad Janitor (janitor) wrote :

Status changed to 'Confirmed' because the bug affects multiple users.

Changed in maas (Ubuntu):
status: New → Confirmed
Jonathan Davies (jpds)
description: updated
Louis Bouchard (louis)
Changed in maas (Ubuntu):
importance: Undecided → Medium
assignee: nobody → Louis Bouchard (louis-bouchard)
status: Confirmed → In Progress
Revision history for this message
Louis Bouchard (louis) wrote :

This is caused by maas-cluster-controller's postinst script that runs the following, which changes the ownership :

    # Give appropriate permissions
    chown -R maas:maas /var/lib/maas/
    chown -R maas:maas /var/log/maas <<<
    chmod -R 775 /var/log/maas/oops

Louis Bouchard (louis)
Changed in maas (Ubuntu Trusty):
status: New → Confirmed
importance: Undecided → Medium
assignee: nobody → Louis Bouchard (louis-bouchard)
Louis Bouchard (louis)
Changed in maas (Ubuntu):
status: In Progress → Fix Released
Revision history for this message
Louis Bouchard (louis) wrote :

There is an in-flight SRU for trusty that is near completion :

https://bugs.launchpad.net/maas/+bug/1337437

I will wait until it is done to SRU this one

tags: added: cts
Revision history for this message
Louis Bouchard (louis) wrote :

debdiff of the backported change to be SRUed

description: updated
Changed in maas (Ubuntu Trusty):
status: Confirmed → In Progress
Revision history for this message
Nobuto Murata (nobuto) wrote :
Changed in maas (Ubuntu):
status: Fix Released → Fix Committed
Revision history for this message
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package maas - 1.7.0~beta7+bzr3266-0ubuntu1

---------------
maas (1.7.0~beta7+bzr3266-0ubuntu1) utopic; urgency=medium

  * New Upstream Snapshot, Beta 7 bzr3266

  [ Jeroen Vermeulen ]
  * debian/extras/99-maas-sudoers
    debian/maas-dhcp.postinst
    debian/rules
    - Add second DHCP server instance for IPv6.
  * debian/maas-region-controller-min.install
    debian/maas-region-controller-min.lintian-overrides
    - Install deployment user-data: maas_configure_interfaces.py script.
  * debian/maas-cluster-controller.links
    debian/maas-cluster-controller.install
    debian/maas-cluster-controller.postinst
    - Reflect Celery removal changes made in trunk r3067.
    - Don't install celeryconfig_cluster.py any longer.
    - Don't install maas_local_celeryconfig_cluster.py any longer.
    - Don't symlink maas_local_celeryconfig_cluster.py from /etc to /usr.
    - Don't insert UUID into maas_local_celeryconfig_cluster.py.

  [ Andres Rodriguez ]
  * debian/maas-region-controller-min.postrm: Cleanup lefover files.
  * debian/maas-dhcp.postrm: Clean leftover configs.
  * Provide new maas-proxy package that replaces the usage of
    squid-deb-proxy:
    - debian/control: New maas-proxy package that replaces the usage
      of squid-deb-proxy; Drop depends on squid-deb-proxy.
    - Add upstrart job.
    - Ensure squid3 is stopped as maas-proxy uses a caching proxy.
  * Remove Celery references to cluster controller:
    - Rename upstart job from maas-pserv to maas-cluster; rename
      maas-cluster-celery to maas-cluster-register. Ensure services
      are stopped on upgrade.
    - debian/maintscript: Cleanup config files.
    - Remove all references to the MAAS celery daemon and config
      files as we don't use it like that anymore
  * Move some entries in debian/maintscript to
    debian/maas-cluster-controller.maintscript
  * Remove usage of txlongpoll and rabbitmq-server. Handle upgrades
    to ensure these are removed correctly.

  [ Jason Hobbs ]
  * debian/maas-region-controller-min.install: Install
    maas-generate-winrm-cert script.

  [ Raphaël Badin ]
  * debian/extras/maas-region-admin: Bypass django-admin as it prints
    spurious messages to stdout (LP: #1365130).

  [Louis Bouchard]
  * debian/maas-cluster-controller.postinst:
    - Exclude /var/log/maas/rsyslog when changing ownership
      (LP: #1346703)

  [Gavin Panella]
  * debian/maas-cluster-controller.maas-clusterd.upstart:
    - Don't start-up the cluster controller unless a shared-secret has
      been installed.
  * debian/maas-cluster-controller.maas-cluster-register.upstart: Drop.
 -- Andres Rodriguez <email address hidden> Thu, 21 Aug 2014 19:36:30 -0400

Changed in maas (Ubuntu):
status: Fix Committed → Fix Released
Revision history for this message
Louis Bouchard (louis) wrote :

New debdiff against most recent version in trusty-updates

Revision history for this message
Martin Pitt (pitti) wrote :

I uploaded Louis' trusty SRU to the review queue. Unsubscribing sponsors now. Thanks!

Revision history for this message
Chris J Arges (arges) wrote : Please test proposed package

Hello Nobuto, or anyone else affected,

Accepted maas into trusty-proposed. The package will build now and be available at http://launchpad.net/ubuntu/+source/maas/1.5.4+bzr2294-0ubuntu1.3 in a few hours, and then in the -proposed repository.

Please help us by testing this new package. See https://wiki.ubuntu.com/Testing/EnableProposed for documentation how to enable and use -proposed. Your feedback will aid us getting this update out to other Ubuntu users.

If this package fixes the bug for you, please add a comment to this bug, mentioning the version of the package you tested, and change the tag from verification-needed to verification-done. If it does not fix the bug for you, please add a comment stating that, and change the tag to verification-failed. In either case, details of your testing will help us make a better decision.

Further information regarding the verification process can be found at https://wiki.ubuntu.com/QATeam/PerformingSRUVerification . Thank you in advance!

Changed in maas (Ubuntu Trusty):
status: In Progress → Fix Committed
tags: added: verification-needed
Revision history for this message
Nobuto Murata (nobuto) wrote :

maas 1.5.4+bzr2294-0ubuntu1.3 works for me. The permission is correctly setup on install now.

tags: added: verification-done
removed: verification-needed
Revision history for this message
Brian Murray (brian-murray) wrote : Update Released

The verification of the Stable Release Update for maas has completed successfully and the package has now been released to -updates. Subsequently, the Ubuntu Stable Release Updates Team is being unsubscribed and will not receive messages about this bug report. In the event that you encounter a regression using the package from -updates please report a new bug using ubuntu-bug and tag the bug report regression-update so we can easily find any regressions.

Revision history for this message
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package maas - 1.5.4+bzr2294-0ubuntu1.3

---------------
maas (1.5.4+bzr2294-0ubuntu1.3) trusty-proposed; urgency=medium

   [Louis Bouchard]
   * debian/maas-cluster-controller.postinst:
     - Exclude /var/log/maas/rsyslog when changing ownership
       (LP: #1346703)
 -- Louis Bouchard <email address hidden> Tue, 09 Dec 2014 14:01:27 +0100

Changed in maas (Ubuntu Trusty):
status: Fix Committed → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Duplicates of this bug

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.