• [^] # Re: Un cri de désespoir du développeur d’un projet Open Source.

    Posté par . En réponse à la dépêche Un cri de désespoir du développeur d'un projet Open Source.. Évalué à 1.

    OK, j'ai une question aussi : sous DOS, l'effacement changeait juste le nom du fichier, ce qui le rendait invisible à l'utilisateur, et (surtout) signalait au système qu'il pouvait réutiliser les blocs alloués à ce fichier. Sous Linux (sauf erreur), un fichier n'est qu'une suite d'i-nœuds, et de liens vers le premier i-nœud de la liste. Lorsqu'on unlink() un fichier, et que le lien qu'on vient de virer était le dernier, tous les i-nœuds sont déclarés libres, et donc réutilisables par le système.

    Ma question est donc : est-ce que ton système implémente quelque chose d'équivalent à DOS, par exemple en sauvegardant le nom du fichier et la liste de ses i-nœuds dans ~/.recycled ? Ainsi, l'espace utilisé auparavant par le fichier serait à nouveau disponible (un vrai effacement, quoi), et une éventuelle commande 'undelete ~/.recycled/monfichier.txt' ne ferait que rendre à ces i-nœuds leurs valeurs d'origine. Bien sûr, ça implique que si certains d'entre eux avaient été réattribués à d'autres fichiers entre-temps, le fichier est irrécupérable. D'un autre côté, ça évite d'avoir périodiquement à aller vider la corbeille à la main, ce qui m'horripile. En fait, c'est le principal grief que j'ai contre les systèmes de corbeille actuels sous Linux : ils se contentent souvent de déplacer le fichier, ils ne l'effacent pas...

    Envoyé depuis mon PDP 11/70