I haven't blogged here for a while, but for the last few months I've been writing a blog on my own domain, https://erik.itland.no
You if you enjoyed my writing here you are welcome to continue reading at my new blog.
2019-10-20
2016-06-22
Things that will be lost on Windows reset (unless you backup)
Checklist:
- GPG4WIN
- settings
- keys
- PuTTY
- settings
- keys should be fine as long as they are stored in a ordinary folder
2013-09-17
The other perspective
"If you look forward to go to work in the morning that counts for something as well, doesn't it?" - Succesful friend of mine answering questions from economics 101 some years ago.
2013-03-02
What is going on with the search results?
When I see googlers in online forums defending the search results they often ask for data sets showing the problem. This isn't a data set but here should be some reproducible test cases that fails horribly for what was once the undisputed place to go for relevant search results.
Expected result: Documents including the word groups "sublime text 2" and "focus group".
First result: http://www.sublimetext.com/2
Problem: Irrelevant
Possible explantion: Extensive linking using "focus group"as link text? (Doesn't prevent it from being utterly irrelavant.)
Expected results: A list of documents containing something like cisco + the exact word "anyclient"
First page of results: All results are for "AnyConnect". Which seems to be the correct product name but was not what I was searching for. I was searching to see if anyclient was a common mistake, if there had been a product called anyclient etc so I would not embarrass myself.
Problem: Silent rewrite of my query. I'm all for usability features like suggest, "Did you mean" etc. "Showing results for <something else>, did you mean <what you searched for>?" is a pita to me but I can see it being useful for less technically inclined people and people who hasn't developed the same kind of tunnel vision as me. Silently rewriting counts as bug or arrogance in my book.
Example 1: "sublime text 2" "focus group"
Query: "sublime text 2" "focus group"Expected result: Documents including the word groups "sublime text 2" and "focus group".
First result: http://www.sublimetext.com/2
Problem: Irrelevant
Possible explantion: Extensive linking using "focus group"as link text? (Doesn't prevent it from being utterly irrelavant.)
Example 2: cisco "anyclient"
Query: cisco "anyclient"Expected results: A list of documents containing something like cisco + the exact word "anyclient"
First page of results: All results are for "AnyConnect". Which seems to be the correct product name but was not what I was searching for. I was searching to see if anyclient was a common mistake, if there had been a product called anyclient etc so I would not embarrass myself.
Problem: Silent rewrite of my query. I'm all for usability features like suggest, "Did you mean" etc. "Showing results for <something else>, did you mean <what you searched for>?" is a pita to me but I can see it being useful for less technically inclined people and people who hasn't developed the same kind of tunnel vision as me. Silently rewriting counts as bug or arrogance in my book.
Trying to get around these issues
Report the problem
This is obviously a bug so lets report it. Done. Months ago. No change yet.Activate the "verbatim" search tool
Turns out Google has thought of this. Here is the verbatim ("ordrett") search tool. Good idea, one minor flaw: It doesn't work!![]() |
| No, "Backup Exec" is not "Shopify". And this is hardly what I'd call verbatim. |
Using another search engine
I love competition. So I tried with a couple of other search engines.![]() |
| DuckDuckGo also insists that BackupExec is relevant when searching for Shopify. |
2012-04-27
Recovering files from an unsaved project in Visual Studio
Woke up early this morning and decided to train a little more .Net. Only to find that the project was not available under recent files. In hindsight this is how I think it happened:
So far I like Visual Studio as long as using Java feels equally wrong, why not? (loved to read Groklaws summary of yesterdays filings btw. If it ends the way it is heading now there might even be hope for the Java language.)
- I worked on an unsaved project without noticing it was unsaved.
- The machine lost power
- Windows didn't hibernate properly because the disk was crammed
So far I like Visual Studio as long as using Java feels equally wrong, why not? (loved to read Groklaws summary of yesterdays filings btw. If it ends the way it is heading now there might even be hope for the Java language.)
2011-11-14
Review: Zenoss 4/5
Have been runnning Zenoss for over a full year, here is my verdict:
Product (4/5):
I did a lot of reading up front before implementing Zenoss and considered
However keep in mind that a full implementation might easily take weeks even for a skilled sysadmin, depending on the size of the monitored network, the status of the network (is snmp enabled? Who has to approve it? etc.)
Product (4/5):
- Monitors hundreds of nodes running of a not to beefy vm.
- Easily extendable.
- Smooth upgrades. (Not automatic but well documented.)
- User interface is sometimes a little hard to understand. Not bad for a product the size of Zenoss but not perfect either.
- Lots of official documentation freely available covering most of what one needs to know.
- Forums were migrated to Jive a couple of years ago leaving lots of broken links.
- Nice and helpful community.
- Lots of contributed plugins a.k.a. ZenPacks. Examples
- Hardware health status on HP servers
- Oracle databases
- vmware ESX and ESXi
I did a lot of reading up front before implementing Zenoss and considered
- Zabbix,
- Hyperic,
- OpenNMS,
- Nagios
- agent-less architecture
- hp hardware monitoring almost out-of-the-box
- snmp trap handling.
However keep in mind that a full implementation might easily take weeks even for a skilled sysadmin, depending on the size of the monitored network, the status of the network (is snmp enabled? Who has to approve it? etc.)
2011-10-26
Review: Flexiglass 5/5
If you are a Mac user that have spent any time on recent desktop Linux, chances are you will be missing Compiz-like window management.
Below are some screenshots from the settings to show the configurability of Flexiglass:
(On a side note: Even Windows converts may be missing some niceties such as double click to maximize, or resize by any corner or window edge that wasn't added until Lion.)
I bought a Flexiglass license a couple of months ago and I love it. Flexiglass offers:
- Move a window using alt + two fingers (think alt-dragging in gnome/kde)
- Resize using alt + three fingers (Mac OS X > 10.7 can't resize a window by dragging any corner/border)
- Real maximize by right clicking the plus button (Make a window fill the screen, instead of leaving to the window manager to guess how much space it needs. )
- Real close by two finger clicking the cross button. (Actually closes the application instead of closing the window and leaving the application running.)
- Shortcuts for resize/move to specified postitions. Nice for when you want a howto and a terminal side by side.
Below are some screenshots from the settings to show the configurability of Flexiglass:
![]() |
| Basic settings for Move and Resize. The settings are customizable for both mouse and trackpad and Flexiglass automatiaclly changes profile when you attach or remove a mouse. Nice! |
![]() |
| The exceptions list: I don't need it but I figure graphical artists might need to be able to use the mouse together with modifier keys in some applications without activating Flexiglass. |
![]() |
| Autostart? Yes! |
2011-10-25
Do those stylesheets really need to be in the page body?
I once worked on a medium size enterprise software project that felt very sluggish and slow. I was new to the technology stack, new to anything but small web applications and I figured it just wasn't possible to get that particular stack any faster.
As the project went on features were added, more optimizations were added by expensive consultants, a few performance regressions were weeded out but the app was still as sluggish as ever until one day the ux designer came and asked if there was any reason the consultants needed the stylesheet in the page body instead of in the head.
There wasn't, and at the next deploy the app was suddenly a whole lot faster and smoother. So much for the cruft of StringBuilder for every string concatenation. So much for higly efficient log statements, each spanning three lines, applied liberally across the whole codebase.
From that day on I became a little more pragmatic, a little less uninformed regarding that particular stack, the expensive consultants that happend to know it and optimizations for web applications.
Disclaimer: Of course, I'm not saying you should ditch StringBuilder and stop checking if debugIsEnabled() in thight loops, but in the average controller code in the average enterprise web project I guess they won't matter much.
As the project went on features were added, more optimizations were added by expensive consultants, a few performance regressions were weeded out but the app was still as sluggish as ever until one day the ux designer came and asked if there was any reason the consultants needed the stylesheet in the page body instead of in the head.
There wasn't, and at the next deploy the app was suddenly a whole lot faster and smoother. So much for the cruft of StringBuilder for every string concatenation. So much for higly efficient log statements, each spanning three lines, applied liberally across the whole codebase.
From that day on I became a little more pragmatic, a little less uninformed regarding that particular stack, the expensive consultants that happend to know it and optimizations for web applications.
Disclaimer: Of course, I'm not saying you should ditch StringBuilder and stop checking if debugIsEnabled() in thight loops, but in the average controller code in the average enterprise web project I guess they won't matter much.
2011-04-05
Review: repositoryhosting.com 5/5
I've been using repositoryhosting.com since late august last year, and it seems like now is a about time to write a very small review.
The good stuff:
The option to create tickets by mail is also really great. I guess almost every busy person has a couple of use cases for a working automatic mail-to-task-interface.
If you have read everything carefully so far, you'll see that there is no list of bad stuff. The reason is I haven't found anything yet. (The closest thing I can come up with is if they will manage to stay in business at this price, when everyone else needs to charge more.) I've only used it for 6 months though, so I might have missed something.
The good stuff:
- Your choice of version control system:
- Git
- Mercurial
- Subversion
- Filestore with WebDAV included
- Trac
Included plugins, selectable on a project by project basis: - Agilo
- Timing and Estimation
- Discussion Forum
- Batch Modify Tickets
- Custom Roadmap
- Download Releases
- Markdown Macro
- Spam Blocker
- Table of Contents Macro
- Ticket Importer
- Wiki Backlinks Macro
- Workflow Editor
- Wysiwyg Editor
- Support for incoming mail
- Easy backups, both
- hosted and
- easily downloadable (means no lock in)
- User-friendly frontend lets you easily
- create new repos,
- add users,
- administer permissions
- everything else you need to do
- Unlimited users
- Unlimited projects
- The price
- 2GB for 6$/month
- 1$/month/additional GBs
The option to create tickets by mail is also really great. I guess almost every busy person has a couple of use cases for a working automatic mail-to-task-interface.
If you have read everything carefully so far, you'll see that there is no list of bad stuff. The reason is I haven't found anything yet. (The closest thing I can come up with is if they will manage to stay in business at this price, when everyone else needs to charge more.) I've only used it for 6 months though, so I might have missed something.
2011-01-09
RewriteBase takes one argument
Staying in Denver, CO, away from my family, and far from the development databases at work I decided I had time to work on a pet project of mine.
Knowing there will be a few hours on airports and in the plane on my way home I decided to get the project running correctly on my laptop before I continued work.
Then I ran into this:
Log file:
After browsing through the first two pages of google results withouth finding anything useful I suddenly realized maybe the config files doesn't accept comments at the end of the lines. Turns out to be true. See http://httpd.apache.org/docs/1.3/configuring.html#syntax
Knowing there will be a few hours on airports and in the plane on my way home I decided to get the project running correctly on my laptop before I continued work.
Then I ran into this:
Internal Server Error
The server encountered an internal error or misconfiguration and was unable to complete your request.
Please contact the server administrator, you@example.com and inform them of the time the error occurred, and anything you might have done that may have caused the error.
More information about this error may be available in the server error log.
Log file:
[Sun Jan 09 14:16:56 2011] [alert] [client ::1] /Users/Sites/ web/.htaccess: RewriteBase takes one argument, the base URL of the per-directory context
After browsing through the first two pages of google results withouth finding anything useful I suddenly realized maybe the config files doesn't accept comments at the end of the lines. Turns out to be true. See http://httpd.apache.org/docs/1.3/configuring.html#syntax
2010-10-17
Configuring Mac Snow Leopard for Symfony development
If you want to develop symfony applications using the built in Apache web server in Mac OS X here are my notes. Keep in mind, this is not a production configuration but just the necessary steps to get a developer workstation up and running.
BTW: I wrote a more detailed post back in 2008. It hasn't been updated since then, but there might still be a few useful hints there: http://techinorg.blogspot.com/2008/07/ubuntu-post-install-customization.html
- Activate Web Sharing
System Preferences -> Sharing -> Web Sharing - Change your UserDir settings. In a terminal window, edit the file with your userdir configuration.
vim /etc/apache2/users/username.conf
Remove or comment the contents. Paste the following information:
UserDir Sites/web
<Directory "/Users/username/Sites/web">
Options Indexes MultiViews
AllowOverride All AuthConfig
Order allow,deny
Allow from all
</Directory>
Alias /~username/sf /Users/username/Sites/lib/vendor/symfony/data/web/sf
<Directory "/Users/username/Sites/lib/vendor/symfony/data/web/sf">
AllowOverride All
Allow from All
</Directory> - Substitute the text username for you username.
- Enable php (and mysql if you want). See http://stackoverflow.com/questions/1293484/easiest-way-to-activate-php-and-mysql-on-mac-os-10-6-snow-leopard
- Now you can either install
- the sandbox
- the svn version,
- the tar.gz version
- or you can check out your existing project from source control.
- After you've installed symfony, edit the .htaccess file in the symfony web folder
- Enable RewriteBase by uncommenting it
- Change the RewriteBase directive to RewriteBase /~username/
- Restart apache
sudo apachectl restart
BTW: I wrote a more detailed post back in 2008. It hasn't been updated since then, but there might still be a few useful hints there: http://techinorg.blogspot.com/2008/07/ubuntu-post-install-customization.html
2010-10-01
The web2py ide
The web2py ide is Firefox. Or Chrome, or Opera, or Safari (or Internet Explorer).
Just create a good old frameset and you can have split view between models and controller, documentation and even a preview running in one browser tab. Running the browser in full screen and the built in code editors in "full screen" (which fills the whole assigned frame), this turned out to work really well.
Example frameset:
Can you see some quick improvements? Post them in the comments!
Just create a good old frameset and you can have split view between models and controller, documentation and even a preview running in one browser tab. Running the browser in full screen and the built in code editors in "full screen" (which fills the whole assigned frame), this turned out to work really well.
Example frameset:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"
"http://www.w3.org/TR/html4/strict.dtd">
<html lang="en">
<head>
<title>web2py ide - 0.1 beta :)</title>
</head>
<FRAMESET ROWS="75%, *" COLS="*, 40%">
<FRAME SRC="http://127.0.0.1:8000/admin/default/peek/yourapp/models/db.py">
<FRAME SRC="http://127.0.0.1:8000/admin/default/design/yourapp">
<FRAME SRC="http://127.0.0.1:8000/yourapp/default/index">
<FRAME SRC="http://127.0.0.1:8000/yourapp/appadmin/index">
</FRAMESET>
</html>
"http://www.w3.org/TR/html4/strict.dtd">
<html lang="en">
<head>
<title>web2py ide - 0.1 beta :)</title>
</head>
<FRAMESET ROWS="75%, *" COLS="*, 40%">
<FRAME SRC="http://127.0.0.1:8000/admin/default/peek/yourapp/models/db.py">
<FRAME SRC="http://127.0.0.1:8000/admin/default/design/yourapp">
<FRAME SRC="http://127.0.0.1:8000/yourapp/default/index">
<FRAME SRC="http://127.0.0.1:8000/yourapp/appadmin/index">
</FRAMESET>
</html>
Can you see some quick improvements? Post them in the comments!
2010-09-29
Quick hack to develop web2py on a different machine
For security reasons web2py will not allow you to log in as administrator unless you are logging in from the same workstation. (There are exceptions, but they are cumbersome: See the official book for full details.)
However, there is a quick hack that allows you develop from any machine: Just set up a ssh tunnel:
ssh username@ip_address_or_dns_name -L 8000:127.0.0.1:8000 -N
As usually, I didn't come up with this myself. This time I found it here: http://www.revsys.com/writings/quicktips/ssh-tunnel.html
(However, if you read a few of the samples available on the internet, you'll see that may of them miss the point that in the local_port:ip_address:remote_port part you can and should use 127.0.0.1 instead of the external ip address. The reason is that this is the address that the request seems to come from in the server program at the remote computer.)
However, there is a quick hack that allows you develop from any machine: Just set up a ssh tunnel:
ssh username@ip_address_or_dns_name -L 8000:127.0.0.1:8000 -N
As usually, I didn't come up with this myself. This time I found it here: http://www.revsys.com/writings/quicktips/ssh-tunnel.html
(However, if you read a few of the samples available on the internet, you'll see that may of them miss the point that in the local_port:ip_address:remote_port part you can and should use 127.0.0.1 instead of the external ip address. The reason is that this is the address that the request seems to come from in the server program at the remote computer.)
Using web2py, first impressions
I've had the opportunity to do some quick prototyping in web2py in my spare time over the last few weeks. Here are some very quick notes about what to like and what not to like:
Good:
Needs improvement:
Preliminary conclusion:
web2py is production ready and is already used a few public facing sites. To me it seems like a perfect match for small "intranet applications" but it is in no way limited to this.
Although I've not programmed apex myself, it often comes to mind because of features like online editing and redistributable applications built on top of it.
Good:
- Works out of the box. Just download, open, choose password, press start. Your default browser starts automatically.
- Automatic updates (beta warning, bur works.)
- Built in editor and version control.
- Built in user registration and management.
- Automagic migrations (connecting to legacy databases are supported and documented, too)
- Built in support for multiple databases, including distributed transactions.
- Built in sqlite database, and postgres, mysql and even mssql seems to be just one config setting away.
- The whole official book is available online.
- Author intends to keep the api stable. (For anybody who has had the joy of supporting an application over multiple years and multiple versions of the same framework.)
- Bonus point 1: Nice default look and feel, and it is easily customizable. It's just html with placeholders.
- Bonus point 2: Applications built on top of web2py can be packed, downloaded and installed on another instance.
Needs improvement:
- The documentation. There is lots of official documentation, but the search engine is next to useless, and google picks up old, outdated blog post before the official documentation.
- Routing: From the official documetation: The url http://127.0.0.1:8000/examples/default/status/x/y/z?p=1&q=2 will presented to the controller as:
- request.args ['x', 'y', 'z']
- request.get_vars <Storage {'p': 1, 'q': 2}>
Why you'd like to separate between those are beyond my understanding. I always thought unifying those was one of the features of modern web frameworks.
Preliminary conclusion:
web2py is production ready and is already used a few public facing sites. To me it seems like a perfect match for small "intranet applications" but it is in no way limited to this.
Although I've not programmed apex myself, it often comes to mind because of features like online editing and redistributable applications built on top of it.
2010-05-30
Getting ipythonx to work with Mac OS X
If you're trying to get ipythonx to work under Mac OS X 10.6 Snow Leopard you might get and error message like this:
ImportError: /System/Library/Frameworks/Python.framework/
Versions/2.6/Extras/lib/python/wx-2.8-mac-unicode/wx/
_core_.so: no appropriate 64-bit architecture (see "man
python" for running in 32-bit mode)Here's a couple of hints:
- Use standard ipython instead. Unless there was something I didn't catch, ipython seems to better than ipythonx.
- If you want to try anyway here's the easiest way I found:
In a terminal session:
-
export VERSIONER_PYTHON_PREFER_32_BIT=yes
python `which ipythonx`
-
2010-05-25
Copy OpenVPN settings from Tunnelblick on Mac OS X to Windows 7
I forgot the charger for my job laptop in the office today. So I spent the last few minutes of battery copying the configuration files to the pc at home.
Below is what I ended up doing:
- Install OpenVPN software. You can find it on the official OpenVPN site.
- Copy all the config files from the job laptop to C:\Program Files (x86)\OpenVPN\config. The job laptop uses tunnelblick, so the files was located under ~/Library/Application Support/Tunnelblick/Configurations
- Added .opvpn to the file name for the main configuration file (the one that is not .crt, .csr or .key)
- Change to Windows style line endings. I did this by opening the files in WordPad, copying the contents to a Notepad window and saving.
- Starting the client software.
Of course: There was a lot of trial and error. I guess I ended up using 30 minutes tinkering and 30 minutes blogging.
Gotchas:
- Make sure all line endings are corrrect. You can see this easily by opening the files in Notepad.
- Make sure you run the OpenVPN program as administrator.
2010-04-09
Swithing to Mac - one year after
This has been a long time coming, but here it is: My "Switching to Mac story".
I've been working on this for almost a full year. It started with three optimistic blog posts about the things I learned while unlearning Windows, and then reality struck me: I thought Mac supposed to be almost like Linux, supported. It is not.
Here is a nice summary of the differences between Mac and PC: Top Ten Things They Don’t Tell You About Switching. Below are just my additions.
A few things comes to mind as for why I'd prefer a Mac over a standard pc running Linux, though:
Here are a few hints anyway:
I've been working on this for almost a full year. It started with three optimistic blog posts about the things I learned while unlearning Windows, and then reality struck me: I thought Mac supposed to be almost like Linux, supported. It is not.
Here is a nice summary of the differences between Mac and PC: Top Ten Things They Don’t Tell You About Switching. Below are just my additions.
The keyboard:
+- it is backlit
- weird layout (ctrl/fn keys are switched and there is no setting anywhere to get them back)
- missing keys (page up/down, home/end, print screen) comes to mind.
- I can hear what some of you are thinking: It's just a matter of taste. Well, a normal (not laptop) Apple keyboard has ctrl in it's correct position, so it's obviously not a usabilty thing or a design thing but rather a "we don't care"-thing.
Software:
+- many small companies offer all kinds of small programs for mac
- every program looks different
- few of them is anywhere near usable without a mouse or touchpad. Placing all menus on top of the screen makes this even worse.
- often you'll find functions hidden away behind a gear icon that may hide anything. No visual clue until you click on it. Same goes for the strange button at the top rigt of every window that will hide something.
- Don't expect free and open source software that runs on both Windows and Linux to be available on Mac. Some programs, like Gimp, runs somehow, but looks really ugly as they are running in some kind of X11 terminal.
- Even on programs that are available, you can expect to wait a little longer before new releases are available, and you'll also have to expect a few extra bugs. Of course this is not Apples fault, but you might like to keep it in mind anyway as you might be going to suffer from it.
A few things comes to mind as for why I'd prefer a Mac over a standard pc running Linux, though:
- iTunes (best way to buy music in Norway, where I live)
- MagSafe power
- Good screen
- Less likely to break down while at a customer site
Appendix: The hopeless keyboard addicts guide to the Mac keyboard:
I was about to make a table here, detailing how to get at least home/end and pageup/down in the most used programs. But then some programs even differ inside of the program (like, "home" and "end" are mapped to different key combos depending on if you are located in the address bar of you browser or in a text area. This is especially funny when you've almost finished some writing on a blog, a company intranet etc, you want to select one line of text to move it around, and you forget that the key combo that means mark to start of line in one application means go to previous page in the browser. This particular one has hit me twice.)Here are a few hints anyway:
- ctrl+a go to start of line. Works in almost every program, including terminal, but doesn't work together with shift.
- ctrl+e go to end of line. Works in almost every program, including terminal, but doesn't work together with shift.
- cmd + arrows/fn + arrows - may or may not works for either home/end. Depends on mood of programmer, moon phase when program was written or some other, unknown parameter. If one doesn't work, try another, they rarely do anything really wrong except triggering the web browser back action.
- cmd+shift+4 - screenshot, choose area. Press space to select a whole window.
2010-04-05
The real reason why we don't use silverlight or flash
I think I speak on behalf of a lot of people if a say:
A lot of silverlight & flash fans are missing the point: We know about flash. It's not that we somehow do not "get" silverlight. We program Java, PHP, Python, -list goes on and for many of us also includes C# and actionscript. We do use a lot of different frameworks. Learning new stuff is part of our daily grind (and to be honest, we mostly love it.)
We also do struggle with fonts that might or might not be available, css rendered differently in IE etc. We just don't want to add dependencies to
A lot of silverlight & flash fans are missing the point: We know about flash. It's not that we somehow do not "get" silverlight. We program Java, PHP, Python, -list goes on and for many of us also includes C# and actionscript. We do use a lot of different frameworks. Learning new stuff is part of our daily grind (and to be honest, we mostly love it.)
We also do struggle with fonts that might or might not be available, css rendered differently in IE etc. We just don't want to add dependencies to
- big,
- cpu-hogging,
- closed source plugins
- that might or might not be supported on our future favourite operating system
2010-03-25
Simple recovery of deleted files from ext3 file systems
Yesterday I finished recovery of about 8000 photos by burning them to DVD and handing them over to a friend of mine.
Recovery of files from ext 3 partitions have long been considered somewhere between hard and impossible, but thanks to free and open source PhotoRec the recovery was done automatically during the night after answering a few, relatively simple questions. Next day I just rsynced the files to my laptop, splitted them into four folders about to fit into DVDs and burned them. It even read the files directly from the dumped img file.
The burning process was actually the one that took most time.
There's one pitfall I'd like to mention, though:
PhotoRec first does a scan to find the block size of the disk in question, and then reads the disk block by block, matching the beginning of each block with a signature database.
The first time I ran the program I chose to scan the entire drive. After scanning the entire drive it had found less than 50 photos. I decided to give it one more try, this time with just one partition. I chose the partition I considered most likely to contain the images, set the paranoid setting to false and chose photos (jpg) only.
This time it found more than 40 000 jpgs. Most of them seemed to be browser cache etc so I filtered out everything smaller than 1 MB.
Because I changed two parameters I can't say why this happened but my best guess is that it happened because the block size was different between the two partitions.
Recovery of files from ext 3 partitions have long been considered somewhere between hard and impossible, but thanks to free and open source PhotoRec the recovery was done automatically during the night after answering a few, relatively simple questions. Next day I just rsynced the files to my laptop, splitted them into four folders about to fit into DVDs and burned them. It even read the files directly from the dumped img file.
The burning process was actually the one that took most time.
There's one pitfall I'd like to mention, though:
PhotoRec first does a scan to find the block size of the disk in question, and then reads the disk block by block, matching the beginning of each block with a signature database.
The first time I ran the program I chose to scan the entire drive. After scanning the entire drive it had found less than 50 photos. I decided to give it one more try, this time with just one partition. I chose the partition I considered most likely to contain the images, set the paranoid setting to false and chose photos (jpg) only.
This time it found more than 40 000 jpgs. Most of them seemed to be browser cache etc so I filtered out everything smaller than 1 MB.
Because I changed two parameters I can't say why this happened but my best guess is that it happened because the block size was different between the two partitions.
2009-11-03
Spam and malware, with screenshots
Got this fake antivirus message yesterday and thought it might be worth sharing:

This one was rather well crafted, but they obviously didn't take the time to check operating system, even though they found my ip address. (See bottom left.) Here's another one. This one I got in mail a few weeks ago, from a friend who obviously got her email account stolen:

It's in norwegian, and it's readable, but it is quite obvious that she didn't write it. I guess they fed it through google translate. Translated back to english it would become something like (errors intended): "I need you help NĂ… How is you? ..." Wonder what this is going to look like in a couple of years when automated translation gets getter : )

This one was rather well crafted, but they obviously didn't take the time to check operating system, even though they found my ip address. (See bottom left.) Here's another one. This one I got in mail a few weeks ago, from a friend who obviously got her email account stolen:

It's in norwegian, and it's readable, but it is quite obvious that she didn't write it. I guess they fed it through google translate. Translated back to english it would become something like (errors intended): "I need you help NĂ… How is you? ..." Wonder what this is going to look like in a couple of years when automated translation gets getter : )
Subscribe to:
Posts (Atom)






