Depuis le site web de Debian, il est possible de tĂ©lĂ©charger une version lĂ©gĂšre ânet installâ de la version 10. Cliquez simplement sur le bouton âtĂ©lĂ©chargerâ. Sinon, lâimage est disponible via ce lien: debian-10.8.0-amd64-netinst.iso
Conseil: valider la signature sha256sum de lâimage tĂ©lĂ©chargĂ©e
wget https://cdimage.debian.org/debian-cd/current/amd64/iso-cd/SHA512SUMS
sha512sum -c SHA512SUMS --ignore-missing
Note: il est possible que cette la version de lâimage par dĂ©faut ait changĂ© depuis la crĂ©ation de ce tutoriel. Lâimportant est que ce soit la version 10 de Debian.
On débute par ouvrir le logiciel VirtualBox qui est habituellement disponible via la distribution Linux ou via le site web de VirtualBox

On crĂ©e une nouvelle machine virtuelle de Type Linux et de version Debian (64-bit). Le dossier de la machine doit avoir au moins 20 Go dâespace libre pour assurer le bon fonctionnement de la machine virtuelle.

Choisissez la quantitĂ© de mĂ©moire vive. Il est conseillĂ© dâavoir au moins 2048 Mo de disponible pour que Nextcloud fonctionne de façon fluide avec quelques applications additionnelles.

Choisissez le type de disque dur VDI

Choisissez le stockage dynamiquement alloué

Choisissez la taille du disque Ă utiliser pour la machine virtuelle. Je conseille dâutiliser au moins 15 Go. VĂ©rifiez que le rĂ©pertoire dâenregistrement du disque contient suffisamment dâespace.

Nous avons maintenant une configuration de base. On ajuste quelques paramĂštres pour le besoin.

Je conseille de mettre au moins deux processeurs si possible.

Il est possible dâenregistrer lâinstallation pour garder une trace pour rĂ©fĂ©rence future.

On configure une redirection de port afin de pouvoir se connecter Ă la machine virtuelle en SSH avec une console virtuelle ou un logiciel tel que PuTTY au lieu de devoir utiliser lâinterface de VirtualBox.

Ajouter la configuration suivante:

Ensuite, sĂ©lectionner Afficher depuis lâĂ©cran dâaccueil. Ceci dĂ©marre lâinstallation du systĂšme dâexploitation.

SĂ©lectionner lâimage ISO du systĂšme Debian 10 tĂ©lĂ©chargĂ©e prĂ©alablement.


DĂ©marrer lâinstallation

On installe le systĂšme Debian sur la machine virtuelle.
Choisir lâoption âinstallâ comme on nâinstalle pas un systĂšme avec une interface graphique.

Choisissez la langue. Cette installation fonctionnera dans toutes les langues disponibles.

Choisissez le pays

Choisissez la disposition de clavier

Nom de machine: nextcloud
Mot de passe root: nextcloud

Utilisateur: demo

Mot de passe: demo

Choisissez le partitionnement assisté

Choisissez tout dans une seule partition

Choisissez terminer et appliquer tous les changements

Choisissez âouiâ

Lâinstallation des packages du systĂšme dĂ©bute, ceci peut prendre quelques minutes.
Choisissez ânonâ Ă cette invite qui demande sâil y a dâautres disques Ă analyser.

Choisissez le pays pour un miroir. Ici, câest la proximitĂ© gĂ©ographique qui est la plus importante.

Choisissez ensuite un miroir pour télécharger les packages additionnels de Debian qui seront installés.

Laissez le champ du mandataire vide sauf si applicable (câest trĂšs rare sur un rĂ©seau rĂ©sidentiel)
Un autre ensemble de packages sera téléchargé puis installé. En cours de route, il faut répondre à une invite sur popularity-contest. Le choix recommandé est Non.

Lâinstallation se poursuivra par la suite. On aura Ă choisir diffĂ©rentes options. On rĂ©duit ces options au minimum, car Yunohost a son propre script dâinstallation qui se chargera du reste.

SĂ©lectionner âouiâ pour lâinstallation du systĂšme dâamorçage.

