Pydio/fr

From SME Server
Jump to navigation Jump to search


Mainteneur

Daniel B.
Firewall Services
mailto:daniel@firewall-services.com


Description

Pydio est un gestionnaire de fichiers basé sur le Web, anciennement connu sous le nom d'Ajaxplorer. Vous pouvez jeter un oeil à la démo en ligne (Utilisez "demo" en login et mot de passe). Cette contrib intègre Pydio avec la contrib SharedFolders/fr.

Si Pydio est installé, vous verrez une nouvelle option dans la configuration des dossiers partagés, vous demandant si vous souhaitez activer l'accès à ce dossier partagé par Pydio.

Systèmes requis

Cette contrib a été développé et testé sur SME Server 8 et plus. Elle ne fonctionnera probablement pas sur SME 7.

Installation

Configurez les dépôts Firewall-Services, rpmforge et EPEL :

db yum_repositories set fws repository \
BaseURL http://repo.firewall-services.com/centos/\$releasever \
EnableGroups no GPGCheck yes \
Name "Firewall Services" \
GPGKey http://repo.firewall-services.com/RPM-GPG-KEY \
Visible yes status disabled
/sbin/e-smith/db yum_repositories set rpmforge repository \
Name 'Dag - EL5' \
BaseURL 'http://apt.sw.be/redhat/el5/en/$basearch/dag' \
EnableGroups no \
GPGCheck yes \
GPGKey http://dag.wieers.com/packages/RPM-GPG-KEY.dag.txt \
Visible no \
Exclude freetype,htop,iptraf,rsync,syslinux \
status disabled
db yum_repositories set epel repository \
Name 'Epel - EL5' \
BaseUrl 'http://download.fedoraproject.org/pub/epel/5/$basearch' \
MirrorList 'http://mirrors.fedoraproject.org/mirrorlist?repo=epel-5&arch=$basearch' \
EnableGroups no \
GPGCheck yes \
GPGKey http://dl.fedoraproject.org/pub/epel/RPM-GPG-KEY-EPEL \
Visible no \
status disabled
signal-event yum-modify
  • Installez les RPMS
yum --enablerepo=fws --enablerepo=rpmforge --enablerepo=epel --enablerepo=smecontribs install smeserver-pydio
  • Redémarrez les services
signal-event webapps-update

Maintenant vous devez aller dans le server-manager et modifier un partage existant (ou en créer un nouveau), avec un accès Pydio autorisé. Ensuite, vous pouvez accéder à l'application à l'aide de cette URL : https://your-server.domain.tld/pydio

Chaque utilisateur ne verra que des actions auxquelles ils ont accès. Les permissions du server-manager s'appliqueront sur ​​Pydio (comme Samba).


  Note:
Vous pouvez voir l'erreur ci-dessous dans votre navigateur
<tree>
<message type="ERROR">Invalid argument supplied for foreach()</message>
</tree>

Cette erreur semble indiquer que vous n'avez pas un dossier partagé avec un accès Pydio autorisé (ou vous vous êtes connecté sur l'interface Pydio avant d'activer l'accès Pydio sur un dossier partagé) :

- Pour créer un dossier partagé, assurez-vous qu'un accès Pydio est activé

- Exécutez "signal-event webapps-update" (Va fermer toutes les sessions actives)

Ensuite, essayez à nouveau d'accéder à l'interface Pydio


Options supplémentaires

Certains paramètres sont disponibles à partir de la base de données, dans l'entrée pydio

  • AdminInterface: activate the setting interface that is disabled by default. 'enabled' to activate. You will then have to edit the /var/lib/pydio/plugins/auth.serial/admin/rights.ser file to change the "ajxp.admin";b:0 to"ajxp.admin";b:1 ( or any user you want to access).Be careful changes done with the setting panel might be erased by sme events ( unless using ManualConf enabled)
  • ManualConf: if set to enabled will avoid to update configuration. usefull if you want to handle yourself the settings. However you won't have new share folder integrated in your configuration.
  • Authentication: Control the way users are authenticated. Correct values are http (apache protects the access, users need to login with their own credentials), or LemonLDAP which uses LemonLDAP-NG to grant access to the application
  • AliasOnPrimary: can be enabled or disabled (default is enabled). This prop lets you disable the access to Pydio on your primary domain (the alias /pydio won't be added in apache configuration). This is useful if you want the application to be available only with a virtualhost.
  • access: can be public or private (default is private). Control if /pydio is available only from local networks or from the Internet.
  • Title: Will be used as the title of the web page (default is Ajaxplorer)
  • WelcomMessage: Can be set to a message which will be displayed while the application is loading
  • DefaultLanguage: With this prop, you can set the default language for all users (you can see the list of valid languages in /usr/share/pydio/client/i18n/)
  • MaxUploadSize: Restrict the file size which can be uploaded (default is 200M)
  • PublicShares: can be enabled or disabled (default is enabled). Control if users can share individual files publicly (with or without a password)
  • Metastore: can be serial or xattr (default is serial): control the way metedata are stored. With serial, metadata are stored in PHP serialized files in /var/lib/pydio/plugins/metastore.serial/. It'll always work, but the problem is that if you move or rename a file through samba, the metadata will be lost (because Pydio can't notice this). This won't happen if you set this to xattr, because metadata will be stored on the filesystem, using extended user xattr. For this to work, you have to mount your filesystem where shared folders are stored with the user_xattr option
  • Indexer: can be enabled or disabled (default is disabled): control the indexer process globally. If disabled, only the shares which explicitly have PydioIndexer enabled will be indexed. If enabled, all the shares, except those which have PydioIndexer disabled will be indexed.

