tmpfiles.d and spaces in filenames

Corinna Vinschen vinschen at redhat.com
Thu Jun 2 08:37:26 UTC 2011


On Jun  1 21:10, Ian Malone wrote:
> On 1 June 2011 19:27, Corinna Vinschen <vinschen at redhat.com> wrote:
> > On Jun  1 09:59, JD wrote:
> >> On 06/01/11 09:37, Ian Malone wrote:
> >> > On 1 June 2011 16:11, Corinna Vinschen<vinschen at redhat.com>  wrote:
> >> >> Hi,
> >> >>
> >> >> How can I specify filenames with spaces in tmpfiles.d configuration
> >> >> files?  There's no hint in `man tmfiles.d'.  I tried
> >> >>
> >> >> - fstab style:      d /foo\040bar 0755 root root
> >> >> [...]
> >> >> So, do I have to take it that tmpfiles.d doesn't grok spaces in
> >> >> filenames at all?
> >> >>
> >> >> Please note, I'm not asking for the obvious answer "don't do this" and
> >> >> I'm also not asking for the counter question "why do you need this?"
> >> >>
> >> > [...]
> >> > So the long answer is you either have to modify tmpfiles.c to deal
> >> > with this or write a similar daemon to do it.
> >
> > I guess this should be converted into a bugzilla entry then.
> >
> 
> > That's not always possible and you can't ask all users to rename their
> > files.  Filenames like "Expenses May 2011.odt" are just to be expected.
> > Another example is the default naming of CF or SD media formatted on
> > certain camera models.  Yet another exmaple are customer request.
> >
> 
> So far as I understand from the manpage, tmpfiles.d is not so much for
> cleaning the tmp directory on a regular basis as for creating and
> managing temporary files and directories on volatile filesystems. I'm

That's what I'm looking for.  With F15 the underlying mount point
changed from a real filesystem into a tmpfs so I want to utilize
tmpfiles.d to create a directory which is expected by some other
component.  This directory has spaces in its name.

> not sure there's really a compelling argument for having this as a
> request for feature, except if you must have spaces in the temporary
> directory name for some reason. Being able to use anything you can put
> in fstab (consistency argument) is probably the only one that flies.

I don't think so.  The problem is that certain paths in F15 are suddenly
tmpfs paths by default.  This potentially clashes with a couple of tools
and applications expecting some paths to exist, therefore the tmpfiles.d
mechanism has been invented.  Unfortunately it doesn't allow to specify
*valid* filename characters which might be expected in a filename by a
software component not known to the developers.

There is, of course, a workaround by creating the missing directory in
some startup script.  However, IIUC tmpfiles.d is supposed to be a
generic method to create such volatile paths, so it's a pity it doesn't
work with some valid pathnames.  From my point of view that's a bug.

> If you have customers that run unix, care exactly what temporary
> system locations you use and insist there are spaces in the names then
> you have very weird customers.

I didn't say anything about my customers.  This was merely an example,
just like the other ones in my mail.  Here's another one: A piece of
proprietary software expecting a certain path with spaces in it to run.
Again, just an example.


Corinna


More information about the users mailing list