[gobolinux-users] Re: Problem with CUPS recipe/package

Hisham Muhammad hisham.hm at gmail.com
Thu Aug 18 04:57:47 GMT 2005


On 8/17/05, Jan Molič <mig at 1984.cz> wrote:
> I don't think that symlink /Programs/App/Variable to /System/Variable is
> good.
> Now I can easily remove all application's variables.
> 
> The solution is maybe unionfs. What about to store all application's data
> in /Programs/App/Variable and merge them to /System/Variable?
> I don't have any experiences with unionfs (just know that this should work
> but don't know how fast would it be, etc.)

The idea is nice, and in fact Lucas suggested the same thing off-list.
But there are complexities in the handling of var-files that make me
believe that no solution for automated management will be perfect (or
even workable).

I gave this a lot of thought, and pinpointed two main problems that
break these solutions down.

First, there's the issue that programs read/write files directly
through /var -> /System/Variable. Patching all programs to avoid this
is not practical, as it's also not practical to do kernel hacking to
catch the pid of the process, etc. (I even thought about a crazy
scheme to put a FUSE-based layer to perform "garbage collection" based
on logging reads/writes, but things like access from the shell, text
editors, etc, would break it down).

The second and more serious problem is that even if we could properly
split files by program, we can't really know what to cleanup. On one
hand, you have things like pid files and other temporary files that
you would expect to be erased when a program is removed. On the other
hand, you have things like MySQL databases, which you definitely
_don't want_ the package management tools to destroy automatically.
Further, it gets blurry. For some, Xorg.0.log files are useless temp
files, but for others, it might contain a critical bug trace.

-- Hisham


More information about the gobolinux-users mailing list