X-Spam-Check-By: sourceware.org Message-ID: <43AC5ABC.8020007@mediacomcc.com> Date: Fri, 23 Dec 2005 14:14:52 -0600 From: "Kyle S. Allender" Reply-To: kallender AT mediacomcc DOT com User-Agent: Thunderbird 1.4.1 (Windows/20051006) MIME-Version: 1.0 To: cygwin AT cygwin DOT com Subject: Re: Cygwin 1.5.18-1 on Windows XP group & passwd problem References: <43AC22F7 DOT 9040305 AT mediacomcc DOT com> <43AC40F9 DOT 2070604 AT mediacomcc DOT com> In-Reply-To: Content-Type: multipart/mixed; boundary="------------010902070906080008060503" X-IsSubscribed: yes Mailing-List: contact cygwin-help AT cygwin DOT com; run by ezmlm List-Subscribe: List-Archive: List-Post: List-Help: , Sender: cygwin-owner AT cygwin DOT com Mail-Followup-To: cygwin AT cygwin DOT com Delivered-To: mailing list cygwin AT cygwin DOT com --------------010902070906080008060503 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit Igor Peshansky wrote: > > You said you get the same message for a bash shell? Could you please try > to capture the output (by opening a CMD.EXE window and typing > "c:\cygwin\cygwin.bat")? Output follows: C:\Documents and Settings\kallender>c:\cygwin\cygwin.bat CreateFileandSetSecurity failed with FALSE (Expected on FAT Partitions) GLE: 32 CreateFileandSetSecurity failed with TRUE (not expected) GLE: 32 CreateFileandSetSecurity failed with FALSE (Expected on FAT Partitions) GLE: 32 CreateFileandSetSecurity failed with TRUE (not expected) GLE: 32 CreateFileandSetSecurity failed with FALSE (Expected on FAT Partitions) GLE: 32 CreateFileandSetSecurity failed with TRUE (not expected) GLE: 32 CreateFileandSetSecurity failed with FALSE (Expected on FAT Partitions) GLE: 32 CreateFileandSetSecurity failed with TRUE (not expected) GLE: 32 $ > >> Output of a re-run of the commands is as follows: >> >> kallender AT nc-dm-dc141 /etc >> $ mkpasswd -l -d > /etc/passwd >> mkpasswd (731): [2453] Could not find domain controller for this domain. > > Hmm. How about "mkpasswd -l -c > /etc/passwd"? passwd then looks like this (starting with an empty file: CreateFileandSetSecurity failed with FALSE (Expected on FAT Partitions) GLE: 32 CreateFileandSetSecurity failed with TRUE (not expected) GLE: 32 SYSTEM:*:18:544:,S-1-5-18:: Administrators:*:544:544:,S-1-5-32-544:: Administrator:unused_by_nt/2000/xp:500:513:U-NC-DM-DC141\Administrator,S-1-5-21- 1220945662-1547161642-682003330-500:/home/Administrator:/bin/bash Guest:unused_by_nt/2000/xp:501:513:U-NC-DM-DC141\Guest,S-1-5-21-1220945662-15471 61642-682003330-501:/home/Guest:/bin/bash HelpAssistant:unused_by_nt/2000/xp:1000:513:Remote Desktop Help Assistant Accoun t,U-NC-DM-DC141\HelpAssistant,S-1-5-21-1220945662-1547161642-682003330-1000:/hom e/HelpAssistant:/bin/bash SUPPORT_388945a0:unused_by_nt/2000/xp:1002:513:CN=Microsoft Corporation,L=Redmon d,S=Washington,C=US,U-NC-DM-DC141\SUPPORT_388945a0,S-1-5-21-1220945662-154716164 2-682003330-1002:/home/SUPPORT_388945a0:/bin/bash kallender:unused_by_nt/2000/xp:31363:10545:kallender,U-MEDIACOMCORP\kallender,S- 1-5-21-727417886-63593122-2613945857-21363:/cygdrive/c/Documents and Settings/kallender:/bin/bash > >> kallender AT nc-dm-dc141 /etc >> $ mkgroup -l > /etc/group >> >> Contents of the files: >> >> passwd: >> >> SYSTEM:*:18:544:,S-1-5-18:: >> Administrators:*:544:544:,S-1-5-32-544:: >> Administrator:unused_by_nt/2000/xp:500:513:U-NC-DM-DC141\Administrator,S-1-5-21-1220945662-1547161642-682003330-500:/home/Administrator:/bin/bash >> Guest:unused_by_nt/2000/xp:501:513:U-NC-DM-DC141\Guest,S-1-5-21-1220945662-1547161642-682003330-501:/home/Guest:/bin/bash >> HelpAssistant:unused_by_nt/2000/xp:1000:513:Remote Desktop Help Assistant Account,U-NC-DM-DC141\HelpAssistant,S-1-5-21-1220945662-1547161642-682003330-1000:/home/HelpAssistant:/bin/bash >> SUPPORT_388945a0:unused_by_nt/2000/xp:1002:513:CN=Microsoft Corporation,L=Redmond,S=Washington,C=US,U-NC-DM-DC141\SUPPORT_388945a0,S-1-5-21-1220945662-1547161642-682003330-1002:/home/SUPPORT_388945a0:/bin/bash > > I noticed that the "kallender" user is missing from /etc/passwd. > According to the "id" output, "kallender" is definitely a domain user. > Perhaps you need to specify the domain name explicitly (as in "mkpasswd -l > -u kallender -d DOMAINNAME")? > >> group: >> >> CreateFileandSetSecurity failed with FALSE (Expected on FAT Partitions) GLE: 32 >> CreateFileandSetSecurity failed with TRUE (not expected) GLE: 32 > > Heh... You should remove those two lines -- they may be screwing up the > parsing of /etc/group... I have removed these lines. Exiting the bash shell and re-entering it, I encounter the same error. When I included the domain name as suggested above, I end up with an empty passwd file. Output is: $ mkpasswd -l -u kallender -d MEDIACOMCORP.COM > /etc/passwd mkpasswd (257): [2221] The user name could not be found. $ mkpasswd -l -u kallender -d MEDIACOMCORP > /etc/passwd mkpasswd (257): [2221] The user name could not be found. $ cat /etc/passwd CreateFileandSetSecurity failed with FALSE (Expected on FAT Partitions) GLE: 32 CreateFileandSetSecurity failed with TRUE (not expected) GLE: 32 $ >> >> A further clue _might_ be this: >> >> kallender AT nc-dm-dc141 /etc >> $ ssh -X kylea AT 192 DOT 168 DOT 1 DOT 100 >> CreateFileandSetSecurity failed with FALSE (Expected on FAT Partitions) GLE: 32 >> CreateFileandSetSecurity failed with TRUE (not expected) GLE: 32 >> The authenticity of host '192.168.1.100 (192.168.1.100)' can't be established. >> RSA key fingerprint is 6d:2d:77:1f:1f:41:04:96:62:f1:5c:76:16:23:b2:2b. >> Are you sure you want to continue connecting (yes/no)? yes >> Warning: Permanently added '192.168.1.100' (RSA) to the list of known hosts. >> Password: >> CreateFileandSetSecurity failed with FALSE (Expected on FAT Partitions) GLE: 32 >> CreateFileandSetSecurity failed with TRUE (not expected) GLE: 32 >> x11_request_forwarding: bad authentication data: with > > How is this a clue? The above is a one-time message from ssh -- using ssh > again will not print this. As I said, it _might_ be a clue. I'm really not sure - interaction between Windows and UNIX is not my realm of expertise (is it anyone's?). I do get that message every time I run ssh though - at least the Create part. And it is not able to connect to a remote host, regardless of flags passed to ssh on the CLI. > >> It is almost as if there are permissions on disk that are not correct. >> The suggested command you provided above does not seem to have helped. >> >> What could possibly be causing this? > > Looks like these messages may be caused by something in your bash > initialization scripts. If you get this output from a plain bash (by > running cygwin.bat), here's a suggestion: from a CMD.EXE window, run > > cd c:\cygwin\bat > .\bash.exe -v --login -i The attached text file contains that output. It appears to show up the first time after the profile.d scripts are called. The ownership on the various files is starting to look better than it did, but something's still amiss, judging by the errors in the attached file. I appreciate the assistance in debugging this problem. > > And see after what lines the messages appear. > > FWIW, I didn't find any place in the Cygwin sources that prints out the > above message -- is it even coming from a Cygwin application? > Igor -- Kyle Allender Sr. UNIX Administrator Mediacom Communications Corporation --------------010902070906080008060503 Content-Type: text/plain; name="bash.exe output.txt" Content-Transfer-Encoding: 7bit Content-Disposition: inline; filename="bash.exe output.txt" Microsoft Windows XP [Version 5.1.2600] (C) Copyright 1985-2001 Microsoft Corp. C:\Documents and Settings\kallender>cd c:\cygwin\bat The system cannot find the path specified. C:\Documents and Settings\kallender>cd c:\cygwin C:\cygwin>dir Volume in drive C has no label. Volume Serial Number is F816-E092 Directory of C:\cygwin 12/23/2005 01:21 PM . 12/23/2005 01:21 PM .. 12/23/2005 01:19 PM bin 12/23/2005 01:21 PM 57 cygwin.bat 12/23/2005 01:21 PM 7,022 cygwin.ico 12/23/2005 01:44 PM etc 12/23/2005 01:19 PM lib 12/23/2005 01:15 PM usr 12/23/2005 01:18 PM var 2 File(s) 7,079 bytes 7 Dir(s) 4,094,054,400 bytes free C:\cygwin>cd bin C:\cygwin\bin>bash --verbose --login -i # base-files version 3.6-1 # WARNING # # IF THIS FILE IS MODIFIED IT WILL NOT BE UPDATED BY THE CYGWIN # SETUP PROGRAM. IT BECOMES YOUR RESPONSIBILITY. # The latest version as installed by the Cygwin Setup program can # always be found at /etc/defaults/etc/profile # Some resources... # Customizing Your Shell: http://www.dsl.org/cookbook/cookbook_5.html#SEC69 # Consistent BackSpace and Delete Configuration: # http://www.ibb.net/~anne/keyboard.html # The Linux Documentation Project: http://www.tldp.org/ # The Linux Cookbook: http://www.tldp.org/LDP/linuxcookbook/html/ # Setup some default paths. Note that this order will allow user installed # software to override 'system' software # If you wish to change the path for all users, it is recommended you edit # /etc/bash.bashrc # If you wish all future users to have some default setup, it is recommended you # edit /etc/skel/.bashrc # If you wish to change the path on a user by user basis, it is recommended you # edit ~/.bashrc PATH=/usr/local/bin:/usr/bin:/bin:/usr/X11R6/bin:$PATH export PATH MANPATH=/usr/local/man:/usr/share/man:/usr/man:$MANPATH export MANPATH INFOPATH=/usr/local/info:/usr/share/info:/usr/info:$INFOPATH export INFOPATH # Set the user id USER="`id -un`" id -un export USER # Here is how HOME is set, in order of priority, when starting from Windows # 1) From existing HOME in the Windows environment, translated to a Posix path # 2) from /etc/passwd, if there is an entry with a non empty directory field # 3) from HOMEDRIVE/HOMEPATH # 4) / (root) # If the home directory doesn't exist, create it. if [ ! -d "${HOME}" ]; then mkdir -p "${HOME}" echo "Copying skeleton files." echo "These files are for the user to personalise" echo "their cygwin experience." echo echo "These will never be overwritten." echo cd /etc/skel /bin/find . -type f | while read f; do fDest=`echo ${f} | sed -e 's/^\.//g'` if [ ! -e "${HOME}${fDest}" -a ! -L "${HOME}${fDest}" ]; then /usr/bin/install -D -p -v "${f}" "${HOME}/${fDest}" fi done fi chmod 1777 /tmp 2>/dev/null # Default to unix make mode MAKE_MODE=unix export MAKE_MODE # It is recommended that cvs uses ssh for it's remote shell environment CVS_RSH=/bin/ssh export CVS_RSH # Patches to Cygwin always appreciated ;) # CVSROOT=:pserver:anoncvs AT sources DOT redhat DOT com:/cvs/src # export CVSROOT # Shell dependent settings case "`echo "_$0" | /usr/bin/tr '[:upper:]' '[:lower:]' | /usr/bin/sed -e 's/^_//'`" in bash | -bash | */bash | \ bash.exe | -bash.exe | */bash.exe ) # Set a HOSTNAME variable HOSTNAME=`hostname` export HOSTNAME # Set a default prompt of: user AT host and current_directory PS1='\[\e]0;\w\a\]\n\[\e[32m\]\u@\h \[\e[33m\]\w\[\e[0m\]\n\$ ' ;; ksh* | -ksh* | */ksh* | \ ksh*.exe | -ksh*.exe | */ksh*.exe ) # Set a HOSTNAME variable typeset -l HOSTNAME # Set a default prompt of: user AT host and current_directory PS1='^[]0;${PWD}^G ^[[32m${USER}@${HOSTNAME} ^[[33m${PWD}^[[0m $ ' ;; zsh* | -zsh* | */zsh* | \ zsh*.exe | -zsh*.exe | */zsh*.exe ) # Set a default prompt of: user AT host, a command counter, and current_directory PS1='(%n@%m)[%h] %~ %% ' # Set SHELL if not set if [ ! -z "${ZSH_NAME}" -a -z "${SHELL}" ]; then SHELL="/bin/zsh" export SHELL fi ;; sh | -sh | */sh | \ sh.exe | -sh.exe | */sh.exe ) # Set a simple prompt PS1='$ ' ;; * ) # Sorry, this shell has no defaults in /etc/profile, # feel free to add your own. # If you have some recommendations for what these defaults # should be, please contact cygwin AT cygwin DOT com with the # shell details and what you would like added. # Thanks PS1='$ ' ;; esac echo "_$0" | /usr/bin/tr '[:upper:]' '[:lower:]' | /usr/bin/sed -e 's/^_//' export PS1 # Run all of the profile.d scripts # Note that these are supplied by separate packages # Ascending alphanumerical order enforced if [ -d "/etc/profile.d" ]; then while read f; do if [ -f "${f}" ]; then . "${f}" fi done <<- EOF fi CreateFileandSetSecurity failed with FALSE (Expected on FAT Partitions) GLE: 32 CreateFileandSetSecurity failed with TRUE (not expected) GLE: 32 /bin/find /etc/profile.d -type f -iname '*.sh' -or -iname '*.zsh' | LC_ALL=C sort # Bash profile.d script. This is sourced by the default /etc/profile to # ensure that /bin/sh exists and is runnable, updating older copies of ash # or bash as appropriate, while leaving other shells (ksh or zsh) alone. # Because it is sourced by any shell, including ash, it must be portable and # not pollute the environment. # Short circuit: if sh is not older than bash, stop now. /bin/test # correctly reports that a missing /bin/sh is older than an existing bash. /bin/test /bin/sh.exe -ot /bin/bash.exe || return 0 # The script name starts with 00 to ensure that it is executed before any # other scripts because one of them may need to know where X is to run # properly. # Check if the PATH variable is empty or not if test -n "${PATH}"; then # PATH is not empty # Check if path is already in PATH if ! /bin/echo ${PATH} | /bin/grep -q /usr/X11R6/bin ; then # Path is not already in PATH, prepend it to PATH export PATH="/usr/X11R6/bin:${PATH}" fi else # PATH is empty export PATH="/usr/X11R6/bin" fi CreateFileandSetSecurity failed with FALSE (Expected on FAT Partitions) GLE: 32 CreateFileandSetSecurity failed with TRUE (not expected) GLE: 32 export MANPATH="${MANPATH}:/usr/ssl/man" export QTDIR=/usr/lib/qt3 export QMAKESPEC=/usr/lib/qt3/mkspecs/cygwin-g++ export MANPATH="${MANPATH}:/usr/share/qt3/doc/man" # Check if the PKG_CONFIG_PATH variable is empty or not if test -n "${PKG_CONFIG_PATH}"; then # PKG_CONFIG_PATH is not empty # Check if path is already in PKG_CONFIG_PATH if ! /bin/echo ${PKG_CONFIG_PATH} | /bin/grep -q /usr/X11R6/lib/pkgconfig ; then # Path is not already in PKG_CONFIG_PATH, # prepend it to PKG_CONFIG_PATH export PKG_CONFIG_PATH="/usr/X11R6/lib/pkgconfig:${PKG_CONFIG_PATH}" fi else # PKG_CONFIG_PATH is empty export PKG_CONFIG_PATH="/usr/X11R6/lib/pkgconfig" fi # NOTE: MANPATH is special, it requires a leading : in order to # search its default paths in addition to those specified in MANPATH. export MANPATH="${MANPATH}:/usr/X11R6/man" # Uncomment to use the terminal colours set in DIR_COLOR # eval "`dircolors -b /etc/DIR_COLORS`" # Default to removing the write permission for group and other # (files normally created with mode 777 become 755; files created with # mode 666 become 644) umask 022 # Define default printer PRINTER="" case `uname -s` in CYGWIN_NT-*) PRINTER="`regtool -q get '\user\Software\Microsoft\Windows NT\CurrentVersion\Windows\Device' | sed 's/,.*$//'` ;; CYGWIN_9?-*) PRINTER="`regtool -q get '\config\System\CurrentControlSet\Control\Print\Printers\Default'`" ;; esac uname -s CreateFileandSetSecurity failed with FALSE (Expected on FAT Partitions) GLE: 32 regtool -q get '\user\Software\Microsoft\Windows NT\CurrentVersion\Windows\Device' | sed 's/,.*$//' export PRINTER # Make sure we start in home unless invoked by CHERE if [ ! -z "${CHERE_INVOKING}" ]; then unset CHERE_INVOKING else cd "${HOME}" fi # Check to see if mkpasswd/mkgroup needs to be run try and cut down the emails # about this on the lists! # If this message keeps appearing and you are sure it's a mistake (ie, don't # email about it!), comment out the test below. case `id -ng` in mkpasswd ) echo "Your group is currently \"mkpasswd\". This indicates that" echo "the /etc/passwd (and possibly /etc/group) files should be rebuilt." echo "See the man pages for mkpasswd and mkgroup then, for example, run" echo "mkpasswd -l [-d] > /etc/passwd" echo "mkgroup -l [-d] > /etc/group" echo "Note that the -d switch is necessary for domain users." ;; mkgroup ) echo "Your group is currently \"mkgroup\". This indicates that" echo "the /etc/group (and possibly /etc/passwd) files should be rebuilt." echo "See the man pages for mkpasswd and mkgroup then, for example, run" echo "mkpasswd -l [-d] > /etc/passwd" echo "mkgroup -l [-d] > /etc/group" echo "Note that the -d switch is necessary for domain users." ;; mkgroup_l_d ) echo "Your group name is currently \"mkgroup_l_d\". This indicates that not" echo "all domain users and groups are listed in the /etc/passwd and" echo "/etc/group files." echo "See the man pages for mkpasswd and mkgroup then, for example, run" echo "mkpasswd -l -d > /etc/passwd" echo "mkgroup -l -d > /etc/group" echo echo "This message is only displayed once (unless you recreate /etc/group)" echo "and can be safely ignored." # only display the above once cp -f /etc/group "${HOME}/group.mkgroup_l_d" \ && ( [ -w /etc/group ] || chmod --silent a+w /etc/group ; )\ && sed -e 's/^mkgroup_l_d/mkgroup-l-d/' "${HOME}/group.mkgroup_l_d" > /etc/group \ && chmod --silent --reference=/etc/passwd /etc/group rm -f "${HOME}/group.mkgroup_l_d" ;; esac id -ng Your group is currently "mkpasswd". This indicates that the /etc/passwd (and possibly /etc/group) files should be rebuilt. See the man pages for mkpasswd and mkgroup then, for example, run mkpasswd -l [-d] > /etc/passwd mkgroup -l [-d] > /etc/group Note that the -d switch is necessary for domain users. $ +++++++++++++++++ When running the profile.d scripts by hand, in the order they would normally run, 00bash.sh outputs: $ ./00bash.sh ./00bash.sh CreateFileandSetSecurity failed with FALSE (Expected on FAT Partitions) GLE: 32 CreateFileandSetSecurity failed with TRUE (not expected) GLE: 32 ./00bash.sh: line 10: return: can only `return' from a function or sourced script CreateFileandSetSecurity failed with FALSE (Expected on FAT Partitions) GLE: 32 CreateFileandSetSecurity failed with TRUE (not expected) GLE: 32 ./00bash.sh: line 22: return: can only `return' from a function or sourced script CreateFileandSetSecurity failed with FALSE (Expected on FAT Partitions) GLE: 32 CreateFileandSetSecurity failed with TRUE (not expected) GLE: 32 CreateFileandSetSecurity failed with FALSE (Expected on FAT Partitions) GLE: 32 CreateFileandSetSecurity failed with TRUE (not expected) GLE: 32 Line 10 of that file is a test against sh.exe & bash.exe regarding age of the files: # Short circuit: if sh is not older than bash, stop now. /bin/test # correctly reports that a missing /bin/sh is older than an existing bash. /bin/test /bin/sh.exe -ot /bin/bash.exe || return 0 +++++++++++++++++++ sh.exe does exist: $ pwd pwd /bin $ ls -ld sh* ls -ld sh* CreateFileandSetSecurity failed with FALSE (Expected on FAT Partitions) GLE: 32 CreateFileandSetSecurity failed with TRUE (not expected) GLE: 32 -rwxr-x---+ 1 kallender Users 449536 Dec 23 13:18 sh.exe -rwxr-x---+ 1 kallender Users 33792 Jul 13 07:55 sha1sum.exe -rwxr-x---+ 1 kallender Users 4608 Jul 9 00:53 shmtool.exe -rwxr-x---+ 1 kallender Users 39936 Jul 13 07:55 shred.exe $ --------------010902070906080008060503 Content-Type: text/plain; charset=us-ascii -- Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple Problem reports: http://cygwin.com/problems.html Documentation: http://cygwin.com/docs.html FAQ: http://cygwin.com/faq/ --------------010902070906080008060503--