ENTFT est une application de transfert de fichiers. Elle fonctionne sur l'Environnement Numérique de Travail (ENT), projet ESUP-portail, lorsque l'application web Canal ou Portlet stockage y est installée.
L'ENT proposé par ESUP-portail équipe la plupart des sites web des universités françaises. Les applications web canal stockage et portlet stockage ont été développées pour s'intégrer à cet environnement. Ces deux applications remplissent la même fonctionnalité de transfert de fichiers pour le travail distant mais ne sont pas compatibles entre elles. Portlet stockage est l'application destinée à remplacer canal stockage. La première s'adapte aux standards du "web 2.0" et est donc plus fluide d'utilisation mais n'est pas pour autant plus dense niveau fonctionnalités. Pour de plus amples informations sur le projet Canal/Portlet stockage on pourra consulter : projet Canal/Portlet stockage.
Dans ce contexte il faut voir entft comme un client FTP en ligne de commande permettant l'accès aux fichiers de Canal/Portlet stockage.
Le but premier de ce projet est de fournir une application d'utilisation légère et efficace pour le travail distant. En particulier ce projet vise à satisfaire les besoins des étudiants en informatique dans les universités françaises proposant un ENT sans accès ssh efficace pour l'accès aux fichiers. En effet, devoir passer par une interface web lorsqu'on travaille sur un projet peut être assez fastidieux et lent. Le client entft est conçu pour minimiser les requêtes web.
Enfin, ce projet s'adresse aux utilisateurs de GNU/Linux ou du moins possédant un shell Bash (oui, on peut toujours utiliser Cygwin sous Windows...) et quelques autres outils (le programme devrait vous les réclamer s'il vous les manque). Mais il faut rendre grâce aux auteurs de curl (http://curl.haxx.se) qui est un superbe outil pour interagir avec un site web sans navigateur.
Actualités - Historique
Cliquez pour développer.
03/01/2017
Ce projet n'est plus maintenu depuis plusieurs années.
16/04/2012
- Mise à jour, version 2.0.2
Correction de l'en-tête HTTP User-Agent.
Rajout dans l'aide en ligne de commande de l'id. fc (Franche-Comté).
11/04/2012
- Mise à jour, version 2.0.1
Ajout de l'ent de l'université de Franche Comté (fc).
22/09/2011
- Mise à jour, version 2.0.0
Entft supporte maintenant Portlet stockage (bdx1 est de nouveau accessible).
Cette version est à considérer comme une beta.
15/09/2011
- Mise à jour, version 1.0.4
Correction de la phase de la login (cf. log. SVN).
Le script ne fonctionne plus pour bdx1 (nouvelle version du canal stockage).
08/08/2011
- Mise à jour, version 1.0.3.
Correctif d'un bogue lié à une confusion de noms de variables entft/environnement bash (sur certaines versions de distributions GNU/Linux).
03/08/2011
- Mise à jour, version 1.0.2.
Correction de l'accès au répertoire courant du script.
Correction de la phase de login, avec mise à jour automatique et enregistrement d'un paramètre de configuration (identifiant canal de stockage) intervenant pour l'accès au service (identifiant utilisé dans l'URL). Cela évite notamment les problèmes d'accès à bdx1, ce paramètre étant régulièrement modifié côté serveur alors qu'il était stocké en dur dans le fichier de configuration de entft. Les fichiers de configuration des anciennes versions ne sont plus valables.
20/05/2011
- Mise à jour, version 1.0.1.
13/03/2011
- Publication de la version 1.0.0.
Il faut télécharger et désarchiver l'archive :
$ tar xzvf entft-2.0.2.tgz
Le répertoire entft-* obtenu contient les scripts du programme.
Il faudra principalement s'assurer que le client curl (http://curl.haxx.se) est installé sur votre système. Il suffit de mettre les scripts du projet dans le répertoire de votre choix et si besoin de modifier la variable d'environnement PATH pour lancer le script plus facilement.
Utilisation
Le client étant développé en Bash il suffit de lancer le script principal dans un terminal :
$ ./entft.sh
ERREUR : nombre de paramètre(s) erroné.
USAGE : ./entft.sh <id_univ> [<utilisateur>]
id_univ : tln (USTV), bdx1 (Bordeaux 1).
Comme indiqué il faut également préciser au moins l'université (par son identifiant) hébergeant l'ENT cible. On peut aussi préciser l'identifiant utilisateur mais si on ne le fait pas le script le demande automatiquement. À noter qu'une fois authentifié on peut quitter le script et reprendre la session précédente sans avoir besoin de s'authentifier à nouveau (si la session n'a pas expiré sur le serveur évidemment). La commande logout permet de terminer explicitement une session.
Une fois connecté, la commande help permet de lister les commandes fournies par le client :
cd ls lcd rm
put get mput mget
rmdir mkdir pwd !
logout exit quit help
Si on est un habitué du client ftp on n'y verra aucune espèce d'originalité. Pour obtenir le détail de chaque commande, il faut utiliser la commande help en précisant simplement la commande dont on veut le détail en paramètre.
Par exemple help rmdir donne :
rmdir [<dossier1>[ <dossier2> [... <dossierN>]]- Supprimer une liste de dossiers.
La syntaxe de notation des commandes est habituelle ; les chevrons indiquent l'attente d'un paramètre et les crochets son caractère facultatif.
Les espaces dans les noms de fichiers et de répertoires sont gérés. Il faut utiliser les guillemets (caractère ") pour encadrer un nom ou un chemin de fichier/répertoire contenant des espaces.
Concernant les commandes
*put
, il faut faire attention à la limite de
taille de fichier imposée par le serveur. Cela peut être la raison de
l'échec d'un téléchargement montant.
Avenir du projet
L'évolution de ce projet dépend des projets Portlet et Canal stockage développés par ESUP-portail (consortium avec qui je n'ai aucun contact). Lorsqu'une nouvelle version de Canal/Portlet stockage est installée sur un ENT, il est possible que entft ne fonctionne plus (en partie ou totalement) si des modifications ont été faites. Le cas échéant il faudra attendre une nouvelle version d'entft. Par exemple, entft 1.0.0 ne fonctionnait que pour l'application web Canal stockage. Le support de la version Portlet n'a été ajouté qu'à partir de la version 2.0.0.
Ensuite, ce projet fonctionnant par requêtes web, il dépend de la donnée d'un certain nombre d'URL que l'on peut retrouver dans les fichiers de configuration (un par université). Si un paramètre afférant est modifié par l'administrateur de l'ENT, il faut alors faire la modification adéquate sur le client entft.
J'ai bon espoir de pouvoir faire ces modifications pour maintenir le projet mais je ne donne aucune garantie, d'autant que pour ce faire j'ai besoin d'accéder à des comptes ENT.
À sa publication le projet permet modestement l'accès aux ENT des universités de Bordeaux 1 et de Toulon (USTV). Encore une fois, sans accès à un compte ENT je ne peux connaître les paramètres indispensables à faire fonctionner le client entft même si les applications Canal/Porlet stockage sont les mêmes sur tous les ENT.
La liste des universités supposément utilisatrices des applications Canal et Porlet stockage est disponible à cette adresse.
Si vous voulez participer au portage du client entft pour votre université n'hésitez pas à me contacter ! Cela consisterait principalement à récupérer des URL et enregistrer quelques autres paramètres.
Enfin, des améliorations significatives pourront être amenées au projet (cf. fichier TODO) et un portage en C multi-plate-forme est envisageable si on me le demande (contactez-moi).
SVN
Utilisez la commande suivante pour récupérer le projet sur le dépôt SVN :
svn co svn://svn.tuxfamily.org/svnroot/entft/entft
On peut aussi consulter le dépôt sur le web.
Contact
hakim.entft [--arobase--]
mail [--point--] com
Licence
Ce projet est un logiciel libre sous licence GNU GPL version 3.
Reportez-vous au fichier LICENSE pour le détail.