While I was out at MacIT last week, our Casper server sent me a notification that the “Check for failing hard drive” smart group had a member. Since that’s a club that nobody wants to be a part of, I forwarded the notification to the team at home to let them know. They were able to copy the user’s home folder data off to the server and left the box itself and its failing drive for me to take a look at when I got home. Once I took a look, the SMART status report of Failing and the weird noises from the drive made me certain that it was only a few steps short of the Choir Eternal. However, I still wanted to see if I could get the maximum amount of data off of it before its final demise. Time for ddrescue. Installing ddrescue I had a bootable utility disk and a separate drive named Backup with enough storage to hold the complete contents of the failing drive. Now I just needed to install ddrescue on the utility drive. To do this, I installed MacPorts on the utility drive and then installed ddrescue. 1. Installed MacPorts from http://www.macports.org 2. Following installation, ran the following command to get MacPorts up to date: sudo port -v selfupdate 3. Next, ran the following command to install ddrescue: sudo port install ddrescue Running ddrescue 1. Get the information on the drive you want to recover from by running the following command: diskutil list For the purposes of this example, we’ll assume that the failing drive is /dev/disk0s2 2. Use the following command to have ddrescue recover data using verbose mode to a disk image on the Backup drive: sudo ddrescue -v /dev/disk0s2 /Volumes/Backup/failing_drive_backup.dmg failing_drive_backup.log The failing_drive_backup.log part of the command will create a log file that ddrescue writes to. In the event that you need to stop ddrescue and start it again, ddrescue will read the log and use the information to pick up where it left off. Monitoring ddrescue Using the “-v” flag in ddrescue means that ddrescue will display its output in verbose mode. It should look similar like this: About to copy 9223 PBytes from /dev/disk0s2 to /Volumes/Backup/failing_drive_backup.dmg Starting positions: infile = 0 B, outfile = 0 B Copy block size: 128 sectors Sector size: 512 bytes Max retries: 0 Direct: no Sparse: no Split: yes Truncate: no Press Ctrl-C to interrupt Initial status (read from logfile) rescued: 0 B, errsize: 0 B, errors: 0 Current status rescued: 69792 MB, errsize: 0 B, current rate: 18153 kB/s ipos: 69792 MB, errors: 0, average rate: 18429 kB/s opos: 69792 MB, time from last successful read: 0 s Copying non-tried blocks… You can also use fs_usage to monitor ddrescue‘s read/write progress by using the following command: sudo fs_usage | grep ddrescue Recovery Once your data has been recovered to the disk image, hopefully you can double-click on it and have it mount. However, in the event it does not, you can try restoring from the disk image to another disk partition using the following steps. 1. Get the information on the drive you want to recover from by running the following command: diskutil list For the purposes of this example, we’ll assume that the drive we’re restoring to is /dev/disk1s3 2. Use the following command to have ddrescue recover data using verbose mode from the failing_drive_backup disk image on the Backup drive to /dev/disk1s3: sudo ddrescue -v /Volumes/Backup/failing_drive_backup.dmg /dev/disk1s3 recovery_drive.log Once on the disk partition, you should be able to run whatever repairs are needed to get the drive to mount and access your files. Update 2-3-2012: When recovering data to a drive, you may receive the following message: ddrescue: Output file exists and is not a regular file. ddrescue: Use `–force’ if you really want to overwrite it, but be ddrescue: aware that all existing data in output file will be lost. In this case, the output file is your destination drive and ddrescue has detected that it’s an existing partition. If you’re certain you want to write to it, use -f to force overwriting of the existing partition: sudo ddrescue -v /Volumes/Backup/failing_drive_backup.dmg /dev/disk1s3 recovery_drive.log -f
El comando ddrescue es una herramienta muy potenta para intentar recuperar datos de un disco duro/particion con errores.
GNU ddrescue Manual
This manual is for GNU ddrescue (version 1.13, 27 August 2010).
|1. Introduction||Purpose and features of GNU ddrescue|
|2. Basic concepts||Blocks, clusters, devices, files, sectors, etc|
|3. Algorithm||How ddrescue recovers the data|
|4. Invoking ddrescue||Command line interface|
|5. Logfile Structure||Detailed format of the logfile|
|6. A small tutorial with examples|
|7. Direct Disc Access||Bypassing the kernel cache|
|8. Fill Mode||Selectively overwriting the output file|
|9. Generate-logfile Mode||Generating an approximate logfile|
|10. Reporting Bugs||Reporting bugs|
|Concept Index||Index of concepts|
LINUX GRAPHICSIntel(R) Linux* Graphics Installer version 1.0.1
Intel® Linux* Graphics Installer 1.0.1
The Intel® Linux* Graphics Installer allows you to easily install the latest graphics and video drivers for your Intel graphics hardware. This allows you to stay current with the latest enhancements, optimizations, and fixes to the Intel® Graphics Stack to ensure the best user experience with your Intel® graphics hardware. The Intel® Linux* Graphics Installer is available for the latest versions of Ubuntu* and Fedora*.
The Intel® Linux* Graphics Installer is made available under the terms of the Apache Software License 2.0. A link to the source code is provided above, which includes a copy of the License.
Packages installed by the Intel® Linux* Graphics Installer are subject to their respective copyright and license terms.
Supported Intel® Linux* Graphics Stack Releases and Linux* Distributions
- Intel® Linux* Graphics Stack Release 2013Q1
- Ubuntu* 13.04
- Fedora* 18
Signatures – Ubuntu*
In order to “trust” the Intel® Linux Graphics Installer, you will need to add keys to Ubuntu’s software package manager (“apt”). Open a terminal, and execute these line:
wget --no-check-certificate https://download.01.org/gfx/RPM-GPG-KEY-ilg -O - | \ sudo apt-key add -
wget --no-check-certificate https://download.01.org/gfx/RPM-GPG-KEY-ilg-2 -O - | \ sudo apt-key add -
Signatures – Fedora*
In order to “trust” the Intel® Linux Graphics Installer, you will need to add keys to Fedora’s software package manager (“rpm” and “yum”). Open a terminal, and execute these lines:
wget --no-check-certificate https://download.01.org/gfx/RPM-GPG-KEY-ilg ; \ sudo rpm --import RPM-GPG-KEY-ilg
wget --no-check-certificate https://download.01.org/gfx/RPM-GPG-KEY-ilg-2 ; \ sudo rpm --import RPM-GPG-KEY-ilg-2
Installing and Running
Pick the correct Installer package for your Linux distribution, version, and architecture (32- or 64-bits). The links are provided above. Click the appropriate link to begin package installation.
Once installed, you can find the Intel Linux Graphics Installer in your application dashboard. Just look for our logo, or begin typing ‘Intel’.
If you are a power user, you can open a terminal and execute:
Not Supported by the Installer
Reproduced from the FAQ page:
Due to the complex package dependencies of the binary graphics drivers for the Intel® Graphics Media Accelerator 3600 Series used in the Intel® Atom™ Processor N2600 Series and Intel® Atom™ Processor N2800 Series, supported drivers are only available through your device manufacturer or through Linux distributions providing support for the Intel® GMA 3600. An unsupported version of the binary driver is also available at
This software is provided ‘as-is’, without any express or implied warranty, and is bound by the license terms included with the download package.
i run kubuntu on a 1gb ram netbook, and optimizing KDE memory usage is cruicial for me because i use this machine for development (kdevelop is a large beast, and i want to have chromium and gcc running as well). I’d like to share a few tips to achieve that.
1. sudo apt-get install kubuntu-low-fat-settings
2. if you don’t need bluetooth: sudo apt-get purge bluez* bluedevil
3. sudo apt-get purge akonadi-backend-mysql mysql* (this will automatically install sqlite backend)
4. if you don’t use activities: sudo rm /usr/share/kde4/services/kactivitymanagerd.desktop (i filled bug 298088 with request to make kactivitymanagerd ran only when really needed)
5. if you don’t need akonadi: sudo rm /usr/share/autostart/akonaditray.desktop
6. if you don’t use nepomuk (i.e. disabled it in systemsettings): sudo rm /usr/share/autostart/nepomukserver.desktop
7. sudo rm /usr/share/autostart/kaddressbookmigrator.desktop
8. if you don’t use printer often: sudo rm /usr/share/autostart/printer-applet.desktop (you can still start this applet manually by issuing ‘printer-applet’ command in konsole)
9. sudo mv /etc/rc5.d/S50saned /etc/rc5.d/K50saned
(hint by Dave: instead of removing .desktop files, just do ‘cp FILE ~/.kde/share/autostart && echo Hidden=true >> ~/.kde/share/autostart/FILE)
Currently my Kubuntu uses 222mb right after startup.
Also i’m investigating why the programs I really need (kmix, klipper, etc) are taking so much ram. first results showed that at least 4megs are used to store font data (allocated by qHBNewFace() call in src/gui/text/qfontengine_ft.cpp, and this is not shared across different processes!)