Contenu | Rechercher | Menus

Annonce

Ubuntu-fr vend de superbes t-shirts et de belles clés USB 32Go
Rendez-vous sur la boutique En Vente Libre

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#26 Le 05/01/2019, à 18:32

lynn

Re : [1fichier] "Montez" votre stockage 1fichier en une commande simple !

@Zakhar,

Il y a une petite coquille dans ta commande en #21

Tu as mis ça pour la partie log

1fichierfs /home/zakhar/1fichier -o ro,api-key=@/home/zakhar/.1fichier,log-level=7,log-file=/tmp/debug.txt

alors que ça devrait ressembler à ça

1fichierfs /home/zakhar/1fichier -o ro,api-key=@/home/zakhar/.1fichier --log-level=7 --log-file=/tmp/debug.txt

Rien de bien méchant mais ça fonctionne mieux avec la bonne syntaxe. smile

Edit du 05/01: L'erreur venait de chez moi. La commande ci-dessous fonctionne

1fichierfs /home/zakhar/1fichier -o ro,api-key=@/home/zakhar/.1fichier,log-level=7,log-file=/tmp/debug.txt

Dernière modification par lynn (Le 06/01/2019, à 00:31)


«C'est pas parce qu'ils sont nombreux à avoir tort qu'ils ont raison!»

Coluche

Hors ligne

#27 Le 05/01/2019, à 18:36

Zakhar

Re : [1fichier] "Montez" votre stockage 1fichier en une commande simple !

Merci du signalement, je teste.

En principe les deux doivent fonctionner. Pour les options "globales", le programme est sensé accepter les 2 formes :

--option-globale=blahblah

ou

-o option-globable=blahblah

La deuxième forme est dite "méthode fuse"... et aussi elle est utile pour le /etc/fstab car on peut mettre ça dans les paramètres à côté de user,noauto, on fait alors : user,noauto,option-globable=blahblah,autre-option-globale , etc...

Donc si ça ne marche pas, c'est qu'il y a un bug qui ne demande qu'à être corrigé ! yikes

[Edit] @Lynn, je viens de tester, chez moi tout fonctionne, aussi bien sur le packagé que sur la version de développement. L'interprétation des arguments est assez "souple", par exemple pour le "log level" elle accepte

1fichierfs /home/zakhar/1fichier --api-key=blahblah -l7
1fichierfs /home/zakhar/1fichier --api-key=blahblah -l 7
1fichierfs /home/zakhar/1fichier --api-key=blahblah --log-level=7
1fichierfs /home/zakhar/1fichier --api-key=blahblah --log-level 7
1fichierfs /home/zakhar/1fichier --api-key=blahblah -o log-level=7

Les 5 formes fonctionnent chez moi.
"log-debug" n'a que 3 formes car il n'a pas d'option courte, mais les 3 fonctionnent aussi.

Peux-tu reproduire le bug Lynn, et me donner le message d'erreur. Version 32 bits ?
(fais un uname -a pour voir)

Dernière modification par Zakhar (Le 05/01/2019, à 19:19)


"A computer is like air conditioning: it becomes useless when you open windows." (Linus Torvald)

Hors ligne

#28 Le 05/01/2019, à 23:24

Zakhar

Re : [1fichier] "Montez" votre stockage 1fichier en une commande simple !

(5 Janvier 2019) Version 0.9.1

