19 Jan 2025, 00:00

Synology

Installer utilitaires CLI

Centre de paquets -> Paramètres -> Sources de paquets
Ajouter une entrée, choisir un nom, et ajouter :
https://packages.synocommunity.com/
comme Emplacement.

L’actualisation devrait se faire tout seul, et on peut alors chercher synocli .
On a notamment les “Disk Tools” qui fournissent entre autres ncdu, et les “File Tools” qui fournissent entre autres nano.

SSH et dossier home

Le SSH s’active dans
Panneau de configuration -> Terminal & SNMP

Si on veut pouvoir y accéder via SFTP, il faut l’activer dans
Panneau de conf -> Services de fichiers -> FTP -> SFTP

Enfin, si on veut pouvoir se connecter via clé SSH, il faut activer les dossiers homes. pour ceci :
Panneau de conf -> Utilisateurs et groupes -> Avancé -> Accueil utilisateur

Synchronisation du dossier partagé

Pour une synchronisation unidirectionnelle d’un Syno source vers un Syno destination.
Fonctionne à l’échelle d’un dossier partagé.
Lance rsync en sous-jacent, avec l’option --delete .

Sur le Syno destination, il faut aller dans
Panneau de conf -> Services de fichiers -> rsync
et activer le service rsync.

Sur le Syno source, il faut aller dans
Panneau de conf -> Services de fichiers -> Avancé
et trouver “Synchronisation du dossier partagé”.
Clic sur “Liste des tâches” et ajouter une tâche (tâche = transfert sortant).

Sur le Syno cible, dans le même menu, on voit l’état du serveur, et on a la possibilité de gérer la “Liste des connexions”, c’est à dire les transferts entrants.

Lorsque la tâche est lancée, la ligne de commande lancée est de ce genre :

