How To Resize LVM Software RAID1 Partitions (Shrink & Grow)
This article describes how you can shrink and grow existing software RAID1 partitions with LVM on top. I have tested this with logical volumes that use ext3 as the file system. I will describe this procedure for an intact RAID array and also a degraded RAID array.
How To Configure Software RAID To Send An Email When Something's Wrong With RAID
This short guide explains how you can configure software RAID to send you an email when something's wrong with RAID, for example if a hard drive fails. I've tested this on Debian Etch, but it should apply to all other distributions with minor adjustments to paths, etc.
Quick And Easy Setup For DomainKeys Using Ubuntu, Postfix And Dkim-Filter
This is a quick tutorial for setting up DomainKeys on Ubuntu (I used 6.06LTS - but should work the same on others) using dkim-filter with Postfix so emails from your domain will not constantly end up in Yahoo's spam filter.
Setting Up A High-Availability Load Balancer (With Failover and Session Support) With HAProxy/Wackamole/Spread On Debian Etch
This article explains how to set up a two-node load balancer in an active/passive configuration with HAProxy, Wackamole, and Spread on Debian Etch. The load balancer sits between the user and two (or more) backend Apache web servers that hold the same content. Not only does the load balancer distribute the requests to the two backend Apache servers, it also checks the health of the backend servers. If one of them is down, all requests will automatically be redirected to the remaining backend server. In addition to that, the two load balancer nodes monitor each other using Wackamole and Spread, and if the master fails, the slave becomes the master, which means the users will not notice any disruption of the service. HAProxy is session-aware, which means you can use it with any web application that makes use of sessions (such as forums, shopping carts, etc.).
How To Set Up A Caching Reverse Proxy With Squid 2.6 On Debian Etch
This article explains how you can set up a caching reverse proxy with Squid 2.6 in front of your web server on Debian Etch. If you have a high-traffic dynamic web site that generates lots of database queries on each request, you can decrease the server load dramatically by caching your content for a few minutes or more (that depends on how often you update your content).
Creating A Dual-Boot System On RAID10 (Ubuntu/Windows)
I just bought a new computer and I want to run Ubuntu 8.10 and Vista. I'm really afraid to loose some of my data when a harddrive dies, so I decided to go for a RAID10-setup. Most modern motherboards support RAID0,1,5 and 10. After assembling my new computer, I discovered that the motherboard didn't have a true hardware-RAID-controller. Instead it's just software-RAID, sometimes called fakeraid. If I was installing a Linux-only-system, I wouldn't care and just use the Linux software-Raid options. But this time, my system has to be dual-boot.
How To Back Up MySQL Databases With mylvmbackup On Ubuntu 8.10
mylvmbackup is a Perl script for quickly creating MySQL backups. It uses LVM's snapshot feature to do so. To perform a backup, mylvmbackup obtains a read lock on all tables and flushes all server caches to disk, creates a snapshot of the volume containing the MySQL data directory, and unlocks the tables again. This article shows how to use it on an Ubuntu 8.10 server.
Installing Nginx With PHP5 And MySQL Support On Fedora 10
Nginx (pronounced "engine x") is a free, open-source, high-performance HTTP server. Nginx is known for its stability, rich feature set, simple configuration, and low resource consumption. This tutorial shows how you can install Nginx on a Fedora 10 server with PHP5 support (through FastCGI) and MySQL support.
The Perfect Desktop - OpenSUSE 11.1 (GNOME)
This tutorial shows how you can set up an OpenSUSE 11.1 desktop that is a full-fledged replacement for a Windows desktop, i.e. that has all the software that people need to do the things they do on their Windows desktops. The advantages are clear: you get a secure system without DRM restrictions that works even on old hardware, and the best thing is: all software comes free of charge.
The Perfect Server - OpenSUSE 11.1
This is a detailed description about how to set up an OpenSUSE 11.1 server that offers all services needed by ISPs and hosters: Apache web server (SSL-capable), Postfix mail server with SMTP-AUTH and TLS, BIND DNS server, Proftpd FTP server, MySQL server, Dovecot POP3/IMAP, Quota, Firewall, etc. This tutorial is written for the 32-bit version of OpenSUSE 11.1, but should apply to the 64-bit version with very little modifications as well.
Using memcached With Your vBulletin Forum To Reduce Server Load (Debian Etch)
In this article I will explain how you can reduce server load by using memcached together with your vBulletin forum software (I'm assuming you are running vBulletin on Apache2 with mod_php5). memcached is a daemon that can store objects in the system's memory (e.g. results of database queries) which can speed up your web site tremendously. You can use memcached over a network (i.e., install your web application on one server and memcached on another server), but usually you install both on one server to avoid the networking overhead.
Backing Up MySQL Partitioned Tables
MySQL 5.1 is generally available for production use. One of the key features of MySQL 5.1 is partitioning. This how to shows how to install and configure Zmanda Recovery Manager for MySQL (ZRM) 2.1 to perform backup and recovery of MySQL partitioned tables.
The Perfect Desktop - Linux Mint 6 (Felicia)
This tutorial shows how you can set up a Linux Mint 6 (Felicia) desktop that is a full-fledged replacement for a Windows desktop, i.e. that has all the software that people need to do the things they do on their Windows desktops. The advantages are clear: you get a secure system without DRM restrictions that works even on old hardware, and the best thing is: all software comes free of charge. Linux Mint 6 is a Linux distribution based on Ubuntu 8.10 that has lots of packages in its repositories (like multimedia codecs, Adobe Flash, Adobe Reader, Skype, Google Earth, etc.) that are relatively hard to install on other distributions; it therefore provides a user-friendly desktop experience even for Linux newbies.
Reducing Disk IO By Mounting Partitions With noatime
Linux has a special mount option for file systems called noatime. If this option is set for a file system in /etc/fstab, then reading accesses will no longer cause the atime information (last access time - don't mix this up with the last modified time - if a file is changed, the modification date will still be set) that is associated with a file to be updated (in reverse this means that if noatime is not set, each read access will also result in a write operation). Therefore, using noatime can lead to significant performance gains.
How To Rebuild The Squid 2.6 Debian Package with Support For X-Forwarded-For Headers
This article describes how you can rebuild the Squid 2.6 package for Debian Etch with support for X-Forwarded-For headers - this feature is not enabled in the default Debian Etch Squid package. This feature is useful if you are using Squid as a reverse proxy for your web site and are using a load balancer (such as HAProxy) in front of Squid - it allows us to track the client's original IP address instead of the load balancer's IP address (which to Squid appears as the client).
Creating Virtual Machines For Xen, KVM, VMware Workstation 6, and VMware Server With vmbuilder On Ubuntu 8.10
vmbuilder is a tool (introduced on Ubuntu 8.10) that allows you to build virtual machines (with Ubuntu as the OS) for multiple virtualization techniques. Currently it supports Xen, KVM, VMware Workstation 6, and VMware Server. You can afterwards copy the virtual machines to another system (a Xen, KVM, VMware Workstation 6, or VMware Server host) and run them there.
Postfix SMTP Authentication - On The Secure Port Only
So let's say your users are going away for holidays but need to use your mailserver to relay mail from outside the organisation... Let's set up SMTP authentication for the secure port only and allow access to this from outside your network.
Virtualization With KVM On Ubuntu 8.10
This guide explans how you can install and use KVM for creating and running virtual machines on an Ubuntu 8.10 server. I will show how to create image-based virtual machines and also virtual machines that use a logical volume (LVM). KVM is short for Kernel-based Virtual Machine and makes use of hardware virtualization, i.e., you need a CPU that supports hardware virtualization, e.g. Intel VT or AMD-V.
How To Create A FreeRADIUS 2.1.1-6 RPM Package On CentOS 5.2
This is just a short tutorial showing how to create an RPM version of FreeRADIUS 2.1.1-6 on CentOS 5.2. This version of FreeRADIUS is not yet included in the CentOS 5 repositories.
How To Resize RAID Partitions (Shrink & Grow) (Software RAID)
This article describes how you can shrink and grow existing software RAID partitions. I have tested this with non-LVM RAID1 partitions that use ext3 as the file system. I will describe this procedure for an intact RAID array and also a degraded RAID array.
Installing VirtualBox 2.0 On An Ubuntu 8.10 Desktop
This tutorial shows how you can install Sun xVM VirtualBox on an Ubuntu 8.10 desktop. With VirtualBox you can create and run guest operating systems ("virtual machines") such as Linux and Windows under a host operating system. There are two ways of installing VirtualBox: from precompiled binaries that are available for some distributions and come under the PUEL license, and from the sources that are released under the GPL. This article will show how to set up VirtualBox 2.0 from the precompiled binaries.
How To Configure Apache To Use Radius For Two-Factor Authentication On Ubuntu
This document describes how to add WiKID two-factor authentication to Apache 2.x using mod_auth_radius on Ubuntu 8.1. A previous article described how to add two factor authentication to apache on Fedora. Interestingly, a patch has been created to update mod_auth_radius to work with Apache 2.2+, however, it has only been updated for Debian and Ubuntu. For Fedora and other RedHat flavors of Linux, it is recommended that you use mod_auth_xradius.
Talking SOAP With Exchange
Previously, talking to Exchange without using Microsoft products was pretty much out of the question. The binary MAPI protocol is proprietary and poorly documented. Exchange supports IMAP and POP, but these protocols only give acesss to emails, not the calendar, address book, todo lists etc. But beginning with version 2007, Exchange now ships with a SOAP interface called Exchange Web Services, or EWS. This interface gives us access to the functions necessary to write clients in any programming language on any platform. This article describes a PHP program to look up, delete and insert items in an Exchange calendar.
Storing Files/Directories In Memory With tmpfs
You probably know that reading from RAM is a lot of faster than reading files from the hard drive, and reduces your disk I/O. This article shows how you can store files and directories in memory instead of on the hard drive with the help of tmpfs (a file system for creating memory devices). This is ideal for file caches and other temporary data (such as PHP's session files if you are using session.save_handler = files) because the data is lost when you power down or reboot the system.
Set Up A Fully Encrypted Raid1 LVM System
For this Howto I use Debian Lenny (still testing and not "stable" for the simple reason as - contrary to Debian Etch and/or Ubuntu 8.04/8.10 - the install routine does setup the initrd correctly so that you can set up encrypted swap and also an encrypted raid1 lvm during install). This Howto will be heavy on screen shots again - a lot of them are repetitive as I setup multiple partitions at once. Basically I will set up the system in a way that (a) everything [except for /boot] will be encrypted, (b) everything will be on a raid1 and (c) have a LVM for your data partition so that this one can be easily expanded.
Installing Nginx With PHP5 And MySQL Support On Debian Etch
Nginx (pronounced "engine x") is a free, open-source, high-performance HTTP server. Nginx is known for its stability, rich feature set, simple configuration, and low resource consumption. This tutorial shows how you can install Nginx on a Debian Etch server with PHP5 support (through FastCGI) and MySQL support.
Useful Uses Of netcat
This short article shows some useful netcat commands. netcat is known as the TCP/IP swiss army knife. From the netcat man page: netcat is a simple unix utility which reads and writes data across network connections, using TCP or UDP protocol. It is designed to be a reliable "back-end" tool that can be used directly or easily driven by other programs and scripts. At the same time, it is a feature-rich network debugging and exploration tool, since it can create almost any kind of connection you would need and has several interesting built-in capabilities.
The Perfect Desktop - Fedora 10 (GNOME)
This tutorial shows how you can set up a Fedora 10 desktop (GNOME) that is a full-fledged replacement for a Windows desktop, i.e. that has all the software that people need to do the things they do on their Windows desktops. The advantages are clear: you get a secure system without DRM restrictions that works even on old hardware, and the best thing is: all software comes free of charge.
Installing ubuntu-system-panel (USP) On Ubuntu 8.10
ubuntu-system-panel is a simple launcher for the GNOME desktop, providing easy access to Places, Applications and common configuration items for your computer. This guide shows how to install and configure it on an Ubuntu 8.10 desktop.
Installing VirtualBox 2.0 On Mandriva 2009.0
This tutorial shows how you can install Sun xVM VirtualBox on a Mandriva 2009.0 desktop. With VirtualBox you can create and run guest operating systems ("virtual machines") such as Linux and Windows under a host operating system. There are two ways of installing VirtualBox: from precompiled binaries that are available for some distributions and come under the PUEL license, and from the sources that are released under the GPL. This article will show how to set up VirtualBox 2.0 from the precompiled binaries.
Server Monitoring With munin And monit On CentOS 5.2
In this article I will describe how you can monitor your CentOS 5.2 server with munin and monit. munin produces nifty little graphics about nearly every aspect of your server (load average, memory usage, CPU usage, MySQL throughput, eth0 traffic, etc.) without much configuration, whereas monit checks the availability of services like Apache, MySQL, Postfix and takes the appropriate action such as a restart if it finds a service is not behaving as expected. The combination of the two gives you full monitoring: graphics that lets you recognize current or upcoming problems (like "We need a bigger server soon, our load average is increasing rapidly."), and a watchdog that ensures the availability of the monitored services.
Managing OpenVZ With The Vtonf Control Panel On CentOS 5.2
Vtonf is a free web-based control panel (released under the GPL license) for managing virtual private servers (VPS) based on OpenVZ. It makes it very easy to create and manage OpenVZ VMs even for people with little technical knowledge. Right now, Vtonf is available only for RedHat, Fedora, and CentOS (support for Debian is planned), therefore I describe its installation and usage on a CentOS 5.2 server.
Samba + Clamd + Samba-Vscan On CentOS 5.2
This is a howto on getting samba + clamav + samba-vscan to work on a CentOS 5.2 system.
Running Windows Programs On Ubuntu 8.10 With CrossOver Linux Pro 7.1.0
This guide shows how you can use CrossOver Linux Pro 7.1.0 to run Windows applications on Ubuntu 8.10. CrossOver is based on Wine. It is not available for free, but maybe you are one of the lucky guys that grabbed a CrossOver copy for free a few days ago; otherwise you can install a 30-day trial version to test it.
How To Install And Configure Cherokee Web Server With PHP 5 And MySQL 5 Support On Ubuntu 8.10 Server (Intrepid Ibex)
This tutorial shows how to install Cherokee from source with PHP and MySQL support on a Ubuntu 8.10 server machine. The reason for compiling from source instead of using apt to install binary packages is that there are older versions in the repositories than the ones available on Cherokee's homepage. The main goal is to install the webserver so I didn't bother compiling everything else. That way you won't spend to much time on doing things I didn't want to describe.
The Useful Uses Of Mod Rewrite
In this tutorial, I'm going to be teaching what mod rewrite is and few examples of its uses. Mod rewrite is a powerful tool and one of the simplest ways to make your website more SEO friendly.
The Perfect Server - Fedora 10
This is a detailed description about how to set up a Fedora 10 server that offers all services needed by ISPs and hosters: Apache web server (SSL-capable) with PHP5/Ruby/Python, Postfix mail server with SMTP-AUTH and TLS, BIND DNS server, Proftpd FTP server, MySQL server, Dovecot POP3/IMAP, Quota, Firewall, etc.
How To Upgrade From Fedora 9 To Fedora 10 (Desktop & Server)
This article describes how you can upgrade your Fedora 9 system to Fedora 10 (which was released yesterday - November 25, 2008). The upgrade procedure works for both desktop and server installations.
Back Up/Restore Hard Drives And Partitions With CloneZilla Live
This tutorial shows how you can back up and restore hard drives and partitions with CloneZilla Live. CloneZilla Live is a Linux Live-CD that you insert into your computer; it contains hard disk and partition imaging and cloning tools similar to Norton Ghost. The created images are compressed and can be transferred to a Samba-, SSH-, or NFS server or to a local hard drive or USB drive.
Installing And Configuring ntop
This is a tool to collect the network information with simple configurations. Users may use the web browser to access the current network views that include charts and statistics.
How To Install VMware Server 2 On Ubuntu 8.10
This tutorial provides step-by-step instructions on how to install VMware Server 2 on an Ubuntu 8.10 desktop system. With VMware Server you can create and run guest operating systems ("virtual machines") such as Linux, Windows, FreeBSD, etc. under a host operating system. This has the benefit that you can run multiple operating systems on the same hardware which saves a lot of money, and you can move virtual machines from one VMware Server to the next one (or to a system that has the VMware Player which is also free).
Clone/Back Up/Restore OpenVZ VMs With vzdump
vzdump is a backup and restore utility for OpenVZ VMs. This tutorial shows how you can use it to clone/back up/restore virtual machines with vzdump.
VBoxHeadless - Running Virtual Machines With VirtualBox 2.0 On A Headless CentOS 5.2 Server
This guide explains how you can run virtual machines with Sun xVM VirtualBox 2.0 on a headless CentOS 5.2 server. Normally you use the VirtualBox GUI to manage your virtual machines, but a server does not have a desktop environment. Fortunately, VirtualBox comes with a tool called VBoxHeadless that allows you to connect to the virtual machines over a remote desktop connection, so there's no need for the VirtualBox GUI.
The Perfect Desktop - Ubuntu Studio 8.10
This tutorial shows how you can set up an Ubuntu Studio 8.10 desktop that is a full-fledged replacement for a Windows desktop, i.e. that has all the software that people need to do the things they do on their Windows desktops. The advantages are clear: you get a secure system without DRM restrictions that works even on old hardware, and the best thing is: all software comes free of charge.
Anonymous Proxy Using SQUID 3 On CentOS 5.x
This howto describes step by step a method to install a SQUID 3 server as an Anonymous Proxy. An anonymous proxy is a tool that attempts to make activity on the Internet untraceable. It accesses the Internet on the user's behalf, protecting personal information by hiding the source computer's identifying information. Simply say to hide your IP.
Installing Wordpress On A Server Running ISPconfig 2.x
This tutorial describes how I install Wordpress which I have done this way on numerous different servers, including Windows and Linux setups. I absolutely agree that there are other ways to do this, but this is a tutorial on my way of doing it.
Setting Up Master-Master Replication On Four Nodes With MySQL 5 On Debian Etch
This tutorial explains how you can set up MySQL master-master replication on four MySQL nodes (running on Debian Etch). The difference to a two node master-master replication is that if you have more than two nodes, the replication goes in a circle, i.e., with four nodes, the replication goes from node1 to node2, from node2 to node3, from node3 to node4, and from node4 to node1.
NIC Bonding On Slackware 12.1
I was standing in front of a problem while I built a NFS Storage Server. It is necessary for me to have redundancy in every point of view. I solved all redundancy issues I had by using server hardware with redundant power supplies, a Raid 1+ 0 Raid array and two UPS’s one for each power supply. The only thing left in my mind was what about a network failure? Well just use the two Gig NIC’s and hook each of them up to its own switch. Great idea but how do I get them acting as one unit speak one single IP? NIC Bonding was my solution. After a couple of hours researching on the Internet stumbled upon the build in solution by using ifenslave.
Hardening The Linux Kernel With Grsecurity (Debian)
Security is based on three characteristics: prevention, protection and detection. Grsecurity is a patch for Linux kernel that allows you to increase each of these points. This howto was performed on a Debian Lenny system. Thus some tools are Debian specific. However, tasks can be performed with other distro specific tools or even with universal tools (make).
Setting Up ProFTPd + TLS On Ubuntu 8.10 (Intrepid Ibex)
FTP is a very insecure protocol because all passwords and all data are transferred in clear text. By using TLS, the whole communication can be encrypted, thus making FTP much more secure. This article explains how to set up ProFTPd with TLS on an Ubuntu 8.10 server.