Technology Tales

Adventures & experiences in contemporary technology

Pondering storage options

1st June 2011

The combination of curiosity and a little spare time had me browsing online computing technology stores recently. A spot of CD and DVD burning brought on by a flurry of Linux distribution testing reminded me of the possibility. Because I have built up a sizeable library of digital photos, ensuring that I have backups of them is something that needs doing. A 2 GB Samsung external hard drive is brought to life every now and again for that purpose but the prospect of using Blu-Ray discs has appealed to me. After all capacities of 25 GB for single layer discs and 50 GB for dual layer ones sound not inappropriate for my purposes. However, they aren’t a cheap option at the time of writing with each disc costing in the region of £3-4 at one place where I was looking. The cost of BD writers themselves seems not to be so bad though with a few in the £60-100 bracket; any lower than this and you could end up with a combo drive that reads Blu-Ray discs and writes to DVD’s and CD’s so a modicum of concentration is needed. As attractive as the idea might be, the cost of BD media means that I’ll wait a little while before deciding to take the plunge. The price premium at the moment is a reminder of the way that things used to be when CD and DVD writers first came on the market. It is very telling when discs come packaged in jewel cases, something that you won’t see too often with CD’s or DVD’s.

Another piece of storage excitement that hasn’t escaped me is the advent of SSD hard drives. With no moving parts like in conventional hard drives, they bring a speed boost. Concerns about their lifetimes and the numbers of read/write events per drive would stall me when it comes to storing personal data on them but using them for the likes of operating system files sounds attractive, especially with my partiality to Linux perhaps not hammering drives so much. As with any new technology, there is a price premium though a drive big enough for hosting an operating system can be acquired for less than £100. As with many of my hardware purchase brainwaves, there’s no rush but this is an option that I’ll keep at the back of my mind.

Another appealing notion is the idea of getting a NAS so that files can be shared between a few computers. While I have seen prices starting at just above £70 for single disk enclosures, these generally are a more expensive option than external drives and that’s before you consider the cost of any hard drives. Nevertheless, the advantages of a unit containing more than a single hard drive while operating as a print server for any compatible printer too. When you get to 4 or 5 hard drive trays, then the cost has mounted but that could be when they pay their way too. What reminded me of these was a bookazine on home networking that I recently found at a branch of WHSmith’s and their attractions are subject to the networking side of things being made to work without a drama. Once that’s out of the way, then their usefulness really does appeal.

Mulling over all these brainwaves is one thing but it doesn’t mean that the purse strings will become too loose in this age of economic constraint. In fact, pondering them may serve to staunch any impulse purchases. Sometimes, a spot of virtual shopping serves to control things rather than losing the run of oneself.

A waiting game

20th August 2011

Having been away every weekend in July, I was looking forward to a quiet one at home to start August. However, there was a problem with one of my websites hosted by Fasthosts that was set to occupy me for the weekend and a few weekday evenings afterwards.

The issue appeared to be slow site response so I followed advice given to me by second line support when this website displayed the same type of behaviour: upgrade from Apache 1.3 to 2.2 using the control panel. Unfortunately for me, that didn’t work smoothly at all and there seemed to be serious file loss as a result. Raising a ticket with the support desk only got me the answer that I had to wait for completion and I now have come to the conclusion that the migration process may have got stuck somewhere along the way. Maybe another ticket is in order.

There were a number of causes of the waiting that gave rise to the title of this post. Firstly, support for low costing isn’t exactly timely and I do wonder if it’s any better for more prominent websites. Restoration of websites by FTP is another activity that takes up plenty of time as does rebuilding databases and populating them with data. Lastly, there’s changing the DNS details for a website. In hindsight, there may be ways of reducing the time demands of these. For instance, contacting a support team by telephone may be quicker unless there is a massive queue awaiting attention and there was a wait of several hours one night when a security changeover affected a multitude of Fasthosts users. Of course, it is not a panacea at the best of times as we have known since all those stories began to do the rounds in the middle of the 1990’s. Doing regular backups would help the second though the ones that I was using for the restoration weren’t too bad at all. Nevertheless, they weren’t complete so there was unfinished business that required resolution later. The last of these is helped along by more regular PC restarts so that unexpected discovery will remain a lesson for the future though I don’t plan on moving websites around for a while. After all, getting DNS details propagated more quickly really is a big help.

While awaiting a response from Fasthosts, I began to ponder the idea of using an alternative provider. Perusal of the latest digital edition of .Net (I now subscribe to the non-paper edition so as to cut down on the clutter caused by having paper copies about the place) ensued before I decided to investigate the option of using Webfusion. Having decided to stick with shared hosting, I gave their Unlimited Linux option a go. For someone accustomed to monthly billing, it was unusual to see annual biannual and triannual payment schemes too. The first of these appears to be the default option so a little care and attention is needed if you want something else. In order to encourage you to stay with Webfusion longer, the per month is on sliding scale: the longer the period you buy, the lower the cost of a month’s hosting.

Once the account was set up, I added a database and set to the long process of uploading files from my local development site using FileZilla. Having got a MySQL backup from the Fasthosts site, I used the provided PHPMyAdmin interface to upload the data in pieces not exceeding the 8 MB file size limitation. It isn’t possible to connect remotely to the MySQL server using the likes of MySQL Administrator so I bear with this not so smooth process. SSH is another connection option that isn’t available but I never use it much on Fasthosts sites anyway. There were some questions to the support people along and the first of these got a timely answer though later ones took longer before I got an answer. Still, getting advice on the address of the test website was a big help while I was sorting out the DNS changeover.

Speaking of the latter, it took a little doing and not little poking around Webfusion’s FAQ’s before I made it happen. First, I tried using name servers that I found listed in one of the articles but this didn’t seem to achieve the end that I needed. Mind you, I would have seen the effects of this change a little earlier if I had rebooted my PC earlier than I did than I did but it didn’t occur to me at the time. In the end, I switched to using my domain provider’s name servers and added the required information to them to get things going. It was then that my website was back online in some fashion so I could any outstanding loose ends.

With the site essentially operating again, it was time to iron out the rough edges. The biggest of these was that MOD_REWRITE doesn’t seem to work the same on the Webfusion server like it does on the Fasthosts ones. This meant that I needed to use the SCRIPT_URI CGI variable instead of PATH_INFO in order to keep using clean URL’s for a PHP-powered photo gallery that I have. It took me a while to figure that out and I felt much better when I managed to get the results that I needed. However, I also took the chance to tidy up site addresses with redirections in my .htaccess file in an attempt to ensure that I lost no regular readers, something that I seem to have achieved with some success because one such visitor later commented on a new entry in the outdoors blog.

