2,991 reputation
710
bio website geekosaur.dreamwidth.org
location Akron, OH
age 48
visits member for 2 years, 2 months
seen May 14 '12 at 2:50
stats profile views 118

Twitter: geekosaur

(back online although still looking...)

I'm an old-time Unix/Usenet geek; you can get a good idea of my checkered past by searching for my name in Google Groups. (Include the first name, though, or you'll get my cousin Russ (http://www.eyrie.org/~rra)....)

Presently I am unemployed and looking at jobs in the Toronto area. Most recently I was a senior system administrator for Carnegie Mellon University's Department of Electrical and Computer Engineering, a department of the Carnegie Institute of Technology half of CMU. Most of my work is infrastructure — the stuff most people don't notice unless it's broken. My job is to make sure people continue to not notice it.

I have been suffering from gradually worsening sinus problems for the past 10 years, and I was recently diagnosed with dysphoric bipolar syndrome. A fair amount of this journal is about the latter. More recent items are tagged so they can be avoided. I may at some point go back and fix the earlier ones.

In the 90s (that is, before the dysphoric bipolar got bad enough that I had trouble focusing in projects) I was involved with a number of open source projects. I'm starting to find my way back into the open source world now that I'm regaining reliable control of my faculties.


Mar
19
comment Get flash drive to cache disk reads to primary partition
Wish you'd mentioned that you wanted the root partition earlier; that gets trickier, although I'd suspect that sufficiently evil initrd/pivot_root hackery could make it work.
Mar
16
comment How does rc job work / order of (contradicting) “start on …” and “stop on …” stanzas
(hit the limit again) I wasn't able to figure out which of the above is true, and might need to examine the source to find out.
Mar
16
comment How does rc job work / order of (contradicting) “start on …” and “stop on …” stanzas
As I understand it, there are two kinds of "instances". One is having the same job name but different export variable values; the other is having them the same, but having different instance names to distinguish them. So there can only be one instance of a "fully qualified job name" at a time, and export variables and instances are two ways of changing components of those "fully qualified" names. That said, it might be that upstart is smart enough to trigger the stop on first, so that when the start on is evaluated there won't be any other rc jobs active.
Mar
16
comment How does rc job work / order of (contradicting) “start on …” and “stop on …” stanzas
To clarify a little more (was a bit close to the comment length limit), because $RUNLEVEL is exported, upstart remembers the $RUNLEVEL associated with each start of the rc job. When the stop on is triggered, upstart looks for instances of rc which have a $RUNLEVEL that matches the pattern [!$RUNLEVEL] and stops only those. The new instance obviously doesn't match [!$RUNLEVEL] because it is $RUNLEVEL, so is left alone. (Er, still a bit confusing. The pattern it uses for matching is the current $RUNLEVEL, being matched against the saved $RUNLEVEL for each job.)
Mar
16
comment How does rc job work / order of (contradicting) “start on …” and “stop on …” stanzas
It is only emitted once, but multiple jobs can be waiting for its emission and the same job can trigger multiple times via multiple start on/stop on stanzas or comma-separated clauses in a single stanza. That one would trigger twice: once in start on to start the new instance, then again for the stop on to kill the old. If you read the details in init(5) and upstart(8) carefully, you'll note that upstart knows to match the stop on to the existing job because $RUNLEVEL is exported to upstart as a job parameter.
Mar
16
comment Best way to make a shutdown hook?
I'd be doing the sed script right about now, if I were in your shoes.
Mar
16
comment Sense of “stop on…” stanza when job is a task
I've actually seen the latter happen on distributions with poorly-thought-out runlevel script interactions.
Mar
16
comment How to avoid openSSH showing authentication popup?
If you're using a regular password, it will prompt every time. You need to use public key authentication, and gpg-agent so SSH can get at the stored key. In general, pubic keys are strongly preferred.
Mar
15
comment Teminal non-responsive on load, can't enter anything until CTRL+C
That looks like /etc/bash_completion is corrupt somehow. Try reinstalling bash and bash-completion.
Mar
15
comment Best way to make a shutdown hook?
Upstart replaced hardcoded runlevels; as far as I can determine, the runlevel concept is not going away, it's just defined in userspace now. If you are worried about such a long term, then you want to use my last suggestion of running on on stopping servicea or stoping serviceb or ... for whatever services you need to have running.
Mar
14
comment Best way to make a shutdown hook?
Also, the only reason there is a distinguished startup event is that something is needed to "prime the pump". After that one privileged event is sent, everything else can be, and is, defined by the jobs and tasks triggered by startup. As for there not being a single shutdown event, there are too many different kinds of shutdown for that to be meaningful. Better to depend directly on the jobs you need to have running.
Mar
14
comment UbuntuOne blocked by Norton Safe web
You might want to tell Canonical about it; we're for the most part just users here.
Mar
13
comment What does ā€œ%Uā€ mean when calling a command?
The reason these parameter keys exist is so the desktop manager knows what to do if you open multiple selected objects at the same time or drop one or more objects on it. %U means the program can take all of them in a single invocation; %u means a separate invocation is needed for each object; if none of them are specified then the program doesn't know what to do with things dropped on it. There are other keys which allow the desktop manager to pass customization information to the program, and a separate set of selectors %f, %F, meaning it takes one/multiple files but not URLs.
Mar
12
comment Problems with titlebar in 11.04, Unity
That was what I was trying to say. window-picker-applet is dumb about "full screen", which is why I patch it.
Mar
12
comment Root cannot access /dev/urandom
In that case I'd check that it's the right device node and its permissions (ls -l /dev/random) and then check /var/log/messages to see if the random driver is complaining.
Mar
12
comment alias with parameters
mm, yes, I always forget that hack.
Mar
12
comment Using microphone input port as headphone output
Software can't do it; the hardware is unidirectional. (Which is why nobody notices that speakers can be used as low fidelity microphones unless they plug them into the wrong jack and throw enough noise at them... oh, and the speakers have to be unamplified, because amps are also unidirectional.)
Mar
12
comment Can I modify power-management settings on a laptop running Ubuntu Server?
Then what you're seeing now is what the BIOS is configured to do in the absence of an ACPI handler in the OS. You may or may not be able to tell the BIOS how to behave; if you can't, you'll need to install the acpid package. You'll also want to apt-get source --download-only acpi-support and poke through it; actually installing the package requires X11 because many of the support scripts are for X11 multimedia foo. (This is arguably a packaging bug.)
Mar
9
comment How to get nicer error-messages in this bash-script?
How exactly did it not work?
Mar
9
comment How to get nicer error-messages in this bash-script?
"$(command)" runs command and substitutes its output, preserving spaces, tabs, and newlines instead of the default of collapsing all of them to a single space. "$@" substitutes the command line arguments (minus the label, which we shifted away) with all quoting preserved. So "$("$@")" means "run the command specified in the script's arguments and substitute its output" — which we then assign to err for later use. (Where did you think I had called sed? I use it later to indent the output from the command, but that is unrelated.)