Downloads/Fr

From TuxFamilyFAQ
Jump to navigationJump to search

Espaces de téléchargement



Description

Les dépôts (repositories) permettent le stockage de fichiers statiques que vous souhaitez rendre disponibles au téléchargement. Cela implique aussi bien les "gros" fichiers :

  • fichiers ISO
  • dépôts de paquets (.deb, .rpm, etc.)
  • vidéos
  • photographies haute-résolution

.. que les fichiers de moindre taille :

  • fichiers CSS
  • avatars des membres de vos applications web
  • images des thèmes de vos applications web
  • ...

Cela n'inclut pas les fichiers dynamiques (.cgi, .php, ...).

Le quota par défaut est de 1024 Mo, mais il peut être augmenté sur simple demande. Dans certains cas, la corruption des administrateurs devant un comptoir peut s'avérer nécessaire... Les fichiers pourront alors être téléchargés en utilisant les protocoles ftp, http et rsync.

A noter : choisissez avec soin le nom de votre projet, car l'URL de consultation de votre dépôt sera de la forme http://download.tuxfamily.org/PROJET/

Quelle différence avec un espace web standard ?

Utiliser les espaces de téléchargement est primordial pour que TuxFamily puisse continuer à fournir un service convenable.

En effet, les espaces web sont conçus spécifiquement pour servir du contenu dynamique (disques rapides, mais espace disque coûteux et limité, plusieurs machines en load balancing pour tout ce qui est pages web dynamiques,...) alors que les espaces de téléchargement sont eux optimisés pour fournir du contenu statique (espace disque conséquent et peu coûteux, architecture répartie sur plusieurs serveurs avec du geodns pour servir les clients en fonction de leur répartition géographique, pas de pages web dynamiques,...). Ainsi, même si par hasard vous avez réussi à obtenir un quota élevé pour votre espace web standard, vous ne devez pas l'utiliser pour stocker et distribuer de gros fichiers statiques.

Dépendances

Création

  • Connectez-vous sur le panel
  • Sélectionnez le groupe pour cet espace de téléchargement
  • Cliquez sur "Créer" dans la rubrique "Espaces de téléchargement" (vers le bas)
  • Remplissez le champ "Description"

Conseils de création

  • Comme d'habitude, mettez une description claire avec la licence, cela fera gagner du temps à tout le monde, particulièrement à vous ;-)

Modération

La création de cet espace de téléchargement est soumise à modération. Voir ici.

Comment l'administrer (panel)

Il n'y a aucune option sur le panel.

Configuration

Rien à configurer :)

Comment gérer les droits de mon groupe ?

Cet objet peut être partagé avec votre groupe en utilisant les ACL.

Comment le détruire ?

Euh... D'abord, faites tourner vos neurones 7 fois dans votre cerveau car la destruction est irréversible !

  • Connectez-vous sur le panel
  • Cliquez sur le groupe de votre projet
  • Cliquez sur votre dépôt
  • Cliquez sur « Détruire »

Et ne venez pas pleurer ;-)

Comment l'utiliser

Consultation

Les URL de consultation sont :

Avec rsync, pour télécharger tout l'espace dans le répertoire "download", taper:

$ rsync -av rsync://download.tuxfamily.org/pub/mon_projet/ download/

Mais on préfère une utilisation en HTTP, c'est plus souple et plus simple pour tout le monde ;)

Pour le HTTP, on peut tout télécharger en utilisant wget, mais il y aura des fichier HTML de listing (index.html) en plus:

$ wget -r -l inf -nH -np http://download.tuxfamily.org/mon_projet/

Remplissage par FTP

Utilisez tout simplement votre client ftp sur ftp://ftp.tuxfamily.org avec classiquement votre login (celui du panel). Les fichiers appartiennent à votre groupe et sont donc remplaçables par vos comparses sur votre projet.

Pensez à ajouter un fichier README précisant :

  • le contenu du dépôt ainsi que son organisation ;
  • la licence retenue pour les fichiers mis à disposition en téléchargement (voir Licence Libre) : ajouter un fichier LICENSE pendant que vous y êtes voire COPYRIGHT (à la Debian) ;
  • la façon d'utiliser ce dépôt ;
  • vous pouvez nommer ce fichier MANIFEST (ou _README ou .README ? pour qu'il apparaisse en premier de la liste) : vérifiez ensuite ce qui est affiché lors de la connexion par ftp.

Remplissage par SSH (ou SFTP ou rsync over SSH)

Si vous ne voulez pas que le mot de passe de votre compte utilisateur (celui qui vous permet entre autre de gérer votre compte sur le panel...) transiste en clair sur le réseau en utilisant ftp (ça peut se comprendre ;-)), utilisez un protocole sécurisé par ssh comme sftp.

