Any one of Perl, Python, or Ruby (as well as a few others) could become the primary system administration tool, displacing the shell. In my experience, however, Python’s highly readable, compact and consistent syntax makes it the ideal choice for this sort of work.
Many well-known Linux distributions already use Python in their key tools. Red Hat‘s Anaconda installer, and Gentoo‘s Portage package manager are two examples. Ubuntu (the top distribution for the last 12 months, according to DistroWatch) “… prefers the community to contribute work in Python.”
The next logical step is to create a complete system administration environment using a high-level language. In large measure, this project is already underway. A relatively recent, highly rated (see review links on DistroWatch) distribution, Pardus, uses Python across many of its core tools. The Pardus team, recognizing that “High Thoughts Must Have High Language”, has even written a new init framework in Python. Here is how they explain their choice.
Among the high level languages, Python seemed to be the best choice, since we already use it in many places like package build scripts, package manager, control panel modules, and installer program YALI. Python has small and has clean source codes. Standard library is full of useful modules. Learning curve is easy, most of the developers in our team picked up the language in a few days without prior experience.