Exemple :

db configuration setprop pydio access public Title 'My own web based file manager' WelcomMessage 'Powered by SME Server' DefaultLanguage fr MaxUploadSize 500M
signal-event webapps-update

Certains paramètres sont également disponibles sur une base de dossier partagé :

  • PydioIndexer: can be enabled or disabled (default is enabled): control if the content of this share will be indexed each night by Pydio (so you can then search for key word, Pydio will provide very fast result and can also index some file content). The indexation can be resource intensive (especially if you install smeserver-ooo-headless, see below), so if you're not interested, you can disable it for a few shares.
  • PydioIndexContent can be enabled or disabled, and is ignored if this share is not indexed. If enabled, the content of the files will be extracted and indexed (txt, html, PDF, even Office documents if smeserver-ooo is available). Indexing content can be time consuming. If disabled, index will only be built on the names of the files and directories.
  • PydioHistory: can be enabled or disabled (default is disabled), this should only be turned on on a newly created share. If enabled, git will be used on the shared folder to track each modification. Each revision will be browseable, and you can revert every change you want. If you enable this, you should not enable other access to this shared folder (samba or webdav) as only access through Pydio will handle commits on file modification. You should also be aware that GIT is not very scalable for huge file. For example, you shouldn't enable this option if you store big multimedia files
  • user's home access

If you want your users can access to their home with Pydio (only in read only mode)

db configuration setprop pydio HomeDir enabled
signal-event webapps-update

Paramètres régionaux

En cas de problème avec votre locale (problème de XML), vous pouvez modifier le fichier /etc/pydio/bootstrap_conf.php et ajouter votre localité. Par défaut les paramètres régionaux du serveur SME est ISO-8859-1

Par exemple si vous souhaitez ajouter la langue Française :

define("AJXP_LOCALE", "fr_FR.ISO-8859-1");

Intégration avec LemonLDAP::NG

Pydio peut être protégé par LemonLDAP::NG. Voici les étapes :

Désactiver l'accès sur le domaine principal

Vous devez désactiver l'accès à Pydio sur votre domaine principal :

db configuration setprop pydio AliasOnPrimary disabled
signal-event webapps-update

Activation de l’intégration LemonLDAP::NG

Cette contrib supporte l'authentification LemonLDAP NG assez facilement :

db configuration setprop pydio Authentication LemonLDAP
signal-event webapps-update

Création d'un nouveau virtualhost pour Pydio

Créons un nouveau virtualhost pour Pydio. Vous pouvez choisir le nom que vous voulez, par exemple : exchange.domain.tld:

db domains set exchange.$(db configuration get DomainName) domain Content Primary Description 'Pydio' \
DocumentRoot /usr/share/pydio Nameservers internet TemplatePath WebAppVirtualHost \
Authentication LemonLDAP
signal-event domain-create exchange.$(db configuration get DomainName)
signal-event webapps-update

Déclarer ce virtualhost dans LemonLDAP

Vous pouvez maintenant créer le virtualhost dans l'interface de gestion LemonLDAP. Vous pouvez créer les règles que vous souhaitez. Par exemple, voici les règles pour n'accepter que les membres du groupe 'webexchange'

  • Comment: default
  • Rule: $groups =~ /\bwebexchange\b/

Fichier Office aperçu et indexation

Vous pouvez générer des aperçus de documents de bureau (doc, docx, xls, xlsx, ppt, pptx, odt, ods, odp, etc ..) dans Pydio, et même un aperçu de leur contenu. Pour que cela fonctionne, vous devez installer OpenOffice sur votre serveur en mode headless. Cela permet d'installer un grand nombre de dépendances, donc ce n'est pas installé automatiquement. Si vous voulez ajouter le support, il suffit d'exécuter le code ci-dessous. Le référentiel DAG doit être disponible pour résoudre les dépendances. Voir Dag.

yum --enablerepo=fws --enablerepo=dag install smeserver-ooo-headless
signal-event webapps-update
sv u /service/ooo

Désinstallation

Exécutez la commande suivante pour supprimer Pydio :

yum remove pydio

Source

La source de cette contrib peut être trouvé dans le dépôt de Firewall-Services [1]. Vous pouvez également consulter les sources : here