COMP 3000 2011 Report: Parsix GNU/Linux
Parsix GNU/Linux is a complete GNOME-centric desktop oriented distribution based on KANOTIX and Debian (Baghumian 2011). It is designed to be used as a Live CD, Live USB or installed operating system in to hard disk drive. The aim of Parsix is to provide a ready to use, easy to install, clean and up-to-date desktop and laptop operating system for “newbie” users (Lynch 2009).
The developer of Parsix is Alan Baghumian who announced the first version of Parsix GNU/Linux on February 2005. Just a few days ago on August 14, 2011, the latest stable version Parsix 3.7 was released (LinuxBSDos.com 2011). Parsix GNU/Linux may not as popular as other community distributions, but it contains the most common and needed applications for desktop or laptop users. Parsix is a totally free operating system that users can download it from its official website (Hasanpour 2009). The size of Parsix is approximately 1 GB, which will not cost a lot of space on the hard disk.
As mentioned above, Parsix GNU/Linux is derived from KANOTIX and Debian. It is based on Debian “sid” and uses KANOTIX’s configuration scripts and kernel in live mode. Some major differences distinguish Parsix from KANOTIX and Debian, which including the following: To begin with, Parsix uses a classic installation system written in Bash. Moreover, it is optimized to be used on the i686 processors, which gives a better performance for desktop usage (Lynch 2009). In addition, Parsix minimize the usage of non-free software, this will be welcomed by users.
In this report, how Parsix GNU/ Linux is installed, some experience in using Parsix for simple use cases, as well as the usage evaluation of the distribution will be discussed.
The Parsix GNU/Linux comes as installable live DVD ISO image, so that it was installed in a virtual environment by using the VMware Player virtual machine. Once it was set up on the virtual machine and played, the boot menu shown up as below:
Simply choose “Start or install Parsix” option, and the installation view will show up, and then the “Install Parsix” icon was clicked to run the installation program. After that, the partition menu popped up to ask me to create partitions. The partition menu includes two options, "1. Partition - Partition the hard disk" and "2. Quit - Quit the program" . I chose the first one to create partitions, then click "OK".
After the clicking, the GParted partitioning tool will be run to create new partitions. Three partitions including a swap partition, a primary partition and a logical partition were created. Once the partition was done, the installation menu should show up by clicking the “Install Parsix” icon again. However, the installation did not pop up, the partition menu shown up instead. This means the installation step was not allowed. In this case, I realized that the problem might be related to the memory allocated to this virtual machine. Then I checked the installation guide of Parsix, it indicated that the memory should be at least 512 MB. Finally, the problem was solved by changing the memory in the virtual machine settings, and the installation menu popped up:
The “New installation” option was chosen to install the Parsix GNU/Linux, there will be 7 steps of configuration. In the first step, it asks to choose an installation partition. The default one is “/dev/ada1:5632000”. In the next step, a desired file system format will be asked, the default one is ext4. Then the next few steps are creating user name and password. After that, a hostname which is needed for networking is asked to enter, the default hostname is “parsix”. In the next step, the installation program asks about boot loader installation. It will default choose “mbr”, which will install boot loader on the master boot record. Then it began to install Parsix GNU/Linux. After approximately 20 minutes installation, the Parsix was able to be accessed and used.
Parsix users can also update an existing installation by simply choosing “Update installation” on the installation main menu. Then the system asks you to choose a partition that contains the existing Parsix installation. Choosing the right one and then a confirmation message about update process will be displayed. The final step of update installation mode will ask you to replace the X.Org and GNOME desktop configurations. After 10-15 minutes, the new Parsix is ready to use.
Since the Parsix GNU/Linux is a Live CD, users have the option whether or not to install it. This means users can use the operating system without installing it in the hard disk, which demonstrates that Parsix is a ready to use operating system, and more importantly, it provides conveniences for users. Moreover, by following the installation guide, it only takes users approximately 20 minutes to install the operating system, which reveals that Parsix is a fast installation system.
One of the most useful tools in Parsix is the Synaptic Package Manager, which is a powerful package management tool. It allows users to install, remove, configure, upgrade and downgrade single and multiple packages; upgrade the whole system; search packages by name, descriptions and other attributes. By using this tool, I can easily find the packages that installed and not installed in the system, and also their descriptions and categories. Moreover, the searching engine helps me to find specific package. Thus, this tool provides many conveniences for users to manage packages.
Similar to other operating systems, Parsix GNU/Linux has an installed document processor called OpenOffice.org Writer. It allows me to design and produce text documents that can include graphics, tables or charts. It also includes the spellchecker function to remind spelling mistakes. Once finishing processing, the document can be saved as standardized OpenDocument format, Microsoft Word .doc format, or HTML. And I can export the document to PDF format. Since Parsix provides a useful, ready to use document processor, users do not worry about processing documents.
The Parsix GNU/Linux also installs an internet browser called Icewasel Web Browser. This is a pretty important feature of an operating system, since the browser allows me to search the Internet. Since nowadays many activities rely on Internet, if an operating system do not have a browser and so that users cannot go online to watch some news or video, we can imaging that how difficult the life will be. This again demonstrates that Parsix is a user friendly operating system.
From my point of view, Parsix GNU/Linux fulfills its design goals. The reasons can be categorized into the following four aspects.
First of all, Parsix is a live CD that allows users to boot the system without installing it; meanwhile, it is also very simple to install the operating system by following the installation guide from the official website and the installation only take about 20 minutes. These means Parsix is a ready to use, easy and fast to install distribution. However, the only flawless is that it requires users to partition the hard disk before the actual install. The Linux starters might have difficulties in partitioning. Therefore, having an automated install routine may be better for potential Parsix beginners.
Furthermore, Parsix is also a well-integrated desktop and laptop distribution. Besides the usual cast of GNOME games, desktop accessories and system utilities, some of other applications such as OpenOffice.org and Ice Web browser are installed on Parsix. These default installed applications are helpful for users to deal with real life problems. If users want more applications, they can install extra software packages from APT repositories.
In addition, Parsix is an up-to-date system. This means as long as the user install Parsix and enable update function, the system and softwares will be updated regularly, as Parsix is based on Debian. In this way, users can enjoy using the up-to-date system and latest softwares.
Parsix is based on Debian, but they are not exactly the same. Debian fastens provide it power, stability and usability. It also combined with superior hardware recognition abilities, which is derived by Kanotix. Kanotix is a rock-solid Linux, which contains the newest packages and recognizes more modern hardware than any other operating system in use today. In contrast to Debian, with improved hardware detection, Parsix is designed for multiple-purpose usage so that it can be used in live mode on different types of media (CD (older versions), DVD, hard disk, and USB-stick) and includes an installation tool for installing it to the hard drive.
In conclusion, the Parsix GNU/Linux leaves a great impression on me, not only as it is a ready to use, easy and fast to install and up-to-date operating system but also with advanced hardware detection.
Packaging Format and Utilities
Since that Parsix is a distribution based on Debian, so the packaging format it uses is as same as Debian, which is deb. Deb is the extension of the Debian software package format and the most often used name for such binary packages. Debian packages are standard UNIX ar archives, which include two archives, one holds the control information and the other one contains the data.
“dpkg” is the software that is used to install, remove, and provide information about .deb packages, it is the package manager for Debian, also for Parsix (man of dpkg). The package “dpkg” in Parsix provides the dpkg program, and some other programs that are necessary for run-time functioning of the packaging system. Package “dpkg-dev” contains a series of development tools required to unpack, build and upload software source packages. Package “dpkg-cross” contains tools for cross compiling software packages for Parsix. There are a lot of useful data in “dpkg” package.
The Advanced Packaging Tool (APT) is a free user interface that works with core libraries to handle the installation and removal of software on the Parsix, it is a higher level tools than dpkg (man of apt). APT automates the retrieval, configuration and installation of software packages, works with binary files or compiling source code, it is a good utility used to simplify the process of managing software on Parsix system. “apt-get” is the most common component that is used for managing applications at the command line, with Synaptic Package Manager as the graphical interface.
Listing Installed Packages, Adding and Removing Packages
The command “dpkg -l” may let you get the list of installed packages, and the commands “dpkg – i packagename” is used to install a .deb package, “dpkg – r packagedname” is used to remove an installed package (man of dpkg).
The Parsix also allow user to use the higher level tool- APT. “apt-get” is the most common component that is used for managing applications at the command line, with Synaptic Package Manager as the graphical interface. “apt-get install packagename” is the command used to install a particular package and “apt-get remove packagename” will remove the package (man of apt-get). Open the Synaptic package manager, click the status button and select “Installed” from the list will show the list of installed packages. It is also very simple use it to add or remove a package. Synaptic provides a list of all the packages that are installed and can be installed. Click the package which to be installed and click apply installation will install a new package. Furthermore, by clicking the apply button under the removal of an installed package may remove the particular package.
Software catalog for the distribution
After running the Synaptic Package Manager installed in Parsix, it shows that 30123 packages are listed, and 1543 of them are installed. And all the installed packages are remains the latest version. If the users want to install more packages, they can find the packages they want from the Parsix APT repositories, and manually install them. Moreover, the latest version of Parsix which is Parix GNU/Linux 3.7 has been synchronized with Debian testing repositories and brings lots of updated packages (Baghumian, 2011).
Major package versions
Here are the major packages installed in Parsix with the version numbers and upstream sources.
|Linux Kernel||126.96.36.199||http://www.kernel.org/ http://lwn.net/Articles/435667/|
Comparison of Packages
The Linux Kernel includes in Parsix 3.7 is version 188.8.131.52 which was announced on March 27, 2011. The latest stable version of the Linux Kernel is version 3.0.8, and was released on October 25, 2011 (Kroah-Hartman, 2011). This kernel hasn’t been modified by the distribution authors, they just use the one from Debain. The reason why the distribution authors chose it may be is it is the latest stable version when they built the Parsix 3.7.
The Glibc includes in Parsix is version 2.11.2, was released on May 20, 2010 (Canonical Ltd, 2011). The latest stable version of Glibc, which released on October 8, 2011, is version 2.14.1 (Canonical Ltd, 2011). It was not been modified by the distribution authors because there is no need to change it.
Parsix 3.7 ships with GNOME 2.32.1, was released on November 18, 2010 (Ferretti, 2010). The newest version is 3.2 which was released on September 28, 2011. It has not been modified by the distribution authors. The reason why distribution authors chose this version instead of GNOME 3.0 is components of GNOME 3 desktop are in the repository, but GNOME Shell is not, so GNOME 3 is not installable (LinuxBSDos.com. 2011).
The version of X.Org includes in the Parsix 3.7 is version 7.5 which was released on October 26, 2009. The latest stable release is X.org 7.6 which was released on December 20, 2010. It was not modified by the Parsix authors, and they chose X.Org is because of most AGP, PCI, PCIe, and PCI-X video cards work under X.Org. Parsix support for graphical interfaces is determined by the underlying support found in X.Org's X11 system (Debian Installer team, 2010).
Parisx 3.7 works with bash version 4.1 was released on January 3, 2010 (Jerry, 2011). And the latest version is 4.2 was released on February 13, 2011 (Ramey, 2011). This package was included as bash is the version of command line included with the standard install of Debian. The author chose it maybe because of 4.1 was more stable than 4.2 and it is the standard install of Debian.
Parsix 3.7 distribution has installed BusyBox v1.17.1 (Debian 1:1.17.1-8), which is Published on November 20, 2010, and the latest version of BusyBox (v1.19.3)is released in October 30, 2011. BusyBox provides the expected functionality and behave very much like their GNU counterparts. It also provides a fairly complete environment for any small or embedded system. This package was included as it the version of busybox included with the standard install of Debian. The author of Parsix did not change it.
The Parsix 3.7 works with GTK+ with version 2.24.3 released on March 14, 2011 (Clasen,2011), and the latest version of GTK+ is 3.2.2, which was released on November 12, 2011 (Geeknet, Inc., 2011). GTK+ is a multi-platform toolkit for creating graphical user interfaces. The author of Parsix did not modify it. They chose it maybe because it is the version which is most cloest to the publish date of Parsix 3.7.
The version includes in the Parsix 3.7 is 3.2.1, released on June 4, 2010. The newest version is 3.3.0 which was released on January 26, 2011 (OpenOffice.org, 2011). It was not modified by Parsix team, and they chose it may because of OpenOffice is available for a lot of different computer Operating Systems, is distributed as free software and is written using its own GUI toolkit.
The version of GNU Iceweasel includes in the Parsix is 7.0.1 was released on September 28, 2011 (Hommey, 2011). The latest version is 8.0-3. The reason why the Parsix authors chose it maybe Iceweasel is Firefox, free rebranded, it is a powerful, extensible web browser with support for modern web application technologies. However, it is not a stable and complex tool, and it lacks of development support within the Debian community.
The version of VirtualBox is 4.0.4. It was released on April 4, 2011 (Bellet, 2011). The latest version of VirtulBox is 4.1.4, released on October 3, 2011 (Mehnert, 2011). It was not modified by Parsix author, they chose it because this dummy transitional package can be safely removed after the installation is complete.
The version of Empathy includes in Parsix 3.7 is 2.30.3, which was released on August 24, 2010 (Desmottes, 2011). The latest version is 184.108.40.206 released on October 24, 2011 (Desmottes, 2011). It has not modified by Parsix author. They chose it because of Empathy provides a collection of re-usable graphical user interface widgets for developing instant messaging clients for the GNOME desktop and this new release in the stable 2.30 branch fixes various memory leaks and minor bugs.
The version of Gparted includes in Parsix 3.7 is 0.8.1 was released on May 23, 2011, and the stable release was on May 25, 2011 (Gnome Partition Editor, 2011). The newest stable release was 0.10.0-3 was released on November 2, 2011 (Gnome Partition Editor, 2011). It has not modified by Parsix authors. Gparted is a free partition editor for managing the disk partitions graphically, and may resize, copy, and move partitions without data loss.
The Gribi includes in Parsix 3.7 is with version 0.8.8, which was released on September 22, 2011 (Biava, 2011). The latest version released for Linux, the newest version 0.9.3 was released for OSX Lion. Gribi is a personal accounting application running under GNU/Linux. It can manage multiple accounts, currencies and users also import accounts from QIF, OFX and Gnucash files. It can print reports using LaTeX or export them via HTML (UbuntuUpdates.org. 2011).
When the operating system is powered on, the computer hardware initializes itself and executes BIOS code residing on the read only memory from the particular memory location. Specifically, the system is booted from the primary hard disk partition. After that, the first boot loader code executed from the BIOS.
Parsix GNU/Linux uses GNU GRUB as its boot loader (Abdi, 2011). Thus, GNU GRUB gets executed after BIOS initialized. GRUB is responsible for loading and transferring control to Linux kernel software. The kernel, in turn, initializes the rest of the operating system (Dubbs, 2011).
After that, the INIT process works with “version 2.88 booting” which runs /ect/init.d/rcS. In this process, several steps are executed, which includes checking root file system, mounting local filesystems, setting up networking and configuring network interfaces. Some major processes as follows(happens sequentially):
udevd: The event managing daemon, it is the first prosses runs at level S. It listens to kernel uevents and passes the incoming events to udev. It ensures the correct event order and takes care, that events for child devices are delayed until the parent event has finished the device handling.
After that it waits for /dev to be fully populated, active swap and checks root file system by fsck.
0dns-down(pppconfig): Before setting up NETWORKING service it runs the 0dns-down to make sure resolv.conf is ok, which resolv.conf is the name of a computer file used in various operating systems to configure the Domain Name System (DNS) resolver library. /etc/ppp/ip-down.d/0dns-down is a script that arranges for the original resolv.conf file to be copied into place when a connection goes down.
Then Parsix sets up networking, and configures network interface by policy-rc.d which allows the local system administrator to control the behaviour of invoke-rc.d for every initscript id and action. At the end of this level, it cleans up temporary files and loads the saved-state of the serial devices.
After all the rcS scripts have run. The INIT program enters run level 5, which is /etc/rc5.d. In this run level, the system log daemon and kernel log daemon are started, the MD monitoring service mdadm get started, the NetworkManager is initialized, the NFS kernel daemon ndsf is mounted, the bluetooth bluetoothd gets started, the periodic command scheduler cron is initialized as well as the GNOME display manager gdm is started. Some major processes as follows(happens sequentially):
cupsd: cupsd is the scheduler for the Common UNIX Printing System. It implements a printing system based upon the Internet Printing Protocol, version 1.1. If no options are specified on the command-line then the default configuration file (usually /etc/cups/cupsd.conf) will be used. It runs during the system and kernel daemon, and after setting up ACPI (Advanced Configuration and Power Interface) and ALSA (Advanced Linux Sound Architecture).
dbus: Runs after the cupsd processed. It is a message bus system, a simple way for applications to talk to one another. In addition to intercrosses communication, D-Bus helps coordinate process lifecycle; it makes it simple and reliable to code a "single instance" application or daemon, and to launch applications and daemons on demand when their services are needed. D-Bus supplies both a system daemon and a per-user-login-session daemon.
Then system sets up the first registered device, /dev/sda, and sets up monitoring service by mdadm.
mdadm: It processes before starting network connection manager. It is a Linux utility used to manage software RAID devices. Parsix use it to set up MD monitoring service by mdadm -- monitor. This usage causes mdadm to periodically poll a number of md arrays and to report on any events noticed.
Next step is starting to run NetworkManager and portmap daemon, where portmap is a server that converts RPC program numbers into DARPA protocol port numbers.
Statd: The statd daemon interacts with the lockd daemon to provide crash and recovery functions for the locking services on Network File System (NFS). The status monitor maintains information on the location of connections as well as the status in the /etc/sm directory, the /etc/sm.bak file, and the /etc/state file. When restarted, the statd daemon queries these files and tries to reestablish the connection it had prior to termination. To restart the statd daemon, and subsequently the lockd daemon, without prior knowledge of existing locks or status, delete these files before restarting the statd daemon.
The next step is Exports directories for NFS kernel daemon and start the daemon with nfsd mountd. Furthermore, the system starts bluetoothd.
Cron: It is a time-based job scheduler in Unix-like computer operating systems. Cron enables users to schedule jobs (commands or shell scripts) to run periodically at certain times or dates.
Finally, the whole initialization is finished after starting GNOME Display Manager by gdm.
Abdi, N. 2011. Parsix GNU/Linux Installation Guide. Retrieved November 12, 2011 from http://www.parsix.org/wiki/InstallationGuide#bootloader
Baghumian, A. 2011. 3.7r1 Release Notes. Retrieved October 13, 2011 from http://www.parsix.org/wiki/ReleaseNotes37r1
Bellet, F. 2011. kmod-VirtualBox-OSE-4.0.4-2.fc15.4 RPM for x86_64. Retrieved November 12, 2011 from http://rpmfind.net/linux/RPM/rpmfusion/free/fedora/updates/15/x86_64/kmod-VirtualBox-OSE-4.0.4-2.fc15.4.x86_64.html
Biava, P. 2011. Personal finance manager. Retrieved November 12, 2011 from http://rpm.pbone.net/index.php3/stat/4/idpl/17038528/dir/other/com/grisbi-0.8.8-1mdv2010.2.x86_64.rpm.html
Canonical Ltd. 2011. The GNU C Library, GlibC 2.11.2. Retrieved November 12, 2011 from https://launchpad.net/glibc/+milestone/2.11.2
Canonical Ltd. 2011. The GNU C Library, GlibC 2.14.1. Retrieved November 12, 2011 from https://launchpad.net/glibc/head/2.14.1
Clasen, M. 2011. GTK+ 2.24.3. Retrieved November 12, 2011 from http://mail.gnome.org/archives/gtk-devel-list/2011-March/msg00058.html
Debian Installer team. 2010. Debian GNU/Linux Installation Guide. Retrieved November 12, 2011 from http://www.debian.org/releases/stable/i386/install.txt.en
Desmottes, G. 2011. empathy 2.30.3. Retrieved November 12, 2011 from http://mail.gnome.org/archives/ftp-release-list/2010-August/msg00154.html
Desmottes, G. 2011. empathy 220.127.116.11. Retrieved November 12, 2011 from http://mail.gnome.org/archives/ftp-release-list/2011-October/msg00159.html
Dubbs, B. 2011. GUN GRUB. Retrieved November 12, 2011 from http://www.gnu.org/software/grub/
Fernandze-Sanguino, J. 2011. Basics of the Debian package management system. Retrieved November 12, 2011 from http://www.debian.org/doc/manuals/debian-faq/ch-pkg_basics
Ferretti, L. 2010. GNOME 2.32.1 released. Retrieved November 12, 2011 from http://mail.gnome.org/archives/gnome-announce-list/2010-November/msg00056.html
Geeknet, Inc.. 2011. GTK+. Retrieved November 12, 2011 from http://freecode.com/projects/gtk
Gnome Partition Editor. 2011. Gparted News. Retrieved November 12, 2011 from http://gparted.sourceforge.net/news.php?alles=alles
Hasanpour, M. 2009. Parsix GNU/Linux User’s Guide. Retrieved October 13, 2011 from http://www.parsix.org/wiki/UsersGuideEn
Hommey, M. 2011. “iceweasel” 7.0-1 source package in Debian, Changlog. Retrieved November 12, 2011 from https://launchpad.net/debian/+source/iceweasel/7.0-1
Kroah-Hartman, G. 2011. Linux 3.0.8. Retrieved November 12, 2011 from http://www.kernel.org/pub/linux/kernel/v3.0/ChangeLog-3.0.8
Jerry. 2011. Bash - 4.1 released into ports. Retrieved November 12, 2011 from http://groups.google.com/group/lucky.freebsd.ports/browse_thread/thread/5d322f478a8fdcf2
LinuxBSDos.com. 2011. Parsix 3.7 review. Retrieved October 13, 2011 from http://www.linuxbsdos.com/2011/08/18/parsix-3-7-review/2/
Lynch, J. 2009. Parsix Linux 2.0. Retrieved October 13, 2011 from http://desktoplinuxreviews.com/2009/06/19/parsix-linux-2-0-review/
Mehnert, F. 2011. Announcement: VirtualBox 4.1.4 released. Retrieved November 12, 2011 from https://www.virtualbox.org/pipermail/vbox-announce/2011-October/000067.html
OpenOffice.org. 2011. News from OpenOffice.org. Retrieved November 12, 2011 from http://www.openoffice.org/news/
Ramey, C. 2011. Bash-4.2 available for FTP. Retrieved November 12, 2011 from http://lists.gnu.org/archive/html/info-gnu/2011-02/msg00012.html
UbuntuUpdates.org. 2011. Packagae “grisbi”. Retrieved November 12, 2011 from http://www.ubuntuupdates.org/packages/show/367109