[Wine]Softlinking to a dvd-drive with inconsistent mount points?

Holly Bostick motub at planet.nl
Fri Aug 26 05:50:37 CDT 2005


Walt Ogburn schreef:
> On Thu, 25 Aug 2005, Hiji wrote:
> 
> 
>>--- Hiji <hijinio at yahoo.com> wrote:
>>
>>
>>>Does anybody know how to get around this or have any
>>>advice?  Is there something I have to do with FSTAB?
>>>
>>>Hiji
>>
>>Problem solved:
>>http://portal.suse.com/sdb/en/2005/05/dkukawka_hal_mountpoints.html
>>
>>Thanks everyone!
>>Hiji
>>
> 
> 
> Thanks Hiji, that was useful for me too.  In general, would it be possible
> to have wine guess the mount point given the device?  It might be nice to
> be able to symlink "d::" to /dev/hdc and have wine figure out where that's
> mounted, instead of having to specify both the device and the mount point.

At present (via winecfg), it certainly can autodetect the relevant mount
points and assign them drive letters, but this (rather naturally)
requires and entry in /etc/fstab (or possibly /etc/mtab as well), to
determine what the mount points currently are, as well as the available
devices. Like Windows, there is a (semi-)specific order of detection and
a certain amount of hard coding:

Of course ~/.wine/drive_c  (or wherever it's placed since Wine now
allows you to place the wine directory on first run), is going to
automatically be C:\.

The user's $HOME directory, being one of the 3 necessary directories
that everyone has, and the most likely (known) place that a user is
going to store executables that they want to run with Wine, or documents
that they might want to open with Wine-run apps, is automatically
symlinked to D:\

/tmp, being the second of the necessary directories that everyone is
known to have, is automatically symlinked to E:\, which Wine seems to
use for its own temp space (as opposed to Windows temp, which is in
C:\Windows\temp, where it always is under Windows)

/ , being the third of the necessary directories that everyone is known
to have, is automatically symlinked to Z:\ ,so that users will always
have a way (even if a long, drawn-out way) to reach areas of the
filetree that aren't /home/username or the removeable devices, in the
event that they need to use files from other areas but haven't set
specific device letters for those areas.

In this respect, these devices have been autodetected and linked to
their respective drive letters for ages, even before Winecfg... even
when the config file handled drive lettering, before /dosdevices.

After these required mounts, at this point it looks like removeable
devices (as found in /etc/fstab) are symlinked first, then any other hdd
partitions (at least my DVD-ROM is always auto-detected as F:\ , F:
being the first available drive letter after the required links to (C:\,
D:\, E:\, and Z:\) Presumably if I had a floppy drive  it would be
symlinked to A:\ by default, and if I had other removeable drives they
would be next linked to G: through whatever.

Then other drives (custom mounted partitions) found in /etc/fstab are
symlinked (in conformance with Wine's 'blacklist' for 'ignored'
listings, such as /dev/shm or /proc).

So winecfg's autodetection seems to already do what you ask, but it's
impossible for it to re-auto-symlink the removeable devices every time
Wine is run just because the mount point of the removeable devices is
variable, since auto detection relies on /etc/fstab (and possibly
/etc/mtab), and those entries have no fixed value until media is placed
in the drive (providing the LABEL), and the device is mounted (creating
the mount point). Which would make it necessary to assume both
conditions were true (which they really have no reason to be), and even
if that assumption was made, it wouldn't solve the problem of LABEL
changing the mount point every time you changed disks.

I honestly don't know what SuSE was thinking with that one-- what
earthly reason could the majority of users have to need their CD/DVD
mounted to the label of the media itself? Yeah, I want /media/Far Cry
one minute, and /media/Office 2003 the next. Like I even know the LABEL
of most of the media I mount (and that's just retail disks, nothing said
about backup disks or other self-burned media). So how am I supposed to
know where it is, if I don't know the label? I could maybe see it for
USB sticks, or Flash cards, but those are different rules than the ones
for CD/DVD drives. And I don't even like this /media thing anyway; half
the time I start typing ls -la /mnt/wherever and get nothing (of
course). Phooey.

I really don't get it, but I think that Hiji found the only reasonable
solution to a really unnecessary problem (imo), and I think that you,
Walt, should use autodetect if you're using winecfg. If you have a
version of Wine from before winecfg for whatever reason, you have a
config file so your devices should have been set up (semi-manually) when
you created it (it's not like you have to re-do it every time, unless
you have a habit of switching your devices around, or wiping the ~/.wine
directory on a regular basis or something).

Holly



More information about the wine-users mailing list