Version complète pour la partie "read-only".
Nouveautés par rapport à la 0.9.0

  • Meilleure résistance aux erreurs aléatoires remontées par le serveur (le debug côté serveur n'est pas totalement terminé).

  • En cas de retour "trop de requêtes" (HTTP 429), le driver fait désormais une attente et ré-essaye automatiquement

  • Cerise sur le gâteau, le driver vous indique l'espace disponible sur votre stockage (par rapport au quota de 2To de "cold storage"). big_smile {*}

Pour voir l'espace disponible :
- Nautilus : clic droit sur votre montage (~/1fichier) et "Propriétés"
- Nemo : idem Nautilus, mais l'espace libre apparaît aussi directement dans la barre d'état du bas.
- Ligne de commande :

$ df -h ~/1fichier
Sys. de fichiers Taille Utilisé Dispo Uti% Monté sur
1fichier.com       2,0T    1,3T  788G  62% /home/zakhar/1fichier

Installation/Désinstallation

- Voir première page

Mise à jour (pour ceux qui ont installé depuis le ppa)

Elle va se faire automatiquement avec les autres mise à jour, sinon vous pouvez déclencher avec

sudo apt update
sudo apt upgrade

{*} A propos de l'espace sur 1fichier.
Depuis quelque temps, vous voyez apparaître sur 1fichier la distinction "Hot Storage" / "Cold Storage"
Le "Hot Storage" est actuellement illimité.
Le "Cold Storage" est actuellement limité à 2To.
Une offre est en préparation pour pouvoir augmenter son quota de "Cold Storage" jusqu'à 1000To pour un compte.
N'étant nullement affilié à 1fichier, je ne saurais vous dire quand ni à quel prix l'offre sortira...
L'aide en ligne dit juste que ce sera "à prix défiant toute concurrence"... ce qui ne nous informe que peu, vu que tout bon marchand dira cela ! wink
Affaire à suivre !

Pourquoi cette notion... c'est assez simple en réalité.
Lorsque Tonton Jules a mis en ligne son film de vacances, il a consommé 10Go de disque sur les serveurs DStorage.
Tonton Jules vous a ensuite partagé le lien, et l'a envoyé à toute la famille.
10 personnes de la famille ayant un compte sur 1fichier ont "Sauvegardé sur mon compte" le film du tonton.
Quel espace cela consomme-t-il sur les serveurs DStorage selon vous ?
11 fois 10Go ?..
Eh bien non, ça consomme 10Go + 10 fois quelques kilo octets.
Parce qu'en réalité on fait ce qu'on appelle en Linux du "hard link" (ou l'équivalent). Il n'y a qu'un seul "objet" stocké de 10Go, et le reste ce sont des liens vers cet objet. Un lien, ça prend juste quelques kilo octets, indépendamment de la taille du fichier vers lequel pointe le lien.
Comme de temps en temps quelqu'un de la famille regarde Tonton Jules s'ébattre sur la plage, c'est là du "Hot Storage" (je n'ai pas dit que Tonton faisait des trucs "Hot" sur la plage... lol, même s'il ne fait rien d'affriolant, ça sera du "Hot storage" parce que le fichier est beaucoup demandé).
Avec les règles du "Hard link", si vous effacez le lien que vous avez "Sauvegardé sur votre compte", le fichier source n'est pas pour autant effacé. En réalité il ne sera effacé que lorsque plus personne n'a de lien sur le fichier, ou en fonctionnement visible, que le dernier membre de la famille (Tonton Jules inclus) aura supprimé le lien. Du reste l'opération système de suppression de fichier sous Linux s'appelle "unlink" (défaire le lien).

Bien sûr, il y a "disque" et "bande passante". Quand tout le monde aura vu le film de Tonton Jules, la bande passante consommée sera bien de 10 fois 10Go, pas de mystère là !
Mais la bande passante n'est pas facturée sur 1fichier (avec sans doute une surveillance pour éviter les abus !)

L'autre usage, c'est la sauvegarde de vote collection de CD que vous avez reapé avant que vos lecteurs de CD ne tombent en panne.
C'est un usage de sauvegarde personnel.
Ça prend 20Go sur 700 fichiers, mais ce n'est qu'à vous, personne d'autre n'a de lien.
Alors au bout d'un moment, cela devient du "Cold storage"... surtout que vous n'écoutez pas l'ensemble de votre CD thèque tous les jours !..
Il n'est donc pas utile de garder tout ça sur des disques "rapides" et accessibles dans la seconde.
Vous noterez d'ailleurs un petit temps de retard à l'ouverture de certains de ces fichiers, surtout s'ils sont encore sur l'ancienne architecture de disques de DStorage.
Ce temps de retard est dû à la récupération de "l'archive froide".

Les règles de passage du Hot Storage au Cold Storage sont inconnues (non publiques !).
Sans doute que le temps joue dans le passage de l'un à l'autre.

Résumé de tout ça : le driver ne vous montre que le "Cold Storage"... puisque le "Hot" est illimité (et on ne sait pas remonter cette notion sur un montage classique). De toute façon la limite qui compte est bien le "Cold", pour le "Hot", il est visible sur votre compte 1fichier en ligne avec votre navigateur.

Dernière modification par Zakhar (Le 05/01/2019, à 23:49)


"A computer is like air conditioning: it becomes useless when you open windows." (Linus Torvald)

Hors ligne

#29 Le 06/01/2019, à 00:04

Zakhar

Re : [1fichier] "Montez" votre stockage 1fichier en une commande simple !

jaxx21 a écrit :

non, pas de partage, uniquement moi et mon compte. Apres, ca a planté souvent pendant le scan.il demandait trop de fichier à la fois je pense. Je vais continuer mon test du plantage ce soir que je n'ai pas réussi a ré effectuer.

Non, ça a planté parce que le serveur te retournait HTTP 403, et que dans ce cas la version 0.9.0 décidait que c'était un code inattendu, et donc qu'elle stoppait tout (et le driver se terminait).

Prends la version 0.9.1 que je viens de packager.
(cf post au dessus).

Elle corrige cela. Sur une erreur inattendue de l'API, on retourne juste "erreur de lecture". Plex risque alors de ne pas pouvoir afficher de vignette s'il ne trouve pas la bonne vignette en ligne à partir du nom du fichier, mais au moins le driver continue de tourner.
Par contre, le fichier ayant subi une erreur serveur sera marqué "cassé", d’où l'intérêt de mettre un "refresh". Le "refresh" réinitialise les listes de fichiers et répertoires, et l'état des fichiers n'est plus à "cassé"... sauf si le serveur te fait encore une erreur sur le même fichier !..

Sur les erreurs serveur, je ne peux pas faire grand chose (sauf à éviter de faire planter le driver !). La seule chose faisable a été faite, c'est donner les informations à la team 1fichier pour tenter de les aider dans leur debug.

Pas la peine de mettre le driver en mode "debug" pour le moment, ça risque de vite remplir ton /tmp si tu utilise ton Plex fréquemment !

Pour la performance comparé avec GDrive, ce qu'il se passe avec Plex (ou Kodi ou d'autres MediaPlayer), c'est que quand il scanne un répertoire, il ne se contente pas de regarder la liste des noms de fichiers et d'aller chercher des vignettes sur le web... non, en plus de ça, il va ouvrir et lire des morceaux de chaque fichier !

