Nextcloud/fr
nextcloud logo | |
Maintainer | Unnilennium |
---|---|
Url | https://nextcloud.com |
Licence | AGPLv3 |
Category | |
Tags | cloud, files, dropbox, seafile, pydio, ajaxplorer, owncloud |
Mainteneur
Version
Description
Nextcloud est un ensemble de logiciels client-serveur permettant de créer et d'utiliser des services d'hébergement de fichiers. Il est fonctionnellement similaire à Dropbox, bien que Nextcloud soit gratuit et « open-source », permettant à quiconque de l'installer et de l'utiliser sur un serveur privé.
Selon l'adage de SME Server « Keep It Simple » (Rester simple), tous vos baies d'information et dossiers personnels seront accessibles via l'interface « nextcloud » à l'aide de l'application « fichiers externes ». Vous aurez également votre dossier Nextcloud d'utilisateur principal enregistré sous /home/e-smith/files/owncloud/data qui se trouve dans la zone sauvegardée par défaut. Ainsi, vous pouvez désormais profiter à la fois de votre propre référentiel cloud et de l'accès aux mêmes fichiers sur votre partage Samba !
Comment ajouter mes utilisateurs SME ? Ils sont déjà là ! Dites leur simplement de se connecter à https://mon-domaine/nextcloud. Vous pouvez également ajouter des utilisateurs externes ou leur permettre de s'inscrire auprès d'une application nextcloud.
Quels sont les administrateurs ? Par défaut, vous avez un utilisateur nextcloudadmin et l'utilisateur administrateur habituel de SME. Le premier utilise le mot de passe que vous pouvez voir avec la commande « config getprop nextcloud AdminPassword », et le second, eh bien, utilisez simplement votre mot de passe administrateur habituel. Ensuite, vous pouvez gérer les applications, les référentiels de fichiers externes et l'appartenance au groupe d'administrateurs.
Installation
yum install smeserver-nextcloud --enablerepo=smecontribs
Vous pouvez avoir besoin d'un second « event » si quelquefois un répertoire de baie d'information n'était pas visible.
signal-event nextcloud-update
Vous n'avez pas besoin de suivre les pages des dépôts de fws et de remi-safe pour installer ces 2 dépôts qui sont nécessaires. Utilisez plutôt les paquets qui les installent, suivi d'un « yum-modify event ». Puis exécutez l'installation principale.
yum install smeserver-extrarepositories-remi-safe smeserver-extrarepositories-fws smeserver-extrarepositories-epel signal-event yum-modify yum install smeserver-nextcloud --enablerepo=smecontribs,epel,fws signal-event webapps-update service php-fpm start service php71-php-fpm start service php72-php-fpm start service php73-php-fpm start signal-event nextcloud-update
Vous pouvez éviter les du service php-fpm* s'il est déjà installé et fonctionne avant l'installation de nextcloud.
Puis vous pouvez faire ce qui suit et vous pouvez ignorer en toute sécurité le redémarrage « signal-event post-upgrade reboot » si vous y êtes invité, sauf si vous avez également installé d'autres paquets qui en ont besoin.
config set UnsavedChanges no
ou faire
signal-event post-upgrade signal-event reboot
puis
signal-event nextcloud-update
Si vous voulez ajouter l'administrateur de SME comme administrateur de nextcloud, faites :
OCC group:adduser admin admin
Utiliser un domaine dédié pour se connecter à Nextcloud
Changer em premier lieu le contenu de la variable de la première ligne par votre domaine de nextcloud tel que défini par votre fournisseur DNS.
NEXTCLOUDDOMAIN="cloud.mon-domaine.com"
db domains set $NEXTCLOUDDOMAIN domain Description "Nextcloud" Content Primary Nameservers internet TemplatePath WebAppVirtualHost DocumentRoot /usr/share/nextcloud RequireSSL enabled letsencryptSSLcert enabled
signal-event domain-create cloud.mon-domaine.com
# Cette ligne permet au DAV de nextcloud d'être redirigé correctement :
config setprop nextcloud CloudDomain $NEXTCLOUDDOMAIN
# Cette ligne permet à collabora de reconnaître le domaine :
config setprop nextcloud VirtualHost $NEXTCLOUDDOMAIN
signal-event nextcloud-update
# Uniquement si vous utilisez un certificat Let's Encrypt :
expand-template /etc/dehydrated/domains.txt
dehydrated -c
Configuration
property | default | values | |
---|---|---|---|
AdminPassword | GENERATED | string | Mot de passe pour votre principal administrateur de nextcloud * |
AdminUser | nextcloudadmin | string | Utilisateur administrateur pincipal de votre installation * |
DbName | nextcloud | string | Pour mysql db |
DbPassword | GENERATED | string | Pour mysql db |
DbUser | nextcloud | string | Pour mysql db |
TrustedDomains | empty | strings coma separated | Ajoute un domaine ou une adresse ip qui doivent être nécessairement ajoutés à l'accès par défaut à nextcloud |
CloudDomain | empty | domain name | Duplication de VirtualHost, sera fusionné à VirtualHost dans une prochaine version, les 2 ne nécessitenr pas d'être configurés pour l'instant |
VirtualHost | empty | Nom de domaine | |
access | private | privé, public | |
status | enabled | enabled,disabled | |
MaxUploadSize | 4096M | nombre | Si un nombre doit être converti en mégabits, sinon, utiliser le suffixe habituel : 2T pour 2 terrabits, etc... |
MemoryLimit | 528M | number | Si un nombre doit être converti en mégabits, sinon, utiliser le suffixe habituel : 2T pour 2 terrabits, etc... |
Shares | enabled | enabled,disabled | Ajoute les partages samba de la contribution « shared-folders » dans les baies d'information nextcloud ainsi que dans les baies d'information normales |
IncludeIbay | empty | strings coma separated | Ajoute les noms des baies d'information qui ont besoin d'être incluses. S'il n'est pas vide, seul le nom indiqué ici sera accessible via nextcloud. A la priorité sur ExcludeIbay. Vous le définissez avec une chaîne aléatoire pour exclure tous les baies d'information et les partages de l'inclusion automatique. |
ExcludeIbay | Primary | strings coma separated | Ecluera de l'accès nexcloud toute baie d'information via nextcloud. Exclut par défaut la baie d'information « Primary ». Si vous souhaitez inclure « Primary », mettez une châine de caractères quelconque. |
UseSMB | enabled | enabled,disabled | Vous permet de définir l'accès à ibay via le partage samba ou via le pilote local dans nextcloud. Activé est pour la samba, cela vous permet d'accéder en tant qu'utilisateur et de prendre en compte votre quota. Cela peut être un peu plus lent et nécessiter que votre mot de passe soit chargé dans la session. Le pilote local s'il est désactivé, vous permettra d'accéder uniquement à ce que l'utilisateur apache (www) a comme droit d'accéder en tant que membre d'un groupe. |
- l'utilisateur administrateur de SME admin est aussi un administrateur de votre installation nextcloud. Vous avez 2 comptes administrateur sur l'installation par defaut sur le serveur Koozali SME.
Example de configuration :
config setprop nextcloud ExcludeIbay ibay1,ibay2 signal-event nextcloud-update
Ligne de commande
si vous avez besoin de peaufiner votre installation, voici comment accéder à la ligne de commande pour Nextcloud sur SME, nous vous avons facilité la tâche, connectez-vous simplement en tant que « root » et utilisez la commande OCC (en majuscules), cette commande exécutera pour vous tout ce dont vous avez besoin en tant qu'utilisateur www, en utilisant la version nécessaire de php. Voici deux exemples :
occ maintenance:mode --off
occ maintenance:repair
Pour voir des commandes additionnelles, consulter la documentation Nextcloud : https://docs.nextcloud.com/server/latest/admin_manual/configuration_server/occ_command.html
Mise à jour
yum update smeserver-nextcloud nextcloud --enablerepo=smecontribs
Désinstallation
yum remove smeserver-nextcloud nextcloud
Changer de base de données
Si vous êtes dans la situation où vous ne pouvez mettre à jour votre nextcloud parce que des prérequis de la base de données, vous pourrez avoir besoin d'en installer une nouvelle et de migrer vos données.
Voici une procédure simple, après avoir fait fonctionner la nouvelle base de données en tant que sclo Mariadb105 pour SME10 par exemple.
occ maintenance:mode --on
mysqldump `config getprop nextcloud DbName` > nextcloud.sql
echo "CREATE DATABASE IF NOT EXISTS `config getprop nextcloud DbName` CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci;"| mysql105
mysql105 `config getprop nextcloud DbName`< nextcloud.sql
echo "CREATE USER IF NOT EXISTS `config getprop nextcloud DbUser`@localhost IDENTIFIED BY '`config getprop nextcloud DbPassword`';"| mysql105
echo "GRANT ALL PRIVILEGES ON `config getprop nextcloud DbName`.* TO `config getprop nextcloud DbUser`@localhost; FLUSH PRIVILEGES;" | mysql105
occ config:system:set dbhost --value localhost:/var/lib/mysql/mariadb105.sock --type string
occ maintenance:mode --off
Après vérification que tout fonctionne, vous pouvez effacer vous-même votre ancienne base de données du précédent serveur mysql, ou le garder comme une sauvegarde, pendant un certain temps. S'il tombe en panne, pour retourner seulement à l'état précédent :
occ maintenance --on occ config:system:set host --value localhost --type string occ maintenance --off
Problèmes connus
Après une nouvelle installation, l'utilisateur administrateur peut voir « shares » mais pas un uitilisateur.
Nous avons une simple baie d'information et elle était configuée :
Group Everyone Write group Read everyone
Nous avons crée un nouveau groupe appelé called « localusers » et ajouté l'administrateur et un simple utilisateur.
Ensuite, nous avons configuré la baie d'information :
Group localusers Write group Read group
Ceci semble régler le problème et l'utilisateur peut maintenant voir les fichiers.
NC 20-21 : open_basedir restriction in effect. File(/templates/) is not within the allowed path
C'est un bogue de NextCloud. Il a été réglé dans NC 22 mais pas rétro-activé à NC20. C'est seulement du bruit du journal. Vous pouvez l'ignorer en attendant la mise à jour. Voir https://help.nextcloud.com/t/error-file-templates-is-not-within-the-allowed-path-s-after-update-from-20-xx-to-21-0-3/119843
Reconfigurer la base de données
Pour reference, tout en regardant réinitialiser les caches de fichiers, j'ai trouvé ceci.
C'est probablement extrêmement dangereux mais j'ai voulu faire une note.
https://github.com/nextcloud/server/issues/8113#issuecomment-565876798
Bogues
Veuillez émettre les bogues dans la section SME-Contribs dans bugzilla et sélectionner le composant smeserver-nextcloud ou utiliser ce lien.
Un aperçu des problèmes actuels de cette contribution figure ci-dessous :
ID | Product | Version | Status | Summary (8 tasks) ⇒ |
---|---|---|---|---|
12685 | SME Contribs | 10.0 | VERIFIED | Install fails when attempting occ cmd at cli and no browser access |
12611 | SME Contribs | 10.0 | RESOLVED | update cron script with maintenance_window_start |
12609 | SME Contribs | 10.0 | CONFIRMED | smeserver-nextcloud S30nextcloud-occ-conf errors when run via ddclient panel |
12487 | SME Contribs | 10.0 | CONFIRMED | update nextcloud fail2ban filter |
12486 | SME Contribs | 10.0 | RESOLVED | occ requires /sbin/e-smith to be in the path |
12406 | SME Contribs | 10.0 | CONFIRMED | NFR switch to PHP83 support for NC 29 and after |
11169 | SME Contribs | 10alpha | CONFIRMED | smeserver-nextcloud requires a modify script |
10566 | SME Contribs | 10.0 | CONFIRMED | NFR: split action nextcloud-occ-conf |
Journal des modifications
Seules les versions publiées dans smecontrib sont listées ici.
- fix php version on initial install [SME: 12685]
2024/04/12 Jean-Philippe Pialasse 1.2.0-30.sme
- add maintenance windows start [SME: 12611]
increase frequency of cron task every 5 min- fix missing full path [SME: 12486]
2024/01/29 Jean-Philippe Pialasse 1.2.0-29.sme
- require nextcloud-src >= 26 [SME: 12318]
multiple fixes and rewrites- restore default log level [SME: 12412]
2023/09/09 Jean-Philippe Pialasse 1.2.0-28.sme
- workaround opcache segfault with php 81 using in memory only [SME: 12298]
- Fix syntax error in 20opcache.ini [SME: 12298]
References
- https://docs.nextcloud.com/server/latest/admin_manual/configuration_server/occ_command.html
- https://help.nextcloud.com/t/migration-from-mysql-to-mariadb/6816/3
- https://help.nextcloud.com/t/changing-mariadb-socket-when-hosting-multiple-db-ubuntu/68294
- https://markus-blog.de/index.php/2019/10/21/how-to-migrate-nextcloud-17-database-backend-from-mysql-to-postgresql/