Choisir le disque /dev/sda

Ensuite, choisissez âcontinuerâ et la machine virtuelle redĂ©marrera. Debian est maintenant installĂ©.
Pour se connecter sur la machine virtuelle, on utilise le port configurĂ© lors de la crĂ©ation de la machine virtuelle ainsi que lâutilisateur demo.
Dans un terminal, saisir:
ssh -p 3022 demo@localhost
Sâauthentifier avec le mot de passe demo
Avec PuTTY


Ensuite, se connecter en tant que root avec su - et saisir le mot de passe root nextcloud entrĂ© lors de lâinstallation de Debian.
Nous sommes maintenant connectĂ©s en tant quâadministrateur sur la machine virtuelle Debian 10 et prĂȘts Ă installer Yunohost.
(base) ~ âŻâŻâŻ ssh -p 3022 demo@localhost
demo@localhost's password:
Linux yunohost 4.19.0-14-amd64 #1 SMP Debian 4.19.171-2 (2021-01-30) x86_64
The programs included with the Debian GNU/Linux system are free software;
the exact distribution terms for each program are described in the
individual files in /usr/share/doc/*/copyright.
Debian GNU/Linux comes with ABSOLUTELY NO WARRANTY, to the extent
permitted by applicable law.
Last login: Sat Mar 6 17:20:55 2021 from 10.0.2.2
demo@yunohost:~$ su -
Mot de passe :
root@yunohost:~#
Avec PuTTY:

Note: Dans un terminal, lâinvite de commandes est prĂ©cĂ©dĂ©e dâun diĂšse, lorsque connectĂ© en root.
Pour rouler des commandes qui prennent un temps considĂ©rable Ă exĂ©cuter, il est recommandĂ© dâutiliser des sessions screen, qui permettent de garder une session active sur le serveur mĂȘme si la connexion fait dĂ©faut.
sudo apt install -y screen
Pour la suite de ce tutoriel, on assume que la section dâintroduction du manuel de screen ou les principales fonctionnalitĂ©s sont connues.
Exécuter les commandes suivantes en tant que root
apt install -y curl
curl https://install.yunohost.org | bash
Lancez lâinstallation

Laisser Yunohost gĂ©rer le SSH. Ă la prochaine connexion, lâutilisateur administrateur sera admin. Câest un rĂŽle intermĂ©diaire entre demo et root en termes de permissions.

Une fois lâinstallation terminĂ©e, il faut effectuer la postinstallation.
Un nom de domaine est requis pour lâinstallation. On utilisera nextcloud.local.
Le mot de passe dâadministration sera nextcloud.
On crée un premier utilisateur utilisateur
yunohost user create utilisateur
Le résultat est:
SuccĂšs ! Lâutilisateur a Ă©tĂ© créé
fullname: utilisateur nouveau
mail: utilisateur@nextcloud.local
username: utilisateur
On configure maintenant la machine virtuelle en mode âpontâ afin quâelle ait sa propre adresse IP. Le nom de domaine pourra ĂȘtre associĂ© Ă cette adresse pour simplifier les manipulations futures. Ceci va simuler comme si on avait une machine physique sĂ©parĂ©e ou un serveur avec une adresse IP publique tel un serveur privĂ© virtuel (VPS).

Ensuite, redémarrer la machine virtuelle depuis VirtualBox (Menu Machine/Redémarrage).
Une fois redĂ©marrĂ©, lâaffichage VirtualBox de la machine virtuelle affiche son adresse IP. Dans cet exemple, câest 192.168.0.151.

Dans la configuration de routeur DHCP Ă la maison, figer cette adresse. Voici un exemple pour un routeur D-Link.

On ajoute le domaine au fichier âhostsâ.
C:\Windows\System32\drivers\etc\hosts/etc/hosts/private/etc/hostsAjouter la ligne suivante au fichier (changer selon lâadresse IP de la machine virtuelle):
192.168.0.151 nextcloud.local
On se connecte Ă lâinstance Yunohost via lâadresse https://nextcloud.local dans le navigateur. Attention, ça va demander dâaccepter le risque dâune adresse sans certificat valide.

Une fois arrivĂ© Ă la fenĂȘtre de connexion, on entre utilisateur et nextcloud

Nous avons rĂ©ussi ! Lâinstallation de Yunohost est fonctionnelle.

On se connecte en SSH sur le serveur en utilisant le domaine cette fois-ci.
ssh -p 22 admin@nextcloud.local
On installe une instance de Nextcloud.
sudo yunohost app install nextcloud
On conserve les paramĂštres par dĂ©faut proposĂ©s Ă moins dâutiliser un sous-domaine. Les paramĂštres de lâinstallation devraient ressembler Ă ceci.
Choose the domain where this app should be installed [nextcloud.local] (default: nextcloud.local):
Choose the path where this app should be installed (default: /nextcloud):
Choose an administrator user for this app [utilisateur] (default: utilisateur):
Access the users home folder from Nextcloud? [yes | no] (default: no):
Pour sâassurer que lâinstallation de Nextcloud est bien fonctionnelle, ouvrez lâURL suivante dans le navigateur: https://nextcloud.local/nextcloud

On installe Elasticsearch comme moteur de recherche en plein texte
wget -qO - https://artifacts.elastic.co/GPG-KEY-elasticsearch | sudo apt-key add -
sudo apt-get install apt-transport-https openjdk-11-jre-headless
echo "deb https://artifacts.elastic.co/packages/6.x/apt stable main" | sudo tee -a /etc/apt/sources.list.d/elastic-6.x.list
sudo apt-get update && sudo apt-get install elasticsearch
Il faut maintenant mettre en place et activer le service pour quâElasticsearch roule en arriĂšre-plan.
sudo systemctl enable elasticsearch.service
Enfin, il faut installer et activer le plug-in dâindexations de documents pour Elasticsearch
/usr/share/elasticsearch/bin/elasticsearch-plugin install --batch ingest-attachment
Pour terminer, on redémarre le service
sudo systemctl restart elasticsearch.service
Depuis le navigateur web, ouvrir lâURL suivante: https://nextcloud.local/nextcloud/settings/apps
Dans la section Rechercher, cliquez sur télécharger et activer pour les trois applications suivantes:

Maintenant, allons dans la section ParamÚtres de Nextcloud pour configurer ces applications. Sélectionner Elasticsearch comme plateforme de recherche.
Indiquer http://localhost:9200 comme adresse du Servlet et nc_index comme index

Depuis la session SSH, idĂ©alement dans un screen, on initialise lâindex Elasticsearch. ExĂ©cuter en tant que root.
cd /var/www/nextcloud
chmod a+x occ
sudo -u nextcloud php ./occ fulltextsearch:index

Tous les nouveaux documents ajoutĂ©s dans Nextcloud devraient ĂȘtre indexĂ©s. Pour ce faire, on crĂ©e un service dans systemd qui permet lâindexation en continu.
Avec un Ă©diteur de texte, ouvrir et modifier le fichier âunitâ du service.
sudo nano /etc/systemd/system/nextcloud-fulltext-elasticsearch-worker.service
Insérer le contenu suivant:
[Unit]
Description=Elasticsearch Worker for Nextcloud Fulltext Search
After=network.target
[Service]
User=nextcloud
Group=nextcloud
WorkingDirectory=/var/www/nextcloud
ExecStart=/usr/bin/php /var/www/nextcloud/occ fulltextsearch:live -q
ExecStop=/usr/bin/php /var/www/nextcloud/occ fulltextsearch:stop
Nice=19
Restart=always
[Install]
WantedBy=multi-user.target
AprĂšs avoir modifiĂ© un fichier âunitâ il faut recharger systemd avant dâactiver et de dĂ©marrer le service.
systemctl daemon-reload
systemctl enable nextcloud-fulltext-elasticsearch-worker.service
systemctl start nextcloud-fulltext-elasticsearch-worker.service
Vérifier ensuite que le service est bien activé:
systemctl status nextcloud-fulltext-elasticsearch-worker.service

On peut utiliser la recherche en plein texte depuis lâURL suivante: https://nextcloud.local/nextcloud/apps/fulltextsearch/
