#1 Tue 26 January 2010 14:47
- jonathan
- Participant assidu
- Date d'inscription: 16 May 2006
- Messages: 263
mapserveur linux accés partage windows
Bonjour,
J'ai installé mapserver sur Debian lenny et je souhaiterais acceder à des données situées dans un partage windows. Mon serveur debian n'est pas intégré dans le domaine.
J'ai testé ces liens dans le mapfile :
Code:
DATA smb://serveur/partage/dossier/données
ou en utilisant un dossier monté :
Code:
DATA smb://domaine%3Butilisateur@serveur/partage/dossier/données
J'obtiens une erreur disant qu'il ne peut accéder à :
/var/www/mapserver/smb://serveur/... ce qui parait assez normal.
Est-ce possible ?
Merci d'avance.
Dernière modification par jonathan (Tue 26 January 2010 15:03)
Hors ligne
#2 Tue 26 January 2010 17:32
- Laurent Jégou
- Participant assidu
- Lieu: Toulouse
- Date d'inscription: 5 Sep 2005
- Messages: 447
- Site web
Re: mapserveur linux accés partage windows
Il me semble que le fichier spécifié dans le paramètre DATA d'un bloc layer est en fait en chemin relatif par rapport au chemin spécifié dans le paramètre SHAPEPATH du blog principal MAP.
Enseignant-Chercheur en Géomatique
UT2J - Dept Géo / CNRS UMR LISST-Cieu / Master Sigma - Revue Mappemonde
Hors ligne
#3 Tue 26 January 2010 17:37
Re: mapserveur linux accés partage windows
Si le SHAPEPATH ne doit pas être modifié, il y a toujours la méthode du montage samba à la main. Les montages samba en URI comme ça, c'est parfois sportif.
Jérôme Cuinet
L'avantage de la Chine, c'est que le soleil se couche plus tard !
Hors ligne
#5 Wed 27 January 2010 11:02
Re: mapserveur linux accés partage windows
Pour pouvoir lire des fichiers qui sont sur un disque réseau samba, il faut que l'application utilise d'une manière ou d'une autre une couche qui sait gérer ce protocole.
Par défaut sous unix/linux il n'y a pas cette couche de manière native, donc mapserver, qui utilise l'ouverture de fichiers classique ne sait pas quoi faire de smb://.
Sous KDE ou GNOME, les lectures se font par des surcouches spécifiques à ces systèmes, qui gèrent les protocoles d'accès fichier réseau (samba, mais aussi ssh ou ftp par exemple).
Pour permettre à Mapserver d'accéder à tes fichiers par samba, il faut donc que l'accès réseau soit transparent pour lui. La solution est d'utiliser Fuse et de monter le réseau samba sur l'arborescence de système de fichier, et donc d'utiliser ensuite les couches basses pour y accéder.
Pour ce faire, smbmount est ton ami. Par exemple :
Code:
smbmount //server/share /localdir -o username=user,password=pass,uid=500,gid=500
Tes fichiers sont alors accessibles de façon transparente dans le répertoire /localdir de ton système de fichiers, et mapserver sera content (en faisant attention aussi au shapepath).
Inutile de dire que coté performance, c'est mieux si tout est en local, ou alors il faut une bonne connexion réseau entre les machines.
Hors ligne
#6 Wed 27 January 2010 11:10
- jonathan
- Participant assidu
- Date d'inscription: 16 May 2006
- Messages: 263
Re: mapserveur linux accés partage windows
Bonjour,
Même en modifiant le SHAPEPATH, j'obtiens un message d'erreur type :
Code:
msDrawMap(): Image handling error. Failed to draw layer named 'donnée'. msSHPOpenFile(): Unable to access file. (/var/www/mapserver/donnée) msSHPOpenFile(): Unable to access file. (/var/www/mapserver/smb://serveur/partage/dossier/donnée)
Merci pour ces infos vincentp voila des choses bien instructives, je suis en phase de test pour le moment. A terme les données seront peut être locales.
Hors ligne
#7 Wed 27 January 2010 12:05
- jonathan
- Participant assidu
- Date d'inscription: 16 May 2006
- Messages: 263
Re: mapserveur linux accés partage windows
Bonjour,
le smbmount marche bien.
Merci beaucoup.
Hors ligne