# loader.conf not working



## JohnLWebb (Oct 12, 2009)

I don't think my loader.conf file is getting used by the boot process. 

The problem manifested when I could not start X. After poking around I discovered that the problem was because the nvidia driver was not loaded. So I checked the loader.conf file and nvidia_load="YES" is still there.

So I kldloaded nvidia and was able to start X. Then I realized I had no connectivity. So after a while of poking around, I discovered that the error messages related to the wpi0 adapter were because legal.intel_wpi.license_ack=1 was not getting recognized even though it is in the loader.conf file. 

My system loads wpifw through the kernel.

Finally, autoboot_delay has no effect on my autoboot delay. It stays at 10 seconds no matter what I set autoboot_delay to...

I can't find any error specifically saying there was a problem processing loader.conf.

Anyone have any ideas why my loader.conf file seems to be disregarded?

John


----------



## DutchDaemon (Oct 12, 2009)

No typos in /boot/loader.conf (like unbalanced quotes)? I'm assuming you didn't edit or nuke /boot/loader.rc or edit /boot/defaults/loader.conf?


----------



## JohnLWebb (Oct 12, 2009)

I just rechecked loader.conf for typos. It has only four lines;


```
autoboot_delay="2"
nvidia_load="YES"
legal.intel_wpi.license_ack=1
kern.hz=100
```


I did not edit loader.rc and /boot/defaults/loader.conf appears unchanged...


----------



## DutchDaemon (Oct 12, 2009)

I'm not sure if it matters, but loader.conf(5) is quite adamant about the syntax: variable="value". Try that.


----------



## JohnLWebb (Oct 12, 2009)

Changed loader.conf to;

```
autoboot_delay="2"
nvidia_load="YES"
legal.intel_wpi.license_ack="1"
kern.hz="100"
```

The behavior is unchanged;
autoboot delay is still 10 seconds, the nvidia driver does not load and, when the kernel attempts to load the wpifw firmware image, it complains that legal.intel_wpi.license_ack=1 is not in /boot/loader.conf.

It's like its not even trying to use the file...


----------



## DutchDaemon (Oct 12, 2009)

Can you try moving these four lines into a new file, /boot/loader.conf.local and use an empty or commented-out /boot/loader.conf?

I'm assuming that `% grep ^loader_conf_files /boot/defaults/loader.conf` gives you 
	
	



```
loader_conf_files="/boot/device.hints /boot/loader.conf /boot/loader.conf.local"
```

You don't have a nice typo like /boot/loader_conf or /boot/l0ader.conf, I hope?


----------



## JohnLWebb (Oct 12, 2009)

I deleted the file and recreated an empty one with the same permissions;


```
-rw-r--r--
```

The behavior appears exactly as before...


----------



## DutchDaemon (Oct 12, 2009)

Did you try /boot/loader.conf.local as well?


----------



## DutchDaemon (Oct 12, 2009)

As a test, try (for this one time!) to edit /boot/defaults/loader.conf (make a backup of it and put it back later), setting autoboot_delay="2" there (don't forget to uncomment the result).


----------



## JohnLWebb (Oct 12, 2009)

I backed up /boot/defaults/loader.conf...
And I modified it by uncommenting the autoboot_delay line and changing it to "2" rahter than "10". It was commented out in /boot/defaults/loader.conf...

This time when I rebooted, the autoboot_delay of "2" in the /boot/defaults/loader.conf file was respected...


----------



## DutchDaemon (Oct 12, 2009)

This gives the correct result?

`%  grep ^loader_conf_files /boot/defaults/loader.conf`

```
loader_conf_files="/boot/device.hints /boot/loader.conf /boot/loader.conf.local"
```


----------



## JohnLWebb (Oct 12, 2009)

Ok. I new this was going to end up being my fault somehow...
It turns out that while I was attempting to get my USB headset working, I added a hint to the device.hints file. After having no luck, I removed the hint which was the last line in the file. I must have captured the very last quote on the line above it. That is what halted the proper processing sequence.

I should have backed it up and restored it instead and this problem would have been avoided.

Thank you Dutch for you patient help... :stud

Before the FreeBSD boot process and after the BIOS, there is a bootstrap process. Output is written to the console very quickly and is then erased and replaced with the boot menu. That bootstrap output very clearly showed the problem but I didn't see it until I used a PAUSE during the bootstrap process.

For future reference, where is that bootstrap output logged?


----------



## DutchDaemon (Oct 12, 2009)

Right, my next suggestion would have been to boot with verbose logging turned on. The boot sequence can usually be viewed using `# dmesg -a` and in /var/run/dmesg.boot.


----------



## larrypatrickmaloney (Feb 27, 2010)

*loader.conf typos*



			
				DutchDaemon said:
			
		

> No typos in /boot/loader.conf (like unbalanced quotes)? I'm assuming you didn't edit or nuke /boot/loader.rc or edit /boot/defaults/loader.conf?



Dutch,

Just wanted to thank you for this post.  It helped me.

I've had a problem with my loader.conf not working as well, for several weeks now, and I couldn't figure out the problem.

After reading your post, I went through loader.conf, and found that I had a missing comment "#" tag, and that screwed up the reading of the rest of my file.

Thanks Dutch


----------



## maxrussell (Oct 8, 2012)

*Loading /boot/defaults/loader.conf*

I tried restoring beastie from the default by copying that to loader.conf under boot and now can't load kernel. It is only on a VM, thankfully...


----------



## maxrussell (Oct 22, 2012)

Is there a way to restore the loader, or have I been a bit rash?


----------



## wblock@ (Oct 22, 2012)

You are posting in a thread that ended 1.5 years ago.

The file in defaults is just that, default settings.  Don't change it, and don't copy it.  /boot/loader.conf is where you change settings that override the defaults.  /boot/loader.conf may not even exist on freshly-installed systems.  Delete it.


----------