D'où le fait que tu aies des erreurs sur l'API download/get_token, c'est celle dont on se sert pour obtenir un "jeton" qui est ensuite utilisé pour la lecture (téléchargement) du fichier. A mon sens, c'est cette partie là qui est nettement plus rapide que Gdrive, précisément parce que ça a été optimisé pour "streamer" des fichiers.
Ça oblige à faire de la programmation avec des "threads" qui tournent en parallèle, et ils sont bien rares les drivers fuse qui vont jusque là et le font correctement !
Aussi, la nouvelle architecture de disques de DStorage dépote bien, ça aide. big_smile

Dernière modification par Zakhar (Le 06/01/2019, à 00:04)


"A computer is like air conditioning: it becomes useless when you open windows." (Linus Torvald)

Hors ligne

#30 Le 06/01/2019, à 00:30

lynn

Re : [1fichier] "Montez" votre stockage 1fichier en une commande simple !

@Zakhar

J'ai réessayé avec la commande précitée et maintenant ça fonctionne... Je n'ai pas compris pourquoi ça n'a pas fonctionné dès le premier coup mais bon, ça fonctionne. L'erreur venait de chez moi. Désolée... tongue


«C'est pas parce qu'ils sont nombreux à avoir tort qu'ils ont raison!»

Coluche

Hors ligne

#31 Le 06/01/2019, à 00:32

Zakhar

Re : [1fichier] "Montez" votre stockage 1fichier en une commande simple !

lynn a écrit :

@Zakhar

J'ai réessayé avec la commande précitée et maintenant ça fonctionne... Je n'ai pas compris pourquoi ça n'a pas fonctionné dès le premier coup mais bon, ça fonctionne. L'erreur venait de chez moi. Désolée... tongue

Y'a pas de mal ! Il vaut mieux un signalement pour rien, que ne pas signaler un bug. Signaler les bugs permet de les corriger, et ça aide aussi les autres.


"A computer is like air conditioning: it becomes useless when you open windows." (Linus Torvald)

Hors ligne

#32 Le 06/01/2019, à 08:56

jaxx21

Re : [1fichier] "Montez" votre stockage 1fichier en une commande simple !

Super, que de bonnes nouvelles. Merci à toi pour tout. c'est mis a jour pour moi smile

Sinon, pendant un moment à l’inscription on voyait bien les mots dans l'offre: Stockage froid 100To. Il y a toujours écrit 100 To mais pas écrit froid. Ils doivent l'autoriser sans le mentionner pour le moment je pense.
Donc, en scannant mes films, ce n'est pas du cold storage du coup vu qu'il check les fichiers. à voir. Merci en tout cas pour toute ces infos précieuses.

EDIT:  J'ai lancé un scan apres ta mise à jour. Pas d'erreur pour le moment. Toujours ON pour le 1fichierfs . Impec. Merci.

Dernière modification par jaxx21 (Le 06/01/2019, à 10:32)

Hors ligne

#33 Le 06/01/2019, à 12:38

Zakhar

Re : [1fichier] "Montez" votre stockage 1fichier en une commande simple !

jaxx21 a écrit :

EDIT:  J'ai lancé un scan apres ta mise à jour. Pas d'erreur pour le moment. Toujours ON pour le 1fichierfs . Impec. Merci.

Pas de problème. En principe (sauf bug... et il doit bien y en avoir encore quelques uns qui courrent !), ça ne devrait plus planter/s'arrêter, même si le serveur continue à te balancer des erreurs !..
Par contre évidemment, si le serveur fait des erreurs, elles seront remontées, et tu verras des fichiers voire des répertoires complets comme "cassés" (ou vides pour les répertoires). C'est indépendant de ma volonté, je n'écris pas le code serveur. wink

