Deleting a file that has been opened by another process in linux does not free up disk space. Running the df or du commands will indicate conflicting results. Closing / killing the process that opened the files will release the space on the disk. The lsof command can help you track, say the top ten open files in your OS sorted by disk space. If you ever run into trouble with large open files, use the following command
Top ten open files:
lsof / | awk ‘{if($7 > 1048576) print $7/1048576 “MB” ” ” $9 }’ | sort -n -u | tail
Output:
3.8054MB /usr/lib/libgtk-x11-2.0.so.0.2200.0
4.28024MB /usr/share/icons/hicolor/icon-theme.cache
8.17912MB /usr/lib/locale/locale-archive
8.86022MB /var/lib/apt/lists/lk.archive.ubuntu.com_ubuntu_dists_maverick_main_binary-i386_Packages
11.4047MB /usr/lib/flashplugin-installer/libflashplayer.so
14.6893MB /usr/lib/firefox-3.6.10/libxul.so
15.6504MB /var/cache/apt/pkgcache.bin
27.4744MB /var/lib/apt/lists/lk.archive.ubuntu.com_ubuntu_dists_maverick_universe_binary-i386_Packages
34.6615MB /usr/share/icons/gnome/icon-theme.cache
44.1719MB /home/user/.mozilla/firefox/tnrqzpro.default/urlclassifier3.sqlite
You can also lookup open files based on pid / port number. I hope the script saves you some time, should you ever find yourself in this situation.
One of the things I hear often from someone wanting to try linux and leave windows is that they are afraid that they will no longer be able perform some of the things they used to do. That is so wrong. Be it from the perspective of a developer or a casual user linux offers a wide range of apps to suit your needs. Here is a table of things I used to do in windows that I can still do in linux
| Application |
Windows |
Suse Linux – KDE desktop |
| Chat |
Gtalk, Skype |
Kopete / pidgin for gtalk
Skype is supported |
| Development |
Eclipse / myeclipse / Netbeans |
All of them have linux flavours |
| Screenshot |
Gadwin printscreen |
Ksnapshot |
| Browsing |
Chrome / Firefox / Opera |
They are all supported. Chrome support is getting better |
| SQL Client |
Squirrel SQL |
Supported. Java runs anywhere |

I use remote linux services often and exposing them as local services can be performed securely using SSH. For example you can access a tomcat server or email server hosted at IP 1.2.3.4 by opening a secure SSH tunnel between your local machine and the target address – 1.2.3.4.
The OpenSSH tool can be used to perform SSH related activities on your machine. Simply install it with yum, apt-get or Yast, if it is not already available. Once you have it use the following command to open multiple SSH tunnels to your services
Open tunnel and execute commands:
ssh 1.2.3.4 -lmyUser -L 3098:1.2.3.4:21 -L 3099:1.2.3.4:80 -L 3100:1.2.3.4:443
The command is explained below
1.2.3.4 – Your target IP
l – The user to login as
L – A local tunnel to a remote port
3098 – The local port to use when establishing this tunnel

I have been wanting to move to a linux based environment for java development for quite a while now. Many PROD servers I deploy to run on a linux distro. So testing configuration / code changes becomes easier when you have multiple DEV environments. I deploy to CentOS among other linux flavors. I have settled on the OpenĀ Suse 11.2 desktop. Here are some things I liked
- Open Suse managed to detect my Nvidia driver with Yast. I guess they teamed up with Nvidia to host a repository for linux drivers. I didnt have to download kernel sources or devels to enable dual monitor support (Which is otherwise required). Nice !
- PPP over internet setup was pretty easy. Kinternet and the Yast configuration settings together let me connect to the net with ease.
- Community support seems good. The Suse forums are alive and kicking.