From owner-svn-src-head@freebsd.org Wed Jan 6 00:18:22 2016 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id AD681A633AC; Wed, 6 Jan 2016 00:18:22 +0000 (UTC) (envelope-from allanjude@freebsd.org) Received: from mx1.scaleengine.net (mx1.scaleengine.net [209.51.186.6]) by mx1.freebsd.org (Postfix) with ESMTP id 8FF811DDF; Wed, 6 Jan 2016 00:18:22 +0000 (UTC) (envelope-from allanjude@freebsd.org) Received: from [192.168.1.1] (unknown [192.168.1.1]) (Authenticated sender: allanjude.freebsd@scaleengine.com) by mx1.scaleengine.net (Postfix) with ESMTPSA id 9ADAADCEE; Wed, 6 Jan 2016 00:18:21 +0000 (UTC) Subject: Re: svn commit: r293227 - head/etc To: Devin Teske , Ian Lepore References: <201601052120.u05LKlQw074919@repo.freebsd.org> <1452038404.1320.46.camel@freebsd.org> <1A1BB09D-2FB4-4E50-9F86-62B772855224@freebsd.org> Cc: Warner Losh , src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org From: Allan Jude Message-ID: <568C5D49.9090502@freebsd.org> Date: Tue, 5 Jan 2016 19:18:17 -0500 User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:38.0) Gecko/20100101 Thunderbird/38.5.0 MIME-Version: 1.0 In-Reply-To: <1A1BB09D-2FB4-4E50-9F86-62B772855224@freebsd.org> Content-Type: text/plain; charset=windows-1252; format=flowed Content-Transfer-Encoding: 7bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 06 Jan 2016 00:18:22 -0000 On 2016-01-05 19:16, Devin Teske wrote: > >> On Jan 5, 2016, at 4:00 PM, Ian Lepore wrote: >> >> On Tue, 2016-01-05 at 21:20 +0000, Warner Losh wrote: >>> Author: imp >>> Date: Tue Jan 5 21:20:47 2016 >>> New Revision: 293227 >>> URL: https://svnweb.freebsd.org/changeset/base/293227 >>> >>> Log: >>> Use the more proper -f. Leave /bin/rm in place since that's what >>> other rc scripts have, though it isn't strictly necessary. >>> >>> Modified: >>> head/etc/rc >>> >>> Modified: head/etc/rc >>> ===================================================================== >>> ========= >>> --- head/etc/rc Tue Jan 5 21:20:46 2016 (r293226) >>> +++ head/etc/rc Tue Jan 5 21:20:47 2016 (r293227) >>> @@ -132,9 +132,9 @@ done >>> # Remove the firstboot sentinel, and reboot if it was requested. >>> if [ -e ${firstboot_sentinel} ]; then >>> [ ${root_rw_mount} = "yes" ] || mount -uw / >>> - /bin/rm ${firstboot_sentinel} >>> + /bin/rm -f ${firstboot_sentinel} >>> if [ -e ${firstboot_sentinel}-reboot ]; then >>> - /bin/rm ${firstboot_sentinel}-reboot >>> + /bin/rm -f ${firstboot_sentinel}-reboot >>> [ ${root_rw_mount} = "yes" ] || mount -ur / >>> kill -INT 1 >>> fi >>> >> >> Using rm -f to suppress an error message seems like a bad idea here -- >> if the sentinel file can't be removed that implies it's going to do >> firstboot behavior every time it boots, and that's the sort of error >> that should be in-your-face. Especially on the reboot one because >> you're going to be stuck in a reboot loop with no error message. >> > > Leaving off -f so that the user gets prompted isn't quite as helpful > as, say, using -f but then testing to make sure the file is really gone > (if it still exists after a silent "rm -f", put up an informative warning > instead of asking the user if they would like to delete it). > > The end-result of having something thrown in your face seems > desirable. Having a prompt that asks you if you'd like to delete it > (even if there is an error immediately above it explaining it could > not be deleted) seems nonsensical. > More specifically, firstboot is most likely run in situations where no one will be at the console, so an interactive prompt stopping the system from coming up is bad. -- Allan Jude