Il faut que tu réfléchisses à comment tu fais les mise à jour de ta médiathèque Plex.
Le circuit commence quand tu ajoutes/enlèves des fichiers sur ton stockage 1fichier.
- Si tu as enlevé un fichier et que Plex essaye d'y accéder, le driver s'en rendra compte, et rafraîchira automatiquement l'arborescence. Il n'y a donc rien à faire dans ce sens.
- Par contre si tu en a rajouté, le driver n'a aucun moyen de le savoir si tu n'as pas mis un des mécanismes de "refresh".

Aussi, tu connais sans doute mieux Plex que moi (j'ai même jamais vu !) mais cela dépend s'il a un mécanisme pour mettre à jour automatiquement ou si tu fais la mise à jour en le lui demandant.
- Si mise à jour automatique : toutes les X heures, tu as intérêt à faire une mise à jour synchronisée du driver. Paramètre ==> --refresh-time=NNNN (NNNN est en secondes, donc 3600 pour 1h, etc...)
- Si mise à jour "manuelle" : tu peux faire de même avec le driver. Il faut alors juste penser à cliquer sur le fichier "refresh" avant de cliquer sur Plex ==> --refresh-file=nom_du_fichier

Si tu utilises la ligne de commande pour agir sur ton serveur, pour déclencher le "trigger fichier", tu peux faire une commande de ce genre :

cat ~/1fichier/nom_du_fichier

Ca n'affichera rien, car cela simule un fichier vide, mais aura pour effet de rafraîchir l'arborescence avant que tu ne cliques sur la MàJ de ta vidéothèque, et ainsi Plex verra les nouveaux fichiers que tu as rajoutés sur ton stockage en ligne (et verra aussi si tu en as enlevé).

jaxx21 a écrit :

Sinon, pendant un moment à l’inscription on voyait bien les mots dans l'offre: Stockage froid 100To. Il y a toujours écrit 100 To mais pas écrit froid. Ils doivent l'autoriser sans le mentionner pour le moment je pense.

Il était même écrit "1000To" à un moment donné !
Par contre c'est bien écrit "jusqu'à" 100To.
Mais si tu regardes dans l'aide 1fichier, ici : https://1fichier.com/hlp.html, à la rubrique "Cold Storage", tu verras l'explication : Premium = 2To de "Cold" offert, "Hot" illimité.

Sur ta console, à la rubrique mes fichiers : https://1fichier.com/console/index.pl?mf, en haut à gauche tu as la consommation de "Hot" et de "Cold".
En cliquant sur les chiffres, tu arrives sur la page plus détaillée : https://1fichier.com/console/infog.pl, où tu as en plus le nombre de fichiers, d'accès et même la répartition par provenance sur la carte du monde.
Le driver restitue que l'espace de stockage à une taille de 2To (ce qui ne tient pas compte du "Hot" illimité) et restitue combien tu consommes de "Cold" actuellement. Ainsi Nautilus ou la ligne de commande te donnent ces chiffres en lecture directe.

Pour le "Hot", il faut aller voir sur sa "console 1fichier".

Et je présume qu'effectivement, il sont "cool" sur les volumes stockés tant qu'ils n'ont pas mis en place l'offre "Extended Storage"... vu qu'en réalité tu n'as aucun moyen d'y souscrire !..

... d'ailleurs ça me fait penser... il est bien possible que ton "Cold" dépasse les 2To, et je pense que dans ce cas là le driver t'affiche un espace libre aberrant !.. Je vais corriger/prévenir ça, et ce sera dans le prochain package.

Tu peux faire la commande ci-dessous pour voir si effectivement ça bugge !

$ df -h ~/1fichier
Sys. de fichiers Taille Utilisé Dispo Uti% Monté sur
1fichier.com       2,0T    1,3T  788G  62% /home/zakhar/1fichier

(Moi ça marche bien parce que je n'ai pas dépassé les 2To !..)

Dernière modification par Zakhar (Le 06/01/2019, à 13:03)


"A computer is like air conditioning: it becomes useless when you open windows." (Linus Torvald)

Hors ligne

#34 Le 07/01/2019, à 06:10

jaxx21

Re : [1fichier] "Montez" votre stockage 1fichier en une commande simple !

Salut, ok, merci ponur les précisions. En effet; je dépasse de 16 To.C'est de la collecte pour moi perso. Je ne partage rien.Pour preuve, c'est du stockage froid.

Filesystem      Size  Used Avail Use% Mounted on
1fichier.com    2.0T  -16E   16E    - /home/jax/1fichier

Dernière modification par jaxx21 (Le 07/01/2019, à 06:11)

Hors ligne

#35 Le 07/01/2019, à 09:00

Zakhar

Re : [1fichier] "Montez" votre stockage 1fichier en une commande simple !

Je me doutais que ça buggait !.. Bon, c'est corrigé, c'est juste 1 ligne de code.
Dans la prochaine version tu auras l'indication qu'il y a 2To de disponible et qu'il te reste 0 (pour le "dépassement", il faudra alors voir sa console).

Oui, au bout d'un moment, à force de collecter les vidéos de Tonton Jules, ça finit par faire du "Cold", quand par exemple tu es le dernier à avoir le lien vers l'objet.

Dernière modification par Zakhar (Le 07/01/2019, à 09:01)


"A computer is like air conditioning: it becomes useless when you open windows." (Linus Torvald)

Hors ligne

#36 Le 10/01/2019, à 08:35

jaxx21

Re : [1fichier] "Montez" votre stockage 1fichier en une commande simple !

Bon,  et bien aucun crash depuis la dernière fois.Quand on regarde les films ,c'est niquel. Rien à dire. Il n'y a que pendant le scan que ca plantait (scan de grosse liste de fichier video), mais on reprenait le scan ou on en était. Du bon boulot Zakhar. Merci encore une fois.Simplicité/Efficacité smile

Dernière modification par jaxx21 (Le 10/01/2019, à 08:36)

Hors ligne

#37 Le 10/01/2019, à 11:05

Zakhar

Re : [1fichier] "Montez" votre stockage 1fichier en une commande simple !

De rien !
Il me reste la partie "renommage/suppression" qui n'est pas dans ton cas d'usage, et là je suis sur l'écriture de la page de "man" (le Manuel que les pingouinautes sont habitués à consulter).

Après, il reste pas mal de boulot à commenter, nettoyer le code, et améliorer certains algorithmes, mais ça marche sans crash aussi de mon côté. ;-)

Je n'ai pas vu non plus de retour de code HTTP suspect provenant de 1fichier... ils auraient donc corrigé ça aussi de leur côté !

En tout cas n'hésite pas à signaler s'il y a un truc bizarre ou un plantage. Avec ce qu'il y a dans ta "syslog" pour aider.


"A computer is like air conditioning: it becomes useless when you open windows." (Linus Torvald)

Hors ligne

#38 Le 13/01/2019, à 18:35

Zakhar

Re : [1fichier] "Montez" votre stockage 1fichier en une commande simple !

(13 Janvier 2019) Version 0.9.5

Premier pas dans le "write" (renommage).
Nouveautés par rapport à la 0.9.1

  • Fix bug qui affichait un espace libre faux lorsque l'espace utilisé dépasse le quota autorisé (c'est possible actuellement !).

  • Fix fuite mémoire sur la lecture de l'espace libre.

  • Optimisation l'espace libre n'étant calculé qu'une fois par jour sur 1fichier, il est désormais attaché aux mécanismes de refresh. Entre deux refresh on utilise ce qu'on a mémorisé.

  • Fonctionnalité : possibilité de renommer un fichier au sein du même répertoire

A venir :
- Déplacer/renommer un fichier (entre deux répertoires)
- Déplacer/renommer des répertoires. Actuellement les API 1fichier ne permettent pas de renommer un répertoire (signalé !) bien que cela soit possible sur l'interface web. On peut contourner cela en créant un nouveau répertoire, transférer le contenu de l'ancien vers le nouveau, supprimer l'ancien répertoire. C'est un peu lourd !..
- Suppressions.

ATTENTION
Compte tenu de la fuite mémoire de la version précédente, il est recommandé de mettre à jour vers cette version, même si on n'a pas besoin de la partie "renommer".

La mise à jour n'arrêtant pas un driver 1fichierfs en cours de fonctionnement, une fois la mise à jour faite, il faut arrêter "manuellement" l'ancien driver par :

fusermount -u ~/1fichier

Puis le redémarrer (si vous le souhaitez).
Un redémarrage de la machine fonctionne également... mais on n'est pas des "brutes Wind0w$$" chez qui redémarrer la machine est la seule solution pour relancer un driver ! lol

Dernière modification par Zakhar (Le 13/01/2019, à 18:38)


"A computer is like air conditioning: it becomes useless when you open windows." (Linus Torvald)

Hors ligne

#39 Le 13/01/2019, à 19:23

lynn

Re : [1fichier] "Montez" votre stockage 1fichier en une commande simple !

Après mise à jour du pilote, le renommage fonctionne bien sur un fichier. smile


«C'est pas parce qu'ils sont nombreux à avoir tort qu'ils ont raison!»

Coluche

Hors ligne

#40 Le 14/01/2019, à 05:59

jaxx21

Re : [1fichier] "Montez" votre stockage 1fichier en une commande simple !

Merci à toi pour le suivi wink

Hors ligne

#41 Le 14/01/2019, à 08:19

fernand1

Re : [1fichier] "Montez" votre stockage 1fichier en une commande simple !

Bjr à vous
ces post m'intéressent au plus haut point, mais comme je dois m'absenter, j'ai peur de ne pouvoir les retrouver à mon retour.
Aussi, en insérant mon présent post qui n'apporte ici, aucune contribution, je pourrai à mon retour les retrouver plus facilement dans la rubrique mes messages.
Bonne journée

Hors ligne

#42 Le 14/01/2019, à 08:37