Par SFTP

Pour les besoins de l'exemple, nous supposerons que :

  • « utilisateur » est votre nom de connexion sur le panel vhffs de TuxFamily ;
  • « mon_projet » est le nom de votre projet concerné par l'espace de téléchargement, sachant que vous pouvez en avoir plusieurs ;
  • « local_user » est votre nom de connexion sur votre machine .

Dans une console, tapez la commande suivante :

sftp utilisateur@ftp.tuxfamily.org

Si vous ne vous êtes jamais connecté de cette manière, la première fois, vous recevrez dans la console un message du style :

Connecting to ftp.tuxfamily.org...
The authenticity of host 'ftp.tuxfamily.org (212.85.158.7)' can't be established.
RSA key fingerprint is ef:3b:cd:b3:a0:66:bc:fb:f7:3a:98:1f:32:45:8c:24.
Are you sure you want to continue connecting (yes/no)?

Évidemment, vous répondrez oui. Enfin... yes ;-)

Vous verrez alors apparaître l'avertissement suivant :

Warning: Permanently added 'ftp.tuxfamily.org,212.85.158.7' (RSA) to the list of known hosts.

indiquant donc que le ftp de Tuxfamily est ajouté à la liste des hôtes connus par ssh sur la machine avec laquelle vous vous connectez.

Ensuite, dans le cas où vous n'auriez pas « sécurisé » la console (voir l'exemple d'un shell sécurisé), ssh vous demande de fournir votre phrase de passe :

Enter passphrase for key '/home/local_user/.ssh/id_dsa':

ou peut-être :

Enter passphrase for key '/home/local_user/.ssh/id_rsa':

suivant le type de clé ssh que vous avez créé, ou tout simplement

utilisateur@ftp.tuxfamily.org's password:

Si vous ne vous êtes pas trompé dans votre phrase de passe, l'invite de votre console devient :

sftp>

Un petit « ls » vous permet d'afficher l'ensemble des projets que vous avez créé chez TuxFamily, dont « mon_projet », plus le répertoire « ssh_keys ».

Allez dans le répertoire « mon_projet » et relancez « ls » [1] .

sftp> cd mon_projet
sftp> ls
mon_projet-repository           mon_projet.tuxfamily.org-web
sftp>

C'est peut-être un peu ambigü, mais il se trouve que le répertoire « mon_projet-repository » est équivalent à votre espace de téléchargement auquel les internautes accèderont par le lien http://download.tuxfamily.org/mon_projet

Alors, un petit « cd » supplémentaire, et vous pourrez installer dans le répertoire tous les fichiers que vous destinez au téléchargement.

sftp> cd mon_projet-repository

Vous pouvez aussi en profiter pour mettre à jour ou installer votre site web en utilisant sftp.

Rappelez-vous. Si vous êtes dans le répertoire distant « mon_projet », la commande « ls » renvoie :

sftp> ls
mon_projet-repository           mon_projet.tuxfamily.org-web

Entrez dans « mon_projet.tuxfamily.org-web » et affichez-en le contenu :

sftp> cd mon_projet.tuxfamily.org-web
sftp> ls
awstats      htdocs       logs         php-include  tmp

La racine de votre site web est « htdocs ».

sftp> cd htdocs

Vous êtes donc à présent à l'endroit qui peut être visualisé de l'extérieur avec l'URL « http://mon_projet.tuxfamily.org ».

Pour plus d'informations sur la copie de vos fichiers locaux sur votre espace de téléchargement TuxFamily ou votre espace web, vous n'êtes nullement dispensé de la lecture de la page de manuel de sftp ;-). En plus, il y a une version française...

Si vous pensez qu'elle n'est pas à jour, il vous reste la version originale accessible par la commande suivante :

LANG=C man sftp

Voilà pour le moment !

  1. Petit rappel : l'autocomplémentation, l'historique clavier, le déplacement avec la flèche gauche ne fonctionnent pas toujours dans une connexion sécurisée sftp ! Dans ce cas, usez et abusez des commandes « ls », « cd » et « pwd » ! Judicieusement utilisées avec la sélection de texte avec la souris, vous vous faciliterez grandement la vie !

Par rsync (over SSH)

