Loading...
 
Skip to main content

Linux Install

This is an Installation guide for GNU/Linux-Apache-MySQL-PHP4+ Installation

For other installation instructions see: installation

Before you start

  • Read through this entire document at least once before doing anything
  • Check your Requirements

Initial Steps: Download, Unpack, Create Directories


These initial steps presume you're installing on a Linux machine running the Apache Webserver. Read this once top to bottom before getting started. If you're using a Windows box you can ignore the portion about setting permissions, but you'll have to set up some of Tiki's directories manually.

For additional installation information: InstallTiki and InstallTikiHelp.
  1. Decide where your tikiroot should be, that will be the relative url path to your site.
  2. Download the Tikiwiki installation file from sourceforge.net/projects/tikiwiki.
    • E.g., tikiwiki_1.7.tar.bz2
  3. Unpack all files to the document root of your Tiki.
    • unzip the zip archive or tar xvjf the bz2 file.
    • E.g., tar xvjf tikiwiki_1.7.tar.bz2
  4. Rename the unpacked Tiki package's directory to whatever you want to name your Tiki's root directory--tiki, if you wish.
    • E.g., /var/www/tiki/ or /var/www/noodle/ or whatever
    • E.g., on Linux,
      • mv lasttiki_release_eta_carinea_rc1 tiki
  5. Determine what user and group your webserver runs as--using the command 'id'.
    • E.g., nobody and nobody or "www" and "www", both common choices
    • You might try looking in /usr/local/apache/conf/ for the file httpd.conf. Under the User and Group headings, you will see the user and group Apache is configured to run under.
  6. The set-up script (setup.sh) in the root Tiki directory assigns necessary permissions for the directories that Tiki writes files to. It also creates the (initially empty) cache directories.
    1. On Linux, first set the permissions for setup.sh to make it executable.
      • Copy to clipboard
        chmod 755 setup.sh
    2. Execute setup.sh. Its usage is
      • Copy to clipboard
        ./setup.sh user [group] [rights] [list of virtual host domains]
      • E.g., if Apache is running as user nobody and group nobody, type:
        • Copy to clipboard
          su -c './setup.sh nobody'
      • Alternatively, you may wish to set both the user and group:
        • Copy to clipboard
          su -c './setup.sh nobody nobody'
      • This will allow you to delete certain files/directories without becoming root. Or, if you can't become root, but are a member of the group Apache runs under (for example, nobody), you can type:
        • Copy to clipboard
          ./setup.sh nobody nobody
      • If you can't become root, and are not a member of the Apache group, then type:
        • Copy to clipboard
          ./setup.sh $USER yourgroup 02777
        • Replace yourgroup with your default group.
        • NOTE: If you do execute this last command, you will not be able to delete certain files created by Apache. You will need to ask your system administrator to delete them for you, if needed. see Toggg's solution
        • An alternative setup procedure at InstallWithOnlyFtpAccess may be more useful if you cannot become root and are not in the Apache group, a common issue with shared hosting.
    • If you have problems accessing a directory, check the open_basedir entry in /etc/php.ini or Apache's httpd.conf.

Create a MySQL Database

  1. Connect to your MySQL database server with an application such as PhpMyAdmin or MySQLCC and create a Tiki database.
    • Although the name is arbitrary, it's best to call it tiki.
    • Of course, you may access MySQL from the command line, too:
      • Copy to clipboard
        mysqladmin create ''dbname''
    • For security you can create an user to Tiki access to the database. There are in the MySQL site instructions on how create users, for that case in example could be
      Copy to clipboard
      mysql -u root mysql grant SELECT, INSERT, UPDATE, DELETE, CREATE, DROP, INDEX, ALTER on tiki.* to tikiuser@localhost identified by 'tikipassword';
      (assuming the user will be tikiuser with tikipassword as password)

  1. You do not have to manually create any tables in the database..