Zakhar

Re : [1fichier] "Montez" votre stockage 1fichier en une commande simple !

fernand1 a écrit :

Bjr à vous
ces post m'intéressent au plus haut point, mais comme je dois m'absenter, j'ai peur de ne pouvoir les retrouver à mon retour.
Aussi, en insérant mon présent post qui n'apporte ici, aucune contribution, je pourrai à mon retour les retrouver plus facilement dans la rubrique mes messages.
Bonne journée

Tu as aussi une fonction dans le forum, c'est "suivre cette discussion". Ainsi tu l'as dans tes "discussions suivies" et à la demande, un mail quand il y a du nouveau sur le fil.


"A computer is like air conditioning: it becomes useless when you open windows." (Linus Torvald)

Hors ligne

#43 Le 20/01/2019, à 20:31

Zakhar

Re : [1fichier] "Montez" votre stockage 1fichier en une commande simple !

Bonsoir,

Je suis ravi de vous présenter la version release : 1.0.0

Elle comprend (presque) tout ce qu'il est possible de faire "raisonnablement" avec les APIs dans leur état actuel.

(20 Janvier 2019) Version 1.0.0

Version "release".
Nouveautés par rapport à la 0.9.5

  • Renommage de fichiers (incluant le cas où on déplace le fichier dans une autre répertoire).

  • Hard-links sur un fichier (y compris dans un autre répertoire).

  • Suppression de fichiers et répertoires.

  • Pages de manuel en anglais et en français.

Pour voir le manuel, qui comprend bien plus de détail que l'aide accessible via l'option --help, faire :

man 1fichierfs

Non implémenté :

  • Renommer des répertoires

  • Hard-link sur les répertoires

En raison des limitations de l'API actuellement disponible sur 1fichier, il n'est pas réaliste de renommer des répertoires.
En effet, bien que la fonction de changer le nom d'un répertoire existe sur l'interface web, cela n'a pas été mis sous forme d'API.
On pourrait contourner en créant un nouveau répertoire, tout transférer dedans et supprimer l'ancien. Mais comme l'API ne permet pas non plus de transférer une liste de répertoire (c'est "unitaire") cela pourrait faire un nombre d'appel très conséquent pour cette fonction. Le résultat pourrait être un "gel apparent" du driver pendant qu'il fait ce renommage et eventuellement un bannissement temporaire car on serait obligé d'enchaîner potentiellement trop d'appels.
Cette insuffisance a été signalée à la team 1fichier. Lorsque ce sera "corrigé", j'implémenterai le renommage de répertoire. Pour l'instant, si vous tentez de faire cela, le programme retourne proprement "fonction non implémentée".

Pour le hard-link sur les répertoires, c'est tout simplement une fonction qui n'existe pas chez 1fichier, et c'est donc limité aux seuls fichiers.


A venir :
- Le driver lui-même est terminé, sauf création d'un répertoire, bug ou optimisations qui donneront des versions mineures.
- Il y aura aussi implémentation de création et renommage des répertoires quand la team 1fichier fournira l'API qui manque.
- Si cela tarde un peu, je mettrai la création de répertoire seule, puisque l'API existe déjà.

[EDIT] par mail, la team 1fichier m'a dit qu'avec quelques corrections de bug, l'API manquante allait arriver "avant la fin du mois"... on va donc l'attendre pour terminer proprement ce qu'il manque à propos des répertoires !

La suite :
- Maintenant je vais regarder, comme indiqué plus haut dans le fil, le mode "write" complet via aufs (montage en union) et un script d'upload.
- Cela permettra d'écrire de façon "quasi transparente" avec l'upload qui se fait en tâche de fond.
- Bien sûr, cela n'intéresse pas la fonctionnalité de partage de lien, qui se fait nécessairement depuis un navigateur, mais c'est intéressant pour vos propres sauvegardes.

Dernière modification par Zakhar (Le 21/01/2019, à 09:54)


"A computer is like air conditioning: it becomes useless when you open windows." (Linus Torvald)

Hors ligne

#44 Le 21/01/2019, à 16:37

lynn

Re : [1fichier] "Montez" votre stockage 1fichier en une commande simple !

J'ai noté une petite coquille sur le man en page 2 : le and non traduit. tongue

Niveaux Urgence and Alerte: non utilisés par 1fichierfs.

«C'est pas parce qu'ils sont nombreux à avoir tort qu'ils ont raison!»

Coluche

Hors ligne

#45 Le 21/01/2019, à 16:58

Zakhar

Re : [1fichier] "Montez" votre stockage 1fichier en une commande simple !

lynn a écrit :

J'ai noté une petite coquille sur le man en page 2 : le and non traduit. tongue

Niveaux Urgence and Alerte: non utilisés par 1fichierfs.

Merci !

N'hésitez pas aussi à signaler les erreurs dans la documentation, ça aide aussi. J'avais il y a fort longtemps signalé une telle erreur dans l'utilitaire GNU : od, il s'est avéré que c'était une erreur de traduction dans plusieurs langue, et grâce à mon rapport ils ont donc pu mettre à jour une 10 aine de traductions qui pouvaient induire les utilisateurs en erreur.

La correction sera dans la prochaine version, une fois que 1fichier aura livré l'API manquante (en principe d'ici la fin du mois !).

Dernière modification par Zakhar (Le 21/01/2019, à 17:00)


"A computer is like air conditioning: it becomes useless when you open windows." (Linus Torvald)

Hors ligne

#46 Le 21/01/2019, à 20:07

Zakhar

Re : [1fichier] "Montez" votre stockage 1fichier en une commande simple !

jaxx21 a écrit :

uptobox l'a fait aussi la dispo des api.

En fait jaxx21, j'avais regardé un peu trop vite. Les APIs de uptobox permettraient des fonctionnalités équivalentes.

... mais bon, je ne suis pas abonné, donc c'est dur -et inutile- de développer ça sans être premium. ;-)

Si quelqu'un veut le faire, il peut s'inspirer de mon code (faudra que je commente un peu mieux pour qu'on s'y retrouve plus facilement) !..

(... ou me payer un premium uptobox... mais c'est quand j'aurai fini avec 1fichier, ce qui n'est pas encore tout à fait le cas)

La seule chose que ne semble pas avoir l'API d'Uptobox est la partie "upload" d'un fichier. Mais bon, 1fichier a cela, mais c'est tellement galère que ce sera dur à exploiter de façon pratique.

Dernière modification par Zakhar (Le 21/01/2019, à 20:10)


"A computer is like air conditioning: it becomes useless when you open windows." (Linus Torvald)

Hors ligne

#47 Le 23/01/2019, à 09:17

jaxx21

Re : [1fichier] "Montez" votre stockage 1fichier en une commande simple !

Super boulot. Merci encore et encore smile
Sinon, 1fichier c'est cool pour moi, donc uptobox j'ai plus de premium. Pour les intéressé tu pourras toujours demander une petite quête si il y a des intéressé.
Merci, c'est du gros boulot en tout cas smile

Hors ligne

#48 Le 23/01/2019, à 19:57

Zakhar

Re : [1fichier] "Montez" votre stockage 1fichier en une commande simple !

Je l'ai surtout fait parce que :
- j'en avais besoin personnellement
- le challenge m'amusait
- le gros du boulot était fait avec astreamfs (driver générique)

Après, je n'en suis pas à faire la quête pour 20€, mais comme toi, 1fichier me satisfait pleinement (pour le moment), je ne vois donc pas l'intérêt d'avoir un deuxième prestataire pour mes sauvegardes.
Donc par principe, même si je ne suis pas à regarder 20€ pour du stockage, je ne vais pas non plus les dépenser pour rien... ni écrire du code dont je n'ai pas utilité.
Je vais par contre tâcher de faire un effort de "propreté et documentation" du code, histoire que si un abonné uptobox veut adapter la chose, ce soit assez facile.

Pour le moment je suis sur la partie upload. J'ai fait un petit script qui marche fort bien. J'ai un peu de travail pour le rendre "publiable", par exemple éviter de mettre tous les chemins en dur et faire des paramètres à la place !..
Aussi renforcer les tests de cas d'erreur, et coder des cas comme création de répertoire, ou le cas modification pour enlever le fichier d'origine à la fin de l'upload.

Le principe de l'upload est assez simple, on monte :
- 1fichierfs (par exemple sur /tmp/.1fichier) en read-only
- aufs avec une branche écriture sur un disque local, et la branche 1fichierfs read-only, le tout étant monté sur /tmp/1fichier (par exemple)

Ainsi on obtient un montage, dans l'exemple que /tmp/1fichier qui est en fait read-write sans limitation.

aufs est une "union", c'est à dire qu'il unit le répertoire où on écrit et celui où on lit (1fichier), pour faire comme si ce n'était qu'un seul et même montage. Quand on lit un fichier, ça va le lire sur le cloud, quand on écrit un fichier, il va s'écrire sur le disque local indiqué dans le montage. On peut même faire des choses plus "subtiles" comme modifier un fichier. Dans ce cas aufs va faire un "copyup", c'est à dire qu'il commencera par télécharger le fichier depuis 1fichier.com sur le disque local, et on fera la modification en local.

Donc ça c'est l'étape 1, c'est "gratuit" en 2 lignes de commande avec aufs.

Ensuite ce que fait le script, c'est qu'il surveille le répertoire où on écrit. Quand il y a des fichiers qui ont été écrits (et qu'on n'écrit plus dessus !) le script déclenche un upload vers le répertoire équivalent sur 1fichier.
Une fois l'upload terminé, le montage 1fichier est "rafraîchi", pour qu'il voie le nouveau fichier uploadé, et on peut alors supprimer le fichier du disque local.

Ainsi le disque local n'est qu'un stockage temporaire.
On aurait pu faire "mieux" s'il n'y avait pas la limitation qu'il faille connaître la taille du fichier avant de l'uploader. On aurait alors pu faire comme curlftpfs et écrire le fichier au fur et à mesure que le système copie dessus.
Malheureusement cette limitation oblige d'utiliser un stockage local temporaire.
L'utilisation de ftp pour contourner cela est plus compliquée (répertoire de dépôt) et oblige actuellement à avoir le mot de passe de l'utilisateur... or précisément la clé API est faite pour tâcher d'éviter cela.
J'ai fait la demande pour que le ftp puisse fonctionner avec la clé d'API... mais c'est pas gagné contrairement à d'autres de mes suggestions qui vont être implémentées prochainement.

Dernière modification par Zakhar (Le 23/01/2019, à 20:00)


"A computer is like air conditioning: it becomes useless when you open windows." (Linus Torvald)

Hors ligne

#49 Le 02/02/2019, à 15:21

spotie

Re : [1fichier] "Montez" votre stockage 1fichier en une commande simple !

Bonjour,

vous nous avez produit là un bien bel outil smile Pour ceux que celà intéresse, on peut par ailleurs tout à fait effectuer le montage sur un Linux et le redistribuer ensuite via smb vers un PC, une box type Shield ... cela marche nickel, il faut juste penser à rajouter l'option 'allow_other' dans sa fstab.

Par contre les sous-répertoires ne semblent pas fonctionner, on ne voit que le premier d'entre eux.

Merci encore.

Hors ligne

#50 Le 02/02/2019, à 15:44

Zakhar

Re : [1fichier] "Montez" votre stockage 1fichier en une commande simple !

spotie a écrit :

Bonjour,

vous nous avez produit là un bien bel outil smile Pour ceux que celà intéresse, on peut par ailleurs tout à fait effectuer le montage sur un Linux et le redistribuer ensuite via smb vers un PC, une box type Shield ... cela marche nickel, il faut juste penser à rajouter l'option 'allow_other' dans sa fstab.

Oui, effectivement ! Pour ceux qui souhaitent utiliser des sous-O.S. datant du millénaire dernier, et malheureusement trop répandus à cause du racket mondial d'une certaine firme de Redmond, on peut effectivement procéder en faisant un partage. C'est le même principe qu'avec Plex, il faut effectivement penser à "allow_other".
On peut même faire tourner la chose sur un raspberry Pi (pas encore testé... et là il faut compiler le truc parce que ce n'est pas packagé !) pour offrir le partage selon le bon protocole en fonction de l'O.S. ciblé.

spotie a écrit :

Par contre les sous-répertoires ne semblent pas fonctionner, on ne voit que le premier d'entre eux.

Dans la 1.0.0, il y a une "race condition" qui fait que dans de rares cas un sous-répertoire apparaît comme étant vide. Cela est corrigé dans la 1.0.2. que je vais packager dans le Week-End (sinon vous pouvez la compiler depuis le GitLab).
Si vous êtes tombés dans ce cas, en principe les sous-répertoires DOIVENT apparaître, mais peuvent sembler vide. Comme c'est une "race condition" normalement rare, un simple rafraîchissement devrait faire l'affaire en attendant la 1.0.2

Si le répertoire n'apparaît pas du tout, même pas vide, c'est autre chose !
Pouvez-vous alors vérifier :
- que le répertoire n'apparaît pas sur la machine Linux (et pas derrière le partage, auquel cas ce serait un problème sur la façon dont vous avez partagé, peut-être droits d'accès ?)

Si, sur la machine Linux les sous répertoires n'apparaissent pas, pouvez-vous vérifier la log :

grep 1fichierfs /var/log/syslog

Et faire retour s'il y a des messages.

Si ce n'est pas le cas, il faut alors, si vous souhaitez aider au debug, lancer avec des options de debug plus avancées comme :

1fichierfs --api-key=Cle_API -l 7 --log-file=/tmp/debug.txt ~/1fichier

Cela produira un fichier /tmp/debug.txt
Vous observez s'il y a bien absence des sous-répertoires, et si c'est le cas, vous pouvez arrêter le montage par

fusermount -u ~/1fichier

et me transmettre le fichier debug par message privé.

Enfin, comme indiqué dans le premier post, le driver ne prend pas en compte les "partages et groupware". Donc s'il s'agit de cela... c'est normal puisque ce n'est pas codé. Comme je n'ai aucun partage ni groupware, je ne sais pas comment cela se manifeste et n'ai donc pu le coder.
Si c'était le cas, on communique par message privé pour que vous puissiez me faire un "partage de test" si vous le souhaitez.

Dernière modification par Zakhar (Le 02/02/2019, à 15:45)


"A computer is like air conditioning: it becomes useless when you open windows." (Linus Torvald)

Hors ligne