[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#639359: marked as done (lintian should check if udev rules attempt to access programs in /usr)



Your message dated Tue, 10 Oct 2017 16:46:00 +0000
with message-id <6856a469-72b9-1cc6-a9e0-e49c89b8c504@thykier.net>
and subject line Re: lintian should check if udev rules attempt to access programs in /usr
has caused the Debian Bug report #639359,
regarding lintian should check if udev rules attempt to access programs in /usr
to be marked as done.

This means that you claim that the problem has been dealt with.
If this is not the case it is now your responsibility to reopen the
Bug report if necessary, and/or fix the problem forthwith.

(NB: If you are a system administrator and have no idea what this
message is talking about, this may indicate a serious mail system
misconfiguration somewhere. Please contact owner@bugs.debian.org
immediately.)


-- 
639359: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=639359
Debian Bug Tracking System
Contact owner@bugs.debian.org with problems
--- Begin Message ---
Package: lintian
Version: 2.5.2
Severity: wishlist

Rules installed into /lib/udev/rules.d may be called at boot before /usr
is mounted. Any rules files installed into this directory that attempt
to access binaries in /usr will fail with an error message printed at
boot, and whatever the rule was trying to set up may not be set up
properly.

Detection may be as simple as looking for '="/usr/' in these rules
files.

The fix, BTW, is also relatively simple. Packages that need to execute a
binary in /usr from a udev rule can install a wrapper script into
/lib/udev that waits for /usr to be mounted before executing the
program. Such a script may be as simple as:

	#!/bin/sh -e
	# /usr is not guaranteed to be mounted when udev starts

	(
		. /lib/udev/hotplug.functions
		wait_for_file /usr/sbin/program
		exec /usr/sbin/program "$@"
	) &

Or, of course, they could move binaries to /sbin, or install a binary
for udev handling into /lib/udev, or install a more complicated script.

See bugs #624678, #635622, #636437, and #639356 for examples of bugs
this would detect.



--- End Message ---
--- Begin Message ---
On Fri, 26 Aug 2011 06:56:54 -0400 anomie@users.sourceforge.net wrote:
> Package: lintian
> Version: 2.5.2
> Severity: wishlist
> 
> Rules installed into /lib/udev/rules.d may be called at boot before /usr
> is mounted. Any rules files installed into this directory that attempt
> to access binaries in /usr will fail with an error message printed at
> boot, and whatever the rule was trying to set up may not be set up
> properly.
> 
> Detection may be as simple as looking for '="/usr/' in these rules
> files.
> 
> The fix, BTW, is also relatively simple. Packages that need to execute a
> binary in /usr from a udev rule can install a wrapper script into
> /lib/udev that waits for /usr to be mounted before executing the
> program. Such a script may be as simple as:
> 
> 	#!/bin/sh -e
> 	# /usr is not guaranteed to be mounted when udev starts
> 
> 	(
> 		. /lib/udev/hotplug.functions
> 		wait_for_file /usr/sbin/program
> 		exec /usr/sbin/program "$@"
> 	) &
> 
> Or, of course, they could move binaries to /sbin, or install a binary
> for udev handling into /lib/udev, or install a more complicated script.
> 
> See bugs #624678, #635622, #636437, and #639356 for examples of bugs
> this would detect.
> 
> 
> 

This has effectively expired; Debian stretch requires that the initramfs
can mount /usr along with / (if they are different) plus the initframfs
must be self-contained to work.

Thanks,
~Niels

--- End Message ---

Reply to: