Distro-provided mechanism to clean up old kernels

Barry Warsaw barry at ubuntu.com
Thu Feb 16 19:21:18 UTC 2012


On Feb 16, 2012, at 10:11 AM, Dustin Kirkland wrote:

>I asked about this in IRC yesterday, and Colin Watson pointed me to
>the computer-janitor utility, which is intended to handle this.
>Seconds later, Barry Warsaw told me that computer-janitor should die
>:-)

c-j needs attention, but I'm not particularly motivated to give it what it
needs.  There's basic housekeeping, such as that the code for c-j is sprinkled
between the update-manager and the computer-janitor packages, and even more
important problems such LP: #458872.  What's demotivating though is that in
all the discussions we've had about the tool, most people think it's just not
user-friendly enough given today's emphasis on software-center.

In c-j 2.0, I worked to separate the backend functionality into a dbus
service, with gtk and command-line front-ends.  I looked at the
debian/changelog to refresh my memory, and that implies the work was done
during the Lucid cycle, but I think we ended up not landing it until after
that LTS release, since my Lucid VM still has c-j 1.13.3.

In theory though, this would allow the c-j functionality to be used by any
dbus-aware application, so we could fairly easily ditch the current ui (which
itself needs love), and improve the cleaning algorithms underneath.

>I tried computer-janitor on my desktop, and it seemed to work
>okay.  But then I tried it on my servers and it failed:
>  # sudo computer-janitor find
>  ERROR:dbus.proxies:Introspect error on :1.3:/:
>dbus.exceptions.DBusException:
>org.freedesktop.DBus.Error.AccessDenied: Rejected send message, 1
>matched rules; type="method_call", sender=":1.8" (uid=0 pid=26155
>comm="/usr/bin/python /usr/sbin/computer-janitor find ")
>interface="org.freedesktop.DBus.Introspectable" member="Introspect"
>error name="(unset)" requested_reply="0" destination=":1.3" (uid=0
>pid=19905 comm="/usr/bin/python /usr/share/computerjanitor/janitor")

This is probably LP: #715707.  You don't say what version of Ubuntu your
servers are running, but I'm guessing its Lucid < Dustin < Precise.  When I
run the cli on Precise, I do see all the old kernels targetted for removal,
and I don't get this error.

> 1) Surely we're not the only Ubuntu users whose /boot or root
>partition has filled up with age-old kernels, are we?

Clearly not.

> 2) Is computer-janitor here to stay, or to be abandoned in favor of
>something else?

See above.  My own preference would be:

 * Fix the housekeeping bugs by moving the c-j code out of the u-m tree
 * Fixing the dbus backend by addressing the relevant known bugs
 * Keeping the c-j cli for non-ui uses
 * Throw away the current c-j ui and pull that functionality into u-m or s-c

> 3) Can we expect computer-janitor to work on command-line only
>environments (Ubuntu servers) too?  If so, can we get SRUs out so that
>it works on older distributions?

It can if the dbus service is running.  As for SRUs, would you want to see the
dbus-based version backported to Lucid (if that's even possible)?

> 4) Can we, as a distro, provide and recommend a utility to clean out
>specifically old kernels (perhaps aside from cleaning up userspace
>cruft a la computer-janitor)?

I think we mostly need to decide whether there's anything to salvage in c-j,
which I think mostly means the dbus service.  If so, then maybe this is
something we can explicitly target for 12.10.

Cheers,
-Barry
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 836 bytes
Desc: not available
URL: <https://lists.ubuntu.com/archives/ubuntu-devel/attachments/20120216/ec4b2cd6/attachment.pgp>


More information about the ubuntu-devel mailing list