Practical computer tips, with a smattering of digital philosophy

Manual malware removal, update 3: .exe registry association hack

As a general rule, when one is looking for the presence of viruses and their scurrilous cousins on a given computer one of the first places one looks is in the list of programs that are supposed to be run when the operating system first starts.  After all, how is an evil executable going to launch itself unless it somehow hooks itself into the OS startup routine?  YOU certainly aren’t going to willingly open a malicious program (unless you’re me, and you’re trying to infect machines with malware for demonstration purposes.  Long story.)

But suppose that instead of hooking itself into the Startup section of the registry, a particularly clever species of malware instead hooked itself into the executable for another, perfectly valid executable on they system.  Better yet, suppose that this fiend hooked itself in the generic execution routine for every single .exe file on a given system.

Read more of this post


A how-to guide for cloning and imaging entire partitions and hard disks: move and recover data as losslessly as possible

If you have a hard drive that’s dead or dying, and need to retrieve every scrap of data you can from the deceased disk, or if you simply want to move the contents of an entire partition to a larger drive without completely destroying the OS installation on that drive, you have two options.  You could shell out about $50 for a purportedly industrial-strength imaging application such as Norton Ghost or Acronis, which probably will have all sorts of anti-piracy protections which will make the program nearly impossible to use (believe me – I’ve tried them).  Or you could simply spend the next five minutes reading this how-to guide, which will (hopefully) show you how to unlock the full data-transfering power of a Linux boot CD.  What follows is a pared-down summary of countless hours of experimentation, research, and further trial-and-error on my part, so rest assured that I’m not recommending anything that I haven’t tried and tested – successfully – on many, many machines.

Read more of this post

Ubuntu freezing, locking up, or having odd power management issues? Update!

Following a roughly year-long struggle to ferret out and fix a variety of periodic glitches (kernel panics; acpi features going haywire after six suspends; etc.) in my Ubuntu installation on my Toshiba laptop, I’m happy to report that I seem to have finally banished the last of the gremlins for good.  My approach to fixing these various issues, refined and tested extensively over the course of the past year, can be summed up in a single word: updating.

Read more of this post

Microsoft rents Time Square; releases ads featuring egomaniacs for Windows 7 launch

I fully admit that my reaction to all the hubbub surrounding the Windows 7 launch is likely to be far more negative and partisan than most, but honestly: doesn’t it seem somewhat tasteless, tactless, and brazenly irresponsible for Microsoft to go to such extravagant lengths to promote its products in an era in which a nearly unprecedented number of people are worried about how they’re going to put food on the table?  What happened to corporate leadership, fiscal moderation, and all those other fine sentiments which MS and the other giants of the IT world supposedly endorse?  Buying out Time Square’s ad space for a day and releasing a set of ads showcasing supreme selfishness (“7 was my idea – all Mine”) seems to me to smack of exactly the same kind of short-sighted, complacent, shoot-for-the-moon thinking that got us into this economic mess to begin with.  Even Apple’s branding and advertising strategies aren’t quite this exorbitant – and I consider them to be at the extreme end of the shamelessness-in-marketing scale.  Finally, I might also add that, if the merits of Windows 7 really can speak for themselves, it seems mighty odd that Microsoft is doing so much yelling.

What, exactly, is my point here?  Simply that conspicuous consumption (not to mention shameless self-promotion) is annoying under any circumstances; in this economic climate, however, such behavior is reprehensible – and should not be condoned or rewarded.  Though I have access to free (and legal) licenses of Windows 7 Ultimate through several channels, I have no intention whatsoever of installing it, and I encourage everyone else who objects to Microsoft’s virtually unbroken track-record of ethical and social irresponsibility to do the same.

More generally, I wanted to take this opportunity to formally articulate my stance towards Microsoft, and the various operational paradigms it embodies – a perspective which I’ve been formulating for much of the past few years.  The way I’ve come to see it is this: though profit-driven mega-corporations such as Microsoft (and many others) have been responsible for a wide range of technological advances, their engineering accomplishments cannot begin to excuse or make up for the tremendous ethical failings on which those products were often built.   Particularly in the case of Microsoft, whose capacity for innovation has historically been limited to creative uses of buy-outs, monopolistic business agreements, and outright theft, I believe that there is very strong a strong ethical and economic argument against continuing to implicitly support the irresponsible, ruthless, and completely profit-driven operating style that it and many other Silicon Valley powerhouses have embraced pretty much since their inceptions.  As far as I’m concerned, it is high time we stop letting “the dynamics of the free market” decide how we work and live in our increasingly digitized world, and start considering the long-term implications of inhabiting a world where companies like Microsoft can and will do anything – intimidate, lie, sell our private information, etc. – to keep their profit margins up.  The idea that a few nice design features can make up for decades of irresponsibility and unethical behavior is an insult to the idea of civil, law-based society – and one that I cannot condone.

Again, I realize my stance is somewhat extreme – and I am, perhaps, somewhat overstating my case.  Nevertheless, I think my point still stands: it cannot hurt to stop once in a while and take a moment to think about the larger implications of the products and services we use every day, and make sure that they are helping us build a society that we’ll be able to live with in the years to come.

