Writing hald .fdi files

0 views
Skip to first unread message

Zahemszky Gábor

unread,
Sep 29, 2008, 3:27:36 PM9/29/08
to freebsd-...@freebsd.org
Hi!

I've bought an external disk. I can mount it by hand, with

mount -t msdosfs -o large /dev/xxx /mnt

command. (I have to use the "-o large" option.)

I use XFCE4, with Thunar-volman-plugin. When I plug my new disk in, I
got a message box: Cannot mount, try with "-o large" option. So I'd
like to say to the "automounter" of Thunar, to use the mount_msdosfs
command with that "-o large" option. After some googling, I found HAL
specification on

http://webcvs.freedesktop.org/hal/hal/doc/spec/hal-spec.html?view=co&pathrev=HEAD

and wrote that .fdi file:

== /usr/local/share/hal/fdi/policy/30user/10-add-mount-option-for-Verbatim.fdi ==
<?xml version="1.0" encoding="UTF-8"?>

<deviceinfo version="0.2">
<device>
<match key="block.device" string="/dev/msdosfs/VERBATIM">
<match key="info.category" string="volume">
<merge key="volume.policy.mount_option.large" type="bool">true</merge>
</match>
</match>
</device>
</deviceinfo>
====

My problem is: after plugging my disk in, in lshal output, I can see the new key:
volume.policy.mount_option.large ( = true) , but got the same error message about
the mounting problem.

I tried it with Linux (+GNOME). Linux can mount my disk, so I tried to
mount with read-only flag. The same problem: I can see my new key, but
it hasn't got any effect (well, it has. without my .fdi file, it can mount with rw,
but with my .fdi file, it cannot mount. Neither rw, nor ro.)

So my question: how can I make an .fdi file, which tells to these "automounters":

if this is device X from vendor Y, mount it with mount option XY!

Thanks, Gábor

