2020-08-26

mdlbear: (technonerdmonster)

Early last Sunday afternoon I noticed that the battery-charge indicator had vanished from (main laptop)Sable's Gnome panel. (That's sort of like the row of icons and such you see along the bottom of the screen on a Mac, except that I've configured it to go vertically down the left-hand edge, where it doesn't reduce the hight of my browser window too much.)

Hmm, says I to myself, maybe it will come back after a reboot. So I did that, and logging in presented me with an empty screen background. ??? A little more experimentation showed that only the Gnome-2 desktop was affected; the Ubuntu one (which I detest) worked fine. So did a console terminal, and SSH. The obvious next step was to run fsck, the file-system checker (and many hackers' favorite stand-in for a certain four-letter expletive).

Well, not quite the next step. Since I figured that fixing file-system corruption might possibly make things worse, I moved over to one of my spare laptops, Raven, sat Sable on the shelf next to my desk, and logged in on Sable with SSH. Then I went to the top of my working tree and ran make status to see what needed to be checked in. I think I've mentioned MakeStuff before -- it's basically a multi-function build tool based on GNU Make, and one of the things it can do is find every git repository under the top-level directory, and do things like check its status, or pull. (Commit takes a little more thought, so you don't want to do it indiscriminately.)

Then I ran MakeStuff/scripts/scripts/pull-all on Raven. Done.

Well, almost. There are a few things in my home directory that aren't under my working tree, mostly Desktop, Documents, Downloads, my Firefox bookmarks, and my Gnome Panel configuration. I hauled out a USB stick, fired up tar (like zip, except that it can save everything about a file, not just what DOS knows about). The command I actually used, because I probably forgot a few things (and should have excluded a few more, like Ruby and Perl), was

    rsync -a --exclude vv --exclude ?cache --exclude ?golang . \
          nova:/vv/backups/steve\@sable

And ran straight into the fact that USB sticks are usually formatted with a FAT filesystem, and limit files to 4Gb. Growf! Faced with the unappetizing prospect of shipping 17GB of backups over WiFi, I carried Sable over to my server and plugged in the ethernet cable that I leave hanging off the router for just such occasions. After that finished, I fired up Firefox bookmarked all my tabs, and exported tabs and bookmarks to an HTML file. Should have done that before I backed up everything, but I didn't think of it.

Finally, I was ready to run fsck and find out the bad news. I plugged in the USB stick with the Ubuntu live installer (one does not run fsck on a mounted filesystem!), brought up a terminal, and ran

e2fsck -cfp /dev/sda5 # check for bad blocks, force, preen

(Force means to do a full check even if the disk claims it's okay; "preen" means to make all repairs that can be done without human approval.) Naturally, after turning up a few dozen bad blocks, it told me that I had to run it manually. I could have replaced the -p option with -y, to say "yes" to all requests for approval; instead I left it off and hit Enter a hundred times or so. Almost all the problems were "doubly-claimed blocks", mostly shared between some other file and the swapfile. Of course. Fsck offered to clone those blocks, and I took it up on that offer. Then ran it again to make sure it hadn't missed anything. It hadn't. But it was still broken, no doubt because of all those corrupted files.

So this morning, after a couple of searches, I installed the debsums program, which finds all of the files you've installed, and compares their checksums against the ones in the packages they came from. The following command then takes that list, and re-installs any package containing a file with a bad checksum:

apt-get install --reinstall $(dpkg -S $(debsums -c) \
       | cut -d : -f 1 | sort -u)

Sable now "works" again. I know at one zip file was corrupted (it was a download, and I was able to find it again), and fsck doesn't appear to have kept a log, so broken files will keep turning up for a while. I know there aren't any bad zip files left because there's an option in unzip, -t, that compares checksums, just the way debsums does, so I could loop through all my downloads with:

for f in *.zip; do echo -n $f:\ ; unzip -tqq $f; echo; done

I have two remaining tasks, I think: one is to validate all of my Git working trees (worst case -- just blow them away and re-clone them), and then comes the really hard one: deciding whether I still trust Sable's SSD, or need to get a new one. And if I get a new one, how big? Sable and its 500GB drive were purchased together, used, from eBay, and brand-new 1TB SSDs are pretty cheap right now. So there's that.

Another fine post from The Computer Curmudgeon (also at computer-curmudgeon.com).
Donation buttons in profile.

mdlbear: (spoiler)

NOTE: This has been sitting, unfinished, in my pile of drafts for over two years. It got posted unintentionally during a test. So it's unlikely to be finished now. You can get some idea of where I was going from the notes.

I am no John Keats, and this isn't anything like a sonnet. But then, Emily Wilson's new translation of the Odyssey isn't anything like Chapman's, either. I think I know a little of how Keats felt, though, like some watcher of the skies / When a new planet swims into his ken. (Uranus had just recently been discovered when Keats wrote that.)

This book reads like a thriller. A page-turner. Plan on losing some sleep.

The original Odyssey consists of 12,110 lines of dactylic hexameter -- that's the natural rhythm of ancient Greek. The natural rhythm of English is iambic, and in particular iambic pentameter. That's what Wilson uses in her translation, keeping the same line count. And English is actually less compact than Greek in most cases. The pace is breathtaking.

OK, time for some examples. Here's how Chapman's translation -- the one that Keats was so impressed by -- starts out:

The man, O Muse, inform, that many a way Wound with his wisdom to his wished stay; That wandered wondrous far, when he the town Of sacred Troy had sack'd and shivered down; The cities of a world of nations, With all their manners, minds, and fashions, He saw and knew; at sea felt many woes, Much care sustained, to save from overthrows Himself and friends in their retreat for home; But so their fates he could not overcome, Though much he thirsted it. O men unwise, They perish'd by their own impieties, That in their hunger's rapine would not shun The oxen of the lofty-going Sun, Who therefore from their eyes the day bereft Of safe return. These acts, in some part left, Tell us, as others, deified Seed of Jove.

And here's Lattimore's version, which was considered the best modern translation when I read it in college half a century ago:

Tell me, Muse, of the man of may ways, who was driven far journeys, after he had sacked Troy's sacred citadel. Many were they whose cities he saw, whose minds he learned of, many the pais he suffered in his spirit on the wide sea, struggling for his own life and the homecoming of his companions. Even so he could not save his companions, hard though he strove to; they were destroyed by their own wild recklessness, fools, who devoured the oxen of Helios, the Sun God, and he took away the day of their homecoming. From some point here, goddess, daughter of Zeus, speak, and begin our story.

You'll notice he's using dactylic hexameter; it's only ten lines, the same as the original. Chapman uses seventeen lines of heroic couplets -- rhymed iambic pentameter. Here's what Wilson does with it (going halfway through the eleventh line in the process):

Tell me about a complicated man. Muse, tell me how he wandered and was lost when he had wrecked the holy town of Troy, and where he went, and who he met, the pain he suffered in the storms at sea, and how he worked to save his life and bring his men back home. He failed to keep them safe; poor fools, they ate the Sun God’s cattle, and the god kept them from home. Now goddess, child of Zeus, tell the old story for our modern times. Find the beginning.

Right from the start, you know you're in for a ride.

"Complicated", there, is Wilson's rendering of “polytropos” -- “poly-” (= "many"), “tropos” (= "turn"). You can see, in the quotes above, a few of the other choices. Palmer, in 1891, used "adventurous", and Alexander Pope in 1725 used The man for wisdom's various arts renown'd. It's also worth noting that Wilson says of Odysseus's men He failed to keep them safe. Odysseus isn't always what we think of as a hero -- among other things he lies repeatedly, takes unnecessary risks, cheats on his wife with Calypso and Circe (while expecting Penelope to remain faithful, of course), and can't resist sacking a few more cities on his way home. Scoundrel doesn't begin to cover it.

In an interview in The New York Times, Wilson says I wanted there to be a sense [that] maybe there is something wrong with this guy. You want to have a sense of anxiety about this character, and that there are going to be layers we see unfolded.

One also gets the sense that Odysseus might not be a reliable narrator. One wonders just how many of his adventures are real, given that most of them -- the Cyclops, Circe, Scylla and Charybdis, the Sirens, the bag of winds, the Underworld -- are recounted by Odysseus himself, in books 9-13. Margaret Atwood has a little fun with some of the more mundane alternatives in The Penelopiad, her retelling of the story from Penelope's point of view (which I highly recommend as a follower).

TL;DR - Notes, links, and quotes )

Most Popular Tags

Style Credit

Page generated 2025-06-12 05:19 pm
Powered by Dreamwidth Studios