Forum général.général système de fichier conçu pour les très petits fichiers

Posté par  . Licence CC By‑SA.
Étiquettes : aucune
1
24
avr.
2019

Je me posais récemment la question de comment stocker et installer des paquets dans une distro, de manière fiable et efficace.

Il semble qu'il ne soit pas possible sous UNIX de garantir l'intégrité d'un verrou sur un fichier, et bien sûr, encore pire sur un dossier.
Ce fait est probablement à l'origine de la lenteur de tous les systèmes de paquets que je connais (bon, dpkg et xbps, les autres, je sais pas), qui ne peuvent évaluer qu'installer deux paquets indépendants peut se faire en parallèle, sur diverses opérations: téléchargement des archives, dépaquetage, et la section la moins simple à gérer, la configuration.

Du coup, je me suis posé 2 questions:

  1. est-il nécessaire de dépaqueter les paquets? Pourquoi ne pas essayer de monter un paquet comme un mount --bind?
  2. l'un des problèmes majeurs que j'ai crus constater est que le paquet qui contiens les fichiers essentiels au binaire, contiens également la configuration par défaut. Ne serait-il pas plus simple, pour une distro pointue, de fournir des archives distinctes pour la conf et les binaires?

Du coup, serait-il théoriquement envisageable, avec force travail, de faire des paquets atomiques, qui n'aient aucune raison d'être modifiés?
Si oui, quelles pistes?

Le lien avec les très petits fichiers est que, une distro est constituée d'une chiée de paquets, et ne stocke, dans le cas de debian, que de très petits ensembles de données, avec pas mal de lenteur (expérience perso). Je me demandais si un système de fichier permettrait de garder la facilité d'accès sans pourrir les perfs.. (enfin, avoir des perfs moins pire qu'apt)

  • # Haiku ?

    Posté par  (site web personnel) . Évalué à 3.

    Bienvenue au club, moi aussi je mets plus de 20min pour mettre à jour Debian (même si j'adore Debian, c'est pas la question), et encore, après avoir fermé Firefox pour libérer 3Go de RAM.

    Sur le fait d'utiliser les paquets comme source pour un système de fichiers, il me semble qu'une distro avait tenté ça il y a très longtemps mais je ne retrouve pas laquelle.

    Par contre, c'est le chemin qu'on a pris pour Haiku.
    Ça a tout de même quelques conséquences, notamment une grande partie du fs devient read-only (on a essayé de laisser en rw mais c'était bien trop lent), et certains logiciels mal conçus n'aiment pas.
    Typiquement certains langages (python, perl…) ajoutent une ligne dans un fichier lorsqu'ils installent un de leurs propres "paquet", du coup on doit corriger ça.
    Mais ça marche assez bien, et c'est bien plus rapide pour installer et mettre à jour (ce qui peut se faire atomiquement du coup).

  • # et si le probleme etait ailleurs ?

    Posté par  . Évalué à 4.

    ben oui,
    installer un paquet ce n'est peut-etre pas ce qui prend le plus de temps

    il y a deja les phases :
    - recherche du paquet -> interrogation d'une base contenant des milliers de paquet
    - calcul des dependances => pouvant etre complexes (plusieurs dizaines), verifier que les dependances sont deja presentes sur le FS, dans la version attendue, cyclique (A necessite B, qui necessite C qui necessite A)
    - resolution de ces dependances => dans quel ordre faudra-t-il installer les paquets pour ne faire qu'une seule passe.
    - telechargement des dits paquets => depend de ta connexion internet, puis de ton stockage
    - decompression des paquets pour l'installation

Suivre le flux des commentaires

Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.