I love Picasa, but last night it ate up all the available disk space on drive C while rebuilding its database after I moved my portable tablet PC out of range of the server where most of my photos are. Picasa should know better, but online I saw other people complaining of Picasa rebuilding its database for photos stored externally. Sigh.
Now I'm trying to scrounge up more space on drive C yet again. I have a Toshiba M200 tablet PC running Windows XP.
hiberfil.sys
While backing up some files (using TeraCopy) before working on the Picasa DB, I decided to disable hibernation, hoping that the hiberfil.sys on drive C, about 1.6 GB, would be freed up.
We reimaged my PC recently, so I had the default settings. I went to the Control Panel, selected TOSHIBA Power Saver, and on the Basic Setup tab for each profile I looked to see if hibernation was checked. It was not. However, on the Setup Action tab, the "When I close the lid" option was set to Hibernate. I changed that to Standby.
While I was there, I enabled "Prompt for password when resuming from Standby or Hibernation" to be more secure.
Also on the Setup Action tab, the "Critical battery" "Action after alarm" was Hibernate, so I set that to Standby.
I decided to click "Setup Options" and "Change the Power Saver Profile automatically when the power source changes." I changed the option for Battery power source from Normal to Long Life.
I rebooted, but the hiberfil.sys was still there, so I also used the following instructions from the TOSHIBA Power Saver Help to disable hibernation.
- Open [Control Panel], click [Performance and Maintenance]
- Click [Power Options]
- Select the [Hibernate] tab and check [Enable hibernation]
- Click [OK]
After I disabled hibernation and rebooted, the hiberfil.sys was gone.
Picasa DB
I backed up C:\Documents and Settings first, in case anything went wrong with creating an NTFS junction point.
Backup
NTFS Junction Point
I
downloaded the
Junction tool from
http://technet.microsoft.com/en-us/sysinternals/bb896768.aspx. I couldn’t decide where to put it, so I just put it in the "C:\" directory. I opened a command prompt (pressed Windows logo key+R and then entered "cmd") and entered the following to see if I already had any junctions on either drive.
C:\junction -s c:\
C:\junction -s g:\
I did find some but not anywhere that worried me, so I exited all applications to prepare for the next step. (Junction points only work for local drives.)
On my LOCAL G drive, I then created a "G:\Documents and Settings\Kathy\Local Settings\Application Data\" directory and used Beyond Compare 2 to move the Google subdirectory there from the "C:\Documents and Settings\Kathy\Local Settings\Application Data\" directory. Some files in the Google\Chrome\User Data\Default directory didn’t copy, so I renamed the C:\Documents and Settings\Kathy\Local Settings\Application Data\Google directory to get rid of it.
Then I entered the following four commands for Junction to create the symbolic link. Enter the commands on one line each, even if below they wrap. I couldn’t get the fourth command to work with the full path spec, even with quotes, so that’s why the first two commands were necessary.
cd /d "G:\Documents and Settings\Kathy\Local Settings\Application Data\"
cd /d "C:\Documents and Settings\Kathy\Local Settings\Application Data\"
md Google
c:\junction c:google g:google
NTFS ACLs
Usage Recommendations
NOTE: Microsoft recommends that you follow these recommendations closely when you use junction points:
- Use NTFS ACLs to protect junction points from inadvertent deletion.
- Use NTFS ACLs to protect files and directories that are targeted by junction points from inadvertent deletion or other file system operations.
- Never delete a junction point by using Explorer, a del /s command, or other file system utilities that walk recursively into directory trees. These utilities affect the target directory and all subdirectories.
- Use caution when you apply ACLs or change file compression in a directory tree that includes NTFS junction points.
- Do not create namespace cycles with NTFS or DFS junction points.
- Put all your junction points in a secure location in a namespace where you can test them out in safety, and where other users will not mistakenly delete them or walk through them.
If you have Windows XP Professional, disable simple file sharing to get access to the Security tab and ACLs:
- Open My Computer and click Tools | Folder Options | View.
- Scroll to the end of the advanced settings.
- Un-check "Use simple file sharing (recommended)".
So I did the above once.
Then I did the following twice: once each for the Google directory on BOTH local drives. I’m not sure the steps to add the user “Everyone” are necessary, but I believe that making “Everyone” unable to delete the source and target directory is key.
- Right-click on the Google directory, select Properties, and go to the Security tab.
- If “Everyone” is not a user name already, click on Add, enter “Everyone” for the object name to select, and click OK.
- Click on Advanced, click on Add, enter “Everyone” for the object name to select, and click OK.
- For “Apply onto,” select “This folder only.”
- Click the Clear All button.
- Click to put a checkmark in the Deny box for “Delete.”
- Click OK until all the dialog boxes are closed. (Click Yes for the warning, too.)
I hope I got all this last stuff—the scary, important stuff—right. As usual, this all took way longer than I expected.
Trial Run Failed
Google Chrome ran fine.
I tried running Picasa, but nothing happened. I logged off and on and tried running Picasa, but still nothing happened. I tried rebooting and still had no luck. I have to give up for tonight.
SpaceMonger shows .temp files in C:\Documents and Settings\Kathy\Local Settings\Temp\Picasa3. Maybe tomorrow I’ll see if I need to do something about those.
Later Experimentation
I renamed the "C:\Documents and Settings\Kathy\Local Settings\Temp\Picasa3" directory, but Picasa still wouldn't start.
After several experiments, I noticed a new file created in the "G:\Documents and Settings\Kathy\Local Settings\Application Data\Google\Picasa2\temp\LifescapeUpdater" directory. So I renamed the Picasa2 directory.
Then Picasa started! However, it behaved as if it had no database. Tim suggested I stop Picasa and copy my database from my backup. I decided to copy the contacts and buttons directory, too, so I wouldn't have to reconfigure all that. So I copied the following directories to "C:\Documents and Settings\Kathy\Local Settings\Application Data\Google\Picasa2":
The database directory took forever to copy. When it was done, Picasa wouldn't start again. (Like before, I'd click on the Picasa icon, and nothing would happen. I didn't even see a Picasa splash window.)
So copying the good database from the backup was a waste of time.
I deleted "G:\Documents and Settings\Kathy\Local Settings\Application Data\Google\Picasa2\db3" and then Picasa 3 started, and I planned to let it scan for photos.
However, I happened to notice that a recently edited favorite photo didn't have all my edits. I nearly had a heart attack, since I have tens of thousands of edited photos.
I stopped Picasa, in case that might help reduce the amount of lost editing. I have started a backup of all my photos directories (local and external). That looks like it's going to take about 18 hours. Then I plan to cross my fingers and follow the directions to
rebuild the Picasa database.