Once any remaining missing images were instated or references to them removed, it was then time to do a full backup for sake of safety. The first of these activities was yet another consumer while the second didn’t take so long and I need to do this more often in case anything happens. Hopefully though, the relocated site’s performance continues to be as solid as it is now.

The question as to what to do with the Fasthosts webspace remains outstanding. Currently, they are offering free upgrades to existing hosting packages so long as you commit for a year. After my recent experience, I cannot say that I’m so sure about doing that kind of thing. In fact, the observation leaves me wondering if instating that very extension was the cause of breaking my site. In fact, it appears that the migration from Apache 1.3 to 2.2 seems to have got stuck for whatever reason. Maybe another ticket should be raised but I am not decided on that yet. All in all, what happened to that Fasthosts website wasn’t the greatest of experiences but the service offered by Webfusion is rock solid thus far. While wondering if the service from Fasthosts wasn’t as good as it once was, I’ll keep an open mind and wait to see if my impressions change over time.

A look at Emacs

10th August 2010

It’s amazing what work can bring your way in terms of technology. For me, (GNU) Emacs Has proved to be such a thing recently. It may have been around since 1975, long before my adventures in computing ever started, in fact, but I am asking myself why I never really have used it much. There are vague recollections of my being aware of its existence in the early days of my using UNIX over a decade ago. Was it a shortcut card with loads of seemingly esoteric keyboard shortcuts and commands that put me off it back then? The truth may have been that I got bedazzled with the world of Microsoft Windows instead, and so began a distraction that lingered until very recently. As unlikely as it looks now, Word and Office would have been part of the allure of what some consider as the dark side these days. O how OpenOffice.org and their ilk have changed that state of affairs…

The unfortunate part of the Emacs story might be that its innovations were never taken up as conventions by mainstream computing. If its counterparts elsewhere used the same keyboard shortcuts, it would feel like learning such an unfamiliar tool. Still, it’s not as if there isn’t logic behind it because it will work both in a terminal session (where I may have met it for the first time) and a desktop application GUI. The latter is the easier to learn, and the menus list equivalent keyboard shortcuts for many of their entries, too. For a fuller experience though, I can recommend the online manual, and you can buy it in paper form too if you prefer.

One thing that I discovered recently is that external factors can sour the impressions of a piece of software. For instance, I was using a UNIX session where the keyboard mapping weren’t optimal. There’s nothing like unfamiliar behaviour for throwing you off track because you felt your usual habits were being obstructed. For instance, finding that a Backspace key is behaving like a Delete one is such an obstruction. It wasn’t the fault of Emacs, and I have found that using Ctrl+K (C-k in the documentation) to delete whole lines is invaluable.

Apart from keyboard mapping niggles, Emacs has to be respected as a powerful piece of software in its own right. It may not have the syntax highlighting capabilities of some, like gedit or NEdit for instance, but I have a hunch that a spot of Lisp programming would address that need. What you get instead is support for version control systems like RCS or CVS, along with integration with GDB for debugging programs written in a number of languages. Then, there are features like file management, email handling, newsgroup browsing, a calendar and calculator that make you wonder if they tried to turn a text editor into something like an operating system. With Google trying to use Chrome as the basis of one, it almost feels as is Emacs was ahead of its time, though that may have been more due to its needing to work within a UNIX shell in those far-off pre-GUI days. It really is saying something that it has stood the test of time when so much has fallen by the wayside. Like Vi, it looks as if the esteemable piece of software is showing no signs of going away just yet. Maybe it was well-designed in the beginning, and the thing certainly seems more than a text editor with its extras. Well, it has to offer a good reason for making its way into Linux too…

Moving a Windows 7 VM from VirtualBox to VMware Player

14th October 2012

Seeing how well Windows 8 was running in an VMware Player virtual machine and that was without installing VMware Tools in the guest operating system, I was reminded about how sluggish my Windows 7 VirtualBox VM had become. Therefore, I decided to try a migration of the VM from VirtualBox to VMware. My hope was that it was as easy as exporting to an OVA file (File > Export Appliance… in VirtualBox) and importing that into VMware (File > Open a VM in Player). However, even selecting OVF compatibility was insufficient for achieving this and the size of the virtual disks meant that the export took a while to run as well. The solution was to create a new VM in VirtualBox from the OVA file and use the newly created VMDK files with VMware. That worked successfully and I now have a speedier more responsive Windows 7 VM for my pains.

Access to host directories needed reinstatement using a combination of the VMware Shared Folders feature and updating drive mappings in Windows 7 itself to use what appear to it like network drives in the Shared Folders directory on the \\vmware-host domain. For that to work, VMware Tools needed to be installed in the guest OS (go to Virtual Machine > Install VMware Tools to make available a virtual CD from which the installation can be done) as I discovered when trying the same thing with my Windows 8 VM, where I dare not instate VMware Tools due to their causing trouble when I last attempted it.

Moving virtual machine software brought about its side effects though. Software like Windows 7 detects that it’s on different hardware so reactivation can be needed. Windows 7 reactivation was a painless online affair but it wasn’t the same for Photoshop CS5. That meant that I needed help from Adobe’s technical support people top get past the number of PC’s for which the software already had been activated. In hindsight, deactivation should have been done prior to the move but that’s a lesson that I know well now. Technical support sorted my predicament politely and efficiently while reinforcing the aforementioned learning point. Moving virtual machine platform is very like moving from one PC to the next and it hadn’t clicked with me quite how real those virtual machines can be when it comes to software licencing.

Apart from that and figuring out how to do the it, the move went smoothly. An upgrade to the graphics driver on the host system and getting Windows 7 to recheck the capabilities of the virtual machine even gained me a fuller Aero experience than I had before then. Full screen operation is quite reasonable too (the CTRL + ALT + ENTER activates and deactivates it) and photo editing now feels less boxed in too.

Snippets

15th September 2012

There are times when I feel the need to share some snippets with a longer lifespan than a tweet. This is a place for those and some yet may even turn into longer articles themselves. That already has happened for one of them, so there is something of a digital scrapbook in operation here.

13:08 January 8, 2024

Now that ownCloud has been acquired by Kiteworks, there is some uncertainty about what happens next. So far, there is an offer for ownCloud and Nextcloud users to move to Kiteworks’ proprietary platform. Nextcloud itself has been busy making use of the uncertainty to promote their own product line.

19:15 November 19, 2023

The open-source section of the website got a lot of tweaking in the last few weeks. The recipient of the attention was the operating system subsection. That got a full reorganisation with all the listings seeing new entries too. The desktop software also got a bit of attention, and other areas could get altered yet.

11:35 January 20, 2023

