Markus Hedlund

Developer / Photographer

Contact / GitHub / Instagram

Get back Acer 3820TG eRecovery / D2D / Alt + F10

The first thing I did after unpacking my Acer laptop, was to wipe it and install a clean version of Windows. Little did I think of creating any restore DVDs; when would I ever need those?

Well, now I did. And after lots of searching I almost succumbed to Acer and order their rescue pack. Good thing I didn't though, since I've now found a solution.

Disclaimer: I do not take responsibility for any data loss or damage that may happen to your devices.

Note: You should first verify that you have the restore partition intact before you proceed. Fire up some partition manager and look for a partition that is ~13 GB, and invisible in Windows Explorer.

The solution

  1. First you should make sure that D2D isn't just disabled in the BIOS. If it was, that might've been your problem.
  2. If it's not: Disable it.
  3. Boot into Windows, download and install Partedit32.
  4. Open Partedit32 and you will see a grid of input fields. Every row is a partition, putting the cursor in a text field should reveal the partition's size.
  5. You must now change file system identifier of the restore partition, so Windows recognize it. Locate the partition that is ~13 GB of size and has 27 in the first field. Change 27 to 07, save and reboot. A new drive should now be present in Windows Explorer.
  6. Open up Run, enter compmgmt.msc and press OK. Go to Disk Management, right click on the rescue drive and select Mark Partition as Active.
  7. Reboot. You should now be booted into Acer's restore mode.

Good luck!


Setup logcheck on Ubuntu 10.10

Logcheck is a nifty tool that reads all system and application logs for you, and then send e-mails with reports of anomalies. It makes maintaining a server easier, and therefore increases security.

I couldn't find a guide for installing and setting up on Ubuntu, so I decided to share my notes.

It was a pretty quick and painless process. After installing it by running

aptitude install logcheck

you should add your email address to the configuration file


Change SENDMAILTO with the email address you want to receive the log digests to.

By default logcheck is run 2 minutes past every hour. I changed this to run 7:02, which is done by editing the file


Now it's time to check if this works. Running logcheck won't work, since logcheck should be run as the logcheck user. To do this, run

sudo -u logcheck logcheck

as root. Did you get an email? No? Then the message probably is stuck in the spam filter, if you haven't spent a lot of time, making sure spam filters will accept emails from your server.

Good luck, and let me know how it worked for you :-)

Update for Ubuntu 11.04

I tried this guide on Ubuntu 11.04, and it works the same.

Trim unicode/UTF-8 whitespace in PHP

preg_replace('/^[\pZ\pC]+|[\pZ\pC]+$/u', '', $string);

This will effectively remove any weird whitespace characters, control characters and even those pesky Apple logos.

Have a look at the page below for more information on the Unicode characters and regular expressions.

“2006 - MySQL server has gone away” error when importing with SQLyog

Get this annoying error when importing a database with SQLyog? "There was an error executing the query. […]". When you click "Open error file…" the real MySQL error is presented: "Error Code: 2006 - MySQL server has gone away".


Open "my.ini", located in your MySQL installation folder, and change "max_allowed_packet = 1M" to "max_allowed_packet = 64M" or something higher than 1 MB.

The problem is that SQLyog sends a massive SQL query that exceeds this limit.

PHP: Get filename extension with native PHP function

The extension part of the filename, is what typically tells us what type of file it is. A JPEG image may have the filename "image.jpg", where "jpg" is the extension.

Click through to learn how easy it is to extract this with PHP.

echo pathinfo('filename.jpg', PATHINFO_EXTENSION);

Easy as that! This will output


pathinfo can be used for much more than retrieving the file extension, please see the PHP documentation for all options.