Archives de la catégorie : Matériel

Synology DS107e : rdiff-galères

Je souhaitais faire des sauvegardes de mon disque externe sur mon DS107e en utilisant la commande rdiff-backup. J’ai monté certains répertoires en CIFS et rencontré mes premières difficultés. De plus, impossible de faire une sauvegarde en utilisant rdiff-backup car cette commande n’est pas compatible avec CIFS :
Using rdiff-backup to backup files to a server mounted via smbfs or CIFS has been a troublesome configuration for some users. Mounting via smbfs tends to be more reliable than CIFS, although it is deprecated on Linux and does not support files greater than 2 GB. See the FAQ for more on this setup.
Je change d’optique, je ne ferai pas mes sauvegardes de mon disque externe sur le DS107e. Par contre, le DS107e contient des données qu’il me faut sauver sur un autre disque externe. Dans ce sens, rdiff-backup fonctionne, mais c’est bien trop lent : plus de 15h pour archiver quelques 250Go.

Tant pis, ou plutôt tant mieux, car j’ai eu une meilleur idée : installer rdiff-backup et cron sur le DS107e et brancher mon disque externe sur le DS107e. C’est plus rapide car la sauvegarde ne passe plus par le réseau, et en plus, le DS107e est autonome et n’a plus besoin de mon PC allumé pour réaliser ses sauvegardes ! Pour installer rdiff-backup et cron, j’utilise ipkg. Une fois tout installé sur le DS107e, et bien rien ne fonctionne, ou plutôt, impossible de faire fonctionner rdiff-backup :
Exception ''module' object has no attribute 'gettempdir'' raised of class 'exceptions.AttributeError':
File "/opt/lib/python2.4/site-packages/rdiff_backup/Main.py", line 299, in error_check_Main
try: Main(arglist)
File "/opt/lib/python2.4/site-packages/rdiff_backup/Main.py", line 315, in Main
Security.initialize(action or "mirror", cmdpairs)
File "/opt/lib/python2.4/site-packages/rdiff_backup/Security.py", line 53, in initialize
set_security_level(action, cmdpairs)
File "/opt/lib/python2.4/site-packages/rdiff_backup/Security.py", line 107, in set_security_level
rdir = tempfile.gettempdir()

Traceback (most recent call last):
File "/opt/bin/rdiff-backup", line 23, in ?
rdiff_backup.Main.error_check_Main(sys.argv[1:])
File "/opt/lib/python2.4/site-packages/rdiff_backup/Main.py", line 299, in error_check_Main
try: Main(arglist)
File "/opt/lib/python2.4/site-packages/rdiff_backup/Main.py", line 315, in Main
Security.initialize(action or "mirror", cmdpairs)
File "/opt/lib/python2.4/site-packages/rdiff_backup/Security.py", line 53, in initialize
set_security_level(action, cmdpairs)
File "/opt/lib/python2.4/site-packages/rdiff_backup/Security.py", line 107, in set_security_level
rdir = tempfile.gettempdir()
AttributeError: 'module' object has no attribute 'gettempdir'

Qu’à cela ne tienne, je n’utiliserai pas rdiff-backup qui commence à me fatiguer, mais rsync qui lui, une fois installé et configuré, fonctionne.

Publié dans Galères, Synology | Laisser un commentaire

Synology : installation et utilisation de ipkg

  1. Installer telnet puis se loguer en tant que root. Le mot de passe de root est celui du compte admin.
  2. Télécharger dans le dossier public du Synology : ds101-bootstrap_1.0-4_powerpc.xsh
    puis l’installer :
    cd /volume1/public
    sh ds101-bootstrap_1.0-4_powerpc.xsh
  3. Mise à jour :
    ipkg update
    ipkg upgrade
  4. Utilisation d’ipkg :
    • ipkg update pour mettre à jour la base de donnée d’ipkg (liste des paquets disponibles) ;
    • ipkg upgrade pour obtenir la dernière version de tous les paquets ;
    • ipkg list pour avoir la liste des paquets disponibles ;
    • ipkg install pkg pour installer le paquet pkg ;
    • ipkg status pour avoir la liste des paquets que vous avez installés ;
    • ipkg remove pkg pour enlever le paquet pkg ;
    • ipkg files pkgpour lister tous les fichiers installés par pkg ;
    • ipkg search filepour trouver un paquet fournissant file.

Mes indispensables d’ipkg :

  • ipkg install bash
  • ipkg install screen
  • ipkg install cron
  • ipkg install rssh (pour scp)
  • ipkg install textutils

DSM 3 ou 4 – Après une mis-à-jour du DSM vers la version 3 ou 4, il est probable qu’ipkg ne fonctionne plus et que vous obteniez le message suivant : -ash: ipkg: not found. La solution tient dans les deux modifications suivantes.

  1. Editer le fichier /etc/rc.local et ajouter la ligne en gras :
    #!/bin/sh
    mount -o bind /volume1/@optware /opt
    # Optware setup
    [ -x /etc/rc.optware ] && /etc/rc.optware start
    exit 0
  2. Editer le fichier du profil root /root/.profile et ajuster le chemin (ajouter la partie en gras) :
    PATH=/opt/bin:/opt/sbin:/sbin:/bin:/usr/sbin:/usr/bin:/usr/syno/sbin:…
  3. Rebooter le Synology.

