≡ Menu

Gentoo Linux

GIMP version 2.6 has been released and available for download. It is a free raster graphics editor used to manipulate digital graphics and photographs under Linux and other operating systems. It is often used as a free software replacement for Adobe Photoshop, the most widely used bitmap editor.

What's new in GIMP v2.6

Major revisions in interface and tools were made available with the 2.6.0 release in 2008. There is a bigger changes in UI, free select tool and brush tools. Lesser changes in code and partial, tool level, provide higher color depths and even non-destructive editing. See Gimp release note for more information.

Fig.01: GIMP 2.6 running on Linux (credit GIMP project)

Fig.01: GIMP 2.6 running on Linux (credit GIMP project)

Download Gimp 2.6 for Windows, Linux and Mac OS X

There are three ways to open any file under Gnome Linux / UNIX Desktop. gnome-open is the quickest and easiest way to open any file or url. Let us see how to open a pdf file quickly.

Open a File Using Application itself (time consuming)

Click on Application > Select App > File > Open > Select File

Open a File Using Run Application Dialog box

The Run Application dialog gives you access to the command line.
Hit Alt+F2 > Type file name > Enter

Fig.01: Run File / Command Dialog box

Please note that when you run a command in the Run Application dialog, you cannot receive output from the command.

Open a File Using The Command Line

gnome-open will open file using your preferred application. To open a pdf file, enter:
gnome-open file.pdf

Other common usage

Write email:
gnome-open 'mailto:user@example.com'
Open example.com website:
gnome-open example.com
Play mp3s:
gnome-open *.mp3
Open file browser in current directory:
gnome-open .
gnome-open /share/docs/

Put the following alias to speed up operation:
echo 'alias o="gnome-open $@"' >>~/.bashrc
$ o /path/to/file.pdf
$ o theos.in

How do configure preferred application?

Use the Preferred Applications preference tool to specify the applications that
you want the GNOME Desktop to use when the GNOME Desktop starts an application
for you.

Simply click on System > Preferences > Preferred Application

Fig.02: Preferred Applications

Fig.02: Preferred Applications

You can customize the preferences for the Preferred Applications preference tool in the following functional areas.

  1. Web Browser
  2. Mail Reader
  3. Terminal

If you wanted to quickly edit PHP, Java, C etc, Geany IDE is perfect. It is a small and lightweight integrated development environment. It was developed to provide a small and fast IDE, which has only a few dependencies from other packages. Geany is known to run under Linux, FreeBSD, NetBSD, MacOS X, AIX v5.3, Solaris Express and Windows.

Basic features of Geany
=> syntax highlighting
=> code folding
=> code completion
=> auto completion of often used constructs like if, for and while
=> auto completion of XML and HTML tags
=> call tips
=> many supported filetypes like C, Java, PHP, HTML, Python, Perl, Pascal and many other
=> symbol lists
=> build support (to compile, link, run programs)
=> plugin interface (C, Lua)

TrueCrypt version 6.0 has been released and available for download. It is free open-source disk encryption software for Windows Vista/XP, Mac OS X, and Linux system. A perfect software for laptop or desktop system which allows data be to be protected even when the OS is not active, for example, if data is read directly from the hardware.

Version 6.0x offers parallelized encryption/decryption on multi-core processors (multi-processor systems). Increase in encryption/decryption speed is directly proportional to the number of cores and/or processors. Ability to create and run an encrypted hidden operating system whose existence is impossible to prove. Ability to create hidden volumes under Mac OS X and Linux.

(Fig. 01: TrueCrypt in action [image credit TrueCrypt project])

Download TrueCrypt Open Source Edition

Linux can be configured to log dmesg output to another system via network using syslog. It is done using kernel level networking stuff ia UDP port 514. There is module called netconsole which logs kernel printk messages over udp allowing debugging of problem where disk logging fails and serial consoles are impractical. Most modern distro has this netconsole as a built-in module. netconsole initializes immediately after NIC cards. There are two steps to configure netconsole:

  • Syslogd server - Let us assume IP having FQDN - syslogd.nixcraft.in. Please note that the remote host can run either 'netcat -u -l -p <port>' or syslogd.
  • All other systems running netconsole module in kernel

Step # 1: Configure Centralized syslogd