ext3grep: Ext3 file recovery utility (for accidentally deleted files)

As any of you who have come to this page via frantic Googling will probably have figured out, the conventional wisdom about journaling file systems  (the family of file systems to which ext3 belongs) holds quite unequivocally that once a file has been deleted, the chances of being able to get it back again are effectively nil.  Depending on your perspective, this characteristic either constitutes a nice security feature (arguable making multi-pass disk-wiping less critical) or a disaster waiting to happen.  Thanks to the persistence (and, arguably, genius) of one Carlo Wood, however, those of us who find ourselves suddenly confronted by latter, nastier set of implications* aren’t necessarily up a tree at all.  For this intrepid coder has written an application that purports to be able to recover any kind of file from an ext3 partition – and according to my informal testing, the robust, well-documented utility works exactly as promised.  The standard caveats about file recovery still apply, of course: only files that were deleted recently are likely to be recoverable; the fewer disk writes that take place on the partition in question between deletion and recovery, the better (so make sure to do the recovery from an entirely seperate partition), etc.  Though you can run the utility directly on the compromised partition, it would probably be most prudent to make an image of the partition first, which you can then use either as a pre-recovery backup or as your recovery source (you’d do this by using the dd command, in a manner similar to the following: dd if=/dev/<my partition> of=<image file>)

Carlo’s utility, and his stunningly detailed overview of the nuts and bolts of how ext3 works (highly worth reading) can be found here.  The source code itself is available from Google Code.

*ie, those of us who, due to lack of sleep, overzealous use of automated scripting, supreme carelessness, or all of the above, may or may not have accidently issued a command similar to “rm -r /home/.  Not that I would know anything about that.

Further proof that everyone has totally missed the boat: Pirate Bay Opponents Hit by Denial-of-Service

I frequently rant about how totally inadequete our international legal systems are at dealing with the fundamentally new challenges posed by the powers of the Internet.  If this little gem doesn’t prove that we really need to stop and think about how to best translate our existing legal/ethical ideas – rather than our outdated statues – for use in cyberspace, I don’t know what does.

My purpose here is neither to condemn file sharers, nor to storm against the oppression of copyright in the digital age: my point is that unless we stop doing both of these things, and instead start thinking about how these conflicting perspectives can be brought to some kind of reconciliation, digital society is going to only get even more dysfunctional and chaotic than it already is.

In striving so vigorously to uphold the rule of antiquated law, we are ignoring the larger, deeper issues that are tied up in the rise of digital society in general, such as what standards of personal responsibility should be applied to behavior in online spaces, and how those expectations might be adequately enforced across geopolitical borders.  Furthermore, in mainting hard-line traditionalist stances on issues such as file sharing, we seem to be doing an excellent job of actively encouraging cyber-vigalantee types of the kind mentioned in this article to fill the gap in international leadership with something that comes very close to total anarchy.  And it is precisely this kind of anarchy, of course, that has engedered still more political hard-lining and authoritarian crack-downs from various governmental authorities accross the globe on various elements of Internet policy.  Which, of course, spurs the hackers on to still more ridiculous and unproductive exploits.  And so on.

In my view, despite all of the hype and hullabaloo that surrounded it, the Pirate Bay Trial is unlikely to have any constructive impact on the structure, culture, or prevalence of P2P filesharing technologies – unless we take this whole mess as a compelling motivation to get our collective acts together, and start thinking seriously about how to best adapt our legal, ethical, and social codes for use in digital society.  And if we don’t, I’m afraid the cycle of authoritarianism and anarchy will only get continue to worsen, with potentially disasterous consequences for all.

Linux Collaboration Summit: a few thoughts and goals

Two weeks ago, I had the immense privilege of attending the Linux Foundation’s annual Collaboration Summit.  The experience was eye-opening and educational in a wide variety of ways, and got me thinking seriously about where Linux currently stands in the software ecosystem, what the operating system represents (or what it should represent), and what needs to be done to bring more public interest and acceptance to the general philosophy of free and open source software.

Read more of this post

Dealing with the dispicable Vitro / Virut (Win32.Virut) polymorphic virus

This delightful species of malware is capable of infecting every single executable (.exe, .scr, .dll) on a system, spreading via flash drives’ autorun executables, turning infected computers into full-blown zombies (ie, recruiting them into b0tnets), actively disabling anti-virus clients and other Windows security services, and generally corrupting systems so badly that there is absolutely no way to repair them short of completely reformatting the infected hard drive.  (And if you have any autorun-enabled flash drives lying around, you sure as heck better not plug them back in once you’ve reformatted, because you’ll probably find yourself right back where you started if you do.)  Here are a few resources I’ve found which may help clean up this mess.

Read more of this post

A fix for Ubuntu system freezes accompanied by a blinking Caps Lock key

I think I may have finally happened upon a definitive fix for at least one variation of the mysterious Ubuntu system crash that is accompanied by a flashing caps lock key.  The problem, I think, can be traced back to the network drivers.