Remarque – Après un reboot du Synology, ipkg ne fonctionnait plus. J’ai découvert à cette occasion que l’installation de TwonkyMedia écrase le fichier /etc/rc.local que l’installation d’ipkg met à jour pour son fonctionnement. En tout cas, une réinstallation d’ipkg a résolu le problème.

Remarque du 01/03/2014 – Suite à une réinstallation du DSM (le système du NAS) et après avoir tout reconfiguré (ipkg compris), je me suis retrouvé avec le problème suivant dans une session ssh :

DS209xII> top
top: error while loading shared libraries: libproc-3.2.8.so: cannot open shared object file: 
No such file or directory
DS209xII> ps
ps: error while loading shared libraries: libproc-3.2.8.so: cannot open shared object file: 
No such file or directory
En fait le problème provient d’ipkg et pas du DSM car ce sont les commandes /opt/bin/ps et /opt/bin/top qui génèrent ce problème, tandis que /usr/bin/top fonctionne correctement. L’installation de procps a résolu le problème : ipkg install procps

Publié dans Indispensable, Synology, Système | 4 commentaires

Utiliser le D-Link DI-704P sans sa fonction routeur

Imaginons que vous vouliez utiliser le DI-704P, avec un autre routeur/switch (comme une freebox), simplement pour son serveur d’impression.
Pour cela, il suffit de désactiver le serveur DHCP du DI-704P : Home > LAN > DHCP Server > Disabled dans l’interface d’administration du DI-704P.
Puis il faut relier par un câble RJ45 un des quatre port du switch du DI-704P à un port du switch de votre routeur/switch.
En plus du serveur d’impression vous avez gagné deux ports RJ45 pour votre routeur/switch : les trois ports restant du DI-704P sont utilisables, mais vous en perdez un sur votre routeur/switch pour connecter le DI-704P.
Publié dans DLink, Questions Réseau | Laisser un commentaire

Utiliser sous Windows le serveur d’impression D-Link DP-301P+

