Initial manual installation

  1. Expand the Swarm package (a compressed tarball).

    Many graphical file manager applications (Nautilus on Linux, Finder on Mac, etc.) can automatically expand the Swarm tarball package by simply double-clicking it.

    From the command line, expand it via the tar command:

    $ tar -zxf swarm.tgz
    

    The contents of the Swarm package are expanded into a top-level folder named swarm-version, where version corresponds to the version downloaded.

  2. Move the contents of the Swarm package to the correct location.

    Identify a location for the Swarm files; this should correspond to a location associated to the virtual host configured under Apache (see Apache configuration).

    $ mv /path/to/swarm-version /path/to/vhosts/swarm
    
  3. Assign correct ownership and permission for the Swarm files.

    The data top-level folder in the Swarm distribution needs to be writeable by the web server. To achieve this effect, simply change ownership of the data folder to the web user:

    $ sudo chown -R www /path/to/vhosts/swarm/data
    

    The www user above is an example of what the web server user name might be. Depending on your distribution, this could be _www, web, nobody or something else entirely.

    If your web server is already running, you can discover the user with:

    $ ps aux | grep -E 'apache|httpd'
    root      3592  0.0  0.5 405240 20708 ?        Ss   May03   4:32 /usr/sbin/apache2 -k start
    www      20016  0.0  0.2 405264  9796 ?        S    07:45   0:00 /usr/sbin/apache2 -k start
    

    In this example, www is the user Apache is running as.

    From a security perspective, we recommend that the minimum file permissions should be granted to the user/group under which the web server runs against the Swarm distribution.