On Apr 4 14:22, Corinna Vinschen wrote: > On Apr 3 17:46, Charles Wilson wrote: > > Christopher Faylor wrote: > >> Why do we need a fstab.$SID and linux doesn't need this? > > > > Well, I like to create user mounts for each user (Guest, Administrator, me) > > like this: > > > > mount -f -u -b "C:/Documents and Settings/<user>/My Documents" "/mydocs" > > mount -f -u -b "C:/Documents and Settings/<user>/Desktop" "/desktop" > > [...] > > I understand that. Well, we shouldn't make this overly public, but > keeping the fstab.$SID handling in doesn't hurt the least bit. > [...]
I just applied a patch which changes the fstab handling somewhat. I made especially a change to how system and user mount points are handled, which is supposed to support sysadmins in commercial or organizational environments. - The paths in the first and second field may contain nuts^Wspaces. You specify them the same way as in a Linux fstab, using the special string "\040": C:/Documents\040and\040Settings /my\040docs ntfs binary 0 0 - mount(1) and umount(1) don't write back any information to the registry. Cygwin still reads mount points from the registry, though, if no fstab file exists. This is just left in for the transformation process. It will get removed at one point. - All mount points in /etc/fstab are system mount points by default, all other mount points are always user mount points. The important thing here is, that user mount points can't override system mount points anymore. If you try that, you get an EPERM error. The reason for this change is to allow sysadmins to specify paths in /etc/fstab which no user is allowed to screw up. Paths which the user may umount or re-mount can be marked as user mounts by the admin. - The flags string in the fstab file also understands the flags "system" and "user" now, to allow the sysadmin to specify default paths which a user may change. - Cygwin creates "/cygdrive" as default cygdrive prefix now before reading the fstab files. It's a user mount by default, so the user can override it. If the sysadmin decides to add the cygdrive prefix to /etc/fstab as system mount, no user can override it, but gets an EPERM instead. - The user-specific fstab file is now /etc/fstab.$USER, not /etc/fstab.$SID anymore. My significant other convinced me that nobody(TM) knows what a SID is. I pointed out the Cygwin user's guide, but... - I hacked a new Cygwin postinstall script, which is called "postinstall" in the Cygwin sources, and which gets copied to /etc/postinstall/000-cygwin-post-install.sh at installation time. It creates a default /etc/fstab file which (for now) contains the standard mount points for /usr/bin and /usr/lib. The script also creates the /dev/shm and /dev/mqueue subdirectories which are required for POSIX semaphores/shared memory/message queues, but that's another story. The /etc/fstab file which gets created by this script contains lots of comment, which is basically taken from Linux' fstab man page. I added Cygwin specifc descriptions and examples. I hope it helps. I would be glad if people could read the text and comment on it. Corinna -- Corinna Vinschen Please, send mails regarding Cygwin to Cygwin Project Co-Leader cygwin AT cygwin DOT com Red Hat