Linux - Annvix
Welcome to the tutorial guide. The tutorial will provide a user with advise and guidance on Annvix (features, what a user can or cannot do with it, system requirements and an overview of installing it)
It is a good idea to understand what is Annvix. Annvix is a free, secure, Linux-based operating system. The Annvix project aims to provide a secure, stable, and fast Linux distribution specifically tailored to servers that provide reliable services such as Email, Web, DNS, FTP, File sharing, and more.
Annvix is available for x86 (pentium-class “i586″ systems and higher), and x86_64 (AMD64, opteron, EM64T, etc.) systems.
What a user can and can’t do with Annvix “as-is” ?
Annvix is a very simple operating system that offers a lot of functionality “out-of-the-box”. A user can do following with Annvix:
• Run a full email server: Exim, Postfix, ClamAV, SpamAssassin, Procmail
• Run a firewall: Shorewall
• Run a full dynamic (LAMP) web server: Apache, PHP, Perl, MySQL, PostgreSQL
• Run a file and print server: Samba, NFS, CUPS
• Use security-related hardening tools: AppArmor, rsec, AIDE
• Use RAID and LVM: mdadm, lvm2
Even though a user can do a lot of things with Annvix, it is good to know what a user cannot do with it. These are provided below:
• Run an X11 server or any X11-requiring applications
• Use it as a desktop system
Annvix’s specific purpose is for a hardened server operating system. Annvix is not appropriate for a desktop system (unless that desktop system is 100% CLI). Annvix is designed to be light-weight, flexible, and secure.
System Requirements
It is good to know the Annvix’s system requirements. These requirements are:
- Annvix requires a pentium 1 or higher x86 system (i586) or a 64bit x86_64 system (Athlon64, Opteron, EM64T, etc.). It does not operate on SPARC, PPC, Alpha, or other hardware.
- A user will need a CD/DVD-ROM device to install Annvix, either an internal IDE CD/DVD-ROM or an external USB CD/DVD-ROM device. Annvix does not currently support installing from a SATA CD/DVD-ROM device.
- A user will need a network card supported by Linux; please note that only few cards are not supported by Linux.
- A user will need at least 500MB of space for the default install. A reasonable base requirement of space would be 1GB for installed and installable packages, and extra space for storage and data (i.e. web data, database files, etc.).
Availability
Let’s have a look at the availability of Annvix. Anvix is freely available under the terms of the GPLv2 license. The software packaged with Annvix is governed by their own licenses; some is public domain, some GPL, some BSD, etc. Annvix itself is available under the GPLv2 license, as is the software written by the development team specifically for Annvix.
Downloads
Annvix is freely available for download. The download images and files can be redistributed without restriction.
An overview of installing Annvix
A user can install Annvix by using one of the “Live CD” installation ISO images, which are available for 32bit and 64bit x86 platforms (x86 and x86_64). Installation occurs after the ISO is burnt to a CD-ROM, booted, and the system is available.
Currently, Annvix installs must be done locally (although upgrades can be done remotely). In order words, a user should have physical access to the hardware that he/she will be installing Annvix onto.
Let’s go through an overview of installing Annvix 2.0 which is provided in the form of steps:
- The first step is to download the install ISO and boot from it. A user will receive a prompt. In order to begin the installation process, a user has to:
# loadkeys [keymap] (load non-english keymap, if required)
# date (make sure date is correct)
# modprobe [module_name] (load additional modules)
# fdisk /dev/hda (partition harddisk)
- If a user finds the date as incorrect then he/she can use the command date MMDDhhmmCCYY to set it (ie. 071418202010 for July 14th, 6:20pm, 2010).
- A user can create the desired partitions on the drive; it is recommended that a 50-100MB /boot partition (ext2), a 512MB-1GB swap partition), and the rest laid out however it si preferred (ie. perhaps 800MB for / and the rest for /home or /srv).
- A user can then format the partitions using mke2fs (ext2), mke2fs -j (ext3), mkfs.xfs (XFS), and mkswap (swap) with the device name as the sole argument (ie. mkfs.xfs /dev/hda2). NOTE: Although Annvix comes with the reiserfs tools, it is highly recommended to use XFS or ext3 instead.
- The next step is to mount the partitions under /mnt/annvix.
# swapon /dev/hda? (activate swap partition)
# mount /dev/hda? /mnt/annvix (mount root partition)
# mkdir /mnt/annvix/boot (create boot and other directories)
# mount /dev/hda? /mnt/annvix/boot (mount boot partition)
# install-pkgs (install base files)
The install-pkgs script is quite comprehensive and it also configures the network; if a user wants to configure the network prior to the install, then he/she can use net-setup directly. After the script is complete, it dumps into the installed system via chroot.
It is a good idea to double-check the /etc/fstab file inside the chrooted install:
[chroot /]$ vim /etc/fstab
A user can also double-check the /etc/modprobe.conf file inside the chrooted install; and ensure that any required drivers such as network drivers, disk drivers,etc. for boot are there. This can be done by running following command:
[chroot /]$ vim /etc/modules.conf
The install-pkgs command sets up a best-guess /etc/fstab for a user. A user will need to edit it to add any removable media or any other mount points that were not mounted at the time of the install. A functional /etc/fstab can look something like this:
# filesystem mountpoint type options dump/pass
/dev/hda? /boot ext2 noatime 1 2
/dev/hda? / xfs defaults 1 1
/dev/hda? swap swap defaults 0 0
/dev/hda? /home xfs defaults 1 2
/dev/fd0 /media/floppy auto iocharset=iso8859-1,noauto,unhide,nosuid,sync,nodev,codepage=850 0 0
/dev/hdc /media/cdrom auto iocharset=iso8859-1,noauto,ro,nosuid,nodev 0 0
none /proc proc defaults 0 0
none /dev/pts devpts mode=0620 0 0
Please note that the install-pkgs script tries to intelligently setup GRUB as much as possible but in some situations (such as RAID devices), it can’t do it. If this is the case, as user has to edit /boot/grub/grub.conf to suit his/her needs and then execute by running following command:
[chroot /]$ grub –device-map=/boot/grub/device.map
grub> root (hd0,0)
grub> setup (hd0)
grub> quit
After this complete, a user can then exit the chroot and let install-pkgs reboot the system:
[chroot /]$ exit (exit the chroot)
If a user followed this tutorial guide then he/she would have learnt about Annvix features, what a user can or cannot do with Annvix, system requirements for Annvix and an overview of installing Annvix.













