Saturday, February 21, 2009

Essential Firefox Add-Ons For the Cloud

If you don't want to be tied down to a desktop, you need direct access to your computer in the cloud. Since Firefox runs just about everywhere, it's a good place to start to set up a reliable way to access your accounts.

Blog & Social 


Delicious Bookmarks is the recommended and official Firefox add-on for Delicious, the world's leading social bookmarking service (formerly del.icio.us). It integrates your bookmarks and tags with Firefox and keeps them in sync for easy, convenient access. Syncing slows down startup, though.


ScribeFire Blog Editor
is a blog editor that integrates with your browser and lets you easily post to your blog. They've also integrated their affiliate Quick Ads advertising program, which I haven't tried.

Sunday, January 11, 2009

Ubuntu on the Asus EEE NetBook

MaximumPC published a very detailed article that describes how to install Ubuntu on your favorite NetBook: How To: Become a Linux Netbook Power User. Also useful: Ars Technica's How to: Installing and running Ubuntu on the Eee PC.

Tuesday, September 16, 2008

Freemind Update

I wrote last year about a great open source brainstorming and mind mapping tool, Freemind 0.8.0 - Java Mind Map software, but I was concerned that the program hadn’t seen a significant update in several years. Well, it’s just been updated this year to 0.8.1, and you can download it from SourceForge.net: FreeMind. Version 0.9.0 is still an unstable beta.

Thursday, June 05, 2008

Acer bets big on Linux

As the cost of Windows becomes a larger and larger portion of the cost of computer hardware, more vendors are going to look at Linux as a viable alternative. Acer is already selling Linux on its low cost ultra-portables, but will expand Linux options to notebooks this year. 

Another interesting advantage of Linux for hardware manufacturers: because it's open, they can customize it for their specific hardware models and the differing requirements of laptops or Media PCs. According to the article, using Linux helps them "extend battery life from five to seven hours." 

This means that hardware manufacturers could build special hardware features into their boxes and then not only write the drivers to support the hardware, but also modify any aspect of the operating system to better support the new features. That's an appealing option to companies that are currently competing primarily on price.

Wednesday, June 04, 2008

Hardy 8.04 & OSS4 (Alternative to ALSA)

It looks like the best way to get my Creative X-Fi card to work in Ubuntu Hardy Heron 8.04 is to install OSS4.

Wednesday, April 16, 2008

Bash with Style

When you decide it’s time to start writing bash scripts with some style, start at the Advanced Bash-Scripting Guide by Mendel Cooper. It’s available as a PDF, or a tarball download, too.

Monday, March 17, 2008

Joomla 1.5 Directory Status: Writeable

[UPDATED]

Joomla 1.5 is acting flaky on one of our installations because the directories are set to ‘unwriteable’. To see the their current state, log in as Super Administrator and go to Help > System Info > Directory Permissions.

To fix this problem, first make sure the FTP access is working. Try re-entering the FTP user name and password at Site> Global Configuration> Server.

If this doesn't fix the problem, you must make some additional changes. Elsewhere, it's been suggested that the specified directories must be set to “world-writeable” (777). This works, but it is a very bad idea, since it means anyone can change your files! Not cool.

Fixing Security with User and Group Settings

To perform these changes, you need shell (command line) access to your server. If you don't have it, you can beg your host to make these changes for you, or switch to a Joomla-friendly host. I'm going to assume that you are using a LAMP (Linux/Apache/MySQL/PHP) server because if you're not, then ... well, these instructions should work in principle, but the specifics for your server may be quite different.

Here's the issue: you, the FTP user, need full access to your files. So does Joomla, which accesses your files through the web server. Now, most web server configurations don't assign the web server to the group that's automatically assigned to your FTP files. If the web server isn't in the group that has write access to your files, then you have to give everyone write access to your files -- that's not good.

So, we are going to add the web server to the group that is automatically assigned to files that you, as an FTP user, create or modify. These instructions refer to a web server running Plesk, because that's what we use, so the specifics of your LAMP server may be different -- mostly the path names will be different, although this is true between different versions of Plesk, too. So, check your paths and make sure you understand what you are doing.

Here's how to do it:
  • Set up the FTP server so the default file permissions are 770, using the umask setting
  • Add the web server, apache, to the default group assigned to your files
  • Change the permissions of the existing files.
On our servers, we change the umask in ‘/etc/proftpd.conf’ to ‘007′ in order to set the default file permissions for files created in FTP to 770. For details, you can Google umask.

Logged in as root, enter this command to edit the FTP server configuration file:

nano /etc/proftpd.conf

Make the required change and then save the file. Hint: make a backup first!

Add the Web Server to the Default FTP Group

This is really the critcial step, which allows Joomla access to your files via the permissions that are granted to the web server (in this case, Apache). To proceed, you need to know:
  • Which user account is assigned to the web server?
  • Which group account does Plesk use to manage your site?
To determine the user account for the web server, enter this command at the bash prompt:
ps aux | grep httpd
To determine the default group Plesk assigns to files, log in via ssh or FTP to view your Joomla files and check the group name (I use "ls -lha" at the command line).

On our Plesk servers, the web server is "apache" and the default group is "psacln". So, we need to add the ‘apache’ user to the ‘psacln’ group. Once again, logged in as root, enter this command:
usermod -G psacln apache
You should also use the same command to add the psaftp and psaadm users to the psacln group. You can also edit the /etc/groups file directly to the same effect.

Change the permissions of the existing files

Now, we just need to ensure that all of the existing files are set up correctly. Here's how we do it:
cd /var/www/vhosts/[domain.com]
chown -R [username]:psacln httpdocs
chmod 770 httpdocs
find httpdocs -type d -exec chmod 770 {} \;
find httpdocs -type d -exec chmod g+s {} \;
find httpdocs -type f -exec chmod 640 {} \;
The find command is extra sweet: it finds all the directories or files in the "httpdocs" directory, and then runs the required "chmod" command on each one. The chmod command "g+s" sets the "set groupid" for all the directories so that, for FTP uploads,:
all new files will be owned by the group of the parent directory instead of the current shell.

When you are done updating the permissions, you should probably restart Apache to ensure it re-reads the updated file permissions. From the command line:
apachectl -k graceful
Testing

You can see if your permissions are set correctly using several tests:
  • On the UNIX command line, via ssh: cd to the directory that contains your Joomla installation, and then enter: ls -lha to check the current permissions for all of the files. If you've followed the steps above, the file permissions should appear like this: -rwxrwx---
  • Use your favorite FTP program to log onto the site, and then check file permissions. Both the user and the group should have full permissions, and everyone should have no permissions.
  • Log into the Joomla 1.5 administrator interface, and select Help > System Info > Directory Permissions -- everything should appear as "writeable."
Joomla Component Installations and File Uploads

Sadly, all of the work above still does not lead to a fully workable Joomla installation! In addition, I had to install the PHP mod_suphp module on the server. As root:
yum install mod_suphp
I then configured this module according to the suggestions in HOW-TO Setup a PLESK Dedicated Server.

Note that turning Safe Mode on or off does not have any effect on Joomla 1.5 security, unlike version 1.0, where the file permission issue was fixed by turning Safe Mode off. Now, in Joomla 1.5, file access is controlled entirely by FTP and file permission settings on the web server.

See Also