David Gessel
Lenovo System Update breaks Windows Update
An unfortunate series of events afflicted my poor Lenovo W500. At some point I started to get odd errors and ran sfc /scannow and found a large set of uncorrectable errors in a variety of packages. Nothing caused me too much trouble, so I ignored it. I kept hoping some giant windows update would overwrite all the broken bits and save me the trouble of debugging it, so I was happy when Win 7 Service Pack 1 was finally available – at 70-400MB it has to overwrite just about everything, but my happiness was short lived.
Sadness… somewhere in the preamble updates something got hosed and a check of my disk showed bad blocks. Chkdisk confirmed it and it seemed a failing disk was likely the cause of many of my woes. I strapped as many belts and suspenders around the disk as I could – windows backup, clonezilla, copying files. Clonezilla couldn’t read all the blocks, so I had to use the recover option, but that version still had problems. Dang.
Windows recovery was fail, rollback, in place upgrade, system restore. All fail. Fine. Life sucks – reinstall from scratch and then reinstall all my applications. This is a huge pain in the ass, but windows just get sluggish in a year or so without a complete reinstall anyway; it isn’t like Microsoft cares whether you can get your work done or not, what are you going to do? Pay 100% style premium so The Steve can dictate what you can do? When choosing one evil empire over another, pick the cheapest.
So I do a reinstall from scratch. Windows reinstalls more than a few weeks out from the release of the OS are a monumental undertaking as the updates take forever. Bringing a windows 7 computer up to date takes between 1-1.5GB of updates, after installing a DVD’s worth of software. There’s the endless reboots as patches are installed and removed and whatever, multi-hour downloads. But eventually, you get a perfect, up-to-date OEM blessed configuration. Or so you think… duh duh duh.
I finished the whole mess, including the Lenovo System Update drivers and windows update stopped working and sfc /scannow gave me errors. Crappenfest. Reverting to the first system snapshot failed, uninstalling every single thing – all windows updates, all Lenovo updates was fail. Whatever did this can’t be fixed after it is done. You’re screwed.
Nothing to do but try again from scratch, this time paying attention and not using the computer at all until everything was installed, including anti-virus. Another 36 hours of updates later, same result. CRAPPENFEST.
How could that be? Some OEM/M$ update is breaking the system, and so began the hunt: reinstall from scratch #3. I used a binary search algo, saving disk images between each iteration so I wouldn’t have to do install from scratch 4. All windows update updates were fine, so the problem was with Lenovo. Updating only essential components was fail, restore windows. Installing just the really important bits one or two at a time (not quite binary splitting the install batch) got me through about half the useful lenovo updates, so time to create an image.
Reviewing the Device Manager, I saw 5 “?” devices – and searching around I found they were related to 3 drivers:
4-in-1 Card reader
Setup from “4in1” folder
- Base system device Ricoh Memory Stick controller
- Base system device Ricoh SD/MMC host controller
- Base system device Ricoh XD- picture card controller
the above 3 unknown devices in device manager will be resolved by the Ricoh cardreader drivers.
Turbo Memory
Some models may or may not have a turbo memory module.
To verify, open “device manager” and check for a unknown device listed as “PCI Memory Controller”.
If such a device is listed, then install the Turbo Memory driver via setup from “turbomem” folder.
You may see a hardware device install popup from systray.
Reboot is required.
AMT
If Intel’s Adaptive Management Technology is implemented in anenterprise enviroment, then the AMT drivers can be installed viasetup from the “AMT\MEI” folder.
If AMT is not employed, AMT can be disabled via Bios.
The drivers from the AMT setup will resolve the unknown devices within “device mananger”, the PCI Simple Communications Controller.
I install just those.
FAIL!
recover using windows system recovery tools (format disk, reinstall from image)
One of those three. AMT I don’t want anyway, so I tried to disable it in BIOS, but there were no entries in my BIOS for AMT so I just disabled it in device manager. ?->! np. I don’t trust it, too deep in the OS. This seems like the problem.
Install Ricoh, seems benign. Reboot, system works. Just Turbo Memory to go.
Turbo Memory is kind of cool, especially for a laptop. As Intel says:
The benefits of Intel Turbo Memory include:
- Faster application load and run time when multi-tasking
- Faster boot time
- Lowers PC power consumption by reducing hard drive spin
It uses some special on the mobo Intel cache memory to speed up disk access like a hybrid SSD/Rotating disk. I want this to work ’cause it cost money to put in the computer. Since it had to be that evil AMT security thing, no problem. FAIL. The problem is Intel’s Turbo Memory driver. If you install it, you’re screwed. Now that I know what the problem is, I find I’m not the only one with it.
I tried both the Lenovo supplied Turbo Memory Driver and the Intel supplied one here . Both are fail. No Turbo Memory For You. There are some hints in forums that maybe Turbo Memory isn’t compatible with advanced format disk drives, so possibly replacing my older 500GB disk with a newer 700GB uncovered a latent incompatibility.
Given how much of a disaster installing it is–the only recovery method is to restore a previous disk image–I suppose that’s one feature of my MoBo that is obsolete now. Bummer. Ate just about a week of work time to find this little monster of a driver. Thanks WinTel.
(my sfc /scannow log was filled with entries like:
POQ 119 starts: 0: Move File: Source = [l:192{96}]"\SystemRoot\WinSxS\Temp\PendingRenames\a52557019366cc01d63500006c0a3c08._0000000000000000.cdf-ms", Destination = [l:104{52}]"\SystemRoot\WinSxS\FileMaps\_0000000000000000.cdf-ms" 1: Move File: Source = [l:162{81}]"\SystemRoot\WinSxS\Temp\PendingRenames58759019366cc01d73500006c0a3c08.$$.cdf-ms", Destination = [l:74{37}]"\SystemRoot\WinSxS\FileMaps\$$.cdf-ms" 2: Move File: Source = [l:224{112}]"\SystemRoot\WinSxS\Temp\PendingRenames58759019366cc01d83500006c0a3c08.$$_microsoft.net_3296b36dbe4c7fa3.cdf-ms", Destination = [l:136{68}]"\SystemRoot\WinSxS\FileMaps\$$_microsoft.net_3296b36dbe4c7fa3.cdf-ms" 3: Move File: Source = [l:244{122}]"\SystemRoot\WinSxS\Temp\PendingRenames\c6495e019366cc01d93500006c0a3c08.$$_microsoft.net_framework_83386eac0379231b.cdf-ms", Destination = [l:156{78}]"\SystemRoot\WinSxS\FileMaps\$$_microsoft.net_framework_83386eac0379231b.cdf-ms" 4: Move File: Source = [l:266{133}]"\SystemRoot\WinSxS\Temp\PendingRenames\26ab60019366cc01da3500006c0a3c08.$$_microsoft.net_framework_v2.0.50727_e9368840261e60ee.cdf-ms", Destination = [l:178{89}]"\SystemRoot\WinSxS\FileMaps\$$_microsoft.net_framework_v2.0.50727_e9368840261e60ee.cdf-ms" 5: Move File: Source = [l:288{144}]"\SystemRoot\WinSxS\Temp\PendingRenames\860c63019366cc01db3500006c0a3c08.$$_microsoft.net_framework_v2.0.50727_redistlist_2e6ab8b35e9ef953.cdf-ms", Destination = [l:200{100}]"\SystemRoot\WinSxS\FileMaps\$$_microsoft.net_framework_v2.0.50727_redistlist_2e6ab8b35e9ef953.cdf-ms"
POQ 119 ends.
Category: Negative • Technology
Rsync corrupted MAC on input
I am migrating my FreeNAS 7.x to a 8.x, which means copying the ZFS tank as there isn’t a tool for migrating the disks right now and upgrading them to the version of ZFS in 8.x. Kind of a pain in the butt that was made worse by the endless recurrence of an error like:
Received disconnect from xxx.xxx.xxx.xxx: 2: Packet corrupt
rsync: writefd_unbuffered failed to write 4 bytes to socket [sender]: Broken pipe (32)
rsync: connection unexpectedly closed (23734 bytes received so far) [sender]
rsync error: unexplained error (code 255) at io.c(601) [sender=3.0.7]
or something like:
Disconnecting: Packet corrupt
rsync: connection unexpectedly closed (581052724 bytes received so far) [receiver]
rsync error: error in rsync protocol data stream (code 12) at io.c(601) [receiver=3.0.8]
rsync: connection unexpectedly closed (202 bytes received so far) [generator]
rsync error: unexplained error (code 255) at io.c(601) [generator=3.0.8]
I figured my 7.x install had to be fine as I’ve been RSYNCing my server to it without error for about a year now, so the problem had to be in the new box and poking around for “packet corrupt rsync” on google was turning up a lot of *shrug* maybe bad RAM or a bad NIC. Hmmm… I tried command line push and pull from both boxes via SSH to see if I could get better results, no luck: a few files would transfer, maybe 10 seconds, maybe 5 minutes, then blop, bad packet, broken pipe, oh so informative “unexplained error” at io.c, start over. No way I was going to be able to transfer 3.5 TB 100MB at a time.
Finally I found this and checked the lovely graphical status monitor on the FreeNAS 7 box. It has 4GB of RAM, whichhas been plenty so far, but looking at the graph it was using about 95% of that memory. It had been up for 59 days so I was reluctant to reboot it, I mean uptime is a competition after all. But I took a dive and rebooted. Now, even with CIFS/SAMBA cranking some backup files simultaneously, RSYNC is running flawlessly at a nice steady 300mb/s, apparently limited by CPU (seems to be single threaded, maxing out one CPU and leaving the other idle, hmmm… problem for another day). I feel bad for doubting my FreeNAS 8 box, it was never the problem.
So if you’re getting RSYNC problems consider rebooting the server to free up RAM or even upgrading. The new box will have 12-16GB, which is about what is recommended for ZFS (1GB/TB) and things are looking pretty good. My RSYNC was running just -a –progress, no resource intensive -z option.
Category: FreeBSD • Technology
Cambridge Morning
Breakfast in the euphonic Wolf Abdias and Stanley Esdras Jules Square
Is it time to leave FaceBook
So somebody added me to a FaceBook group – I haven’t yet looked into how, but facebook lets me opt out later (rather than opt in) which means I’m getting dozens of messages a day and I’ll have to get around to unsubscribing when I can.
Wow…. this is amazing. Somebody you don’t like? Subscribe them to high volume facebook groups. Their inboxes will fill with random crap. That’s awesome – other people can put you in a group and you have to opt out. That’s even better than G+ leaking “circle” names; fortunately, I read about that one before populating my “annoying morons I follow only because I have to for business reasons” circle. Now where are those “Fans of Pedobear” and “10% For Al Queda” groups? Lets see how long it takes to get all the FaceBook employees on the no fly list.
Seems like Facebook is responding badly to the perceived pressure from G+ (isn’t that dead yet?). I have no idea how long the groups opt out has been in place, but one of my favorite recent moves is the mobile snarf function whereby your facebook mobile app scrapes your mobile phone directory to populate everyone’s mobile phone numbers in their database and then default suggest that direct messages be sent to mobile devices. If nothing else convinced people that facebook messaging is a horrible substitute for email, this should.
This is a great example of why putting information in the “cloud” means ceding all control to entities who’s motivations may not align with yours. Facebook has decided that their best interests are served by snarfing mobile numbers, running up phone bills, and stuffing inboxes and there’s nothing you can do but write a whiny letter. They have your data on their hardware, so they own it.
Category: Technology • Vanity sites
PHP default Lat Lon
Odd choice for the default lat/lon in php.ini
http://maps.google.com/maps?q=31.7667+35.2333+&hl=en&ll=31.766696,35.233305&spn=0.007799,0.007832&t=h&z=17
Category: FreeBSD • Technology
All Your Virus Are Belong To Us
There’s an article in PLoS one (cited from /.) by some MIT Lincoln Lab researchers (Go Beavers!) published under the title “Broad-Spectrum Antiviral Therapeutics.” Typically the media reports of such articles vastly overstate the claims in the paper to make exciting headlines, but in this case the reports seem fair to modest.
If the approach they are describing, Double-stranded RNA (dsRNA) Activated Caspase Oligomerizer (DRACO), works as well as in vitro tests and mouse tests indicate so far, viral infections could be as easy to manage as bacterial infections have been since antibiotics. Basically DRACO is a compound that can be introduced into a mouse (and very likely a person) infected with a virus or prophylactically in advance of risk of viral infection. Any infected cells will die within 24 hours. DRACO remains active for about 8 days and has prophylactic value when administered up to 6 days in advance of infection.
Category: Technology
Yard Berries are Fruiting
The urban blackberries and raspberries are starting to fruit.
Managing (lots of) Digitial Pictures
This is an older method, I do a lot of this with DigiKam now on Linux.
Over the decades, I’ve taken a lot of digital pictures. I was a bit haphazard in backing them up to CDs to random hard disks etc – meaning several copies. Over the years, bit rot has corrupted some copies, CDs from 20 years ago have started to go blank etc. Once I put together a ZFS 6 FreeNAS box, I thought it would be a good place to organize them, especially once I started playing with Picasa’s face recognition tool, which is awesome for reminding me who some of those people are in those old .jpgs staring back through the bit flip block defects of the ages.
I’ve tried a couple of face recognition tools – Microsoft’s, some other thing that really sucked, and Picasa, and Picasa’s is by far the best. Unfortunately Picasa suffers horribly from Google Hubris, that infuriating disease that renders otherwise excellent technologies almost unusable. An example many people have run into is Google’s idiotic threading model in gmail. They’ve decided that all messages are non-hierarchical blobs, that the meta information means nothing, and that we should trust the lucky feeling. If the messages Google chooses to show us aren’t what we were actually looking for, then we are doing it wrong.
Picasa is infected with the same disease, but has it even worse. Picasa has one uniquely good trick, it tags faces fairly well. It is not a particularly good tool, certainly not the best, for many other tasks people do with images. But since failing to recognize that the only right way to do any of these tasks is with Picasa, and really failing to understand that anything anyone would legitimately ever actually want to do with a digital image falls into the set of features Picasa has (or it is not legitimate), the fact that touching your images with any other program corrupts Picasa’s database and, entertainingly, wipes out any work that you’ve done with Picasa is, as reiterated over and over by Google’s reps in the Picasa forums, just proof that you’re doing it wrong.
And, of course, Google and Picasa will be with us forever, just like every image management and editing application that I was using back in 1990 when I started taking digital photos.
My little image collection, once fully deduplicated, is 52,000+ images and 122 GB of data, which I think crosses most predictable size fail thresholds, so if these tools work here, they should be pretty reliable for most people. If you don’t get it yet, and still fail to adhere to the Google Way, the following utilities aided my heresy.
Face Tagging (Fix Picasa with AvPicFaceXmpTagger)
If it wasn’t for the face tagging feature, I’d never use Picasa. I can’t wait until somebody competent writes a face tagging application that is as well written, straight forward, and standards compliant as Friedemann Schmidt’s GeoSetter – a gold standard in image utilities matched only by Irfan Skiljan’s IrfanView. Until then, there is, alas, only Picasa.
With a large collection of images, especially those with crowd shots, one quickly discovers that even Picasa’s devs haven’t through through the UI very well yet: there’s no way to reject large groups of pictures. It is also very tedious to work in manual mode: you can’t add faces in the “identify unknown faces” mode where you’d want to, for example. Another odd artifact is that to move a misidentified collection of faces to the right name, you have to select from a text-only popup list that quickly spans several 1200 pixel screens as you add names. If you type the first letter of the name, it jumps to it, but the scroll wheel doesn’t scroll the list and if you start typing the second letter of the name thinking you’ll get to the one you want (a standard UI reflex) you instead jump around to names beginning with that letter – but bonus feature – if you have only one person in the list who’s name begins with that letter, the reassignment executes automatically, which can make it hard to find where the pictures even went.
If it were me, I’d add an “indicate face” mode where I can indicate with just a click (not click, drag, name each time) where a face is and trigger a “look harder” iteration of the detection algo. It would also be useful to hint to the algo that a folder of images has more faces than already detected, try again. The algo should use meta information to aid in narrowing – for example certain faces tend to appear in different periods of one’s life. A good example might be taking a vacation with a friend: in that folder, everyone who kind of looks like the friend is more likely to be so. That is, look at frequency of appearance by metadata cluster and weight accordingly where metadata might be folder, file naming structure, GeoIP, date, time, etc.
But the huge problem with Picasa is that for reasons that could only make sense to a company that is absolutely, religiously certain they know the one and only true way to do anything correctly, Picasa writes the face ID information to a contacts.xml file, not using standards-compliant XMP face tagging. This means that when your picasa database gets corrupted (and it will, regularly) most of your face tagging efforts are lost if you don’t use a utility to write the face tag data to the EXIF meta information so it stays with the picture.
Fortunately, there is a tool to do just that: Andreas Vogel’s AvPicFaceXmpTagger. This utility will read the contacts.xml file and write the data into the image files as XMP compliant tags so the work will stay with your images. I ran it on my entire pre-deduplicated collection before deduplicating, and while it took about 20 hours, it did not barf.
What is particularly annoying is that the face detection algorithm is actually quite good, it is the database management that is beyond useless. Google has no excuse for being bad at information management. The meta information being attached to a picture couldn’t be easier – a name and coordinates. The contacts.xml file is intolerably fragile and completely tied to Picasa.
GeoTagging (Use GeoSetter)
Picasa used to be my geotag program, but then I found GeoSetter, and I completely abandoned Picasa’s inferior geotagging features and never looked back. It is now just a face recognition tool. It pretty much sucks at managing the data, and while AvPicFaceXmpTagger fixes the inexcusable shortcoming of not writing XMP tags with the face data, as soon as there’s a GeoSetter-quality, XMP-compliant face tagging solution, Picasa is so voted off the hard disk.
GeoSetter uses map integration to make tagging pictures easy, but it does The Right Thing, that is it puts as tags hierarchical place and altitude information as tags. Oddly, Picasa reps argue that geotags don’t do that any more, that is they only put the lat/lon into the picture assuming that the user will always be connected to Google’s servers and look up additional metadata from the lat/long as needed, arrogant, self-centered morons that they are. Real world users that don’t live on the Google campus still interact with their image data when their not connected to the interwebs, as difficult as this would be for Google to understand and as contrary to their plans for world domination as it is.
But Geosetter does it right, so don’t bother geotagging with Picasa. Geosetter will also look up the additional place name metadata based on lat/lon data in the picture and write that to the appropriate EXIF fields. It is powerful, easy to use, and very reliable.
Folder Organization (Organize folders by date with AmoK Exif Sorter)
Organizing pictures is highly subjective and there’s no right way – well except Picasa’s One True Way, but if your read this far, you’re probably not drinking that cool-aide. I, personally, like YYYY/YYYY-MO/YYYY-MO-DY/Image name folder structures. I, personally, don’t end up with more than 3-400 images in any single folder that way (and that very rarely) so OS’s don’t ever barf on a 20,000 image folder and it is fairly easy to find pictures. The tool I use to organize into year/month/day folders is AmoK Exif Sorter, which can read the EXIF create date and move images into my favorite folder structure automatically. It is a little slow on large folders of more than 2-3,000 images, but it didn’t fail on 20,000 images and sorted them all perfectly.
This works well because I use the same image organization with my EyeFi card, which transmits images directly from my camera to my laptop via wifi and sorts them as it goes. Everything prior to getting the card was randomly sorted until Exif Sorter fixed it, but now it should stay in sync. I really like my EyeFi card, but if upload is enabled when I am not in range of a discoverable network, the card sometimes crashes and I lose the last couple of pictures taken. I’m not happy about that, but I usually remember to turn upload off from the camera interface, and it has only made me really sad a few times so far.
DeDuplication (AntiTwin and DupDetector)
If you’re as disorganized as I am then you’ll ultimately end up with quite a few extra copies of your images as the years go by. Some of my collections had more than 10 copies in the nearly two decades since I first took them. I actually use two tools for deduplication: AntiTwin and DupDetector; I tried Picasa’s deduplication tool but it sucks and it isn’t clear that it is actually removing duplicates, rather just faking you into doing work with it that will later be lost when you have to reinstall Picasa in a few days after the database gets corrupted again (see rotation, below).
I do first pass deduplication with AntiTwin and use the byte by byte comparison at 100% match to find bit-for-bit copies. This does not detect copies with different EXIF tags (which happens) or images that are scaled for email and cluttering up your disk along with their original resolution master images, but you can be confident you’re not going to lose anything. I directly delete the copies AntiTwin finds. AntiTwin also has an image compare function, but it is useless on a large image collection.
To find scaled copies, copies with exif info, copies with minor bit rot, etc that AntiTwin won’t find, I use Prismatic Software’s DupDetector. I’ve found an odd mix of versions on download sites, and the author site is very slow, but it isn’t too huge and it works very well and has been recently updated. I use it to move, not delete copies, into a dead storage folder. If I make a mistake, the copies are still there, but I don’t need to have them in my primary search path. I am fairly confident that everything detected as a duplicate with match at 99.9% was actually a duplicate, but at 99.7%, it turned up some icon sized scaled pictures along with a lot of false matches in very dark pictures. I suggest first running at 100% in fully automatic mode, then cautiously at 99.9% in fully automatic mode; I only had 420 detected duplicates at 99.7%, and about half of those were true duplicates, so I ran at 99.7% in semi-auto mode.
Rotation (IrfanView)
One of the last steps for me is orienting all of my pictures upright using a JPEG Lossless rotation. In yet another facepalm move, Picasa fakes you out with rotations – it does not actually rotate the image, it just stores your rotation specification in picasa.ini file in the folder, which only Picasa uses, and that’s only until that file gets hosed for some reason. So if you spent a couple of days scrolling through the giant list of all your images rotating them one by one in Picasa, you wasted your time. Sorry. Thank Google.
Fire up IrfanView, load a directory of images, or even all subdirectories, and you can autorotate a giant library according to EXIF information. If your pictures go back more than about 5 years, your camera probably didn’t have an orientation sensor, so auto-rotate wont work. But Irfan’s thumbnail mode lets you select a few thousand images that need to be rotated the same way on by one (but quickly) and batch rotate them all losslessly.
If you do this, Picasa will still apply the picasa.ini rotation you created and it will be wrong, which is a good reminder not to use Picasa for anything any other program does better.
Category: photo • Positive • Reviews • Technology
-
Recent Posts
- Apropos of nothing in particular…. 2025 March 26
- Treegraph.sh a tool for generating pretty file structure graphs 2025 February 28
- FINAL System shutdown after 16 years 2025 February 12
- Adding a feature to MediaWiki WikiEditor formatting 2025 January 18
- Technology democratizes nuclear-grade munitions 2025 January 10
- Optane, a modern technology tragedy (plus FreeBSD nvmecontrol) 2025 January 05
- Electronic Signatures and PDF 2025 January 02
- TB 128 is coming. Lock your doors and hide your wife. 2024 September 04
- Goodbye, Tortuga. 2024 April 25
- A one page home/new tab page with random pictures, time, and weather 2024 April 11
- Categories
- Links
- Search
- Archives
- Post History
July 2025 M T W T F S S 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31