| Les deux révisions précédentesRévision précédenteProchaine révision | Révision précédente |
| linux:nextcloud [2022/09/03 15:58] – [En cas d’erreurs] tutospisto | linux:nextcloud [2025/10/28 11:36] (Version actuelle) – [Tuning Nextcloud] tutospisto |
|---|
| |
| Se rendre sur l’index de Nextcloud et c’est parti pour l’installation ! | Se rendre sur l’index de Nextcloud et c’est parti pour l’installation ! |
| | |
| | |
| | ===== Tuning Nextcloud ===== |
| | |
| | Après quelques années d'utilisation et quelques app gourmandes (memories + recognize), le serveur saturait la BDD mariaDB de temps en temps. |
| | Problème résolu en suivant le premier paragraphe de ceci : |
| | https://haefelfinger.ch/posts/2021/2021-03-29-nextcloud-tuning/ |
| | et ceci : |
| | https://mariadb.com/docs/server/storage-engines/innodb/operations/configure-buffer-pool/#Configure_the_InnoDB_Buffer_Pool_Size_in_a_Configuration_File |
| | |
| | <del>Pour résumer, on crée un fichier de conf "custom" pour mariaDB et on augmente certaines valeurs : |
| | <code bash>nano /etc/mysql/mariadb.conf.d/z-custom-mariadb.cnf</code></del> |
| | |
| | Le fichier n'étant pas pris en compte, j'ai ajouté dans le fichier 50-server.cnf dans la partie [mysqld] "fine tuning" : |
| | |
| | <code bash>nano /etc/mysql/mariadb.conf.d/50-server.cnf</code> |
| | |
| | <code php z-custom-mariadb.cnf> |
| | innodb-buffer-pool-size=2G |
| | innodb_log_file_size=256M |
| | read_rnd_buffer_size=25M |
| | sort_buffer_size=25M |
| | query_cache_type=ON |
| | query_cache_size=24M |
| | </code> |
| | |
| | Puis on redémarre mariaDB pour le prendre en compte : |
| | <code bash>sudo systemctl restart mariadb</code> |
| | |
| | |
| | En 09/2025 j'ai aussi appliqué plusieurs conseils trouvés ici : https://help.nextcloud.com/t/lenteur-du-serveur/105129/2 sur les fichiers suivants : |
| | * /etc/php/8.2/fpm/php.ini |
| | * /etc/php/8.2/fpm/pool.d/www.conf |
| | * /etc/php/8.2/fpm/php-fpm.conf |
| | * /etc/php/8.2/apache2/php.ini |
| |
| ===== En cas d’erreurs ===== | ===== En cas d’erreurs ===== |
| ),</code> | ),</code> |
| |
| | Pour lancer des commandes OCC il faut par exemple : |
| | <code bash>sudo -u www-data php /var/www/html/nextcloud/occ db:add-missing-columns</code> |
| | |
| | sudo -u www-data php permet de lancer php en tant qu’utilisateur www-data, puis on donne le chemin d’occ et la commande à exécuter. |
| | |
| | Pour ajouter un cron tous les jours à 18h au lieu des tâches d’arrière plan en AJAX, un petit crontab -e et : |
| | <code bash> * */18 * * * sudo -u www-data php -f /var/www/html/nxcloud/cron.php</code> |
| | |
| | ===== Memcache ===== |
| | agi php-redis |
| | sudo /etc/init.d/apache2 restart |
| | |
| | Exemple de fichier config au final avec activation du memcache |
| | |
| | <code php config_exemple_memcache.php[enable_line_numbers=1, highlight_lines_extra="8,76,79,98", skin=sons-of-obsidian]> |
| | <?php |
| | $CONFIG = array ( |
| | 'instanceid' => 'xxxxxxxxxxxx', |
| | 'passwordsalt' => 'xxxxxxxxxxxx', |
| | 'secret' => 'xxxxxxxxxxxx', |
| | 'trusted_domains' => |
| | array ( |
| | 0 => '192.168.xxx.xxx', |
| | 1 => 'xxxxxxxxxxxx.org', |
| | 2 => 'xxxxxxxxxxxx.com', |
| | 3 => 'xxxxxxxxxxxx.fr', |
| | ), |
| | 'datadirectory' => '/var/www/xxxxxxxxxxxx', |
| | 'dbtype' => 'mysql', |
| | 'version' => '22.2.3.0', |
| | 'overwrite.cli.url' => 'https://192.168.xxx.xxx', |
| | 'dbname' => 'xxxxxxxx', |
| | 'dbhost' => 'localhost', |
| | 'dbport' => '', |
| | 'dbtableprefix' => 'xxx_', |
| | 'mysql.utf8mb4' => true, |
| | 'dbuser' => 'xxx_xxxxxx', |
| | 'dbpassword' => 'xxxxxxxxxxxx', |
| | 'installed' => true, |
| | 'maintenance' => false, |
| | 'theme' => '', |
| | 'loglevel' => 2, |
| | 'log_rotate_size' => 10485760, |
| | 'updater.release.channel' => 'stable', |
| | 'memcache.local' => '\\OC\\Memcache\\Redis', |
| | 'memcache.locking' => '\\OC\\Memcache\\Redis', |
| | 'memcache.distributed' => '\\OC\\Memcache\\Redis', |
| | 'redis' => |
| | array ( |
| | 'host' => 'localhost', |
| | 'port' => 6379, |
| | ), |
| | 'default_phone_region' => 'FR', |
| | 'trashbin_retention_obligation' => '60,180', |
| | 'versions_retention_obligation' => 'auto, 366', |
| | 'enable_previews' => false, |
| | 'preview_max_x' => 400, |
| | 'preview_max_y' => 400, |
| | 'preview_max_scale_factor' => 1.5, |
| | 'enabledPreviewProviders' => |
| | array ( |
| | ), |
| | );</code> |
| | |
| | |
| | ===== Pour un client en ligne de commande ===== |
| | |
| | <code bash>apt-get install nextcloud-desktop-cmd</code> |
| | |
| | |
| | |
| | Sur le rpi-poulailler, le client en ligne de commande est différent : |
| | <code bash>sudo owncloudcmd /var/www/html/ https://rpi-poulailler:motdepasse@nxcloud.zapto.org/remote.php/webdav/rpi-poulailler/www && sudo owncloudcmd /home/pi/poulailler/ https://rpi-poulailler:motdepasse@nxcloud.zapto.org/remote.php/webdav/rpi-poulailler/py && sudo owncloudcmd /etc/motion/ https://rpi-poulailler:motdepasse@nxcloud.zapto.org/remote.php/webdav/rpi-poulailler/motion</code> |