community.aegirproject.org
Automatic install on Debian
Debian packages have been uploaded to http://debian.koumbit.net/, currently in the "unstable" distribution during the test period. We eventually want to upload those packages to the official archives, but this will take some adaptation and time to sponsor the packages in.
Those are the installation instructions that are recommended on Debian. If you wish to install Debian packages over an existing manual install, it's possible, see the Debian upgrade procedures.
1. Adding the Koumbit repositories
Add the following line to /etc/apt/sources.list.d/koumbit-unstable.list:
deb http://debian.koumbit.net/debian unstable main
.. then run apt-get update.
2. Adding the archive key to your keyring
This archive self-signs packages uploaded to it (and packages uploaded are verified against a whitelist of trusted uploaders) using OpenPGP (GnuPG, to be more precise).
The key of the archive is in the key.asc file. You should add the key using something like this:
wget http://debian.koumbit.net/debian/key.asc
apt-key add key.asc
apt-get update
3. Adding backports
You should also configure backports repositories, for Drush. 4.4 is now in Debian unstable, wheezy, squeeze-backports and Ubuntu Natty.
So if you are running Debian wheezy or later, or Ubuntu Natty or later, you don't need to do anything here. If you are running Debian Squeeze, add the following line to /etc/apt/sources.list :
deb http://www.backports.org/debian/ squeeze-backports main
If you are running Debian lenny or Ubuntu Maverick or Ubuntu versions before Lucid, we recommend downloading and installing the Drush package manually.
For users in Ubuntu LTS (Lucid 10.04), you can instead use Brian Mercer's PPA (Personal Package Archive) using the following command:
sudo add-apt-repository ppa:brianmercer/drush
-
(Ubuntu synced Drush 4.4 in Natty Narwhal 11.04, which should be released by the end of april, but we're still looking for a Ubuntu MOTU to handle the backporting on the Ubuntu side of things. See the followup for the backport.)
4. Manual sudo configuration
If you are running sudo versions previous to 1.7.2p1-1
(in Debian squeeze and Ubuntu Lucid), you will need to manually modify your /etc/sudoers file to add the following line:
aegir ALL=NOPASSWD: /usr/sbin/apache2ctl
5. Installing Aegir
To install aegir, frontend and backend, use the following command:
apt-get install aegir
This will prompt you for the required information and go ahead with the install.
6. Troubleshooting the install
To make the install smoother, the install command is run without much debugging information, which can make diagnostics pretty hard. For this there's a special environment variable you can set that will trigger debugging output. Install aegir with this:
env DEBUG=yes apt-get install aegir
You can build your own Debian packages from our repositories using those instructions.
- Login or register to post comments
- Print entire section
- Talk
Automatic Installation on Ubuntu 11.04+ (QuickStart)
Here are simplified instructions for installing Aegir on a server, quickly and easily.
The fastest way to install Aegir is on the latest Ubuntu Server LTS (Long Term Support). Currently 12.04.
Command Summary
Here is every command, ready to copy and paste.
sudo su
echo "deb http://debian.aegirproject.org stable main" | tee -a /etc/apt/sources.list.d/aegir-stable.list
wget -q http://debian.aegirproject.org/key.asc -O- | apt-key add -
apt-get update
apt-get install aegir
It is highly recommended to read through the Installation Instructions step by step to give yourself the feel for how this is done. In addition, if you are not already familiar in Linux system administration, please read up on the subject. Standard linux security protocols should be followed.
Installation Instructions
Enter all commands in code boxes
exactly as they are written.
ALL commands should be entered as root
user until these instructions are complete. After that, you should never have to use the root user.
Self-installation of Ubuntu has you create an additional user in the admin
group, which means they can sudo. If you are using a cloud hosting service, it likely just sent you root user credentials. Server security and user management is up to you. Don't give away access to root or the aegir user unless you know what you are doing. Follow standard web host best practices
For a summary of all needed commands, scroll to the bottom of the page.
Fire up a new server
- Use Ubuntu 11.04 Server Edition for the smoothest and most reliable installation experience.
- Make sure it has at least 1024MB, preferably 2048MB of memory. Depending on your host you will have to configure a hostname. It can be convenient to call this 'aegir'.
- If you want the smoothest installation, create a brand new server. There will be the least chance of conflicts if you start with a brand new Ubuntu 11.04 server. If you use Ubuntu Desktop, you should be able follow these instructions without any problems.
- Run all commands as root. If you are not root, enter
sudo su
Add the project repositories and archive key
Use this command to add the Aegir package "Software Source" repository to your system:
Use this command to add the archive key to your keyring:echo "deb http://debian.aegirproject.org stable main" | tee -a /etc/apt/sources.list.d/aegir-stable.list
Then, finally, update your apt repositories:wget -q http://debian.aegirproject.org/key.asc -O- | apt-key add -
apt-get update
Install configure Aegir and dependencies
Once you have added the repositories, you can now fire off the standard debian installation command. For Aegir 1.x, the command is:
For Aegir 2.x, the command is:apt-get install aegir
This fires off the installation script for AEgir, along all dependencies including Apache, MySQ and PHP. You will be asked a number of questions about your server.apt-get install aegir2
- You will be asked to create a MySQL root user password. Make this long and random and type it down somewhere safe, you won't need it very often, but you will need it later on in the installation process.
- In Postfix Configuration: Choose Internet Site, unless you have a reason otherwise. When asked for the System mail name, pick either the hostname (default) or the domain name you will be hosting this server on.
- In Configure aegir-hostmaster, you will be asked to choose a "URL of the hostmaster frontend". This should be either the hostname (default) or the domain name the server will be hosting, with "aegir" as a subdomain. For example, "aegir.example.com". You may want to change this to whatever you prefer, just don't forget it as it will be where you use the Aegir front-end.
- After entering your domain, Aegir Hostmaster installation will ask you for the MySQL root password you created earlier. You did write it down, didn't you?
NOTE: The current DEB package requires you to enter the MySQL root password twice. When this script is done, if everything went ok, after a lot of other interesting information, you should see this:Aegir is now installed. You can visit it at http://test/user/reset/1/1329504351/eda205d9a27abde400a27cf160dff69a
***... frontend bootstrap correctly, operation was a success!
Setting up aegir (1.6-1) ...
Setting up libhtml-template-perl (2.9-2) ...
Setting up mysql-server (5.1.54-1ubuntu4) ...
Setting up php5 (5.3.5-1ubuntu7.7) ...
Processing triggers for libc-bin ...
ldconfig deferred processing now taking place
root@test:~#
At this point, everything is installed. Visit the link the script provided you to check out the frontend. Switch to the
aegir
user to check out the backend:su - aegir
Once you are the aegir user, check out the drush site aliases it gives you.
@hostmaster
is the alias for the new front-end you created. You will get new site aliases for every platform and site you create.drush site-aliases
Give yourself access to the server
As the "Administrators Manual" can tell you, you should only manage the Aegir server from the backend as the
aegir
user.However, by default, the
aegir
user cannot sudo (except to restart apache). The aegir user also does not have a password. Therefor, the only way to become aegir is tosudo su - aegir
from a user that can.So, to finish the server, you should give yourself a personal account that you can use to login to the server with a password in case all of your SSH keys get lost.
To add yourself as a user:
Then fill out the little wizard it gives you.adduser yourname
//@TODO: Add some helpful notes about SSH keys and remote aliases.
Install SSH on your server, generating your SSH keys and install them on your Ubuntu server. (Directions to generate your SSH keys are assuming your PC is Ubuntu as well, Windows users look below for SSH directions)
If using Windows, you must use Putty, PuttyGen, and PuttyPageant to generate and use your SSH keys.
- Tutorial #1: http://the.earth.li/~sgtatham/putty/0.53b/htmldoc/Chapter8.html
- Tutorial #2: http://www.howtoforge.com/ssh_key_based_logins_putty
You will want to also be a part of the aegir and www-data groups so you can write to some of their files:
addgroup yourname aegir
addgroup yourname www-dataStart Using!
Now that aegir is installed, head to the User Manual page to get your first platform and site up and running.
Credits
This document was originally based on http://community.aegirproject.org/installing/debian but has been trimmed down to list only the steps you need to use on an Ubuntu server to get Aegir up and running as quickly and easily as possible.
#1
On Squeeze, I tried to install aegir2, but have some dependency errors, firstly stating I need hostmaster2 and provision2, then stating I need drush5.5 or greater. I have installed drush5.8 using php-pear package, but apt-get mustn't know about this.
I thought that running 'apt-get install aegir2' would have picked up the correct hostmaster and provision (aegir-provision2 and aegir-hostmaster2), as I think it does for 'apt-get install aegir'.
root@aegir2:~# apt-get install aegir2
Reading package lists... Done
Building dependency tree
Reading state information... Done
Some packages could not be installed. This may mean that you have
requested an impossible situation or if you are using the unstable
distribution that some required packages have not yet been created
or been moved out of Incoming.
The following information may help to resolve the situation:
The following packages have unmet dependencies:
aegir2 : Depends: aegir-provision2 (>= 2.0~alpha1) but it is not going to be installed
Depends: aegir-hostmaster2 (>= 2.0~alpha1) but it is not going to be installed
E: Broken packages
root@aegir2:~# apt-get install aegir-provision2 aegir-hostmaster2
Reading package lists... Done
Building dependency tree
Reading state information... Done
Some packages could not be installed. This may mean that you have
requested an impossible situation or if you are using the unstable
distribution that some required packages have not yet been created
or been moved out of Incoming.
The following information may help to resolve the situation:
The following packages have unmet dependencies:
aegir-hostmaster2 : Depends: drush (>= 5.5) but 4.5-2~bpo60+1 is to be installed
aegir-provision2 : Depends: drush (>= 5.5) but 4.5-2~bpo60+1 is to be installed
E: Broken packages
Thanks in advance for any help with this.
#2
@mccrodp: I had a similar experiance, and opend this issue: http://drupal.org/node/1920152
#3
Would it be possible to add "profile" as an option, just like "makefile"?
#4
Sure. It would have to be added to the drush hostmaster-install and possibly hostmaster-migrate commands. Feel free to open an issue. Patches welcome ;)
#5
Thanks to jonpugh @ #32 and #33 for helping me get aegir 1.9 going with a fresh install of Debian Wheezy. The default wheezy version of drush is now too new (v5.x) for aegir 1.x. You need version 4.x, available in squeeze-backports. If you've already tried to install and run into "The drush command '@hostmaster status' could not be found." you must purge aegir and drush before attempting to reinstall with the correct drush version pinned.
#6
I had problem installing aegir2 on debian 7. Warning was
ERROR: Module ssl does not exist!
This can be solved with enabling mod_ssl on your apache2. For my case I needed to create /etc/apache2/mods-available/ssl.load with content
LoadModule ssl_module /usr/lib/apache2/modules/mod_ssl.so
After creating that file and restarting apache enable module sudo a2enmod ssl.