[tahoe-dev] debian package: initscript and FHS

bertagaz at ptitcanardnoir.org bertagaz at ptitcanardnoir.org
Mon May 2 12:00:23 PDT 2011


On Mon, May 02, 2011 at 02:20:15PM -0400, Greg Troxel wrote:
> 
> bertagaz at ptitcanardnoir.org writes:
> 
> > basedir/tmp should be /tmp/nodedir
> > basedir/logs should be /var/log/tahoe/node (something in /var/log)
> > basedir/storage should be /var/lib/node (in /var/lib anyway)
> 
> So if in the pre-FHS tahoe world you had a directory:
> 
>    /n0/TAHOES/pubgrid-server
> 
> then that would still exist, but then
> 
>   tmp subdir => /tmp/pubgrid-server (not /tmp/tahoe/pubgrid-server?)

/tmp/tahoe/pubgrid-server might be easier for sysadmins and automated
tools, i.e scripts run against all subdir of /tmp/tahoe/ rather than only
*some* subdirs of /tmp/, which is harder to use programatically. This is a
subtle difference, but is important in a distribution package
environnement, where you try to help in having tools being plugged
together easily.

Actually, /n0/TAHOES/pubgrid-server should be /etc/tahoe/pubgrid-server,
because once all the rest is splitted in /tmp, /var/lib and
/var/log, all that remains in the basedir is node configuration, and
/etc/ is the place where it should reside according to the FHS.

>   logs subdir => /var/log/tahoe/pubgrid-server
>
>   storage subdir => /var/lib/pubgrid-server (not /var/lib/tahoe/pubgrid-server?)

Same here, if you run multiple nodes, you'd end up with a bunch of dirs in
/var/lib/. The usual way is to separate each particular instance files in a
subdir of /var/lib/tahoe/, which helps a lot if you have to use it
programatically.

> > Rather than describing the whole layout, maybe a use case might answer :
> 
> > In the example you gave, only the first part is concerned, the one with
> > the "tahoes" uid, which I guess is something like a tahoe setup ran by the
> > system. Others wouldn't change from their actual setup (i.e in
> > $HOME/.tahoe, started by users by hands,...).
> 
> I still don't know what you want to happen.
> 
> Do you mean:
> 
>   system nodes (tahoe run under special tahoe user) have the above 3
>   transformation?

Yes.

>   system node directories go where???   Why isn't the whole node dir in
>   /var/lib, except tmp and logs?

That is an option, but some of the files in the node basedir (almost all
of what remains of it) are configuration files, and according to the FHS
should go in /etc/.

>   user nodes sit in user directories, and aren't any different from
>   current practice.

And it's fine to me, as long as we're talking of user's nodes. But
"current" practice is more user oriented than system-wide oriented.
Meaning it doesn't really integrate with other tools or inside
distributions. Some really slight conditionnal configuration changes might
just help to have this case easily handled without ugly patches.

bert.


More information about the tahoe-dev mailing list