Recently, I have been having trouble with Nvidia drivers following a kernel update in Linux Mint (21.1 is the version that I am using). The kernel version has been rolled back from 5.19.x to 5.15.x, and I installed an old AMD graphics card as well. Things still are not perfect, though, so I will be looking out for a way to make things smoother. For now, all is good enough for the moment.

14:28 July 1, 2022

Here are some web apps for video recording for work purposes:

Loom

CloudApp

10:30 February 12, 2022

Google Analytics appears to be losing favour in the EU, if Matomo is to be believed. First, Austria outlawed its usage and no France follows suit. This naturally suits Matomo, a self-hosted open-source alternative for collecting website metrics, so it should not be any surprise that they are forthcoming with these details.

16:20 October 9, 2021

Here is the sequence of commands to use when upgrading from OpenMediaVault 4.x to 5.x. All need to be executed with elevated access privileges:

wget -O - https://github.com/OpenMediaVault-Plugin-Developers/installScript/raw/master/upgrade4to5 | sudo bash

reboot

Once your system has restarted and you have logged in again, then you execute these:

apt-get purge openmediavault-omvextrasorg resolvconf

wget -O - https://github.com/OpenMediaVault-Plugin-Developers/packages/raw/master/install | bash

apt-get update

apt-get dist-upgrade

omv-salt deploy run nginx

omv-salt deploy run phpfpm

apt-get install usrmerge

omv-confdbadm migrate conf 5.0.0

15:19 October 9, 2021

Here are some North American online emporia fro buying computers, their components or peripherals:

Best Buy

Micro Center

Newegg

PC-Canada

Tech-America

09:06 September 24, 2021

Here are boilerplate commands for banning and unbanning IP addresses using Fail2ban:

fail2ban-client set <JAIL> banip <IP>
fail2ban-client set <JAIL> unbanip <IP>

13:09 July 27, 2020

If you ever need to install Linux kernel headers on an openSUSE instance in order to install VirtualBox Guest Additions, the following command should be executed in order to do the needful:

sudo zypper in kernel-source

10:37 February 5, 2017

Here is a possible way of resetting the CSS definition for a HTML element, class or ID:

#reset-this-parent {
all: initial;
* {
all: unset;
}
}

Browser support for the above may vary though.

10:39 November 23, 2016

After seeing messages like “The authenticity of host ‘hostname’ can’t be established” during ssh connections, I decided to investigate more and came up with the following solution:

sudo chown -v $USER ~/.ssh/known_hosts

My known_hosts file had gained root ownership so i could not write to it so changing the ownership to that of my own user account sorted the problem. An alternative could be to change the group assignment using chgrp and setting permissions using chmod but what I did sufficed for my needs.

06:30 November 23, 2016

When I ran into trouble with accessing my own websites using my broadband, I found that the solution was to change DNS Lookup Service to what Google offers. This was done on the router side and the IP addresses used were 8.8.8.8 and 8.8.8.4.

22:33 June 4, 2016

Here’s a way to convert DNG files to JPEG ones:

find -type f | grep DNG | parallel mogrify -format jpg {}

10:51 September 16, 2015

Here is a way to recursively delete folders and their contents in PowerShell:

Remove-Item .\foldertodelete -Force -Recurse

The Force switch silences any messages that otherwise would appear and the Recurse switch is what gets directories removed.

23:38 August 18, 2015

Thomson Reuters is changing over Open Calais at the end of August.

11:05 July 29, 2015

Motorola now selling phones direct to the public through its own store. Customisation options are available for more expensive models like Moto X and Nexus 6 too.

10:18 April 12, 2015

Devuan (pronounced like dev-one) is a fork of Debian that does not use systemd as Debian, like so many other distros, is doing. Part of the name must come from a collective calling itself Veteran UNIX Admin (VUA). There is no actual release just but one is intended for around the same time as Debian 8.0 gets released and donations are being solicted via the website.

18:51 February 20, 2015

Here is a handy way to get PowerShell to show files larger than a certain size:

get-childitem | where-object {$_.length -gt 10000}
|ft fullname, length -auto

19:40 December 1, 2014

When a VirtualBox upgrade broke the networking on a Windows 8.1, it was time to look at System Restore to see what it would do. It reverted version 4.3.20 to 4.3.15 and the network disconnection stopped. For now, I will remain with that older version after the misstep with the latest one. Sometimes it is best to stick with what is known to work.

20:38 October 30, 2014

With my deciding to try doing about my waistline during the summer (a bike got put on a trainer and around 30 minutes is spent on it most evenings while I also catch up some reading; now, I feel fitter and incursions into the countryside have an added air of confidence about them), an interest in fitness monitors has developed and the Pulse Ox from Withings has taken my eye due its being price of around £100. That makes it less than alternatives and it isn’t the only health gadget that the company does either with there being a blood pressure monitor in its range too. The Pulse Ox monitors such things as heart rate, activity such as walking and running, sleeping and weight too. It should work with your smartphone as well, which is a bonus. It is one of several like it with Samsung and Apple going in for phone apps and Microsoft releasing their Band device as well. This appears to be a growing area where I never expected to see mainstream technology companies having a role for themselves.

12:44 October 30, 2014

Ergotech now have useful desktop stands for tablet computers. There is one for a full size iPad and another for any other type of tablet. A standalone one on wheels also is available though I cannot see myself ever needing such an item.

20:24 October 20, 2014

Here are some more specialist information sources with search facilities:

Infoplease

ScienceDirect

18:53 October 7, 2014

Here is the test for the “Shellshock” vulnerability in the bash shell:

env x='() { :;}; echo vulnerable’ bash -c “echo this is a test”

It should not return the following:

vulnerable
this is a test

This would be acceptable:

