Saturday, July 17, 2010

8 More Linux Distributions for Web Server

8 More Linux Distributions for Web Server: I've already shared with you a list of some of the best and most well-known Linux distributions used on web servers.

However, there are still plenty of excellent server-oriented Linux distros that I failed to mention there.

So I think it is important to make a follow up post and bring you another round of Linux distributions for web server.

Based on CentOS, ClearOS is a network and gateway server especially made for small businesses and distributed environments. It offers a comprehensive list of integrated services that are easy to configure through its intuitive and user-friendly web-based interface. ClearOS also features several essential tools and modules that include antispam, antivirus, content filtering, VPN, bandwidth manager, SSL certification, web log analyzer, etc. The distribution is available as a free download including free security updates for 18 months.

EnGarde Secure Linux
EnGarde Secure Linux is a server-oriented distribution that offers services like web, DNS, and the ability to email simply and securely without the need for laborious 'hardening' done by the user. It also provides integrated intrusion detection, advanced kernel and network security features, and graphical auditing and reporting, which can all be controlled through its simplified browser-based management system called Guardian Digital WebTool.

Openwall GNU/*/Linux
Openwall GNU/*/Linux, 'Owl' for short, is a security-enhanced operating system with Linux and GNU software as its core and is intended for use as server platform. Its patches and security extensions have been included into many major Linux distributions. Openwall GNU/*/Linux pulls source code and design concepts from several sources including parts of the GNU userland and OpenBSD for its OpenSSH suite and the inspiration behind its own blowfish-based crypt for password hashing.

SME Server
SME Server is a simple, powerful, and secure Linux server that is based on CentOS, which utilizes publicly available open source Red Hat Enterprise Linux sources. Joseph and Kim Morrison created it in January 1999. The company introduced the first version of its flagship software product, the e-smith server and gateway, in April 1999. It has since been used by thousands of individuals, companies and organizations all over the world.

StartCom Linux
Based on the Red Hat AS source code, StartCom Enterprise Linux is the optimum solution for middle-size servers to large data centers. Its latest version supports the largest commodity-architecture servers with up to 16 CPUs and 64GB (on x86 systems) of main memory, Global File System - for highly scalable, high performance data sharing in multi-system configurations. StartCom Linux offers a comprehensive collection of open source server applications like mail, file (SMB/NFS), DNS, web, FTP, and a complete desktop environment.

Turbolinux is made from the ground-up to cater to enterprise computing needs. Turbolinux 7 Server was the first-ever to conform to Internationalization standards to help simplify development of applications that need multiple language support. It also supports the Large File Support (LFS) standard for working with applications that control or manage up to four terabytes of data - a standard prerequisite for infrastructures serving Fortune 500 and larger companies. Such industrial-strength environments produce the fundamental point upon which PowerCockpit and other Turbolinux innovations were created.

Zeroshell is a small Linux distribution for servers and embedded devices. It has a main objective of providing network services in a simple and efficient way. You can get it in the form of live CD or compact Flash image, and it can be configured through a web browser. Some of the main features of Zeroshell include: load balancing and failover of multiple Internet connections, UMTS/HSDPA connections by using 3G modems, RADIUS server for providing secure authentication and automatic management of encryption keys to wireless networks, captive portal to support web login, and many more.

Superb Mini Server
Superb Mini Server (SMS) is a Slackware-based server distribution that can be managed through its web interface. Even though considered as a mini server, it has all the features of a powerful web server and contains packages such as apache2, sendmail, postfix, spamassassin, clamav, squid, iptables, MailScanner, mysql, cups and a whole lot more. SMS also has a full-featured php based bit torrent client that can be managed and accessed from anywhere.

Monday, July 12, 2010

New Linux OS REMnux Designed For Reverse Engineering Malware

A security expert has released a stripped-down Ubuntu distribution designed specifically for reverse-engineering malware.

The OS, called REMnux, includes a slew of popular malware-analysis, network monitoring and memory forensics tools the comprise a very powerful environment for taking apart malicious code.

Many security professionals who find themselves needing to analyze a specific piece of malware end up in a difficult situation.

The classic approach to analyzing malware is to set up a virtual machine on a PC specifically designed for that purpose and then let the malware loose and see what it does.

But that usually only shows you part of the picture; much of the malware's behavior can remain hidden without the ability to do some deeper analysis.

And that's exactly what REMnux is designed to do. The OS is a lightweight version of Ubuntu that is distributed as a VMware virtual machine. It can be booted via several VMware products, or through X-Windows.

Recommended Reads
REMnux is the creation of Lenny Zeltser, an expert on malware reverse engineering who teaches a popular course on the topic at SANS conferences.

He said that he put the operating system together after years of having students ask him which tools to use and what works best.

He originally used Red Hat Linux but recently decided that Ubuntu was a better fit.

The OS includes a virtual treasue chest of reverse-engineering and malware-analysis tools. REMNux has three separate tools for analyzinf Flash-specific malware, including SWFtools, Flasm and Flare, as well as several applications for analyzing malicious PDFs, including Didier Stevens' analysis tools.

REMNux also has a number of tools for de-obfuscating JavaScript, including Rhino debugger, a version of Firefox with NoScript, JavaScript Deobfuscator and Firebug installed, and Windows Script Decoder.

Zeltser said that he wasn't trying to make REMNux the be-all and end-all reverse-engineering environment, but a useful collection of tools for people looking to get into the field.

"This doesn't have every tool in it, because I think people can get distracted with too many tools in there," Zeltser said. "It's good for people getting started who may not be Linux experts. My hope is that people will look at it and help improve it."

In addition to the JavaScript and Adobe analysis tools, Zeltser also included a small Web server, and IRC server and a pseudo-DNS server.

He also included Honeyd, the virtual honeypot server. There also is a customized shellcode analyzer that will take malicious shellcode, create a Windows executable from it and then run it so you can observe its behavior.

"The goal is for people to get into this and see how things work and start understanding the way that malware works," Zeltser said.

Friday, July 9, 2010

25+ IT Job Sites and a Winning Formula

Yes, the IT job market is tough these days.

It’s a far cry from the late nineties, when just showing up with a pulse earned you a signing bonus. I’m told by top IT employment specialists that these days even highly qualified tech professionals can’t always find positions, at least not easily.

Employers know they can afford to be picky. Their desks are stacked high with resumes – many from skilled and experienced IT staffers.

So IT job hunters need to pursue every available avenue. The best, of course, is person-to-person networking.

Working the phone, pressing the flesh at trade meetings, touching base with old colleagues.

IT job sites are another invaluable resource. Yet it’s not enough to simply troll through them and hope. It's best to choose specific sites and set up automatic notifications -- to jump on an opening the moment it comes out.

But what IT job sites to choose? For this you need a formula for maximum advantage. One such formula: 2 general-mega sites + 3 niche sites. (Thanks for this formula goes to Peter Weddle, editor of the well-respected Guide to Employment Web Sites.)

For the mega-general picks, choose among the deep portals like Yahoo Tech Jobs, IT Jobs and Indeed’s Computer/Internet Jobs, an IT job aggregator.

For the niche sites, pick a couple of ultra-focused listings like PHP Jobs or JobsInLogistics.

Okay, so what are some niche IT job sites worth considering? Explore the following list – or suggest your favorites in the Comments box below this article.

IT Job Sites
1) Dice
Considered by IT professionals to be one of the leading job boards. Naturally its listings have fallen since the boom years, yet it remains a top destination.

2) JustTechJobs
Targeted, even micro-targeted, this portal offers a plethora of sub sites like JustJavaJobs, JustSAPJobs, JustWebJobs and JustNetworkingJobs.

3) Graduating Engineer
Help, I just graduated! Hey, at least you didn’t get a degree in History. For fresh grads, it offers a list of starting salaries (churned out by, along with job interview tips.

4) USAJobs
The U.S. government’s job search portal includes plenty of IT jobs. Oddly, it’s possible that the government is one of the best employers in this protracted downturn.

5) DevBistro
Since 2003, offering listings for programmers and Web developers, along with fresh openings for SEO, software architect, Q/A testing and others.

6) IT Manager Jobs
Hosted by, IT Manager Jobs ranges from help desk manager to network operations manager. And yes, the managers tend to earn the most (and deal with the most headaches!)

7) Craigslist: Search by City or State
Actually one of the mega-sites, but you can use it as a narrow-caster by drilling down by city or state. A ton of employers use it, though some employers complain that they get scores of not-so-hot applicants from this vast site. Yet it continues to be used by IT job seekers.

8) 37Signals Job Board
Provides IT job listings from plenty of other sites -- programming and design jobs and many other tech jobs, from project manager to digital user analyst.

Java is hot. Here you’ll find a full boat of jobs requiring skill in this popular programming language. JavJava DB, Java Studio, Java ME…

10) PHP-Freelancers
The freelance market can be brutal. Check out the fees that pros are getting for contract-based PHP coding. Are you scoring the best rate?

11) Google Job Search
Great resource. Not an IT job site but a directory of job sites where you can filter the jobs by category. Plus this page offers lists of headhunters and resume advice services.

12) iCrunchData
Kind of like a LinkedIn for IT professionals. Post your photo and resume, scan the jobs, interact with your fellow tech staffers. Social networking meets IT job hunting.

13) IT Jobs at CW Jobs
This UK-based site offers nearly 10,000 IT jobs, from hundreds of firms, with a lot of contract gigs.

14) The Ladders: Technology Jobs
Yes, IT pays well, as long as you can stay employed. Ladders lists IT (and also non-IT) jobs that pay $100k or more a year. Encouraging fact: after management jobs, the largest category at the site is technology jobs.

15)Jobs for Programmers
Visual Basic, Java, C++, .NET – jobs for all these specialties. Plus, explore the sister site, Programming from Home. What, no “programming in your pajamas” site?

16) ComputerJobs
Been around a long time, and one year this site even won a “Weddle” award for User’s Choice. Owned by, which also owns ComputerWork.

17) PHP Jobs
Like all popular programming languages, PHP is international, so these listings span the country and the globe.

18) Vault: Technology Jobs No, not an IT job site, but a source of information about your potential IT employer. Vault offers reams of information on companies and educational programs.

19) IEEE Job Site
As the times have changed, IEEE (Institute of Electrical and Electronic Engineers) has expanded its purview far beyond electric engineers, hence the IT jobs on this site.

20) oDesk
Popular among programmers and tech support staff from developing countries, oDesk focuses on freelance tech work.

21) Information Technology Crossing
You have to pay to join. The site claims that charging users instead of employers (the usual method) enables them to list more IT job openings.

22) JobsInLogistics
Don’t be discouraged by the Logistics label: Take a look at this site’s Systems/ IT section. And remember that companies involved with logistics are some of the largest IT employers.

23) Net Temps: Info Tech
Yes, you want a full-time gig, but in the meantime you can pick up some contract work. Some companies hire contract workers part-time as an audition for a full-time gig.

24) RoadTechs: Computer and Telecom
Have skills, will travel. Focusing on short term (or “indefinite term”) jobs, RoadTechs bills itself as “the interactive site for the traveling contractor.”

25) TheITJobBoard
Both temp and full-time IT jobs, emphasizing the UK and European market. On a recent visit it claimed some 26,000 jobs.

26) ExecutivesOnTheWeb

27) Job Fox

28) Career Jet is a job search engine for the United Arab Emirates. In one simple search, Careerjet gives job seekers access to a huge selection of jobs that are sourced from various internet sites, saving the trouble of having to visit each site individually.

Also have a look at this too:

Ubuntu Linux Set Iscsi Initiator

ISCSI is a network protocol standard that allows the use of the SCSI protocol over TCP/IP networks. How do I setup Iscsi Initiator under Ubuntu Linux? How do I format and connect to an iSCSI volume under Ubuntu Linux? How do I store VMware or Virtualbox virtual machine images using iscsi storage?

You need to install the following packages under Ubuntu Linux:
  • open-iscsi - Main package for setting up an iSCSI volume.
  • open-iscsi-utils - iSCSI initiatior administrative utility.

Install Required Software

Type the following command:
$ sudo apt-get update
$ sudo apt-get install open-iscsi open-iscsi-utils

Open-iSCSI Configuration

The default configuration directory located at /etc/iscsi/ and configuration file is /etc/iscsi/iscsid.conf:

Our Sample Setup

  1. iSCSI server IP:
  2. iSCSI Username: vivek
  3. iSCSI password: yHni3Oq9wYzamS

Setup iScsi Username And Password

Edit /etc/iscsi/iscsid.conf, enter:
$ sudo vi /etc/iscsi/iscsid.conf
Uncomment as set it as follows:
node.session.auth.username = vivek
node.session.auth.password = yHni3Oq9wYzamS
discovery.sendtargets.auth.username = vivek
discovery.sendtargets.auth.password = yHni3Oq9wYzamS
Save and close the file. Start / restart service, enter:
$ sudo service open-iscsi restart

Running Discovery

To run a discovery against the iscsi target host, enter:
$ sudo iscsiadm -m discovery -t sendtargets -p
Sample outputs:,1
Note down the above output and use it as follows:
$ sudo iscsiadm --mode node --targetname --portal --login
Sample outputs:
Logging in to [iface: default, target:, portal:,3260]
Login to [iface: default, target:, portal:,3260]: successful
You can see the following in your /var/log/messages (note down disk name):
$ tail -f /var/log/messages
Sample outputs:
Jul  2 12:54:04 vivek-laptop kernel: [ 4418.610787] scsi6 : iSCSI Initiator over TCP/IP
Jul  2 12:54:05 vivek-laptop kernel: [ 4419.649208] scsi 6:0:0:0: Direct-Access     QNAP     iSCSI Storage    3.1  PQ: 0 ANSI: 5
Jul  2 12:54:05 vivek-laptop kernel: [ 4419.649670] sd 6:0:0:0: Attached scsi generic sg3 type 0
Jul  2 12:54:05 vivek-laptop kernel: [ 4419.650531] sd 6:0:0:0: [sdc] 41943040 512-byte logical blocks: (21.4 GB/20.0 GiB)
Jul  2 12:54:05 vivek-laptop kernel: [ 4419.651889] sd 6:0:0:0: [sdc] Write Protect is off
Jul  2 12:54:05 vivek-laptop kernel: [ 4419.652643] sd 6:0:0:0: [sdc] Write cache: disabled, read cache: enabled, doesn't support DPO or FUA
Jul  2 12:54:05 vivek-laptop kernel: [ 4419.654620]  sdc: unknown partition table
Jul  2 12:54:05 vivek-laptop kernel: [ 4419.692364] sd 6:0:0:0: [sdc] Attached SCSI disk
/dev/sdc is new block level device.

How Do I Format /dev/sdc?

Use the fdisk command
$ sudo fdisk /dev/sdc
Sample session:
Device contains neither a valid DOS partition table, nor Sun, SGI or OSF disklabel
Building a new DOS disklabel with disk identifier 0xe7b08c12.
Changes will remain in memory only, until you decide to write them.
After that, of course, the previous content won't be recoverable.

Warning: invalid flag 0x0000 of partition table 4 will be corrected by w(rite)

WARNING: DOS-compatible mode is deprecated. It's strongly recommended to
         switch off the mode (command 'c') and change display units to
         sectors (command 'u').

Command (m for help): p

Disk /dev/sdc: 21.5 GB, 21474836480 bytes
64 heads, 32 sectors/track, 20480 cylinders
Units = cylinders of 2048 * 512 = 1048576 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0xe7b08c12

   Device Boot      Start         End      Blocks   Id  System

Command (m for help): n
Command action
   e   extended
   p   primary partition (1-4)
Partition number (1-4): 1
First cylinder (1-20480, default 1): Press [Enter] Key
Using default value 1
Last cylinder, +cylinders or +size{K,M,G} (1-20480, default 20480): Press [Enter] Key
Using default value 20480

Command (m for help): w
The partition table has been altered!

Calling ioctl() to re-read partition table.
Syncing disks.

Format As ext3 Filesystem

Type the following command:
$ sudo mkfs.ext3 /dev/sdc1

Format As ext4 Filesystem

Type the following command:
$ sudo mkfs.ext4 /dev/sdc1
Sample outputs:
mke2fs 1.41.11 (14-Mar-2010)
Filesystem label=
OS type: Linux
Block size=4096 (log=2)
Fragment size=4096 (log=2)
Stride=0 blocks, Stripe width=0 blocks
1310720 inodes, 5242876 blocks
262143 blocks (5.00%) reserved for the super user
First data block=0
Maximum filesystem blocks=0
160 block groups
32768 blocks per group, 32768 fragments per group
8192 inodes per group
Superblock backups stored on blocks:
 32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632, 2654208,

Writing inode tables: done
Creating journal (32768 blocks): done
Writing superblocks and filesystem accounting information: done

This filesystem will be automatically checked every 23 mounts or
180 days, whichever comes first.  Use tune2fs -c or -i to override.

Mount /dev/sdc1

Create a mount point:
$ sudo mkdir /data
$ sudo mount /dev/sdc1 /data
$ df -H

Find Out Your Disk I/O Speed

A quick way is to run dd command as follows:
$ cd /data
$ dd if=/dev/zero of=output.img bs=8k count=256k

Sample outputs:
262144+0 records in
262144+0 records out
2147483648 bytes (2.1 GB) copied, 25.57 s, 84.0 MB/s
84.0 MB/s is speed which is not bad for SOHO iscsi server.

Store VM using Vmware

You can now use new storage to store data or virtual machines. Just create a new VM and setup Location to /data/VMName:

Fig.01: VMware Iscsi Storage
Fig.01: VMware Iscsi Storage

The above is VMWare workstation 7.x vm setup. The VMWare ESX server offers data store option.

PHP, FCGID and Apache - a confusion of upload related limits

There is a number of web hosting situations where PHP applications appear to misbehave during large upload operations. This may happen, for example, when dealing with attachments via webmail clients like roundcube or during the upload of files to document management applications.

Things get more difficult if we are talking about shared hosting on an apache + mod_fcgid + php environment, as there are several different parameters to be tuned in order for large uploads to work.

As far as we could see, there's a lot of people hitting different limits in their applications and looking for solutions, but no handy summary of where to make the necessary changes.

Architecture recap

Traditionally the PHP interpreter ran inside the apache process. Apache would load the PHP library ( and use it to parse the PHP based pages. Using a wrapper for the execution of PHP opens new possibilities. This is how the mod_fcgid developers see their approach to the problem:

mod_fcgid is a high performance alternative to mod_cgi or mod_cgid, which starts a sufficient number instances of the CGI program to handle concurrent requests, and these programs remain running to handle further incoming requests. It is favored by the PHP developers, for example, as a preferred alternative to running mod_php in-process, delivering very similar performance.

Not going into lengthy performance discussions (performance is cheap these days) we see see security as the main reason for adopting a mod_fcgi based architecture. In fact, it can be combined with SuExec to have each apache virtual host executing PHP with a different user. This is truly a life saver in terms of preventing damage and analyzing evidence from hacking attempts.

A detailed howto can be found here. A very nice tool for web hosting that integrates Apache, PHP and SuExec on RHEL/CentOS can be found here.

Time related parameters

The following PHP variables are involved:

max_execution_time - This sets the maximum CPU time in seconds a script is allowed to run

max_input_time - This sets the maximum time in seconds a script is allowed to parse input data, like POST, GET and file uploads

These variables can be tuned on the vhost specific php.ini file, eg


The exact path to each php.ini depends on your system.

The following Apache and mod_fcgid variables are also involved and should be appropriately set in the vhost directive in httpd.conf:

Timeout - Apache variable that is used for several different things, including "the length of time to wait for output from a CGI script". This defaults do 300 seconds and is used at apache level regardless of how PHP or other scripts are configured.

IPCCommTimeout / FcgidIOTimeout - This is specific to mod_fcgid and does NOT override any other settings. The default is 40 seconds

Note: FcgidIOTimeout replaces the initial IPCCommTimeout for the same purpose. See here.

Thus, if, from the client upstream bandwidth and the file sizes to support, the expected upload time is up to 10 minutes, you should set on php.ini

max_input_time = 600

and on the corresponding vhost on httpd.conf

IPCCommTimeout 600
Timeout 600
For example, if the client wants to upload 50MB over an ADSL line with an announced upstream rate of 1Mbps, the upload time in ideal conditions would be:

t = ( 50 * 1024 * 1024 * 8 ) / (1 * 1000 * 1000 * 0.8 ) ~ 524.29 s

In the previous formula 0.8 roughly accounts for the ADSL overhead and it is assumed that traffic on the ADSL "neighborhood" is low enough not to interfere with this file transfer.

As for max_execution_time it is harder to estimate as it's CPU time (ie, only counts when the process is actually running, not waiting for I/O) but you can start using the default which is 30. Depending on the total server load this may or may not have to be changed.

Size related parameters

The following PHP variables are involved:

upload_max_filesize - The maximum size of an uploaded file via PHP (uses HTTP upload)

post_max_size - Sets max size of post data allowed. This setting also affects file upload. To upload large files, this value must be larger than upload_max_filesize.

memory_limit - the memory limit for individual PHP scripts

Thus, to support files up to, say, 50M you should set something like:

post_max_size = 51M
upload_max_filesize = 50M

The memory_limit value is harder to estimate as it depends on what the script does with the file. For example for roundcube there was a popular bug regarding the amount of memory consumed by attachments (see here) but generally applications aren't so demanding.

The PHP documentation recomends memory_limit larger than post_max_size, so as a rule of thumb starting with 16 + post_max_size (16M is the default PHP value) should be enough. However, we think the documentation is wrong / outdated. To run things tight one can perfectly start with the default value of 16M and see if anything fails. Examining error_log will make clear if the script runs out of memory:

[warn] mod_fcgid: stderr: PHP Fatal error: Allowed memory size of 8388608 bytes exhausted (tried to allocate 4864 bytes)...

During our tests we realized that a simple file management web application could upload large files under the default PHP 16M memory_limit without any problems (tested on RHEL with php 5.1 - see similar comments here, here, and here).

Other parameters

The apache directive LimitRequestBody can also prevent large uploads. However, it defaults to 0 and is usually not present on httpd.cond, which means no limit is enforced by default.


Timeout (apache)
LimitRequestBody (apache)
FcgidIOTimeout (mod_fcgid)
PHP File Uploads

Ailurus - A Useful Ubuntu Tweak Alternative For Beginners

Ailurus is cross-Linux-distribution GPL software, which aims at making Linux easier to use for beginners.

Rather than a Ubuntu Tweak alternative, Ailurus is the kind of app you can use along Ubuntu Tweak. Ailurus is available for Ubuntu, Fedora and Mint while Ubuntu Tweak is a dedicated Ubuntu only application.

Ailurus Features
  • 'Study Linux' feature included in Ailurus is pretty good at teaching the Linux basics to beginners. You can even set it to display Linux tips each time you login to your system.
  • Install many useful applications easily.
  • Enable a number of third party repositories quite easily.
  • Display of basic hardware information which is so useful at times.
  • Clean APT/YUM cache.
  • Backup and recover APT/YUM status.
  • Change GNOME settings. Ailurus invokes GConf API, to change GNOME settings.
  • Easily enable Gnome Control Center using Ailurus.
How to install Latest Ailurus 10.06.93 in Ubuntu Lucid, Karmic?
  • Open Terminal(Applications - Accessories - Terminal) and copy-paste the following lines one by one into Terminal.
sudo add-apt-repository ppa:ailurus && sudo apt-get update
  • Done. Now install latest Ailurus in Ubuntu Lucid 10.04.
sudo apt-get install ailurus
  • Done. Launch Ailurus. Goto Applications - System Tools - Ailurus.
  • Ailurus for Fedora and other distros can be downloaded from here.

Monday, July 5, 2010

Restart Windows Services from Your Linux PC

Restart Windows Services from Your Linux PC

If you've ever wanted to remotely restart a service on your Windows PC from your Linux machine, the Command-Line fu web site has you covered with the quick and easy command to use.

In order to actually use this command, you'll need to make sure that you have the samba-common package installed for Ubuntu, or the corresponding package for your Linux distribution.

The simple

sudo apt-get install samba-common

command will do it for any Debian-based Linux.

Now you can list the services available on a Windows machine by using the following command, making sure to use credentials that have administrative privileges on the remote machine:
# net rpc service list -I IPADDRESS -U USERNAME%PASSWORD
Once you've identified the service name that you want to restart, you can issue separate stop and start commands.

To stop the service:
Then you can start the service again with the following command:
Readers should note that a number of factors may influence whether this technique actually works—if the machine has a desktop firewall installed or the file sharing services are disabled it probably won't work, but it's still a very helpful technique that might come in handy.

Sunday, July 4, 2010

Docky - Probably The Best Dock Application I have Ever Used in Ubuntu

Docky is an awesome dock application for Ubuntu/Linux. Docky started off as a simple theme for Gnome DO, another popular dock application, and later own became a dock application on its own. Docky is widely regarded as the most user friendly among the dock applications available in Linux.

Quick Docky Review
  •  Looks and feels so lightweight. 
  • Simple and intuitive. Perfect candidate for daily use.
  • The Docky tweak menu is perfect. Everything you want, nothing you don't. 
  • Docky tweak menu has a plethora of customization options. Options like Window Dodge and Intellihide and really useful and by far the best I have seen in any dock application.
  • As you can see, I have used the Window Dodge option and it works exactly the way you expect it to. 
How to Install Docky in Ubuntu 10.04 'Lucid Lynx', Ubuntu 9.10 'Karmic Koala'?
  • Latest version of Docky is available in Docky-Core PPA. 
  • Open Terminal(Applications - Accessories - Terminal) and copy-paste the following line into Terminal.
sudo add-apt-repository ppa:docky-core/ppa
  • Done. Now update repositories and install Docky in Ubuntu Lucid 10.04.
sudo apt-get update && sudo apt-get install docky
  • Done. 
  • Now goto Applications - Accessories - Docky to launch the application. You have a 'Start when computer starts' option right in the Docky toolbox so that you don't need to manually enter that in the startup sessions for Ubuntu. Enjoy the Docky experience and tell us how it feels.

Speed up Open Office!

Open Office is pretty slow and painful to use out of the box.  This simple step by step procedure speeds up the software, making it much more pleasant to use.

Open OOo (I use writer for this process). Select Tools -> Options. Select Memory.

Number Of Steps: 20
Use for 128
Memory Per Object: 20
Number Of Objects: 20
Enable Quickstarter: Checked

Select Java.
Use a JRE: Checked (Alternately, Uncheck if you do not have Sun Java installed)
Select the radio button of the appropriate Java Engine if needed.

Click OK
Close OOo