RC_WHITELIST prevents a lot of services from being started on thin/fat clients

Bug #694066 reported by Alkis Georgopoulos
14
This bug affects 2 people
Affects Status Importance Assigned to Milestone
LTSP5
Fix Released
Medium
Alkis Georgopoulos
ltsp (Ubuntu)
Fix Released
Medium
Alkis Georgopoulos

Bug Description

In the Ubuntu/000-basic-configuration, some whitelists are defined for allowed services:
        RCS_WHITELIST=${RCS_WHITELIST:-"mountkernfs.sh mountdevsubfs.sh hostname.sh loopback udev module-init-tools procps.sh etc-setserial ltsp-client-setup setserial console-setup console-screen.kbd.sh"}
        RC2_WHITELIST=${RC2_WHITELIST:-"klogd sysklogd ltsp-client-core usplash rmnologin dbus"}
        RC6_WHITELIST=${RC6_WHITELIST:-"reboot"}
        RC0_WHITELIST=${RC0_WHITELIST:-"halt"}

On the other hand, Debian/000-basic-configuration has those lists commented out:
        #RCS_WHITELIST=${RCS_WHITELIST:-"mountkernfs.sh mountvirtfs hostname.sh keymap.sh loopback udev mountdevsubfs.sh mountdevsubfs module-init-tools procps.sh etc-setserial ltsp-client-setup setserial console-screen.sh xorg-common x11-common xfree86-common ifupdown networking fuse nbd-client"}
        #RC2_WHITELIST=${RC2_WHITELIST:-"klogd sysklogd ltsp-client ltsp-client-core nbd-client usplash rmnologin rsyslog dbus hal"}

For Ubuntu, where those variables are defined, the 000-init-whitelist plugin calls update-rc.d and prevents those services from starting on boot. A lot of those services are significant, for example cups (for printer sharing), ondemand (so that thin client CPUs don't overheat), sendsigs (for proper shutdown), binfmt-support (if wine or java apps are installed on the chroot), openbsd-inetd (if ident2 is installed on the chroot for squid), etc etc, see attached file.

Is there any reason for those white lists to be defined? Can we comment them out like Debian does?

Revision history for this message
Alkis Georgopoulos (alkisg) wrote :
Revision history for this message
Stéphane Graber (stgraber) wrote :

Hi Alkis!

I'm not too familiar with the whitelisting magic used by ltsp-build-client but my guess would be that we should instead use a blacklist.

We definitely want to prevent a lot of services from starting when they don't make sense for LTSP but not prevent fat client services.

I also think ltsp-build-client should be made upstart aware so it can also disable upstart services.

Assigning this to me for now as I'm probably going to look at upstartifying ltsp soon enough and may fix that at the same time. In the mean time, if you have changes specific to fat clients, I'd suggest you commit them upstream and make sure they only apply to fat clients.

Thanks

Changed in ltsp:
status: New → Triaged
importance: Undecided → Medium
assignee: nobody → Stéphane Graber (stgraber)
Changed in ltsp (Ubuntu):
status: New → Triaged
Revision history for this message
Alkis Georgopoulos (alkisg) wrote :

Fix committed in http://bazaar.launchpad.net/~ltsp-upstream/ltsp/ltsp-trunk/revision/2008, it'd be nice if someone could check if the new RM_SYSTEM_SERVICES and RM_THIN_SYSTEM_SERVICES lists are reasonable.

Changed in ltsp (Ubuntu):
importance: Undecided → Medium
status: Triaged → Fix Committed
Changed in ltsp:
assignee: Stéphane Graber (stgraber) → Alkis Georgopoulos (alkisg)
status: Triaged → Fix Committed
Revision history for this message
Alkis Georgopoulos (alkisg) wrote :

Fixed in LTSP 5.3. Blacklists are used instead, called RM_SYSTEM_SERVICES and RM_THIN_SYSTEM_SERVICES.

Changed in ltsp:
status: Fix Committed → Fix Released
Changed in ltsp (Ubuntu):
assignee: nobody → Alkis Georgopoulos (alkisg)
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.