--
#!/bin/ksh
Z='21N16I25C25E30, 40M30E33E25T15U!';IFS=' ABCDEFGHIJKLMNOPQRSTUVWXYZ
';set -- $Z;for i;{ [[ $i = ? ]]&&print $i&&break;[[ $i
= ??? ]]&&j=$i&&i=${i%?};typeset -i40 i=8#$i;print -n ${i#???};[[ "$j"
= ??? ]]&&print -n "${j#??} "&&j=;typeset +i i;};IFS=' 0123456789 ';set
-- $Z;for i;{ [[ $i = , ]]&&i=2;[[ $i = ?? ]]||typeset -l i;j="$j
$i";typeset +l i;};print "$j"
_______________________________________________
freebsd-...@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-questions
To unsubscribe, send any mail to "freebsd-questi...@freebsd.org"

Mel

unread,
Sep 29, 2008, 4:13:09 PM9/29/08
to freebsd-...@freebsd.org, Zahemszky Gábor
On Monday 29 September 2008 21:27:36 Zahemszky Gábor wrote:

> So my question: how can I make an .fdi file, which tells to these
> "automounters":
>
> if this is device X from vendor Y, mount it with mount option XY!

Add a noauto mountpoint to /etc/fstab, with all the correct options.

Though, hal is one of those projects that sparked my sig - too many ways to
possibly do it, not enough straight ways to really do it.
So, maybe check this too:
http://www.freebsd.org/gnome/docs/halfaq.html#q3
--
Mel

Problem with today's modular software: they start with the modules
and never get to the software part.

Zahemszky Gábor

unread,
Sep 30, 2008, 3:43:20 PM9/30/08
to freebsd-...@freebsd.org, Mel
Mon, 29 Sep 2008 22:13:09 +0200 -n
Mel <fbsd.qu...@rachie.is-a-geek.net> írta:

> On Monday 29 September 2008 21:27:36 Zahemszky Gábor wrote:
>
> > So my question: how can I make an .fdi file, which tells to these
> > "automounters":
> >
> > if this is device X from vendor Y, mount it with mount option XY!
>
> Add a noauto mountpoint to /etc/fstab, with all the correct options.
>
> Though, hal is one of those projects that sparked my sig - too many
> ways to possibly do it, not enough straight ways to really do it.
> So, maybe check this too:
> http://www.freebsd.org/gnome/docs/halfaq.html#q3

Hi!

Thanks for your help, but it doesn't work. I read your mail, and that
faq - btw, yo suggested to put that device info fstab, that faq suggest
the opposite of that.

I tried this line in /etc/fstab (this is line 13.)

/dev/msdosfs/VERBATIM /home/zgabor/VERBATIM
msdosfs large,noauto 0 0

- and tried it with /media/VERBATIM, /media, /mnt neither of them
worked. I got the next error box:

fstab: /etc/fstab:13: Inappropriate file type or format
fstab: /etc/fstab:13: Inappropriate file type or format
org.freedesktop.Hal.Device.Volume.UnknownFailure

I tried it with a "none" string as the mountdir, didn't work, too.

Any other?

Thanks,

Gábor

--
#!/bin/ksh
Z='21N16I25C25E30, 40M30E33E25T15U!';IFS=' ABCDEFGHIJKLMNOPQRSTUVWXYZ
';set -- $Z;for i;{ [[ $i = ? ]]&&print $i&&break;[[ $i
= ??? ]]&&j=$i&&i=${i%?};typeset -i40 i=8#$i;print -n ${i#???};[[ "$j"
= ??? ]]&&print -n "${j#??} "&&j=;typeset +i i;};IFS=' 0123456789 ';set
-- $Z;for i;{ [[ $i = , ]]&&i=2;[[ $i = ?? ]]||typeset -l i;j="$j
$i";typeset +l i;};print "$j"

Mel

unread,
Sep 30, 2008, 4:32:14 PM9/30/08
to freebsd-...@freebsd.org, Zahemszky Gábor
On Tuesday 30 September 2008 21:43:20 Zahemszky Gábor wrote:
> Mon, 29 Sep 2008 22:13:09 +0200 -n
>
> Mel <fbsd.qu...@rachie.is-a-geek.net> írta:
> > On Monday 29 September 2008 21:27:36 Zahemszky Gábor wrote:
> > > So my question: how can I make an .fdi file, which tells to these
> > > "automounters":
> > >
> > > if this is device X from vendor Y, mount it with mount option XY!
> >
> > Add a noauto mountpoint to /etc/fstab, with all the correct options.
> >
> > Though, hal is one of those projects that sparked my sig - too many
> > ways to possibly do it, not enough straight ways to really do it.
> > So, maybe check this too:
> > http://www.freebsd.org/gnome/docs/halfaq.html#q3
>
> Hi!
>
> Thanks for your help, but it doesn't work. I read your mail, and that
> faq - btw, yo suggested to put that device info fstab, that faq suggest
> the opposite of that.

Yeah, I just saw that. I distinctly remember a pkg-message from a port that
said the opposite.

> I tried this line in /etc/fstab (this is line 13.)
>
> /dev/msdosfs/VERBATIM /home/zgabor/VERBATIM
> msdosfs large,noauto 0 0

Just to make sure, mount /home/zgabor/VERBATIM works with this line?

> - and tried it with /media/VERBATIM, /media, /mnt neither of them
> worked. I got the next error box:
>
> fstab: /etc/fstab:13: Inappropriate file type or format
> fstab: /etc/fstab:13: Inappropriate file type or format
> org.freedesktop.Hal.Device.Volume.UnknownFailure
>
> I tried it with a "none" string as the mountdir, didn't work, too.

No idea, I see 'large' is
in /usr/local/share/hal/fdi/policy/10osvendor/20-storage-methods.fdi, under
vfat allowed options.
Maybe you should match on device/vendor string, rather then glabel device
node. I've been using devd succesfully, since I last battled with hal, so I'm
out of answers.

--
Mel

Problem with today's modular software: they start with the modules
and never get to the software part.

Reply all
Reply to author
Forward
0 new messages