[nycbug-talk] FBSD sysutils/bsdstats
mspitzer at gmail.com
Mon Aug 14 08:55:04 EDT 2006
On 8/14/06, Dan Langille <dan at langille.org> wrote:
> On 14 Aug 2006 at 1:22, Marc Spitzer wrote:
> > On 8/13/06, Max Gribov <max at neuropunks.org> wrote:
> > >
> > > uptime can be considered "badge of honor" in a sense that the os you're
> > > using does not have too many kernel issues, the fact that you made a
> > > custom enough kernel not to worry about useless issues, and plus the
> > > fact that things rarely go wrong in the bsd server world.
> > >
> > I think uptime, as we are talking about it, is kinda silly.
> > Personally I am in favor of rebooting production boxes at least
> > quarterly. It can be really interesting to see what shakes loose.
> > Also it gives you a framework of scheduled outages to do other stuff
> > in, non critical patches or a bit of kernel tuning etc. Also the Idea
> > of patching libraries and not rebooting without a very good reason,
> > and a lot of checking to see you actually restarted *EVERYTHING* that
> > calls it, is asking for trouble. I do not think the system will
> > reload the same shared lib if there is a copy sitting in memory,
> > rebooting fixes this issue.
> With reference to your last statement, why do you think that? Is
> this theory restricted to shared libs?
Yes it is restricted to shared libs, the static lib got ya is that you
need to rebuild/restart
everything that uses the lib or you still have the problem. Getting
back on topic, the way I understand dynamic linking is that before
loading libc, for example, it will check to see if libc is already in
memory from a previously started program, like your shell, and if it
is it links against the in memory copy. The easy way to not have this
problem is just bounce the box, if at all possible. If not then I
would start ldding things and groveling through memory looking for
symbol names, and ask here for a better way if possible, to make sure
that the lib is really gone from memory and I can start things up
again that use it, the first one loads from disk and the rest link it
in. The thing to keep in mind is that you are not really patching
disk images but what is in memory. As long as the program sits on
disk it is safe and harmless
"We trained very hard, but it seemed that every time we were beginning to
form into teams we would be reorganized. I was to learn later in life that
we tend to meet any new situation by reorganizing, and a wonderful method it
can be for creating the illusion of progress, while producing confusion,
inefficiency and demoralization."
-Gaius Petronius, 1st Century AD
More information about the talk