≡ Menu


Poll: Your Favorite Scripting Language?

Like most sys admin, I'm lazy. I try to automate almost all things in order to save time. Inexperienced sys admin and help desk staff working under me finds all these tools useful. It saves their time and avoids security issues. Automation allows help desk staff to do things that they don't have enough direct system knowledge to do themselves. However, selecting correct tool and applying correct methodology is very important.
[click to continue…]

Now, mod_fastcgi is configured and running. FastCGI supports connection via UNIX sockets or TCP/IP networking. This is useful to spread load among various backends. For example, php will be severed from and python / ruby on rails will be severed from This is only possible with mod_fastcgi.
[click to continue…]

Windows PowerShell vs UNIX BASH Shell

Shell scripting is fun. It is useful to create nice (perhaps ugly) things (read as solutions) in shell scripting. Now Windows got Powershell. But how does PowerShell measure up to traditional shells like Bash?

Linux Magazine's Marcus Nasarek compares Windows Vista PowerShell with Bash:

Both Bash and the Windows Vista PowerShell include commands for navigating directories, managing files, and launching other programs. System administration is an important duty for the shell, and Bash and PowerShell are equipped to help manage systems from the command prompt. Whereas Bash typically relies on a combination of newer tools and classic Unix utilities, the PowerShell has its own set of command-line programs. Windows refers to PowerShell commands as cmdlets. The PowerShell cmdlet called Get-Process is a counterpart to ps, and the cmdlet Get-Content corresponds to less. PowerShell differs significantly from previous Windows command shells.

Some time I need to work with on Windows Servers and I find this article interesting. However, I prefer to use Perl or Python for complicated stuff.

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)

Recently I started to play with scapy - a powerful interactive packet manipulation and custom packet generation program written using Python. Please note that this tool is not for a new Linux / UNIX users. This tool requires extensive knowledge of network protocols, packets, layers and other hardcore networking concepts. This tool is extermly useful for
a] Understanding network headers
b] Testing network security
c] Write your own utilities using scapy
d] Decoding protocols etc

From the man page:

You can use this tool to check the security of your own network as it allows to forge or decode packets of a wide number of protocols, send them on the wire, capture them, match requests and replies, and much more. It can easily handle most classical tasks like scanning, tracerouting, probing, unit tests, attacks or network discovery. It also performs very well at a lot of other specific tasks that most other tools can't handle, like sending invalid frames, injecting your own 802.11 frames, combining technics such as VLAN hopping+ARP cache poisoning, VOIP decoding on WEP encrypted channel, etc.

[click to continue…]

Canonical Ltd the creator of Ubuntu Linux has released a new software called Bazaar. It is a distributed version control system available under the GPL that reduces barriers to participation in your project. If you can run Python 2.4, then you can run Bazaar.

There are many really good VCS tools such as Subversion and Git. Bazaar is a decentralized revision control system. Revision control involves keeping track of changes in software source code or similar information, and helping people work on it in teams.Bazaar features
=> Reliable
=> Ease of use
=> Portable software (Works on *nix / Windows)
=> Flexible
=> GPL Code
=> Good performance
=> Safe with your data etc

The program is simple to deploy. It doesn't require a dedicated server. Any Web server that includes ftp will work as a Bazaar server. Canonical also states that because developers can commit their code locally whenever they want, they're less dependent on the central code base.

Download Bazaar VCS

=> Visit project home page to download Bazaar Distributed Version Control Software

Generally I use Perl and Shell script for automation or to make system administration easier for me. Python is an interpreted, interactive, object-oriented programming language that combines remarkable power with very clear syntax. Python runs on Windows, Linux/Unix, Mac OS X, OS/2, Amiga, Palm Handhelds, and Nokia mobile phones.

You can easily adopt Python to manage UNIX and Linux systems while incorporating concepts of good program design. Python is an easy-to-learn, open source scripting language that lets system administrators do their job more quickly. It can also make tasks more fun:

As a system administrator, you run across numerous challenges and problems. Managing users, disk space, processes, devices, and backups can cause many system administrators to lose their hair, good humor, or sanity. Shell scripts can help, but they often have frustrating limitations. This is where a full-featured scripting language, such as Python, can turn a tedious task into an easy and, dare I say it, fun one.

The examples in this article demonstrate different Python features that you can put to practical use. If you work through them, you'll be well on your way to understanding the power of Python.

=> Python for system administrators