rsync permet une utilisation moins interactive et plus facilement automatisable. Pour ajouter le contenu de la racine du répertoire "download" au sous-répertoire "temp" de l'espace de téléchargement, taper:

$ rsync -av ./download/ utilisateur@ssh.tuxfamily.org:mon_projet/mon_projet-repository/temp/

Remplissage via PHP/votre application

Pour vos avatars de forum, ou les fichiers joints ou les uploads pour votre wiki, il est recommandé d'utiliser un download repository (ce sont des fichiers statiques, consommateurs d'espace disque).

La taille des fichiers pour l'upload par HTTP est limitée à 128 Mo (à confirmer).

Voir les recommandations par application pour savoir comment procéder pour chacun, en bref :

  • pour que php/votre application puisse y écrire du contenu : utiliser /data/repository/[votre_nom_de_groupe]/statique/
  • pour que php/votre application puisse vous fournir le contenu : faire en sorte que le lien fourni par votre application pointe sur http://download.tuxfamily.org/[votre_nom_de_groupe]/statique/

Statistiques

Les statistiques concernant votre dépôt sont disponibles sur : http://stats.download.tuxfamily.org/VOTREGROUPE/
Par exemple : http://stats.download.tuxfamily.org/vhffs4/

Espaces de téléchargement et civisme

Comme sur toute architecture mutualisée, les ressources pour le service de téléchargement sont réparties entre tous les hébergés. Nous vous demandons donc de respecter ces règles fort simples et qui à mon avis ne sont que du bon sens...

  • Ne pas gaspiller l'espace disque. Il vous faut nettoyer régulièrement vos espaces de téléchargement et supprimer les fichiers caducs.
  • Nous prévenir avant de releaser de gros fichiers (des ISO d'une distribution par exemple).
  • Pour ceux qui auraient envie de figurer sur des sites du genre de http://distrowatch.com idem, nous faire signe AVANT nous permet de prévenir nos fournisseurs de bande passante qu'il risque d'y avoir un pic de consommation...
    • Nous recommandons d'éviter de donner un lien direct vers l'ISO sur distrowatch et préconisons plutôt de donner une page listant les miroirs existant (4 au minimum afin de répartir la charge).
    • Nous serions aussi embêtés que vous de devoir fermer ce service, ce qui a failli nous arriver.
  • De plus, nous encourageons vivement les personnes qui font des paquets pour une certaine distribution commençant par 'U' et finissant par 'buntu' de se mettre en relation avec les dépôts officiels pour y intégrer leurs paquets au lieu de créer un nième dépôt sur TuxFamily.
  • Privilégiez plutôt ce service pour vos ISOs de développement (moins de téléchargements qu'une release publique) ou comme serveur primaire de miroir (ça vous arrangera quand les autres miroirs seront martelés par des milliers de FTP).
  • Merci aussi d'encourager vos utilisateurs à ne pas utiliser ces #@!$#@!$#@$! de logiciels qui ouvrent 20000 connexions sur le serveur pour télécharger 1 fichier... En effet, ils ne permettent pas de gagner en vitesse de téléchargement mais surchargent surtout inutilement nos serveurs.

La politique de TuxFamily a toujours été de brider les services au minimum et d'être peu regardant sur les ressources consommées cependant, en cas d'abus, nous ne laisserons pas un utilisateur dégrader le service (et donc nuire à tous les autres projets) et l'indélicat sera mis à la porte sans ménagement.

Remarques diverses

  • Voir http://download.tuxfamily.org/vhffs4/ pour un exemple de dépôt de paquets Debian.
  • N'hésitez pas à mettre un fichier README par répertoire afin que l'utilisateur sache ce qu'il peut trouver dans l'arborescence.
  • Pour les fichiers ISO, pensez à mettre un fichier de description donnant les md5sum ou sha1 (cela permet de vérifier que le téléchargement s'est correctement déroulé).
  • Essayez d'organiser un minimum les répertoires (mieux que votre chambre de geek, hein ?) pour prévoir les versions ultérieures, les paquets de vos logiciels, plutôt qu'un vaste foutoir innommable qui vous ferait honte par la suite...
  • Vous pouvez aussi écrire dans votre espace de téléchargement depuis votre site web.
  • Tous les fichiers déposés sur les dépôts de téléchargement seront téléchargeables publiquement, et ce quelles que soient les permissions utilisées sur les fichiers.

Liens utiles

Euh... Rien pour le moment.

Si vous en connaissez qui devraient se trouver ici, n'hésitez pas à éditer, ou au moins le signaler, par exemple sur IRC.