Voici la procédure d’installation sous Windows d’une imprimante connectée au serveur d’impression D-Link DP-301P+ (pour Windows 7, voir la mise à jour du 20/12/2012 plus bas) :

  1. On commence par noter le nom de la file d’attente.
    Aller sur la page d’administration du serveur d’impression DP-301P+ (http://192.168.0.10/ par défaut) puis dans l’onglet Configuration. Noter dans Port Setting le Port Name (ex : PS-2F3714-P1).
  2. On crée ensuite un port local vers le serveur d’impression.
    Aller dans Démarrer > Paramètres > Imprimantes ; puis dans Fichier > Propriétés du serveur ; puis onglet Ports > Ajouter un port ; puis Standard TCP/IP Port > Ajouter un port… puis Suivant ; Saisir l’adresse du serveur d’impression (192.168.0.10 par défaut) dans Nom d’imprimante ou adresse IP : puis choisir le nom du port dans Nom du port : puis Suivant ; puis choisir Personnalisé et cliquer sur Paramètres… ; là il faut choisir LPR et donner le nom de la file d’attente que l’on avait noté (ex : PS-2F3714-P1) dans Nom de la file d’attente ; puis OK > Suivant > Terminer.
  3. On ajouter enfin une nouvelle imprimante qui utilise le port créé.
    Aller dans Démarrer > Paramètres > Imprimantes ; puis double-cliquer sur Ajout d’imprimante ; puis Suivant > Imprimante locale > Suivant ; choisir le port créé ci-dessus puis Suivant ; sélectionner le modèle d’imprimante puis Suivant > Suivant > Suivant > Suivant > Terminer.

Je suppose que cette méthode fonctionne aussi pour le serveur d’impression du routeur D-Link DI-704P et plus généralement pour bien d’autres serveurs d’impression.

Mise à jour du 20/12/2012 : Sous Windows 7, après le point 1 ci-dessus il faut faire :

  • Aller dans Démarrer → Périphériques et imprimantes → Ajouter une imprimante → Ajouter une imprimante locale → Créer un nouveau port et sélectionner Standard TCP/IP Port puis cliquer sur Suivant
  • Saisir l’adresse du serveur d’impression (192.168.0.10 par défaut) dans Nom d’hôte ou adresse IP : puis choisir le nom du port dans Nom du port : puis Suivant
  • Dans l’écran Informations supplémentaires requises concernant le port sélectionner Personnalisé → Paramètres ; là il faut choisir LPR et donner le nom de la file d’attente que l’on avait noté (ex : PS-2F3714-P1) dans Nom de la file d’attente : puis OK et Suivant
  • Dans l’écran Installer le pilote d’imprimante sélectionner son imprimante ; si elle n’apparaît pas, parcequ’elle est trop ancienne par exemple, cliquer sur Windows Update pour obtenir une liste bien plus fournie

Publié dans Galères, Windows (OS), DLink, Questions Réseau | Laisser un commentaire

Utiliser le serveur d’impression du routeur D-Link DI-704P sous Ubuntu

En principe, il faudrait faire Système > Administration > Impression ; puis Imprimante > Ajouter une imprimante ; puis cliquer sur Imprimante réseau ; puis sélectionner l’item Imprimante UNIX (LPD).
Là il faut remplir les deux champs, par exemple :
Hôte : 192.168.0.1
File d'impression : lp

Mais en cliquant sur Avancer et le panneau se fige, c’est un bug !

Pour contourner ce problème, il faut configurer directement cups avec son interface web :
http://localhost:631
Mais avec Ubuntu on se retrouve face au message suivant :
Les tâches administratives ont été désactivées pour des raisons de sécurité. Veuillez utiliser le menu Poste de travail System > Administration > Impression
Pour contourner ce nouveau problème, il faut modifier le fichier cupsd.conf :
sudo cp /etc/cups/cupsd.conf /etc/cups/cupsd.conf.svg
sudo gedit /etc/cups/cupsd.conf

Remplacer toutes les occurence de AuthType = Basic par AuthType = None ; puis relancer le service cupsys
/etc/init.d/cupsys restart
Là vous devez pouvoir accéder à la gestion des impressions sur la page cups.
Cliquez sur imprimantes et remplissez les champs de la manière suivante :
- Name: something
- location:
- Description: my printer
- Device: lpd://192.168.0.1/lp

Restorez enfin le fichier cupsd.conf d’origine :
sudo cp /etc/cups/cupsd.conf.svg /etc/cups/cupsd.conf
/etc/init.d/cupsys restart

Publié dans Galères, DLink, Questions Réseau | Laisser un commentaire

Synology, cifs et droits sous Linux

Imaginons que j'ai un répertoire de mon synology monté sous linux en utilisant la fstab de la manière suivante :
//192.168.0.XXX/data /media/synology cifs rw, user, auto, noperm, iocharset=utf8, codepage=850, username=XXX, password=XXX 0 0
ou suivante :
//192.168.0.XXX/data /media/synology cifs rw, user, auto, exec, uid=XXX, gid=XXX, file_mode=0777, dir_mode=0777, noperm, iocharset=utf8, codepage=850, username=XXX, password=XXX 0 0
Premièrement, j'ai l'impression que ces deux façons de monter produisent le même effet, c'est à dire que les options uid, gid, file_mode et dir_mode ne sont pas prisent en compte.
Deuxièmement, quelque soit la façon de monter le répertoire (1ère ou 2ème), je ne peux pas gérer les droits sur les fichiers que je place dans /media/synology. Donc, si je suis le seul à avoir les droit de lecture par exemple, personne d'autre sur le réseau ne peut voir ces fichiers et je ne peux rien y faire !

Une idée ?
La solution : depuis le 02/11/2007, le DS107e (ainsi que toute la gamme de Synology me semble-t-il) gère protocole NFS (en appliquant le firmware v2.0.3 – 0518 ou supérieur) ce qui devrait régler bien des problèmes !
Voir le billet : Synology DS107e et montage NFS dans la fstab sous Linux
Publié dans Synology | 1 commentaire

Synology DS107e et montage CIFS dans la fstab sous Linux

Ce fut la galère …
En fait, toute la magie est dans l’option noperm !
La procédure :
  1. Créer un utilisateur (Nom + Mot de passe, ex : josd+josdpass) avec l’interface d’administration du Synology.
  2. Créer un dossier partagé (ex : data) avec l’interface d’administration du Synology.
  3. Permettre à cet utilisateur de lire et écrire dans le dossier partagé grâce à la Configurations des privilèges de l’interface d’administration du Synology.
  4. Ajouter dans le fichier /etc/fstab, sur une seule ligne et sans espace après les virgules, la ligne :
    //192.168.0.XXX/data /media/synology cifs rw, user, auto, noperm, iocharset=utf8, codepage=850, username=josd, password=josdpasswd 0 0
Ou mieux, passez par un fichier credentials pour ne pas faire apparaître en clair votre mot de passe dans le fichier fstab :
  1. Créer le fichier
    cd
    gedit .passwd
  2. Y mettre, avec un retour chariot à la fin :
    username=josd
    password=josdpasswd
  3. Protéger un peu le fichier :
    chmod 600 .passwd
  4. Ajouter dans le fichier /etc/fstab, sur une seule ligne et sans espace après les virgules, la ligne :
    //192.168.0.XXX/data /media/synology cifs rw, user, auto, noperm, iocharset=utf8, codepage=850, credentials=chez_moi/.passwd 0 0
Remarque : depuis le 02/11/2007, le DS107e (ainsi que toute la gamme de Synology me semble-t-il) gère le protocole NFS (en appliquant le firmware v2.0.3 – 0518 ou supérieur) ce qui devrait simplifier bien des choses !
Publié dans Synology | Laisser un commentaire