Login to syslogd.nixcraft.in server. Open syslogd configuration file. Different UNIX / Linux variant have different configuration files

Red Hat / CentOS / Fedora Linux Configuration

If you are using Red Hat / CentOS / Fedora Linux open /etc/sysconfig/syslog file and set SYSLOGD_OPTIONS option for udp logging.
# vi /etc/sysconfig/syslog
Configure syslogd option as follows:
SYSLOGD_OPTIONS="-m 0 -r -x"
Save and close the file. Restart syslogd, enter:
# service syslog restart

Debian / Ubuntu Linux Configuration

If you are using Debian / Ubuntu Linux open file /etc/default/syslogd set SYSLOGD option for udp logging.
# vi /etc/default/syslogd
Configure syslogd option as follows:
# /etc/init.d/sysklogd restart

FreeBSD configuration

If you are using FreeBSD open /etc/rc.conf and set syslogd_flags option option for udp logging. Please note that FreeBSD by default accepts network connections. Please refer to syslogd man page for more information.

Firewall configuration

You may need to open UDP port 514 to allow network login. Sample iptables rules to open UDP port 514:
iptables -A INPUT -p udp -s $MYNET --sport 1024:65535 -d $SLSERVER --dport 514 -m state --state NEW,ESTABLISHED -j ACCEPT
iptables -A OUTPUT -p udp -s $SLSERVER --sport 514 -d $MYNET --dport 1024:65535 -m state --state ESTABLISHED -j ACCEPT

Step # 2: Configure Linux Netconsole

You need to configure netconsole service. Once this service started, you are allowed a remote syslog daemon to record console output from local system. The local port number that the netconsole module will use 6666 (default). You need to set the IP address of the remote syslog server to send messages.

Open /etc/sysconfig/netconsole file under CentOS / RHEL / Fedora Linux, enter:
# vi /etc/sysconfig/netconsole
Set SYSLOGADDR to (IP address of remote syslog server)
Save and close the file. Restart netconsole service, enter:
# /etc/init.d/netconsole restart

A note about Debian / Ubuntu Linux

Red Hat has netconsole init script. However, under Debian / Ubuntu Linux, you need to manually configure netconsole. Type the following command to start netconsole by loading kernel netconsole module, enter:
# modprobe netconsole 6666@,514@

  • 6666 - Local port
  • - Local system IP
  • eth0 - Local system interface
  • 514 - Remote syslogd udp port
  • - Remote syslogd IP
  • 00:19:D1:2A:BA:A8 - Remote syslogd Mac

You can add above modprobe line to /etc/rc.local to load module automatically. Another recommend option is create /etc/modprobe.d/netconsole file and append following text:
# echo 'options netconsole netconsole=6666@,514@ '> /etc/modprobe.d/netconsole

How do I verify netconsole is logging messages over UDP network?

Login to remote syslog udp server (i.e. our sample syslogd system), enter:
# tail -f /var/log/messages
/var/log/messages is default log file under many distributions to log messages. Refer to /etc/syslog.conf for exact location of your file.

How do I use nc / netcat instead of messing with syslogd?

This is called one minute configuration. You can easily get output on without using syslogd. All you have to do is run netcat (nc) command, on
$ nc -l -p 30000 -u
Login to any other box, enter command:
# modprobe netconsole 6666@,30000@
Output should start to appear on from without configuring syslogd or anything else.

Further readings:

Get Information about All Running Services Remotely

From my mailbag the other day I received an interesting suggestion about obtaining information regarding all running process and network connections remotely using inetd / xinetd :

SSH client can be used to execute a command(s) on a remote UNIX box. Same technique can be used to get current network and system information using netstat information:
ssh you@remotebox netstat -a
ssh you@remotebox netstat -tulpn

He suggests that above command can be run via inetd / xinetd so that admin can connect easily and get information using telnet from 100s UNIX boxes. All you have to do is open /etc/inetd.conf under UNIX / Linux:
# vi /etc/inetd.conf
Append following line:
netstat stream tcp nowait root /bin/netstat netstat -a
Restart inetd:
# /etc/init.d/openbsd-inetd restart
Next, use telnet to connect to the netstat service (port 15) and get network connection information:
$ telnet server-name netstat
$ telnet 15