Read more of this post

Why I (don’t) hate blogs: The post that started this blog

The following is one of several posts which I’ll be “porting” over from a website devoted to a wonderful class I recently took on Social Media and Virtual Communities, which was taught by the legendary technologist Howard Rheingold (I’d provide a link to a bio, but he’s everywhere; you can find him on Twitter, Wikipedia, any one of his ten websites, and a wide range of other social media sites).  I had an opportunity to do a lot of mental callisthenics in that class, the results of which I thought I’d post here on the off-chance someone might find them mildly interesting.

The Beginnings of a Blog: Thoughts on Blogging

I really would have liked to start off this post by making some bold, inflammatory, totally unqualified statement: something to the effect of “I hate blogs.”  But that really wouldn’t be completely accurate.  True, I don’t trust blogs.  I find some of them overtly annoying.  But before I launch headfirst into an empassioned diatribe about the dangers and evils of blogging, I should perhaps disclose an interesting tidbit of information.  Last week, for no particular reason that I can figure out (except, of course, that I was casting around for something to do other than homework), I went out and started a blog.  No kidding.  Go to, and you’ll find some rather bizzare introductory remarks, followed by a length and exceedingly dry exegesis on the fine art of manually removing a particular strain of malware from a computer.  I have now, of my own volition, officially become a blogger.  As I ask on the front about page of my new blog, just after having said more-or-less exactly what I just said here, “Confused yet?  Good.”

I mention all this partly to shield myself from potential future embarrassment (somehow, it doesn’t seem like the best idea to heap unconditional scorn upon a community I just voluntarily opted to join), but mostly to demonstrate that my stance on blogging is by no means doctrinaire.  While it is true that my general attitude towards the blogs I encounter in the wild is extremely wary – even, on occasion, openly hostile  – I believe that blogging (and even microblogging) in principle have tremendous positive value – when used properly.  So I suppose that what follows is less of an invective against the medium of the blog than a summary of my personal views on how the medium should be used: my highly-opinionated opening stab at creating an “Elements of Style” for this new medium, whose defining characteristic at the moment seems to be that nobody (me included)  seems to quite know what to do with it.

Here, for the time being, is a brief list of the concerns I have about the ways in which blogs are commonly being used today:

– The “random guy in his mother’s basement” phenomenon.  Why, exactly, should I trust, or even so much as take the time to read material produced by someone who has no credentials save those which he assigns himself?  How do I know what standards of journalistic integrity (if applicable) such a freelance is holding himself and his work to, if any?  Here is where I side very (perhaps excessively) strongly with one Sven Birkerts (author of The Gutenburg Elegies: The Fate of Reading in an Electronic Age), when he said, “one of the advantages of the net is that everybody can publish: it’s a free medium. There’s something very appealing and attractive about that. You can cut out the middleman–the publisher and the agent and everybody else. But when you open the floodgates entirely, you don’t get egalitarianism. You get babble. My shopping list becomes as valuable as Cormac McCarthy’s latest book. And then you go back to thinking, ‘Well, wait a minute, maybe those middlemen had some function, however flawed they were.'”

– This actually brings me directly to my second point, which is that a disproportionate number of blogs currently being penned (and, strangely enough, read) seem to consist of absolute nonsense – or worse.  Many are horrifically error-prone, both in terms of what they report (Steve Jobs died of a heart attack today; using <insert name of random product here> will give you cancer; etc.), and in terms of the grammar used to describe the subject matter.  I’m not talking about minor misspellings here; it seems as if working in the medium of the blog gives some people the impression that anything goes; that traditional language conventions are restrictive and fundamentally unnecessary. Maybe they are.  But I’m not sure how I feel about that.

At any rate, my larger point is that many blogs seem to lack a focus altogether, being more a random collection of a random individual’s thoughts – the kind of thing that would have been suitable material for a private journal in previous eras, but which is now being posted, archived, indexed, and ultimately made eminently accessible to all the world, whether or not the world is interested.   And in some cases, it seems as if the world is displaying far too much interest.  For the compliment to the phenomenon of blithe self-exposure is the equally fascinating (and, perhaps, disturbing) phenomenon of consuming voyerism; put simply, for every random person who feels compelled to share his/her every thought and wish and desire with the universe, there’s at least one other random person who is willing to spend a huge amount of time inspecting and commenting on said soul-spilling.  In some ways, I suppose this is a comforting thought.  If nothing else, it serves as compelling proof that all this talk of “virtual community” may have some real merit.   And yet all of this haphazard, somewhat superficial communication leaves me wondering: are we becoming so caught up in the minutia of other people’s lives (as well as in the task of recording the minutia of our own) that we’re actually spending less and less of our time actively living?*

Before you huff off feeling maligned, please see the the companion/counterpart to this post, in which I outline what I perceive to be the immense positives of blogging.

*Please note that these criticisms in no way applies to those enlightened souls who are currently reading this particular blog.  Please also note that for the purposes of this post I have temporarily forgotten the definition of “irony.”