boot fails "Can't stat /dev/da0a: No such file or directory"

Graham Menhennitt graham at menhennitt.com.au
Wed May 11 20:14:13 UTC 2016


On 10/05/2016 06:46 PM, Edward Tomasz Napierała wrote:
> On 0508T0944, Graham Menhennitt wrote:
>> On 5/05/2016 09:41 PM, Edward Tomasz Napierała wrote:
>>> On 0505T1847, Graham Menhennitt wrote:
>>>> On 3/05/2016 07:59 PM, Edward Tomasz Napierała wrote:
>>>>> On 0503T1922, Graham Menhennitt wrote:
>>>>>> On 3/05/2016 06:42 PM, Edward Tomasz Napierała wrote:
>>>>>>> On 0502T0643, Graham Menhennitt wrote:
>>>>>>>> On 30/04/2016 06:53 PM, Graham Menhennitt wrote:
>>>>>>>>> Hi all,
>>>>>>>>>
>>>>>>>>> I have a USB disk that I use for backup. Up till now, it's mounted
>>>>>>>>> without any problems at boot time. After updating to -current as of
>>>>>>>>> yesterday, it doesn't mount and causes the boot to fail.
>>>>>>>>>
>>>>>>>>> My /etc/fstab looks like:
>>>>>>>>>
>>>>>>>>>     # Device    Mountpoint    FStype    Options    Dump    Pass#
>>>>>>>>>
>>>>>>>>>     /dev/ada0s1a    /        ufs    rw    1    1
>>>>>>>>>     /dev/ada0s1b    none        swap    sw    0    0
>>>>>>>>>     /dev/da0a    /backup        ufs    rw,late    1    1
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> I tried adding the "late" to fix the problem, but it doesn't help.
>>>>>>>>>
>>>>>>>>> The error message is:
>>>>>>>>>
>>>>>>>>>     /dev/ada0s1a: clean...
>>>>>>>>>     Can't stat /dev/da0a: No such file or directory
>>>>>>>>>     Unknown error; help!
>>>>>>>>>     ERROR: ABORTING BOOT (sending SIGTERM to parent)!
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> (hand transcribed - maybe typos)
>>>>>>>>>
>>>>>>>>> Can anybody help, please.
>>>>>>>>>
>>>>>>>>> Thanks,
>>>>>>>>>     Graham
>>>>>>>> Sorry, I forgot to mention...
>>>>>>>>
>>>>>>>> I commented out that line from fstab which allows the boot to complete.
>>>>>>>> I can then manually mount it without any problems. It looks like the
>>>>>>>> device doesn't get created early enough.
>>>>>>> Have you run mergemaster after upgrade?  In particular, do you have
>>>>>>> the current version of /etc/rc.d/mountcritlocal?
>>>>>>>
>>>>>> Thanks for replying, Edward. Yes I've installed that file. The delay
>>>>>> that Dave told me about has fixed the problem.
>>>>> Still, it would be nice if this worked by default.  The updated
>>>>> mountcritlocal script should wait for USB to release root tokens
>>>>> if the mount initially fails,
>>>>>
>>>> Ok, I tried to do a bit of diagnosis here. I took out the delay from
>>>> /boot/loader.conf and I added "set -x" to the top of
>>>> /etc/rc.d/mountcritlocal (before the start of the mountcritlocal_start()
>>>> function definition). I then rebooted. I didn't see any shell command
>>>> output from the "set -x" before the error occurred. That means that the
>>>> error is happening before /etc/rc.d/mountcritlocal is being read.
>>>>
>>>> When I put the delay back in and boot, I see the shell commands after
>>>> the filesystems are mounted (and, hence, after the error would have
>>>> occurred if the delay wasn't there). So I don't think mountcritlocal is
>>>> going to help me.
>>>>
>>>> I'm not sure what else to try. if you have any suggestions, I can do
>>>> some experimenting. Is there a simple way to capture the output from the
>>>> rc.d scripts?
>>> Huh, you've nailed it - it was a different script, /etc/rc.d/fsck; it
>>> runs before mountcritlocal.  Could you try the following patch?  You can
>>> apply it directly to /etc/rc.d:
>> Yep, that worked. I saw
>> 	Can't stat /dev/da0a: No such file or directory
>> Then a bit later
>> 	Restarting file system checks
>> which succeeded.
>>
>> Thank you, Edward.
> Thanks for testing; committed in a slightly different form as r299349.
>
I've svn'd to latest and run mergemaster. All working. Thanks again, Edward.


Graham



More information about the freebsd-current mailing list