X-Recipient: archive-cygwin AT delorie DOT com X-Spam-Check-By: sourceware.org Date: Wed, 4 Apr 2012 15:59:32 +0200 From: Corinna Vinschen To: cygwin AT cygwin DOT com Subject: Re: Cygwin 1.7.12-1: exit code 1 during post-install regarding dirs in /dev Message-ID: <20120404135932.GD8014@calimero.vinschen.de> Reply-To: cygwin AT cygwin DOT com Mail-Followup-To: cygwin AT cygwin DOT com References: <4F7C215E DOT 60702 AT andreloker DOT de> <20120404121241 DOT GB8014 AT calimero DOT vinschen DOT de> <20120404130409 DOT GC28256 AT calimero DOT vinschen DOT de> <4F7C4EEF DOT 4060802 AT andreloker DOT de> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Disposition: inline In-Reply-To: <4F7C4EEF.4060802@andreloker.de> User-Agent: Mutt/1.5.21 (2010-09-15) Mailing-List: contact cygwin-help AT cygwin DOT com; run by ezmlm Precedence: bulk List-Id: List-Unsubscribe: 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 On Apr 4 15:38, Andre Loker wrote: > Am 04.04.2012 15:04, schrieb Corinna Vinschen: > >On Apr 4 14:12, Corinna Vinschen wrote: > >>On Apr 4 12:24, Andre Loker wrote: > >>>I *suppose* the issue is related to this change in 1.7.12: > >>>"- Cygwin now automatically populates the /dev directory with all > >>>existing POSIX devices." > >>> > >>>Do I have to take any actions regarding those issues? If so, which? > >>Thanks for the report. That's a blatant bug in the /dev handling. > >>I hope I fixed it sufficiently in CVS. I'm just generating a new > >>snapshot which should be available in about half an hour on > >>http://cygwin.com/snapshots/ > >> > >>Please give it a try. For instance, call the /etc/postinstall/bash.sh > >>and /etc/postinstall/000-cygwin-post-install.sh files manually ands > >>report back if they do what they should in terms of /dev. Maybe the > >>scripts now have a .done suffix, but you should still be able to run > >>them. > >Snapshot is uploaded. Please test ASAP. > > > $ ./000-cygwin-post-install.sh.done > mkdir: cannot create directory `/dev/shm': Read-only file system Ok, this is a problem with the 000-cygwin-post-install.sh script now: if [ ! -e "${DEVDIR}" ] then mkdir -m 755 "${DEVDIR}" if [ ! -e "${DEVDIR}" ] then echo echo "Creating ${DEVDIR} directory failed." echo "Please fix that manually, otherwise you WILL get problems." echo exit 1 fi fi The non-device files under /dev can only be created, if /dev exists on disk. However, if /dev does not exist as real directory on disk, it's handled as virtual read-only filesystem to be able to list the device files even then. Therefore the first if [ ! -e "${DEVDIR}" ] fails and the mkdir is never called. Consequentially subsequent calls to create files and/or directories fail as well. So the above code has to be changed like this: mkdir -m 755 "${DEVDIR}" 2> /dev/null if [ ! -e "${DEVDIR}" ] then echo echo "Creating ${DEVDIR} directory failed." echo "Please fix that manually, otherwise you WILL get problems." echo exit 1 fi This works for me. Can you test this as well, please? I will fix the base-cygwin package ASAP. Thanks, Corinna -- Corinna Vinschen Please, send mails regarding Cygwin to Cygwin Project Co-Leader cygwin AT cygwin DOT com Red Hat -- Problem reports: http://cygwin.com/problems.html FAQ: http://cygwin.com/faq/ Documentation: http://cygwin.com/docs.html Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple