Commit 1ca5fb45 authored by Prosper De Laure's avatar Prosper De Laure

Readme modification

parent a316449f
Installation procedure
======================
This procedure will guide you step by step through the installation of MaarchRM.
The software is packaged with default configuration and data that allow you to
run the archiving system in a “demo” mode. For a custom installation, please
read the docs at <http://wiki.maarch.org/Maarch_RM>.
This procedure is made for a Debian GNU Linux8 64bit system with a
PostgreSQL 9.4 database. Most of the command lines will require administrator
rights.
Prerequisite
------------
### Application server
- Server Apache 2.4 (or higher)
- Module Apache rewrite_module
```
a2enmod rewrite
```
- Module Apache env_module
```
a2enmod env
```
- PHP 5.4 (or higher)
```
apt-get install php5
```
- Extension PHP fileinfo
- Extension PHP mcrypt
```
apt-get install php5-mcrypt
```
- Extension PHP pdo
```
apt-get install php5-pgsql
```
- Extension PHP pdo_pgsql
- Extension PHP xsl
```
apt-get install php5-xsl
```
Description
===========
MaarchRM is a open source software that allows you to store, find and display
your digital resources in compliance with international regulation ISO.
It’s a full featured PHP PostgresSQL software.
Licence
=======
MaarchRM is released under the GPL v3 (or later) license, see [LICENCE.txt](https://labs.maarch.org/maarch/maarchRM/blob/master/LICENCE.txt)
Requirements
============
- Server Apache 2.4 (or greater)
- Module Apache rewrite_module
- Module Apache env_module
- PHP 5.4 (or greater)
- Extension PHP fileinfo
- Extension PHP mcrypt
- Extension PHP pdo
- Extension PHP pdo_pgsql
- Extension PHP xsl
- Application 7z
```
apt-get install p7zip-full
```
- JAVA 1.7 (JRE)
```
apt-get install default-jre
```
- git
```
apt-get install git
```
We recommend to have a minimum of 1Gb free disk space (it depends on the
amount of data you have to store on the system)
### System user for the software
You have to create a user “maarch” in the group “www-data” with a “home”
directory.
```
useradd -m -g www-data maarch
```
To give the user the ability to launch batches, the user must launch the Apache2
server. In order to ensure this, you have to edit the Apache2 configuration file
(*/etc/apache2/envvars*). Change the file with the following value :
```
export APACHE_RUN_USER=maarch
```
You can test the Apache configuration with one of the following commands :
```
apache2ctl configtest
```
### Database server
Server PostgreSQL 9.4 (or higher)
```
apt-get install postgresql-9.4
```
### Client
Any HTML5 / CSS3 web browser.
Installation
------------
The software must be cloned in your Apache web directory (*/var/www/* by
default) in a folder named “laabs”.
```
cd /var/www
git clone https://labs.maarch.org/maarch/maarchRM.git laabs
```
### Symbolic links
Then you have to create symbolic link of html dependency from the public
directory (*/var/www/laabs/web/public/dependency*).
```
mkdir -p /var/www/laabs/web/public/dependency
cd /var/www/laabs/web/public/dependency
ln -s ../../../dependency/html/public/ html
```
You also need to create the symbolic link of 7z binaries file in fileSystem
dependency (*/var/www/laabs/dependency/fileSystem/plugins/zip/bin/*).
```
cd /var/www/laabs/web/public/dependency
ln -s /usr/bin/7z 7z
```
### Rights modification and demo repository
Add the demo repository folders
```
cd /var/www/laabs/data/maarchRM/
mkdir repository
mkdir repository/archives_1
mkdir repository/archives_2
```
The rights of the entire */var/www/laabs* folder must be changed.
```
cd /var/www
chown -R maarch:www-data laabs/
chmod -R 775 laabs/
```
PostgreSQL administration
-------------------------
### User creation (not needed if you already have a user to administrate the database)
Connect to the database with postgres user and execute the following command
lines :
```
psql
CREATE USER maarch;
ALTER ROLE maarch WITH CREATEDB;
ALTER ROLE maarch WITH SUPERUSER;
ALTER USER maarch WITH ENCRYPTED PASSWORD 'maarch';
CREATE DATABASE "maarchRM" WITH OWNER maarch;
\q
exit
```
### Demo structure and data
In the folder */var/www/laabs/data/maarchRM/batch*/psql, you can find scripts for
postgreSQL installation. Execute the following command with root privileges :
```
cd /var/www/laabs/data/maarchRM/batch/pgsql
./schema.sh -u=maarch -h=5432 -d="maarchRM" -h=127.0.0.1
./data.sh -u=maarch -h=5432 -d="maarchRM" -h=127.0.0.1
```
Configuration
-------------
### Publication
The publication of a MaarchRM instance requires to add some environment
variables.
#### Apache
The instances are published by http server under named virtual hosts form, a
specific configuration and environment variables for execution.
Edit the Apache sites available configuration (generally in
*/etc/apache2/sites-available/000-default.conf*) to include the virtual host of
the software :
```
# Application Maarch RM
Include /var/www/laabs/data/maarchRM/conf/vhost.conf
```
Edit the configuration file */var/www/laabs/data/maarchRM/conf/vhost.conf* and
define the default values.
```
# Path to the public web folder of MaarchRM
DocumentRoot /var/www/laabs/web/
# Name of the vhost (same as the name associated to the IP address in the host file)
ServerName maarchrm
```
This file also contain all the environment variables of the published instance :
- The path to the software configuration file
- The secret encryption key of the security token
- The cache management
- etc.
You can find the complete description of [those variables](http://wiki.maarch.org/Maarch_RM/Configuration).
After those configuration changes, you can restart Apache :
```
service apache2 restart
```
#### MaarchRM configuration
The configuration *(configuration.ini)* can be find in a main file. This file’s
name is defined for the execution environment :
- In the configuration of virtual host(s)
- In each script of the application to use it with command lines (batch, sh)
The configuration files can initially be found in configuration folder of
MaarchRM :
```
cd /var/www/laabs/data/maarchRM/conf
```
Edit the *confvars.ini* file that contains variable for database connection :
```
@var.dsn = "pgsql:host=localhost;dbname=maarchRM;port=5432"
@var.username = maarch
@var.password = maarch
```
#### Connection to software
In order to connect to the right virtual host, you have to add a line in the client
host file (*/etc/hosts*)
```
127.0.0.1 maarchrm
```
You can now use the application with a web browser by entering the url : *http://maarchrm*
 
You can connect with the administrator user ‘superadmin’ with the password
‘superadmin’.
The other default users have the password ‘maarch’.
 
Install
=======
- Upload MaarchRM to your webserver.
- Create the repository *\<MaarchRM_Path\>/web/public/dependency*.
- Create a symbolic link of *\<MaarchRM_Path\>/dependency/html/public* named
*html* in that folder.
- For linux users : Create a symbolic link of 7zip executable named *7z* in
that same folder.
- For Windows users : Uncomment the “zipExecutable” line of the configuration
file *\<MaarchRM_Path\>/data/maarchRM/conf/conf.d/dependency\#fileSystem.ini* and write the right path of your 7zip executable.
- Configure MaarchRM to connect to your database in the file *\<MaarchRM_Path\>/data/maarchRM/conf/confvars.ini* .
- The structure of the database can be setup by the script file *\<MaarchRM\>/data/maarchRM/batch/pgsql/schema.sh* and the *\<MaarchRM\>/data/maarchRM/batch/pgsql/data.min.sh* will give you the data to start with.
- A default virtual host to run the application can be find in *\<MaarchRM\>/data/maarchRM/conf/vhost.conf* (vhost.win.conf for windows user). Export that virtual host to your apache server.
- Login to the application throw your web browser (default admin user/password is “superadmin”/”superadmin”).
- You are ready to go !
Enjoy ;) !
## Installation Maarch RM
---
### Informations
Installation réalisée sur un système GNU Linux Ubuntu 14.04 LTS avec posgreSQL 9.3.6
La plupart des commandes qui seront exécutées nécessiteront potentiellement des droits
administrateur sur le système.
---
### Prérequis
- Navigateur internet HTML5 / CSS3
- Version PHP 5.4 minimum
- Extension PHP file info
- Extension PHP mcrypt
- Extension PHP pdo
- Extension PHP pdo_pgsql
- Extension PHP xsl
- Module Apache rewrite_module
- Module Apache env_module
- Postgres 9.3 ou supérieur
- Application 7z
- Environnement d'exécution JAVA 1.7 (Optionnel : Pour le plugin jhove afin de valider le format des fichiers)
---
### Installation
#### Récupération des sources
##### Framework Laabs
À partir du répertoire web (habituellement */var/www*), récupérer les sources du framework Laabs. Le dossier laabs se créé automatiquement :
$ svn checkout http://svn.laabs-framework.in/framework/trunk laabs
##### Application Maarch RM
À partir du répertoire contenant les applications développées pour le framework (*/var/www/laabs/data/*), récupérer les sources de l'application Maarch RM. Le répertoire maarchRM se créera automatiquement.
$ svn checkout http://svn.laabs-framework.in/data_maarchRM/trunk/ maarchRM
##### Dépendances, bundles et présentation
À partir du répertoire contenant les scripts développées pour l'application Maarch RM (*/var/www/laabs/data/maarchRM/batch), exécuter *checkout.linux.sh*.
$ sh checkout.linux.sh
#### Accès et droits
##### Le Lien symbolique
À partir du répertoire public des dépendances (*/var/www/laabs/web/public/dependency*), créer un lien symbolique de la dépendance html
$ ln -s ../../../dependency/html/public/ html
##### Changement des droits
À partir de la zone web (*/var/www*), remettre si nécessaire les droits et autorisation sur l'ensemble de la zone :
$ chown -R www-data. laabs/
$ chmod -R 775 laabs/
---
### Administration de PostgreSQL
#### Création d'un utilisateur
(Optionnel si vous possédez déjà un utilisateur avec les droits pour gérer la base de données de l'application)
Se connecter en tant qu'utilisateur postgres (depuis l'utilisateur administrateur, aucune mot de passe est nécessaire) et executer la commande suivante :
$ psql
#### Créer un utilisateur
CREATE USER maarch;
ALTER ROLE maarch WITH CREATEDB;
ALTER ROLE maarch WITH SUPERUSER;
ALTER USER maarch WITH ENCRYPTED PASSWORD 'mon mot de passe';
CREATE DATABASE "nom de la BDD" WITH OWNER maarch;
\q
exit
#### Création des tables et schémas pour l'application Maarch RM
À partir du répertoire contenant les scripts développées pour l'application Maarch RM (*/var/www/laabs/data/maarchRM/batch), exécuter *checkout.linux.sh*.
$ /bin/bash sql.linux.sh
---
### Configuration
#### Système
##### Fichier hosts
Ajouter dans le fichier hosts du système :
Pour l'exemple, l'adresse IP est en localhost. Le nom qui suit doit correspondre au paramètre "ServerName" du vhost. (voir le fichier "vhost.conf" dans le dossier de configuration de l'application Maarch RM */var/www/laabs/data/maarchRM/conf*)
127.0.0.1 maarchrm
##### Système d'exploitation
Cette partie est optionnel dans le cas ou aucune conversion ne sera réaliser.
Afin de pouvoir convertir des fichiers à l'aide du logiciel LibreOffice, il est nécessaire de disposer d'un utilisateur système ayant un répertoire "home" et étant dans le groupe "www-date".
Pour créer un utilisateur ayant un répertoire "home" avec le groupe "www-data" éxécutez la commande suivante :
$ useradd -m -g www-data <nom de l'utilisateur>
Si l'utilisateur existe déjà, rajoutez simplement lui le groupe "www-data" :
$ usermod -a -G www-data <nom de l'utilisateur>
Afin que cette utilisateur soit utilisé pour réaliser les conversions, il est nécessaire que le serveur Apache2 soit lancé par lui. Pour cela il faut editer le fichier de configuration d'Apache2 (*/etc/apache2/envvars*).
Modifier le fichier avec la valeur :
export APACHE_RUN_USER=<nom de l'utilisateur>
Il est possible de tester la configuration du serveur Apache avec une des deux commandes suivante :
$ apache2ctl configtest
$ service apache2 configtest
Des droits sur certains dossier ou fichier devront être modifiés pour donner l'accès à l'utilisateur ou les membres du groupe "www-data".
#### Apache
Ajouter dans la configuration d'apache :
# Application Maarch RM
Include /var/www/laabs/data/maarchRM/conf/vhost.conf
Relancer Apache :
service apache2 restart
#### Application Maarch RM
Aller dans le répertoire de configuration de l'application Maarch RM
cd /var/www/laabs/data/maarchRM/conf
Éditer le fichier de configuration "confvars.ini" et remplacer les paramètres par les bonnes valeurs
@var.dsn = "pgsql:host=<adresse de la BDD>;dbname=<nom de la BDD>;port=<port de la BDD>"
@var.username = <utilisateur BDD>
@var.password = <mot de passe de l'utilisateur>
@var.laabsDirectory = "<chemin absolu du framework Laabs>"
Éditer le fichier de configuration "vhost.conf" et remplacer les paramètres par les bonnes valeurs
# Chemin vers le répertoire public web de Laabs
DocumentRoot /var/www/laabs/web/
# Nom du vhost (identique au nom associé à l'adresse IP dans le fichier host)
ServerName maarchrm
Il ne faut pas oublié de rensigner les diverses autres valeurs si nécessaire.
---
### Connexion à l'application
Une fois toutes les opérations précédentes terminées, l'application est accessible depuis le navigateur internet.
http://<Nom mis dans le fichier hosts et dans l'attribut ServerName du fichier vhost.conf>/
Avec notre exemple :
http://maarchrm/
L'administrateur fonctionnel est 'superadmin', mot de passe 'superadmin'.
Tous les autres utilisateurs livrés dans les données d'exemple ont pour mot de passe par défaut 'maarch'.
\ No newline at end of file
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment