Index: install.texinfo =================================================================== RCS file: /cvs/src/src/winsup/doc/install.texinfo,v retrieving revision 1.45 diff -u -p -r1.45 install.texinfo --- install.texinfo 10 Apr 2003 20:09:35 -0000 1.45 +++ install.texinfo 18 Nov 2003 03:35:33 -0000 @@ -40,6 +40,31 @@ from the rest of your Windows system dis (In the past, there had been genuine bugs that would cause problems for people who installed in C:\, but we believe those are gone now.) +@subsection How are file permissions determined + +The directories and files created by setup inherit the default ACL of their +parent directory. Thus in a fresh installation all permissions are initially +determined by the ACL of the top directory (e.g. @samp{C:\} for an +installation in @samp{C:\cygwin}). + +After running setup it is a good idea to verify the permissions with the +Windows program ``cacls'', which shows the true ACL, +or with ``ls -l /bin'', which shows the mapping of the ACL to Posix permissions. +If you are not happy with what you see, set the permissions as you +wish by using commands such as: +@enumerate +@item ``cd /'' + +@item ``chmod -R a+r .'' + +@item ``chmod -R a+x bin usr/sbin usr/local/bin lib/gcc-lib usr/X11R6/bin'' +@end enumerate +You can also change the group and the owner with ``chgrp -R'' and/or ``chown -R''. + +Note that programs executed by services (such as inetd or cron) must be executable +by SYSTEM, which is in the ``Administrators'' and ``Everyone'' groups but not +e.g. in ``Users'' nor in ``Authenticated Users''. + @subsection Can I use Cygwin Setup to update a B18, B19, B20, B20.1 or CD-ROM (1.0) installation of Cygwin? No, you must start from scratch with the new Cygwin Setup. The @@ -198,14 +223,49 @@ character as a word delimiter. Under ce possible to get around this with various shell quoting mechanisms, but you are much better off if you can avoid the problem entirely. -In particular, the environment variables @samp{USER} and @samp{HOME} are -set for you in /etc/profile. By default these derive from your Windows -logon name. You may edit this file and set them explicitly to something -without spaces. - -(If you use the @samp{login} package or anything else that reads -/etc/passwd, you may need to make corresponding changes there. See the -README file for that package.) +On Windows NT/2000/XP you have two choices: +@enumerate + +@item You can rename the user in the Windows User Manager GUI and then +run mkpasswd. + +@item You can simply edit the /etc/passwd file and change the Cygwin user name +(first field). It's also a good idea to avoid spaces in the home directory. + +@end enumerate + +On Windows 95/98/ME you can create a new user and run mkpasswd, +or you can delete the offending entry from /etc/passwd. +Cygwin will then use the name in the default entry with uid 500. + +@subsection My @samp{HOME} environment variable is not what I want. + +When starting Cygwin from Windows, @samp{HOME} is determined as follows +in order of decreasing priority: + +@enumerate + +@item @samp{HOME} from the Windows environment, translated to POSIX form. + +@item The entry in /etc/passwd + +@item @samp{HOMEDRIVE} and @samp{HOMEPATH} from the Windows environment + +@item / + +@end enumerate + +When using Cygwin from the network (telnet, ssh,...), @samp{HOME} is set +from /etc/passwd. + +If your @samp{HOME} is set to a value such as /cygdrive/c, it is likely +that it was set in Windows. Start a DOS Command Window and type +"set HOME" to verify if this is the case. + +Access to shared drives is often restricted when starting from the network, +thus Domain users may wish to have a different @samp{HOME} in the +Windows environment (on shared drive) than in /etc/passwd (on local drive). +Note that ssh only considers /etc/passwd, disregarding @samp{HOME}. @subsection How do I uninstall individual packages?