Modifications entre les versions 3 et 5 (s'étendant sur 2 versions)
Version 3 à la date du 2015-09-30 19:58:07
Taille: 7297
Commentaire: simplification de la requête + suppression du bashisme
Version 5 à la date du 2015-10-06 14:29:26
Taille: 9316
Éditeur: PatrickHétu
Commentaire: typo
Texte supprimé. Texte ajouté.
Ligne 25: Ligne 25:
:: .. code-block:: sh
Ligne 35: Ligne 35:
::

    VERSION=`wget -q https://owncloud.org/changelog -O- | \
        sed -n '/Version [0-9\.]\+/{s/^.*Version \([0-9\.]\+\).*$/\1/p;q}'`
.. code-block:: sh

    VERSION=`wget https://owncloud.org/changelog -O - |\
        sed -n '/Version [0-9\.]\+/{s/^.*Version \([0-9\.]\+\).*$/\1/p;q}'`
Ligne 43: Ligne 43:
:: .. code-block:: sh
Ligne 50: Ligne 50:
:: .. code-block:: sh
Ligne 56: Ligne 56:
:: .. code-block:: sh
Ligne 62: Ligne 62:
:: .. code-block:: sh
Ligne 69: Ligne 69:
Pour installer owncloud depuis un dépôt Debian/Ubuntu, veuillez suivre les instructions à la page::
  `https://software.opensuse.org/download/package?project=isv:ownCloud:community&package=owncloud <https://software.opensuse.org/download/package?project=isv:ownCloud:community&package=owncloud>`_
Pour installer owncloud depuis un dépôt Debian/Ubuntu, veuillez suivre les instructions à la page:

-
`https://software.opensuse.org/download/package?project=isv:ownCloud:community&package=owncloud <https://software.opensuse.org/download/package?project=isv:ownCloud:community&package=owncloud>`_
Ligne 74: Ligne 75:
:: .. code-block:: sh
Ligne 87: Ligne 88:
:: .. code-block:: sh
Ligne 98: Ligne 99:
:: .. code-block:: php
Ligne 113: Ligne 114:
::

    <VirtualHost default:80>
.. code-block:: xml

    <VirtualHost _default_:80>
Ligne 117: Ligne 118:
            Redirect permanent / `https://nuage.auf.org <https://nuage.auf.org>`_             Redirect permanent / https://nuage.auf.org
Ligne 120: Ligne 121:
    <IfModule mod\_ssl.c>
    <VirtualHost default:443>
    <IfModule mod_ssl.c>
    <VirtualHost _default_:443>
Ligne 135: Ligne 136:
    ErrorLog ${APACHE\_LOG\_DIR}/nuage.auf.org\_error.log
    CustomLog ${APACHE\_LOG\_DIR}/nuage.auf.org\_access.log combined

    LogLevel warn
<FilesMatch "\\.(cgi|shtml|phtml|php)$">
            SSLOptions +StdEnvVars
    </FilesMatch>
    <Directory /usr/lib/cgi-bin>
            SSLOptions +StdEnvVars
    </Directory>
         ErrorLog ${APACHE_LOG_DIR}/nuage.auf.org_error.log
         CustomLog ${APACHE_LOG_DIR}/nuage.auf.org_access.log combined

            # Possible values include: debug, info, notice, warn, error, crit,
            # alert, emerg.
            LogLevel warn
        
<FilesMatch "\.(cgi|shtml|phtml|php)$">
                    SSLOptions +StdEnvVars
            </FilesMatch>
            <Directory /usr/lib/cgi-bin>
                    SSLOptions +StdEnvVars
            </Directory>
Ligne 151: Ligne 154:
:: .. code-block:: sh
Ligne 181: Ligne 184:
:: .. code-block:: html
Ligne 191: Ligne 194:
Ensuite, les templates de courriels doivent être traduits.

- Notification d'activité

.. code-block:: php

    <?php
    /** @var OC_L10N $l */
    /** @var array $_ */
    $l = $_['overwriteL10N'];

    print_unescaped($l->t('Bonjour %s,', array($_['username'])));
    p("\n");
    p("\n");

    if ((int) $_['timeframe'] === \OCA\Activity\UserSettings::EMAIL_SEND_HOURLY) {
      print_unescaped($l->t('Vous recevez ce courriel car dans la dernière heure les activités suivantes ont eu lieu à %s', array($_['owncloud_installation'])));
    } else if ((int) $_['timeframe'] === \OCA\Activity\UserSettings::EMAIL_SEND_DAILY) {
      print_unescaped($l->t('Vous recevez ce courriel car depuis hier les activités suivantes ont eu lieu à %s', array($_['owncloud_installation'])));
    } else {
      print_unescaped($l->t('Vous recevez ce courriel car dans la dernière semaine les activités suivantes ont eu lieu à %s', array($_['owncloud_installation'])));
    }
    p("\n");
    p("\n");

    foreach ($_['activities'] as $activityData) {
      print_unescaped($l->t('* %1$s - %2$s', $activityData));
      p("\n");
    }
    if ($_['skippedCount']) {
      print_unescaped($l->n('* et %n de plus ', '* et %n de plus ', $_['skippedCount']));
      p("\n");
    }
    p("\n");
Ligne 194: Ligne 232:
Pour rendre disponible le modmellon depuis owncloud vous devez Installer le plugin suivant::
  `https://apps.owncloud.com/content/show.php/user_servervars?content=158863 <https://apps.owncloud.com/content/show.php/user_servervars?content=158863>`_
Pour rendre disponible le modmellon depuis owncloud vous devez Installer le plugin suivant:

-
`https://apps.owncloud.com/content/show.php/user_servervars?content=158863 <https://apps.owncloud.com/content/show.php/user_servervars?content=158863>`_
Ligne 198: Ligne 238:
:: .. code-block:: sh
Ligne 209: Ligne 249:
:: .. code-block:: sh
Ligne 217: Ligne 257:
Faire les mêmes étapes que lors de l'installation pour le téléchargement. Pour vérifier la version courante utilisez la commande:

.. code-block:: sh

    owncloud/occ status

Pour télécharger la dernière version, suivre les mêmes étapes décrite
dans la section `1.1 Installation`_.
Ligne 220: Ligne 268:
:: .. code-block:: sh
Ligne 226: Ligne 274:
:: .. code-block:: sh
Ligne 233: Ligne 281:
:: .. code-block:: sh
Ligne 239: Ligne 287:
:: .. code-block:: sh
Ligne 248: Ligne 296:
:: .. code-block:: sh
Ligne 254: Ligne 302:
:: .. code-block:: sh
Ligne 264: Ligne 312:
:: .. code-block:: sh
Ligne 280: Ligne 328:
::

    mysql owncloud -e "select * from oc_appconfig where appid='user_ldap';"
.. code-block:: sh

    mysql owncloud -e "select configkey, configvalue from oc_appconfig where appid='user_ldap';"
Ligne 286: Ligne 334:
:: .. code-block:: sh

Guide d'installation, configuration et mise-à-jour de Owncloud

Author:Patrick Hetu

1 Serveur

1.1 Installation

Notez que l'ensemble des commandes doivent être exécutées en tant que super utilisateur.

1.1.1 Via le code source
1.1.1.1 Dépendances
apt-get update
apt-get install mysql-server apache2 php5 php5-gd php5-imagick php5-ldap php5-mcrypt php5-curl git bzip2
1.1.1.2 Installation

Vérification de la dernière version disponible et sauvegarde dans la variable VERSION:

VERSION=`wget https://owncloud.org/changelog -O - |\
           sed -n '/Version [0-9\.]\+/{s/^.*Version \([0-9\.]\+\).*$/\1/p;q}'`
echo $VERSION

Télécharger l'archive compressé du code source et sa somme sha256:

wget https://download.owncloud.org/community/owncloud-$VERSION.tar.bz2
wget https://download.owncloud.org/community/owncloud-$VERSION.tar.bz2.sha256

Vérifier la somme:

sha256sum -c owncloud-$VERSION.tar.bz2.sha256 < owncloud-$VERSION.tar.bz2

Si la somme est correcte, extraire l'archive dans le dossier courant:

tar jxvf owncloud-$VERSION.tar.bz2

Rendre l'outil en ligne de commande exécutable.

chmod a+x owncloud/occ
1.1.2 ou via le dépôt Deb

Pour installer owncloud depuis un dépôt Debian/Ubuntu, veuillez suivre les instructions à la page:

Puis installer le paquet:

apt-get update
apt-get install owncloud

1.2 Configuration

1.2.1 Mysql

Première étape, création de la base de données et d'un utilisateur avec les commandes:

mysql -e "create database owncloud;"
mysql -e "grant usage on *.* to owncloud@localhost identified by 'VOTRE_MOT_DE_PASSE';"
1.2.2 Owncloud

Les données de configuration de owncloud spécifique à l'AUF suivantes doivent être ajouter dans le fichier owncloud/config/config.php:

'datadirectory' => '/srv/data',
'ldapIgnoreNamingRules' => false,
'mail_domain' => 'auf.org',
'trusted_domains' =>
  array (
    0 => 'nuage.auf.org',
  ),
1.2.3 Apache

Apache doit être configurer avec les VirtualHost suivant:

<VirtualHost _default_:80>
        ServerName      nuage.auf.org
        Redirect permanent /  https://nuage.auf.org
</VirtualHost>

<IfModule mod_ssl.c>
<VirtualHost _default_:443>
        ServerName  nuage.auf.org
        DocumentRoot /var/www/owncloud
        <Directory />
                Options FollowSymLinks
                AllowOverride None
        </Directory>
        <Directory /var/www/owncloud>
                Options Indexes FollowSymLinks MultiViews
                AllowOverride All
                Order allow,deny
                allow from all
        </Directory>

        ErrorLog ${APACHE_LOG_DIR}/nuage.auf.org_error.log
        CustomLog ${APACHE_LOG_DIR}/nuage.auf.org_access.log combined

        # Possible values include: debug, info, notice, warn, error, crit,
        # alert, emerg.
        LogLevel warn
        <FilesMatch "\.(cgi|shtml|phtml|php)$">
                SSLOptions +StdEnvVars
        </FilesMatch>
        <Directory /usr/lib/cgi-bin>
                SSLOptions +StdEnvVars
        </Directory>

</VirtualHost>
</IfModule>

Puis les modules ssl et rewrite doivent être activés:

a2enmod ssl
a2enmod rewrite
service apache2 reload
1.2.4 AUF
1.2.4.1 LDAP

Configurer ldap dans l'interface d'administration: https://nuage.auf.org/index.php/settings/admin

1.2.4.2 Theme

Le fichier owncloud/core/templates/login.php doit être copié vers owncloud/themes/auf/core/templates/ et la ligne suivante doit être ajouter avant le formulaire de connexion:

<a href="/mellon/login?ReturnTo=https%3A%2F%2F<?php p($_SERVER['HTTP_HOST']); ?>%2F%3Fapp%3Duser_servervars"
   onMouseOver="document.idauf_bouton.src='/themes/auf/core/img/idauf_bouton_survol.png';"
   onMouseOut="document.idauf_bouton.src='/themes/auf/core/img/idauf_bouton.png';">
     <img id="idauf_bouton" width="200" height="32" src="/themes/auf/core/img/idauf_bouton.png" />
</a>

Puis les fichiers images doivent être téléchargés dans leurs répertoires respectifs.

Ensuite, les templates de courriels doivent être traduits.

  • Notification d'activité
<?php
/** @var OC_L10N $l */
/** @var array $_ */
$l = $_['overwriteL10N'];

print_unescaped($l->t('Bonjour %s,', array($_['username'])));
p("\n");
p("\n");

if ((int) $_['timeframe'] === \OCA\Activity\UserSettings::EMAIL_SEND_HOURLY) {
  print_unescaped($l->t('Vous recevez ce courriel car dans la dernière heure les activités suivantes ont eu lieu à %s', array($_['owncloud_installation'])));
} else if ((int) $_['timeframe'] === \OCA\Activity\UserSettings::EMAIL_SEND_DAILY) {
  print_unescaped($l->t('Vous recevez ce courriel car depuis hier les activités suivantes ont eu lieu à %s', array($_['owncloud_installation'])));
} else {
  print_unescaped($l->t('Vous recevez ce courriel car dans la dernière semaine les activités suivantes ont eu lieu à %s', array($_['owncloud_installation'])));
}
p("\n");
p("\n");

foreach ($_['activities'] as $activityData) {
  print_unescaped($l->t('* %1$s - %2$s', $activityData));
  p("\n");
}
if ($_['skippedCount']) {
  print_unescaped($l->n('* et %n de plus ', '* et %n de plus ', $_['skippedCount']));
  p("\n");
}
p("\n");
1.2.4.3 SSO

Pour rendre disponible le modmellon depuis owncloud vous devez Installer le plugin suivant:

dans le dossier apps/ et l'activer avec la commande:

owncloud/occ app:enable user_servervars

et finir sa configuration dans l'interface d'administration.

1.2.4.4 Apps

Les applications suivantes doivent aussi être activées:

owncloud/occ app:enable user_ldap
owncloud/occ app:enable activity

1.3 Mise-à-jour

Pour vérifier la version courante utilisez la commande:

owncloud/occ status

Pour télécharger la dernière version, suivre les mêmes étapes décrite dans la section 1.1 Installation.

Démarrer le mode "Maintenance":

owncloud/occ maintenance:mode

Puis faire une sauvegarde de la base de données en cas de problème:

NOW=$(date +"%m_%d_%Y")
mysqldump owncloud > owncloud_backup_$NOW.sql

Corriger les permissions du répertoire:

chown www-data:www-data owncloud/

Copier les fichiers aux bons endroits:

cp -rf $OLD/config/ owncloud
cp -rf $OLD/theme/ owncloud/
cp -r $OLD/apps/user_servervars owncloud/apps/
cp $OLD/data owncloud/

Lancer le script de mise-à-jour de owncloud:

owncloud/occ upgrade

Mettre le dossier en production et fermer le mode "Maintenance":

mv owncloud owncloud-prod/
owncloud-prod/occ maintenance:mode

1.4 Vérification

Des applications activées:

owncloud/occ app:list

Il faut vérifier que les modules suivantes sont bien activés:

  • activity
  • files_pdfviewer
  • user_ldap
  • user_servervars

Vérification de la configuration LDAP

mysql owncloud -e "select configkey, configvalue from oc_appconfig where appid='user_ldap';"

Vérification de la configuration de user_servervars

mysql owncloud -e "select * from oc_appconfig where appid='user_servervars;"

Projet/NuageAuF/MaintenanceServeur (dernière édition le 2016-10-18 14:13:52 par PatrickHétu)