Connected to
Escape character is '^]'.
Active Internet connections (servers and established)
Proto Recv-Q Send-Q Local Address           Foreign Address         State
tcp        0      0 *:6881                  *:*                     LISTEN
tcp        0      0 *:6081                  *:*                     LISTEN
tcp        0      0 *:nfs                   *:*                     LISTEN
tcp        0      0 localhost:6082          *:*                     LISTEN
tcp        0      0 *:54053                 *:*                     LISTEN
tcp        0      0 *:59275                 *:*                     LISTEN
tcp        0      0 *:netstat               *:*                     LISTEN
tcp        0      0 *:sunrpc                *:*                     LISTEN
tcp        0      0 localhost:webcache      *:*                     LISTEN
tcp        0      0 *:43218                 *:*                     LISTEN
tcp        0      0 *:domain                *:*                     LISTEN
tcp        0      0 localhost:ipp           *:*                     LISTEN
tcp        0      0 *:telnet                *:*                     LISTEN
tcp        0      0 *:3128                  *:*                     LISTEN
tcp        0      0 localhost:smtp          *:*                     LISTEN
tcp        0      1 vivek-desktop.loc:48925 bas4-kitchener06-:56662 SYN_SENT
tcp        0      0 vivek-desktop.loc:54791 customer5673.pool:16273 ESTABLISHED
tcp        0      0 vivek-desktop.loc:38398 59.94.1xx.yy:45483      ESTABLISHED
tcp        0      0 vivek-desktop.loc:42048 60.21.zz.yyy:23235       ESTABLISHED
unix  3      [ ]         STREAM     CONNECTED     15973
unix  3      [ ]         STREAM     CONNECTED     15947    /var/run/dbus/system_bus_socket
unix  3      [ ]         STREAM     CONNECTED     15946
unix  3      [ ]         STREAM     CONNECTED     15936    /var/run/dbus/system_bus_socket
unix  3      [ ]         STREAM     CONNECTED     15935
unix  2      [ ]         DGRAM                    15931
unix  3      [ ]         STREAM     CONNECTED     15916
unix  3      [ ]         STREAM     CONNECTED     15915
unix  2      [ ]         DGRAM                    15906
Connection closed by foreign host.

There are few problems with this solution:
a] Unnecessary service running at port # 15

b] Telnet protocol is not secure

c] I strongly recommend using ssh and password-less login for scripts to obtain this kind of information:
ssh user@remote-box netstat -a
ssh user@remote-box df -H
ssh user@remote-box free -m
ssh user@remote-box /path/to/script.pl


A long time ago I wrote about Linux command line bittorrent client. Recently I switched from command line client to a GUI based client called Deluge.

Deluge is a lightweight, open source free software and cross-platform BitTorrent client (bt client). A Bittorrent client written in Python/PyGTK which offers following benefits:

[a] Full Encryption - To avoid ISP's bandwidth throttling system (note encryption is not here to protect you from other users)

[b] Plugin System - Just like Firefox it has features rich plugin collection; in fact, most of Deluge's functionality is available in the form of plugins.

[c] In built RSS support to grab latest and greatest stuff.

[d] Global and per bittorrent bandwidth control.

[e] Support for selective file downloading - For example, it allows to grab a single file from 100 of files

[f] Ability to create torrent with Torrent Creator plugin

[g] Proxy support

[h] Network activity graph

[i] Network Health Monitor

[j] And much more

Quick Deluge Installation

Use apt-get command,
$ sudo apt-get install deluge-torrent
You can start Deluge by visiting Application > Internet > Deluge Bittorrent Client
Linux / MAC / WIndows / UNIX - Deluge Bittorrent client written in Python/PyGTK
(Fig. 01: Deluge Bittorent Client in Action)

Change port settings

The official ports for BitTorrent are 6881-6889, but most ISPs block or at least throttle those ports, so I recommend to use a port range of something between 50000 and 65535 or any other random range. You can change port range from Preference > Select Network tab > Setup new range > Close
Change port settings
(Fig. 02: Change Port Settings [ Image Credit Official Project])

Download Deluge Bittorrent Client

=> Visit Official Deluge Bittorrent Client project web site to grab latest version.