Martin Read wrote:
On 22/11/14 09:50, lee wrote:
Nobody understands udev rules,
Challenge accepted.
*looks at /etc/udev/rules.d* *looks at /lib/udev/rules.d*
I'm honestly baffled that someone who is capable of comfortably using
emacs thinks these files are incomprehensible. They appear to be
written in a domain-specific declarative language with a fairly
straightforward syntax.
*runs "man 7 udev"*
Yup. Pretty straightforward. Some highly-commented example files would
be *nice*, but I don't see anything particularly intimidating in there.
They are pretty cryptic, compared to say, /etc/udev/interfaces. And
complicated by the fact that one rarely has to look at udev rules,
except in first setting up a system, or at zero-dark-thirty, when
something breaks.
I offer the all-nighter I pulled after installing a new ethernet
controller, and finding that our web server wasn't talking to the net -
complicated by the fact that it was one of a pair of
of servers configured for hot-spare failover, with virtual hosts set to
listen on statically configured IP addresses. Diagnosing and fixing the
problem involved:
- realizing there was a problem in the first place (system fails over,
replace board on non-functioning system, seems to come backup, it's now
the backup machine, subtle problem only discovered when reconfiguring
active/backup configuration at a later date)
- having to drive to the data center, and spend a good part of the night
there
- identifying udev as the problem (admittedly, udev was new at the time
- having come in with the latest Debian release)
- figuring out that udev had set up different addressing for the new
board (it had swapped places with the board on our SAN network)
- in the process, having to learn enough about udev, and untangle the
gaggle of specific udev files on the systems and how they interact
- identifying that the solution was to write a persistent udev rule
- figuring out how to write it, and and where to put it (and then
testing and debugging it - again complicated by the fact that it was one
of a pair of failover machines -- can't really test a static IP address
without taking BOTH machines off the air)
- documenting it all and putting the information in a place where we'll
remember to include the persistent rule when we (re)build systems in the
future
- all in the middle of the night (luckily, support lists are global)
Yes... a lot more complicated than /etc/network/interfaces and ifup/ipdown.
Its been years, but I still shudder when I think about it. And when I
consider that similar changes, and subtle effects, almost certainly lurk
in systemd and all the functions that its absorbed (systemd-), I really
shudder.
Miles Fidelman
--
In theory, there is no difference between theory and practice.
In practice, there is. .... Yogi Berra
--
To UNSUBSCRIBE, email to debian-user-requ...@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org
Archive: https://lists.debian.org/5470b203.2030...@meetinghouse.net