This site is a static archive of the Aegir community site. Documentation has moved to http://docs.aegirproject.org. Other community resources can be found on the Contacting the community page.
Skip navigation

Revision of HINTS_Solaris.txt from Sat, 02/26/2011 - 17:15

Help

HINTS_Solaris.txt

Tagged:

.. -- mode: rst; fill-column: 78; -- .. This document is formatted using the ReST syntax.

================================================

Aegir -- Solaris installation instructions hints

This is a helper file to the canonical INSTALL.txt. It is aimed at helping you install Aegir on Solaris. It simply lists commands that diverge from the base INSTALL.txt in a concise document that will be easy to maintain in the long term.

It is recommended that the INSTALL.txt document is consulted before going ahead with this install.

We reuse the same process describe in that document:

  1. Install requirements
  2. Configure system requirements, which include:
    • create a Aegir user
    • configure Apache, MySQL, DNS, etc
  3. Run the install script

1. Install software requirements

TODO: Show how to install:

  • Apache2
  • git
  • sudo
  • mysql
  • PHP 5.2
  • wget

unzip and sendmail should be part of the base Solaris install. Other applications should be available on the companion CDs or:

http://www.sunfreeware.com/

In particular, git can be compiled easily by exporting the following environment:: export CFLAGS="-I/usr/sfw/include -I/opt/sfw/include" export LD_LIBRARY_PATH="/usr/sfw/lib:/opt/sfw/lib:$LD_LIBRARY_PATH"

Then the compile instructions bundled with git should just be followed plainly.

XXX: I had trouble installing the binaries, as git expects ginstall to be available in the path. I ended up adding the source directory in the path, which works fine for most uses.

2. Configure system requirements

Shell commands:: groupadd aegir useradd -g aegir -G webservd -d /var/aegir -s /bin/bash -c "Aegir sandbox" aegir chown aegir:aegir /var/aegir echo "Include /var/aegir/config/apache.conf" >> /etc/apache2/httpd.conf

MySQL commands:: # Replace 'aegir_password' with the chosen password for 'aegir' mysql account CREATE DATABASE aegir; GRANT SELECT, INSERT, UPDATE, DELETE, CREATE, DROP, INDEX, ALTER, \ CREATE TEMPORARY TABLES, LOCK TABLES ON aegir.* TO \ 'aegir'@'localhost' IDENTIFIED BY 'aegir_password'; # Create a mysql super user (with GRANT OPTION) # Replace 'aegir_root_password' with a new password GRANT USAGE,CREATE USER ON . TO 'aegir_root'@'localhost' \ IDENTIFIED BY 'aegir_root_password' WITH GRANT OPTION; GRANT ALL PRIVILEGES ON site\_%.* TO 'aegir_root'@'localhost';

3. Run the install script

Download the install.sh script per the instructions in Step 3 of the canonical INSTALL.txt file, with modifications below.

Shell commands:: su - aegir bash install.sh.txt aegir.example.com

Be sure to change 'aegir.example.com' to match the URI of your site.

You can append '--client_email=you@example.com' if you wish to receive the traditional Drupal 'Welcome' e-mail upon completion of the installation. This e-mail address will also be used as the default e-mail address of the first user and client in Aegir, but can be changed later.

4. Common issues

Drush issue

Solaris suffers from the dreaded execution issues of drush:

http://drupal.org/node/637574 http://drupal.org/node/586466

Those can be worked around by hardcoding the --php executable on the commandline path. Adding the proper shebang header and using a proper PATH that includes the PHP executable also helps.

Cron issues

I had numerous problems setting up a proper cron job, as Solaris' crond seems pretty anal about what it accepts. The only way I could get it to work was to create a wrapper shell script that would be called using the simplest cron tab.

Crontab entry::

          • /var/aegir/dispatch.sh

Content of dispatch.sh:: #!/usr/bin/bash

HOME=/var/aegir LD_LIBRARY_PATH=/usr/lib:/usr/local/lib:/usr/lib/sparcv9:/opt/mysql/mysql/lib:/usr/sfw/lib:/usr/sfw/lib/gcc:/opt/sfw/lib PATH=/usr/bin:/opt/mysql/mysql/bin:/usr/sfw/bin:/opt/sfw/bin:/opt/SUNWspro/bin:/usr/local/bin:/opt/csw/bin

export HOME export LD_LIBRARY_PATH export PATH

php '/var/aegir/drush/drush.php' --php=/usr/local/bin/php '@hostmaster' hosting-dispatch

Need help?

Documentation

The notebook section provides a way for you to store and share information with your group members. With the book feature you can:

  • Add book pages and organize them hierarchically into different books.
  • Attach files to pages to share them with others.
  • Track changes that others have made and revert changes as necessary.
  • Archive books that are no longer of interest to the group. Archived books can be reactivated later if needed.

The revisions let you track differences between multiple versions of a post.