bash: warning: x: ignoring function definition attempt
bash: error importing function definition for `x’
this is a test

Also, just having this might be fine too:

this is a test

In case you need it, Redhat has more information on the bug that caused scare stories everywhere. Now, it is over to system administrators everywhere to do their bit now that bash has been patched.

21:36 August 24, 2014

Sometimes you need to create more than one directory level in a hierarchy at once and mkdir has the -p option for this purpose. That gets it to create any missing levels in a folder path and avoids warnings that would be issued otherwise.

16:18 August 21, 2014

Debian 8 is under development and has its first beta ready for download. XFCE is now the default desktop environment though it remains possible to install GNOME and GNOME Shell too. In fact, I successfully have given that a go in a VirtualBox installation and will keeping an eye on development so long as no system meltdowns occur. The version of the X Window system already is incompatible with VirtualBox 4.3.14 so we need to await a new version of the virtualisation software before we get access to advanced functions like full window desktop expansion. What we have at the moment works well enough to keep eye on development so we can wait for that full support.

18:31 August 6, 2014

Perfect Resize from onOne Software caught my eye for scaling up images after seeing it mentioned in a Outdoor Photography review of Avanquest PhotoZoom Professional. With a library of 6″ x 4″ prints, I am limited in how large I can make scanned images without they looking blurred and pixelated so that’s why my interest was aroused. There may be a free moment spent seeing what it might do in that situation yet.

16:24 August 2, 2014

Nvidia has a useful page on the difference between DVI-D and DVI-I. It came in handy when transitioning from VGA to DVI on my home PC’s. That made what appears on my Iiyama screen much sharper and allowed me to rid myself of a suspect VGA cable too.

21:42 June 11, 2014

Here are some interesting articles about EFI and UEFI that I uncovered during a recent episode of setting up dual booting of Windows 8.1 and Linux Mint 17 on a PC with EFI:

UEFI

UEFI Dual-Boot -- Ubuntu 12.04.3 + Windows 8.1 (One GPT HDD)

Managing EFI Boot Loaders for Linux

The rEFInd Boot Manager: Getting rEFInd

11:53 May 3, 2014

In the U.K., BT allows you to divert your phone calls for a fee and I have made good use of it over the past year. The service is called Call Diversion and Eircom, Ireland’s counterpart to BT, offers Call Forwarding in Éire. Both are handy because redirecting a call to a mobile phone means that you know you are not missing any calls and that there is nothing lurking on an answering machine when you do get to your home or office. Landline telephony may seem less exciting these days than other forms of communication yet it still has its place and I would not get any nasty surprises along the path of life either. If only I had started doing this kind of thing earlier than I did…

20:12 April 4, 2014

Here’s a useful article about the ever useful locate command. Whether it is FreeBSD or Ubuntu that you are running, this article has a use and that especially when the locate database needs updating with the updatedb command.

20:54 March 12, 2014

A recent website redesign was well helped by modern.IE‘s collection of virtual machine appliances containing different versions of Windows and Internet Explorer. Depending on the host operating system that you are using, you have different options. For Linux, it is VirtualBox only while Windows gains VMware and Virtual PC too. It is a matter of just picking out what suits your situation from dropdown lists.

The first one that I picked was Vista with IE 7 and it was an interface that I had not seen for a while. For all the criticism, the operating system did work well though I wonder if it arrived before the computer hardware that it really needed in order to run smoothly. The dark theme cannot have helped its cause either, especially when compared with the much brighter Windows 7 or Windows 8.x. A Windows XP appliance with IE 6 was grabbed before it gets yanked and support for the elderly OS does finish in April. IE 6 probably is on its last legs so I probably can ignore it now but IE 7 might live longer yet. Window 7 appliances with IE 9 and IE 10 also were downloaded and confirmed that all was well in recent versions of IE when it came to the website. The Vista virtual machine allowed me to ensure that all looks acceptable on IE 7 too. The VM’s themselves contain evaluation versions of enterprise variants of Windows and have a limited lifespan though it is little trouble to reimport an appliance again to rest the clock if so required. In most cases, you extend the evaluation periods too through re-arming and there only are so many times that you can do that anyway. With Windows 8.x, it isn’t even a possibility anyway.

22:05 March 9, 2014

Today, I found an interesting article on CSS media queries and put it to some use for a website redesign that has been keeping me busy over the weekend. Twitter’s Bootstrap came in handy for this too. Now, it’s on to ridding the new design of any rough edges that remain in there. That can be an ongoing task and the site is here if you fancy a look to see what my efforts have produced.

16:20 February 26, 2014

Adding a new Zalman ZM450-GS power supply did little to sort the buzzing in my speakers but it has made the PC where it was installed so much quieter; a much larger fan spinning slower helps while still moving the required amount of air. It is 450W too and I am wondering if my main PC would benefit from a similar upgrade. That may be quieter than the other one was but the case was not a deluxe model so the change should do no harm. As for the speakers, moving them was the only way to get rid of the buzzing. Looking back on this now, it seems that one of them was far too close to a PC.

20:33 February 15, 2014

Currently, the spare PC appears to be causing buzzing on my main PC speakers and with my landline telephone when it is placed right under these.  Removing it helps to cut it down but I fancy having a better fix and am wondering if a new power supply might help. Also, I am wondering if there are other sources too. In the meantime, I would like to share an article on the subject that I recently found: Kill Studio Hum and Buzz at the Source.

22:14 February 12, 2014

Applying latest set of updates to LMDE worked to get to Update 8 worked smoothly unlike some predecessors. This brought the latest version of Cinnamon so GNOME now is redundant. It will be interesting to see where things go next.

16:24 February 8, 2014

During the week, I discovered that Twitter is not a benign place to go ruminating. A sharp riposte in an unnecessary tone of voice was enough to bring on a sense of extra caution. Wherever you get humanity, you are likely to encounter and one had a go at me so some thoughts are going to be kept away from there from this point forward. Sometimes, you own website is a far better place to go ponder happenings in the world around you. After all, an ugly comment can be deleted and a rogue IP address blocked if things need to go that far. Of course. more civility would be best. Polite correction is the best course whenever it is warranted since we all are human and no one is beyond making mistakes.

16:15 February 8, 2014

On my outdoors website, I have been using a PHP script from Detect Mobile Browsers but this does not distinguish between Android running on a tablet and that running on a phone. Therefore, I have turned to another source of such scripting and that is working better so far. In fact, this offers more than just PHP but also Python, JavaScript and other scripting languages along with configuration files for web servers too. Apache, Nginx and IIS all have something for them. The logic essentially is based on Perl regular expression matching of user agent strings, not an infallible means but good enough for me along with a smattering of responsive design.

14:30 February 1, 2014

For anyone lost when faced with the changes Microsoft brought in with the launch of Windows 8 and largely retained in Windows 8.1, TechRadar has a useful article: 62 Windows 8 tips, tricks and secrets. What will prove especially interesting is where Microsoft goes next when many of their customers prefer the Windows 7 interface and are sticking with the elderly Windows XP. You only can get so far by telling your customers that they are wrong all of the time and the is competition in the form of Apple’s OS X and Google’s Chrome now.

14:23 February 1, 2014

TechRadar has a round-up of Best free photo editing software: 10 top image editors you should try. Usual options like GIMP, Paint.Net and IrfanView get a mention along with other less well known ones. Interestingly, Google’s Picasa is excluded from the list but that might be because it largely is an image file management tool even if it has some image editing capabilities too.

21:28 January 27, 2014

Late last week, I found out about the image file sorting tool PhotoSift via an article on the software. It looks interesting though I have yet to try it.

17:52 January 27, 2014

Here are some interesting reviews from TechRadar:

Best compact system camera 2014: the top models reviewed

Best tripod and camera support: 13 tested

Best tripod head: 8 reviewed

The tripod heads review really caught my eye more than the others. After all, 2013 was the year that I got a CSC and a Manfrotto tripod has sat reproachingly in the corner far more often than it should.

19:41 January 16, 2014

Today, I spotted two interesting articles to which I want to retain links on here:

Managing the future of complex business and IT landscapes

Send large files to clients with these 8 free tools

Both of these ring bells for me for different reasons. The first is a reminder of a slow and painful system project with which I was involved and of an ineffective IT support service that pained us at the time. The second is ever present in my current job with its need to send data and output files to clients as well as receiving specifications from them.

19:36 January 4, 2014

In recent weeks, I have been having trouble with the onboard network controller on a spare PC that I have at home. It connects to the network fine for a few minutes and then struggles. Making use of an old PCI ethernet card that I had from another machine solved the problem. Does anyone know of issues with ASRock motherboards and onboard network ports at all? It isn’t something that I have seen before and this motherboard never had good networking capability as long as I have had it.

19:33 January 4, 2014

After Christmas, I took delivery of an HTC One mini mobile phone that I got free as part of a contract renewal with O2. It also is known as the M4 and I have been getting used to it since I got it. A lot is familiar and there are some little differences too. Some of these leave me asking why what worked well before got changed to something that is less smooth. Of course, that can be the course of things and it applies to buying a new car as much as getting a phone upgrade. All in all, the phone works well and battery life appears much improved over the HTC Desire S so far, never a bad thing to notice.

19:25 January 4, 2014

This morning, the hosting provider for this website had an outage that lasted over three hours. The provider was Fasthosts and the cause was a power failure. They usually are good so this thankfully does not happen too often. However, we have been getting a lot of stormy weather crossing Britain and Ireland this winter so I suspect that there should be little in the way of surprise when something like this happens. Weather is not due to settle during this month so there may be more power failures, hopefully elsewhere, before things settle down again.

17:20 January 3, 2014

On one WordPress website that I have, the refresh rate for RSS widgets wasn’t the quickest and the remedy was to add this line into the themes functions.php file:

add_filter( ‘wp_feed_cache_transient_lifetime’, create_function(‘$a’, ‘return 600;’) );

It creates a custom function that is attached to the widget and the refresh time is set to 600 seconds or 10 minutes. So far, this seems to be doing what I needed.

17:56 December 19, 2013

What I didn’t realise is that TRIM currently is not enabled in Ubuntu by default. That is set to change in Ubuntu 14.04 and here is some advice on the matter until then.

20:41 December 14, 2013

This weekend, I had visions of needing a new hard drive when all files on one in my main home PC (runs Ubuntu GNOME 13.10 64-bit) went read only. The cure was to re-seat the SATA cables and all was well again. Sometimes, inexpensive remedies are best and I need not to forget this one.

20:54 October 29, 2013

Here are two interesting articles that I spotted: the first is on new features in GNOME 3.10  and the second about getting DRM-protected Flash media playing on Ubuntu 13.10. For now, I am sticking with Ubuntu GNOME 13.04 in spite of a pop-up dialogue encouraging an upgrade to 13.10; the potential for even a little disruption is something that I am delaying for now.

20:34 October 16, 2013

While editing a file in Nano on an virtual Arch Linux web server that I have, I noticed that a file had DOS newline characters instead of UNIX ones so conversion using the dos2unix command was in order. There is more on this to be found on nixCraft and there are other options such as sed described in there too.

21:51 September 7, 2013

Following a look at Webmin, I have to say that it seems a worthy tool for remote management of servers. My trial so far has been on my Ubuntu virtual web server and it works on port 10000 without interfering with the operation of the actual web server. Being able to run system updates and deletion of MySQL databases without resorting to the command will seem a bonus for some. There’s more to it than these though and I have seen the possibility of managing virtual servers located within a real being mooted. It was an issue of Linux User & Developer than inspired me so my Linux magazine reading is seeing its uses.

20:30 September 4, 2013

Here are some interesting articles for anyone thinking about software development and its realities:

The care and feeding of software engineers (or, why engineers are grumpy)

Being an introvert as I am, this article really is something to which I can relate. Whenever I cannot get the space for undisturbed work, it takes from how I enjoy my job.

How designers and engineers can play nice (and still run with scissors)

We all have to work cross-functionally so you cannot have it all your own way…

Six reasons why the NHS National Programme for IT failed

Having been involved in system design, development and implementation myself, I have something to share that fits into the same topic area. Too many cooks can spoil a broth.

Queensland Government Bans IBM from IT Contracts

My past experiences of IBM have not been good and it wasn’t just where I worked either so this is not exactly a surprise. Service organisations need to ensure that they are sufficient responsive and flexible with empowered and enthusiastic staff who do the needful.

23:09 August 11, 2013

Vagrant and Puppet look like very interesting tools for working with virtual machines. They work with VirtualBox or VMware’s Fusion and Workstation so there’s a choice of virtualisation tool.

20:52 April 18, 2013

Crash reports have been appearing after logging into an Ubuntu session for /usr/share/hplip/config_usb_printer.py and it repeating has been reinstalling HPLIP software for my HP LaserJet 1018 printer too. Leaving the printer off until I need it would be one solution and saves some electricity too but it is best to try to sort an issue when you keep getting it. The first step was to download the latest HP software and install it. That wasn’t a complete solution so I altered the latest send_message function call in /usr/share/hplip/config_usb_printer.py from the following:

send_message( device_uri, printer_name, EVENT_DIAGNOSE_PRINTQUEUE, username, 0,”)

to:

send_message( device_uri, printer_name, EVENT_DIAGNOSE_PRINTQUEUE, ”, 0,”)

So far that alteration appears to have addressed the problem but I’ll be keeping an eye on things anyway. If you’re wondering, the inspiration came from a bug discussion on Launchpad and it was the queue clearing section of the Python script that I went and edited.

20:40 April 16, 2013

Recently, I have been having bother with WordPress Jetpack comment form submission. This was caused by the Bad Behaviour plugin and allowing cross site form submission sorted the problem. The setting to change is in Settings > Bad Behaviour on the Dashboard.

17:31 March 16, 2013

Here’s a quick way to make Faenza and Faience icons available to Ubuntu and maybe Linux Mint too:

sudo add-apt-repository ppa:tiheum/equinox
sudo apt-get update && sudo apt-get install faenza-icon-theme faience-*

20:53 February 19, 2013

During a look at a Fedora 18 Live DVD, I found a user name was needed to get to the desktop and root did the trick for me. What I didn’t notice was an install to hard drive option for the GNOME variant that I tried. Maybe it was hidden on the desktop and not displayed. If so, it looks like an oversight.

16:02 February 14, 2013

Here’s the way to find the version of PROC CDISC that came with the version of SAS that you are using:

proc cdisc version;
run;

14:00 February 14, 2013

Here’s robustness principal for software design that otherwise is known as Postel’s Law after TCP pioneer Jon Postel:

Be conservative in what you do, be liberal in what you accept from others

08:10 February 14, 2013

Here’s a command for removal of orphaned packages in Arch Linux and its derivatives (CinnArch and ArchBang come to mind but there may be others):

sudo pacman -Rns $(pacman -Qqtd)

15:11 January 26, 2013

Cinnarch looks very interesting. It’s based on Arch Linux so it’s a rolling distro but has Cinnamon as its desktop environment. Currently, it’s still in beta but I am tempted to give it a go in a virtual machine.

20:55 December 15, 2012

Having decided that my ever sluggish system needed a fresh operating system installation, I set to trying to get on Linux Mint 14. However, not remembering that the disk and not the partition needs specifying for GRUB installation cost me some time. Later, adding on GNOME Shell resulted in a system conflict between MDM and GDM so I now am running Ubuntu GNOME Remix instead. All feels fresher so far though a spot bother was had with the lock screen that caused me to turn off the feature. VMware Player installed without any of the trickery needed to get in its forbear and runs without a hitch so far too. Other bits and pieces need instating yet but the basis of a refreshed computing platform is in place now.

20:56 November 19, 2012

A look at Linux Mint 14 64-bit release candidate in a VirtualBox virtual machine confronted me with irritating mouse pointer behaviour. The pointer constantly darts to the left when you need it not to do that and it seriously affects usability. The final version will be awaited to see if there is an improvement because it’s not very usable as things stand. GNOME Shell can be installed in working order after a spot of fiddling. Installing the software from the Software Store doesn’t add gnome-session as well so the command line alternative remains best:

sudo apt-get install gnome-shell && sudo apt-get install gnome-session

These two really need packaging together as dependencies. Cinnamon is looking as nice as ever and in need of a plug-in that makes virtual desktops behave as they do in GNOME, even if that’s a minority interest now.

12:07 September 30, 2012

Here are commands for adding Cinnamon to Ubuntu:

sudo add-apt-repository ppa:gwendal-lebihan-dev/cinnamon-stable
sudo apt-get update
sudo apt-get install cinnamon

14:39 September 29, 2012

Had a look at GNOME 3.6 in Ubuntu GNOME Remix 12.10 Beta 1 release. Not all extensions are supported yet but GNOME 3.6 only launched officially yesterday anyway. Will take a little while for those extension developers to catch up with it. No hurry in moving from GNOME 3.4 until they do so.

20:24 September 22, 2012

Picked up Netgear ethernet switcher at PC World today. Working without a hitch so far. Some network reorganisation may follow suit.

20:14 September 22, 2012

Initially, I needed to use the command “modprobe vboxdrv” to get VirtualBox going on Sabayon 10. However, there seems to be a better remedy: adding the line ‘modules=”vboxdrv vboxnetflt vboxnetadp”‘ (removing the outer single quotes, by the way) to /etc/conf.d/modules and restarting the system. That seems to have done the trick though I wonder it wasn’t added for me automatically.

13:08 September 22, 2012

Until recently, I hadn’t realised that most if not all SSD’s come in 2.5″ form factor. An extra bracket is needed for installing into 3.5″ drive bays. While tempting, this remains a nice to have upgrade for me.

20:02 September 21, 2012

Found out why my proftpd daemon wasn’t working on Linux Mint. Needed to set it as standalone and not inetd operation. It’s the ServerType setting in /etc/proftpd/proftpd.conf.

21:53 September 18, 2012

Given the site a new appearance. The cause was getting microblogging going on this page. Clashes with zeeDisplay theme and Twitter Tools made for replacements that now power what you see here. Jetpack plugin added too. All looking good to my eyes so far. More tinkering may happen yet.

21:36 September 15, 2012

Here are a few places where you will find Linux version information stored: /etc/issue, /etc/issue.net, /etc/lsb-release.

17:30 September 15, 2012

Desktop swapping can be done in Ubuntu and here’s the command for Xubuntu:

sudo apt-get install xubuntu-desktop

17:22 September 15, 2012

Here’s a set of commands that I once used to get GNOME Shell going for a Sabayon 9 installation in a VirtualBox virtual machine:

su
equo install --ask linux-sources
cd /run/media/john/VBOXADDITIONS_4.1.16_78094
./VBoxLinuxAdditions.run
mv /usr/libexec/gnome-session-check-accelerated-helper /usr/libexec/gnome-session-check-accelerated-helper.bak
ln -s /bin/true /usr/libexec/gnome-session-check-accelerated-helper

Hope they have a use though VirtualBox has gone through a few versions since I discovered that these had the desired effect though the login screen behaved a little oddly. Otherwise, everything worked as it should.

14:16 September 15, 2012

Pondering purchase of NAS. QNAP TS-412 looking promising but need to think about my home networking set up first. Might need an ethernet switch but plan to look into it more first, especially with uplink capability needed.

14:11 September 15, 2012

Appearance of Sabayon 10 caused a bit of disturbance to my Sabayon installation that needed installation from a DVD to resolve. Tried GRUB repairs before the non-loading of an Nvidia kernel module caused bother. Went for old fashioned approach for sake of saving a little troubleshooting time.

13:52 September 15, 2012

This has been added using the Live Blogging plugin and it’s good for pages too, unlike Automattic’s own Liveblog plugin. Maybe they’ll add that sort of functionality in time.

UNIX

21st September 2012

The world of open UNIX variants may not be as vibrant as the Linux one, but UNIX predates Linux by decades so it might be put down to its much greater maturity. BSD seems to predominate here, but the reason may be because of Sun keeping a tight hold on Solaris for so long. Now that Oracle has gone and been more restrictive again, it is the breakaway projects to which we have to look for OpenSolaris successors now. However, the partially free availability of Solaris 10 & 11 may draw some away from the open-source community of the alternative.

BSD

In the world of BSD UNIX, it often is difficult to see what is different between the various projects and some are based on technical excellence using the sort of reasoning that would be inaccessible to many computer users. Though many see the operating system as being one for servers alone, there are PC-focussed versions with PC-BSD being the most notable. The existence of those projects is in start contrast to a mantra that keeps BSD for servers and Linux for desktop systems.

DragonFlyBSD

This was a fork of FreeBSD and it seems to have been done for very technical reasons, such as handling of cluster computing and larger disc drives. If the reasons make sense to you, then it could be an option, but it doesn’t sound like one for the masses, though BSD UNIX hardly is at the best of times.

FreeBSD

UNIX

When someone turns to creating a desktop variant of BSD, FreeBSD seems to be a starting point for so much of the time. Even Debian, itself the foundation of so many Linux distributions, bases its own BSD variant on FreeBSD and Gentoo apparently has been looking at doing something similar. FreeBSD does give away a bias towards servers in that the default installation does not include a desktop environment. However, if you do the work, you can get one like GNOME 2 or XFCE on there and the process does remind me of the thinking behind Arch Linux. Until recently, I had FreeBSD 10 installed in a VirtualBox virtual machine until a software update broke it and that does sit well with the BSD culture of stability. Of course, it could be another sign of a focus on server computing too. Nevertheless, it ran well until then and fared no worse than the aforementioned Arch Linux, though it probably should have done better.

GhostBSD

Apparently, this is FreeBSD with a choice of MATE (a fork of GNOME 2 for those not fancying the idea of using GNOME 3 and its GNOME Shell), XFCE, LXDE or OpenBox desktop environments. A recent look demonstrated that the desktop environments are turned out very nicely too. All in all, it looks like an interesting counterpart to what you would find with a Linux distro.

HardenedBSD

Given the troubled state of the online world because of cybercrime and cyberwarfare, it hardly comes as a surprise that computer security has a higher profile than it ever has. It then is hardly surprising that someone decided to create a more secure spin of FreeBSD. For added context, here is what the project had to say about its goals:

HardenedBSD aims to implement innovative exploit mitigation and security solutions for the FreeBSD community. Security is like an onion--it’s made up of layers. To be successful, attackers must peel back each layer. HardenedBSD takes a holistic approach to security by hardening the system and implementing exploit mitigation technologies. We will work with FreeBSD and any other FreeBSD-based project to include our innovations. Our primary goal is to provide a clean-room reimplementation of the publicly documented parts of the grsecurity patchset for Linux.

MidnightBSD

According to the website, this is a derivative of NetBSD developed with desktop users in mind. At first, it had a feel that would have been more widely available with UNIX and Linux systems in the middle of the 1990’s. Since then, XFCE was chosen as a desktop environment and that has modernised the feel.

NetBSD

Since I last had a look, the focus of this project has become portability. What they mean by portability is have versions of NetBSD that run on all sorts of hardware and I even thought I saw a mention of Sony PlayStation (PS2) if my eyes did not deceive me and ARM-based systems also appeared, hardly a surprise with the rise of tablet computing. Other more conventional computing platforms are served too, but the others make NetBSD stand out from the others more than I once thought it did.

NomadBSD

To some, portability is about running software under different hardware architectures. That is not what is meant here since we are talking about the ability to run an installation off a USB drive plugged in to any computer, more likely with Intel and AMD processors. The underlying basis is FreeBSD with OpenBox being the chosen desktop environment, assuring a friendly user interface as well.

OpenBSD

UNIX

With a strap line like “Only two remote holes in the default install, in a heck of a long time!”, you’d have to suspect that security and stability are the key attributes of this operating system. The security aspect certainly crops up a lot so I think that a spot of exploration is in order, especially when various system types (x86 and SPARC are just two of them) are supported anyway. The ongoing furore about intelligence service monitoring and increasing numbers of attacks on different systems over the web do make the whole subject more relevant now than it ever was and it never was irrelevant.

OPNsense

When m0n0wall was discontinued in 2015, OPNsense was forked from pfSense, a move that has left tension between the two projects. The newcomer gave the following reasons for its actions: code quality, regular releases, security issues related to the web UI being run as root, source code for the pfSense build tools is no longer publicly available, concern regarding transparency, new ownership of the pfSense brand, using the brand name to fence off the competition and several licence changes for no apparent reason. These have been contested by the pfSense while OPNsense now uses HardenedBSD as its basis and has stuck with a frequent release model.

pfSense

This was started in 2004 as a fork of the now defunct m0n0wall with the first public release coming in 2006. It is based on FreeBSD and can be installed on physical or virtual appliances for added network security. It seems to add a BSD installation for a firewall and other security functions, but there clearly is a place for this in the enterprise market by all accounts.

TrueNAS

Network-assisted Storage (NAS) has blossomed in recent years for home users and anyone with a DIY mindset might be tempted to go and build things themselves using PC parts and it is for those that this FreeBSD-based distro would be an asset. When I went looking at the possibility, the inability to boot the installation disk that I was using put paid to the attempt. Then, I was left wondering if my use of AMD’s CPU’s was part of the problem, though I since have realised that building a low-power system might be a better option than reusing a full PC. There has been an incursion into the world of NAS drives in the form of a 3 GB Western Digital My Book Live, so any return to DIY ways could be a better informed.

XigmaNAS

Like TrueNAS, this another BSD for use when making an old PC into a NAS file server. In fact, this came into being when part of the FreeNAS community took exception to the direction in which iXsystems were starting to take it after 2011. It also is based on FreeBSD and has a different web interface. That makes it an alternative if TrueNAS does not do the deed for you.

Solaris

One of the casualties of Oracle’s takeover of Sun Microsystems was the community-based OpenSolaris project. The more proprietary Solaris 11 Express became Oracle’s answer to the need that OpenSolaris fulfilled back then. Since, Solaris 10 & 11 became available without charge with support contracts becoming the revenue earner.

OpenIndiana

The demise of OpenSolaris saw a major new project emerge. Its basis is Illumos, itself a fork of the now defunct OpenSolaris, and a recent look revealed that it is maturing rather nicely. MATE is the chosen desktop environment so it should not be that unfamiliar to those coming from the Linux world. Initially, there is not so much software installed, but Firefox does get included and there is a graphical package manager, so there is little point in complaining.

OmniOS

The enterprise focus of this offering is plain on the website since virtualisation and the storage platform get a strong showing. Discussion of desktop environments and such like are conspicuous by their absence. Seemingly, this is infrastructural software above all else and there are support contracts available too.

Tribblix

The website for this Illumos distro has a retro, so it is easy to believe that the operating system could be similar. Since MATE, XFCE and Enlightenment are the available desktop environments, anyone coming from Linux should be thrown off very much once they figure out how to get things started.

Triton SmartOS

With a moniker like “Converged Container and Virtual Machine Hypervisor”, this clearly is not a desktop computing offering. There is more than a hint of cloud computing about it and that hardly is a surprise given the age in which we work.

Command Line Processing of EXIF Image Metadata

8th July 2013

There is a bill making its way through the U.K. parliament at the moment that could reduce the power of copyright when it comes to images placed on the web. The current situation is that anyone who creates an image automatically holds the copyright for it. However, the new legislation will remove that if it becomes law as it stands. As it happens, the Royal Photographic Society is doing what it can to avoid any changes to what we have now. There may be the barrier of due diligence but how many of us take steps to mark our own intellectual property? For one, I have been less that attentive to this and now wonder if there is anything more that I should be doing. Others may copyleft their images but I don’t want to find myself unable to share my own photos because another party is claiming rights over them. There’s watermarking them but I also want to add something to the image metadata too.

That got me wondering about adding metadata to any images that I post online that assert my status as the copyright holder. It may not be perfect but any action is better than doing nothing at all. Given that I don’t post photos where EXIF metadata is stripped as part of the uploading process, it should be there to see for anyone who bothers to check and there may not be many who do.

Because I also wanted to batch process images, I looked for a command line tool to do the needful and found ExifTool. Being a Perl library, it is cross-platform so you can use it on Linux, Windows and even OS X. To install it on a Debian or Ubuntu based Linux distro, just use the following command:

sudo apt-get install libimage-exiftool-perl

The form of the command that I found useful for adding the actual copyright information is below:

exiftool -p “-copyright=(c) John …” -ext jpg -overwrite_original

The -p switch preserves the timestamp of the image file while the -overwrite_original one ensures that you don’t end up with unwanted backup files. The copyright message goes within the quotes along with the -copyright option. With a little shell scripting, you can traverse a directory structure and change the metadata for any image files contained in different sub-folders. If you wish to do more than this, there’s always the user documentation to be consulted.

Installing Perl modules using CPAN on Linux Mint 19.2

28th September 2019

My online travel photo gallery is a self-coded set of PHP scripts that read data from tables in a MySQL database. These tables are built from input XML files using a Perl script that itself creates and executes an SQL script. The Perl script also does some image processing using GraphicsMagick commands to resize images and to add copyright information and image framing. Because this processed one image at a time sequentially, it was taking several minutes to complete and only partly used the capacity of the PC that I used.

This led me to look at adding parallel processing and that is what brought me to looking at the Parallel::ForkManager Perl module. An alternative approach might have been to add new images in such a way as not to need the full run involving hundreds of image files, but that will take more work and I fancied having a look at parallelising things anyway.

If it was not there already, the first act would have been to install build-essential to get access to the cpan command. The following command accomplishes this:

sudo apt-get install build-essential

Once that is there, the cpan command needs to be run and some questions answered to get things going. The first question to answer is whether you want setup to be as automated as possible and the default answer of yes worked for me. The next question to answer regards the approach that cpan takes when installing modules and I chose sudo here (local::lib is the default value and manual is another option). After this, cpan drops into its own command shell. Here, I issued two more commands to continue the basic setup by updating CPAN.pm to the latest version and adding Bundle::CPAN to optimise the module further:

make install
install Bundle::CPAN

Continuing the last of these may need extra intervention to confirmation the suggested default of exit at one point in its operation and that takes a little time to complete. It is after this that Parallel::ForkManager can be installed using the following command:

install Parallel::ForkManager

That completed quickly and the cpan shell was exited using its exit command. Then, the new module was available in scripting after that. The actual use of this module is something that hope to describe in another post so I am ending this one here and the same process is just as applicable to setting up cpan and adding any other Perl CPAN module.

New year, new blog

17th January 2007

Hello and welcome.

This may be the first time that you encountered me in cyberspace but this is not my first foray into the blogosphere: that is HennessyBlog. So why the new blog then? The reason is that I like the idea of somewhere to mull over computer technology, both new and old. And HennessyBlog is already devoted to the enjoyment of the great outdoors matters else and I do not want to dilute that focus. While a technology fan, I also like going walking in the countryside and visiting interesting towns and cities, capturing any views encountered with my camera. From these photos, I have compiled my online photo gallery and HennessyBlog also features news of updates to this.

So there you have it: this is going to be my technology blog. I do build my own PC’s so references to computer hardware may appear from time to time. Even so, I am more of a software person and programming is a love of mine. Currently, we also are going through a period where there are a lot of new software releases: who cannot have heard of the forthcoming versions of Windows and Office? I have been taking a look at some of these. Like anyone interested in computer technology, the Internet is also a big interest of mine, not least because I have been dabbling in web development for most of the last 10 years. I deliberately say development because, although I can probably do passable website interfaces, I am more technically adept than artistically gifted. I did mention programming earlier: this pays my bills so it may feature at some point.

AttributeError: module ‘PIL’ has no attribute ‘Image’

11th March 2024

One of my websites has an online photo gallery. This has been a long-term activity that has taken several forms over the years. Once HTML and JavaScript based, it then was powered by Perl before PHP and MySQL came along to take things from there.

While that remains how it works, the publishing side of things has used its own selection of mechanisms over the same time span. Perl and XML were the backbone until Python and Markdown took over. There was a time when ImageMagick and GraphicsMagick handled image processing, but Python now does that as well.

That was when the error message gracing the title of this post came to my notice. Everything was working well when executed in Spyder, but the message appears when I tried running things using Python on the command line. PIL is the abbreviated name for the Python 3 pillow package; there was one called PIL in the Python 2 days.

For me, pillow loads, resizes and creates new images, which is handy for adding borders and copyright/source information to each image as well as creating thumbnails. All this happens in memory and that makes everything go quickly, much faster than disk-based tools like ImageMagick and GraphicsMagick.

Of course, nothing is going to happen if the package cannot be loaded, and that is what the error message is about. Linux is what I mainly use, so that is the context for this scenario. What I was doing was something like the following in the Python script:

import PIL

Then, I referred to PIL.Image when I needed it, and this could not be found when the script was run from the command line (BASH). The solution was to add something like the following:

from PIL import Image

That sorted it, and I must have run into trouble with PIL.ImageFilter too, since I now load it in the same manner. In both cases, I could just refer to Image or ImageFilter as I required and without the dot syntax. However, you need to make sure that there is no clash with anything in another loaded Python package when doing this.

  • All the views that you find expressed on here in postings and articles are mine alone and not those of any organisation with which I have any association, through work or otherwise. As regards editorial policy, whatever appears here is entirely of my own choice and not that of any other person or organisation.

  • Please note that everything you find here is copyrighted material. The content may be available to read without charge and without advertising but it is not to be reproduced without attribution. As it happens, a number of the images are sourced from stock libraries like iStockPhoto so they certainly are not for abstraction.

  • With regards to any comments left on the site, I expect them to be civil in tone of voice and reserve the right to reject any that are either inappropriate or irrelevant. Comment review is subject to automated processing as well as manual inspection but whatever is said is the sole responsibility of the individual contributor.