/usr/bin/rsync --timeout=600 --verbose --progress --no-h -rlpt -go -H -W --one-file-system --syno-auth --syno-acl --syno-pseudo-root --numeric-ids --exclude-from=/tmp/EXCLUDE  /volume1/MONPARTAGE/ --rsync-path=rsync -e "/usr/bin/ssh -p 11122 -oNumberOfPasswordPrompts=1 -oStrictHostKeyChecking=no -oUserKnownHostsFile=/dev/null -oServerAliveInterval=10 -oServerAliveCountMax=60" -s raphael@10.0.10.89::Public/ --exclude=/*/#recycle/

et le fichier exclude contient ça :

/#recycle/***
/#snapshot/***
/@eaDir/SYNO@.fileindexdb/***
/@eaDir/SYNO@file_index_queue
/@eaDir/SYNO@file_index_queue.tmp
/@eaDir/SYNO@.fileindexdb@SynoEAStream
/@eaDir/@dedupedb/***

Types de synchro

Depuis le Syno source, si on va dans la section “Liste des tâches”, il y a un bouton pour “Synchroniser maintenant” et un bouton pour “Synchro complète”.

“Synchro maintenant” va faire une synchro très rapide, qui ne fait que copier les fichiers nouveaux/modifiés vers la destination. Pour ~ 20To de données en ~ 4 millions de fichiers, qui a déjà été complètement synchronisé 1h avant, cela met 2-3 minutes. Les fichiers de la destination absents de la source ne sont PAS supprimés.
C’est cette synchro qui est faite par la planification.

“Synchronisation complète” va mettre + de temps (environ 40 minutes pour le même volume de données) mais va créer un miroir complet des données, incluant la suppression des fichiers/dossiers de la destination qui sont absents de la source, ainsi que la réplication des permissions.

Permissions

Lorsque la synchro de dossier partagé est activée, les permissions avancées sont activées sur les partages de la destination ; si on veut que les utilisateurs puissent y acccéder, il faut les ajuster en conséquence (ou les désactiver).
Ça se règle dans le Panneau de config -> Dossiers partagés -> Modifier -> Permissions avancées

Synology Drive Server

Permet la syncho bidirectionnelle entre 2 Syno.

Hyperbackup

Restauration

La restauration d’un dossier partagé se fait en intégralité, sans tenir compte des données pré-existantes.

Lorsqu’on restaure, le contenu existant n’est pas effacé ; il faut d’abord supprimer/vider le partage de réception avant de restaurer Si le partage n’existe pas, il est automatiquement créé.

Spécificités Btrfs

Snapshots

Si le système de fichiers d’un dossier partagé est btrfs, on peut installer le paquet “Snapshot Replication”.
Celui-ci permet de gérer les instantanés. L’assistant est assez intuitif.

Pour un dossier partagé donné, si on coche la case “Rendre visible” (onglet Avancé), on peut accéder aux instantanés dans le dossier #snapshots à la racine du dossier partagé.
Ceci permet également d’activer la fonctionnalité des “Versions précédentes” dans l’explorateur Windows.

Si on veut analyser l’espace utilisé sur le dossier partagé avec ncdu, il faut penser à exclure ce dossier :
ncdu /volume1/MONPARTAGE --exclude "#snapshot*"

Réplication

Permet de dupliquer un dossier partagé vers un 2e NAS, par les commandes btrfs send et btrfs receive.
Si cette fonctionnalité est activée, un snapshot est créé à chaque réplication.

Par défaut, seul l’instantané généré lors de la réplication est répliqué.
Il est toutefois possible d’envoyer en + également les instantanés locaux. C’est une option disponible lors de l’assistant, ou en modifiant la tâche de réplication (onglet Avancé). Elle ne concerne que les instantanés créés après l’activation de l’option.

La rotation des versions des instantanés se paramètre indépendamment sur chaque NAS.

Sur la source, des snapshots des partages réseau sont dans /volume1/@sharesnap. C’est ce chemin qui est utilisé pour le send.
Sur la destination, la replication en cours est stockée dans le dossier /volume1/@sharesnap_receiving/.

La réplication se configure depuis le NAS source, et elle nécessite que les volumes sur les 2 NAS soient formatés en btrfs.
L’utilisateur choisi pour établir la connexion doit être membre du groupe “administrators” sur la destination.

Quand un partage sur la destination est paramétré pour recevoir des instantanés, on ne peut plus lui configurer des instantanés locaux.

Dans les paramètres de l’app Snapshot Replication, on peut modifier le nombre de tâches en parallèle ; par défaut c’est 1 seule.
Ainsi, même si des réplications sont planifiées au même moment, il n’y aura pas de parallélisation des accès disques, afin de conserver des performances optimales.

Nettoyage de l’espace

Pour que l’espace soit réellement récupéré lors de la suppression d’un snapshot, on peut activer le nettoyage des données. Pour ceci :
Gestionnaire de stockage -> Stockage -> bouton “Planifier le nettoyage des données”

On peut choisir des périodes sur lesquelles ce nettoyage est mis en pause.

Divers

restauration des utilisateurs depuis une sauvegarde (.dss) lorsqu’ils existent déjà sur la cible ?
-> les passwords des utilisateurs existants ne semblent pas remplacés par les éléments de la sauvegarde

Synoacl

synoacltool -add /volume2/backups/latest/LOGICIELS/ everyone:*:deny:-w-pdD-A-W-Co:fd–

find /volume2/backups/history/xxx/$share/* -type d -exec synoacltool -set-archive “{}” is_inherit,is_support_ACL ;

23 Nov 2023, 00:00

Régler la date via NTP en mode recovery de MacOS

Testé depuis un media d’install de Catalina.

Connecter au réseau puis
sntp -sS pool.ntp.org

23 Nov 2023, 00:00

SMB non fonctionnel après MAJ vers DSM 7

La mise à jour de DSM 6.x vers 7.x change un certain nombre de paramètres par défaut dans la configuration de SMB. Il est possible que la connexion ne fonctionne pas sur les partages réseaux SMB.
Un article sur le site de Synology explique quelques causes/solutions possibles :

  • activer NTLMv1
  • mettre la version SMBv1 en valeur minimum
  • donner le droit à l’application SMB (qui n’existait pas dans DSM 6) aux utilisateurs/groupes concernés

Mais dans mon cas tout ceci n’a pas réglé le problème.

La solution fut alors de se connecter en SSH (avec droits sudo/su) et de sauvegarder le fichier smb.conf puis de restaurer le fichier par défaut :

sudo mv /etc/samba/smb.conf /etc/samba/smb.conf.BAK
sudo cp /etc.defaults/samba/smb.conf /etc/samba/smb.conf

puis de vider le cache SMB (Panneau de conf -> Service de fichiers -> Paramètres avancés) ce qui redémarre le service SMB. Les connexions ont alors refonctionné correctement.

10 Feb 2023, 00:00

Attribuer une IP fixe à un client VPN via Synology

Complètement copié-collé de cet article :
https://www.wundertech.net/setup-a-static-ip-address-for-openvpn-clients-on-your-synology-nas/

Testé sur DSM 6, mais pas sur DSM 7.

Pré-requis :

  • serveur OpenVPN installé sur le NAS
  • accès SSH au NAS, avec un utilisateur aux droits sudoers

L’identification du client dépendra de l’utilisateur (sur le serveur VPN) utilisé pour établir la connexion VPN.
On crée le dossier qui stockera les configurations IP souhaitées.

cd /usr/syno/etc/packages/VPNCenter/
sudo mkdir userIPs
sudo chmod 0755 userIPs
cd userIPs

Créer un fichier du nom (exact) de chaque utilisateur dont on souhaite fixer l’IP.
Notre utilisateur d’exemple s’appelle myUser. Je pense qu’il faut respecter la casse.
Notes sur l’utilisation de vi

sudo vi myUser

Dans ce fichier, coller la ligne suivante en adaptant l’adressage réseau. Attention, le dernier chiffre de la première adresse doit être ((multiple de 4) + 2), et la seconde adresse doit être l’adresse immédiatement précédente.
Choisir une adresse suffisamment élevée pour éviter le conflit avec les adresses attribuées à la volée.

ifconfig-push 10.8.0.202 10.8.0.201

Mettre les autorisations correctes :

sudo chmod 0644 ./*

On configure ensuite le serveur VPN pour prendre en compte ces fichiers :

cd /usr/syno/etc/packages/VPNCenter/openvpn/
sudo vi openvpn.conf

Ajouter dans le fichier la ligne suivante :

client-config-dir /usr/syno/etc/packages/VPNCenter/userIPs/
cd /volume1/@appstore/VPNCenter/etc/openvpn
sudo vi radiusplugin.cnf

et modifier la ligne overwriteccfiles pour obtenir

overwriteccfiles=false

Ensuite, il devrait suffire de redémarrer le Synology (ou éventuellement uniquement les services nécessaires ?) et de vérifier que les réglages sont bien pris en compte.