Hacker's Diary
A rough account of what I did with Emacs recently.
- August 30
- Full backup of restored DSPsrv. Discovered interesting ways to
break rsync.
And now upgrading packages. After some pussyfooting around with
piecemeal upgrades, I decided to just pull a full upgrade and
watch what breaks.
So that worked well enough, modulo some crashy grub-pc behaviour
which I had to find a fix for; next thing I want to do is install
some server health stuff - Dell's much-vaunted Open Source support
seems to be a bit thin at this point, plus this is a fairly old
server, so it's possible there isn't anything available for it,
but on the other hand it'd be nice to be able to access system
event logs and temperature probes and what not. Not critical,
obviously, so if I can't figure it out in the short term I'll skip
on it. Just that it's not the sort of thing I want to try
installing remotely, as that sort of stuff has a tendency to halt
the server hard and require physical intervention when you get it
wrong.
- August 29
- Rewatched Minority Report. Fun piece of
bubblegum. Kinda want to read some P. K. Dick stories now,
though.
- August 27
- Bootloader updated. Had to fiddle with it more than I recall
from past times working on such things; one part "I've
forgotten this stuff" and one part "this is different
under Debian than it is under Red Hat" and probably one part
"new and improved versions". In any case. Next thing to
do: server goes online in my own LAN and I start applying updates
while I have the opportunity of doing so with a server I can
manually recover when I inevitably screw up something like the
kernel... actually, the immediately next thing is probably do a
fresh backup.
- August 26
- Another round of file restores tonight; I think I've finally
figured out all the brokenness.
Yup, permissions look to be fixed. Next thing to do: fix the
bootloader.
- August 23
- Good to see that TomTom are feature-compatible with Garmin in
terms of the Crappy Update Experience. Currently watching TomTom
HOME attempting to "Download Europe", and the counter -
which doesn't indicate if it's in minutes:seconds or hours:minutes
- is happily counting the wrong way. Also it's already timed out
on the download once, which required me to exit all the way out of
the update and go back in again, becaue a Retry button would be
Just Too Much Effort.
And then it crashed. And would not recover until I killed off a
"helper" process, and deleted some files, and restarted
the main application. AWESOME STUFF.
Currently running another file restore on DSPsrv to see if I've
got the permissions right yet.
- August 17
- Turns out Linux gets pretty upset if you don't have
/dev, /proc, /sys and /run
when it expects them...
- August 16
- Managed to louse up the restored server while playing
permissions roulette. Once again, this is why BACKUPS and DON'T
MUCK WITH THE BACKUPS, MUCK WITH THE RESTORED THING.
- August 15
- Crap Joke department: the script to fix the broken User/Group
IDs on the DSPsrv backups is called
... id-fixe.sh.
- August 14
- So, er, Dark Star, eh? This was what
launched John Carpenter's career? It's, er. A bit crap, I think,
is about the most charitable I could offer. Even taking into
account that the effects are low-budget pre-ILM, you'd at least
hope for a decent story, but sadly, no. It's more like a
loosely-connected series of vignettes acted out by a bunch of
interchangeable bearded characters and a beachball with
feet. Probably best to avoid if you can.
- August 13
- After a bit of headscratching I came up with a script that does
a reasonable job of unscrewing the permissions, so I'll give that
a go probably at the weekend. I think my current plan of attack
is to get the server back to functioning under its own steam
(which includes making sure I can restore it to a functioning
state when I inevitably break something), then see about hooking
it up to the LAN properly so I can apply updates as necessary,
then I've a bunch of security-related things I want to do, then I
declare it good to go and ship it back to its proper home.
And then you can all log in and tell me about the email you've
lost. Sorry, but I did say the backups stopped about a week before
the server keeled over.
- August 9
- Restoring file permissions on the DSPsrv is tricker than I
imagined, and includes trying to install a new virtual server with
the same set of packages as the DSPsrv has on board. Which is
complicated by a number of factors, one of which appears to be
that the package lists on the server are a bit out of date and not
responding very well to my attempts to update them, and the
version of Linux installed on the server isn't exactly a set
thing.
This would not actually have been a problem if this was an
RPM-based distro, since RPM helpfully includes file attributes in
its verification; DEB, it appears, does not - or maybe people just
feel it's more fun to jump through a series of unnecessary hoops
in order to recover the permissions, maybe as a lesson to you that
you should take more care not to trash them. Grr.
Well, that was truly awesome. An afternoon of beating things up
and building a VM and fiddling with sources.list and all
sorts of faffing about, and the net result was a script to
"restore" permissions, but which really managed to wipe
out enough critical permissions to render the restored system
ununsable. GO TEAM!
(This is why you don't experiment on your backups...)
- August 7
- For handwavy reasons, I've used a recent version of Outlook Web
Access, and boy howdy is it unpleasant. The thing that drives me
to complain about it here, though, is the sorting: for a start, I
don't much like "newest on top" in this particular
context, so that means I'm already annoyed with the default
view. However, what really grates is that even with
"oldest on top" sorting, "conversations"
("threads", people. It's a perfectly good word that's
been in use for far longer than Microsoft acknowledged the
existence of the Internet.) are still sorted "newest on
top" - so reading messages sequentially is essentially
reading them in quasi-random date
order.AWESOME.
DSPsrv activites have been suspended for the week, will get back
on it at the weekend. Restoring the files revealed that my backups
had trashed some permissions along the way, so I need to deal with
that.
- August 3
- Recovering DSPsrv, day 3.
More fun with the restoration of files; as /var was
nearing capacity I realised that there'd been a 50-50 split
between /var and /home on the original as all
the user mailboxes lived in the former. There then followed
several attempts to repartition again, each time with the kernel
ignoring the partition table I'd just updated in favour of the one
it "remembered".
(The two hardest problems in Computer Science: naming things,
cache invalidation, and off-by-one errors.)
Eventually I wound up unmounting all the partitions, unloading the
kernel driver, reloading it, and rewhacking the errant partitions
with the mkfs stick.
After that, it was just a matter of waiting for the data to
restore, followed by some brute force reconstruction of the
bootloader. As of 21:00ish, the server is now bootable from its
own drive, meaning I can start sanity-checking it for return to
the server farm.
- August 2
- Recovering DSPsrv, day 2.
Managed to get things set up in a slightly less lavish environment
- a 15" display rather than a 55" - and started on
investigating the backups. First problem I encounted was that it's
been so long since I've done manual disk manipulation with a Linux
box that I had to consult a manual to (re)learn the operation of
parted, which I quickly gave up in favour of
cfdisk. Then I realised that I couldn't just lump
everything into a single partition because I needed to add swap
space, which brought me to investigating the backups I've been
doing to see how the disk was laid out.
Good news: full list of partitions.
Bad news: the only one for which I can determine a size is the
swap partition, i.e. the one I care about least. It's possible
that the partition sizes are logged somewhere in the
backup, but I was damned if I was going to trawl through the whole
thing on the off chance I could find them. du -s to
size the partitions as they were in the backup followed by some
entertaining partition math mostly left me scratching my head, so
eventually I took a bunch of random advice from the Internet and
ran with that.
Somewhere in the middle of all this I restored my iPhone as it had
gotten into that state where it claims you have nothing on your
iPhone except "Other", and it has nowhere to put all
this music &c. Result: my Asphalt 8 profile got partially
nuked. Specifically, my 900k+ in-game credits and ~70 cars all
vanished in a puff of smoke (there's over a year's worth of
accumulated playing there, I think). Bizarrely, some things
remained: the in-game tokens, a handful of cars which had been won
rather than purchased, my entire collection of unused power-up
cards, and, apparently, all my best times as it keeps telling me
I've beaten them when I run through a previously-raced track with
the benefit if a year's experience. Le sigh. This has already
happened to a couple of people I know, and it's pretty
annoying. Then again, since I've been playing without paying -
buying cars through constant grinding on high-value tracks - I
guess I can hardly be too whiny about it... currently flipping
through every other app to see what else, if anything, got
lost.
Initial DSPsrv data restoration failed due to my partition sizes
being incorrect, so I had to repartition and try
again.
- August 1
- Cocktails and Swingers. They all look so YOUNG. And
THIN.
previous month | current month | next month