The installer is designed to be run on servers that have a basic operating system installed, but no more than that. If you are setting up a new ZendTo server, this is what you want. Many sites now have a standard "blank template", on top of which all their services are built. This template usually contains settings for features such as authentication, security, logging and backups. The installer should work well on these types of systems.

The installer will automate (almost!) the entire process is installing ZendTo on to a blank server installation.

Note: If you are already running ZendTo on the server, upgrade the package itself first either directly or using the yum/apt repositories, and then only use whichever bits of the installer you need to (if any).

It talks to you along the way, asks if you want to do each of the 8 steps, and asks you to confirm the odd question or two. It pauses quite a bit so you can see what it's doing, giving you the chance to stop it temporarily (Ctrl-S) to read what it's done before you continue (Ctrl-Q), or stop it completely (Ctrl-C). If you stop it completely, you can just run it again to continue where you left off.

It is modular, so you can run each of the 8 parts alone; you may want to do this when, for example, there is an update to PHP5 and you want to just rebuild PHP with "big uploads" support.

The parts are:

  1. Install web server and development tools.
  2. Rebuild PHP from source, including support for uploads >4GB.
  3. Install and configure virus scanner, including SELinux and AppArmor support for it.
  4. Configure firewall holes for ssh, http and https.
  5. Configure web server and PHP.
  6. Configure email sending.
  7. Install ZendTo itself and configure usage stats graphing.
  8. Configure SELinux on CentOS and RedHat 5, 6 & 7.

The installer has been developed and tested on all of the following:

  • CentOS 5, 6 and 7
  • RedHat Enterprise Linux 5, 6 and 7
  • Ubuntu Server 14 and 16

It is fully compatible with SELinux, AppArmor and the systems' firewalls, and will configure each appropriately.

There are 2 things the installer does not currently do:

  • Configure an https version of the website. This requires steps such as acquiring an SSL certificate, which I cannot easily automate (and no, I haven't learned how to use yet).
  • Configure MySQL, as new installations will not need it anyway.

To use the installer,

  1. Become root with "su -" if using CentOS or RedHat, or "sudo su -" if using Ubuntu or Debian.
  2. Download the installer
  3. Unpack it and cd into it:
    tar xzvf install.ZendTo.tgz
    cd install.ZendTo
  4. Run the installer:


Note: (updated 6th June 2015) If you are upgrading from version 4.11 or earlier and use MySQL, you will need to update your MySQL database. See the instructions in /opt/zendto/sql/README.MySQL and run the 2nd "mysql" command.

Note: If you use MyZendTo (not many of you) and are upgrading from version 4.02 or earlier, read the notes at the bottom of /opt/zendto/sql/README.MySQL as you need to slightly alter your database for the user quota support. This only applies if you use MyZendTo. ZendTo is not affected at all. If you upgrade MyZendTo but use SQLite, then please contact me for assistance with the upgrade.

Note: If you are upgrading from version 3.89 or earlier, move any customised templates out of the way completely before you start, as the new package will need to install new template files for the new user interface design. You will also need to change your zendto.conf file so the "CSSTheme" setting points to "swish" instead of "duracell".

Note: If you are upgrading from ZendTo version 3.59 or earlier, you need to add some tables to the database. The Change Log entries for version 3.59 and earlier explain what you need to do as part of your upgrade.