DHCP service not starting



  • Hello,

    I just installed pfSense-2.0-BETA1-20100315-0646 and noticed that the services page shows DHCP as stopped and I'm unable to get an address.  The weird thing is that it work right after installation but after one of my reboots never came back. I have disabled DHCP and then re-enabled it on the LAN.

    These messages are appearing in the system log.

    Mar 15 14:58:46 test dhcpd: no such user: dhcpd
    Mar 15 14:58:46 test dhcpd: no such user: dhcpd
    Mar 15 14:58:46 test php: /services_dhcp.php: The command '/usr/local/sbin/dhcpd -user dhcpd -group _dhcp -chroot /var/dhcpd -cf /var/dhcpd/etc/dhcpd.conf em0' returned exit code '1', the output was 'Internet Systems Consortium DHCP Server V3.0.7 Copyright 2004-2008 Internet Systems Consortium. All rights reserved. For info, please visit http://www.isc.org/sw/dhcp/ no such user: dhcpd'
    Mar 15 14:56:17 test inetd[9556]: tftp/udp: no such user 'root', service ignored

    Thanks for all the great work the pfSense team has done.

    Dan


  • Rebel Alliance Developer Netgate

    Looks like something corrupted your /etc/passwd file.

    You may need to do a firmware update of the same version you have to restore it. For example, if you are running pfSense 1.2.3, install the full firmware update for 1.2.3.

    You might be able to get away with copying just the passwd file, but if passwd is corrupted, there is no telling how many others have issues as well.



  • Thanks Jim. The problems was with corrupted files.  I did another fresh install and was able to reproduce the problem with a improper shutdown.

    Dan



  • An improper shut down at what point?  I've yanked the power out of my 2.0 test systems hundreds of times (I never shut them down properly, intentionally) and never had a problem. The chances of being able to replicate something like that out of chance are pretty much non-existent with a full install at least, can't say I've used nano much at this point, it could have other issues.



  • I have been able to reproduce it 3 times(that's all I have tried) and have used a different hard drive one of those times. All I do is change the LAN IP and WAN IP then login to the webgui, make a simple change like hostname and save. Then I pull power.

    Normally I wouldn't have brought this up if it wasn't for the fact that it happened every time.

    Dan



  • I did some more testing. I downloaded pfSense-2.0-BETA1-20100317-0224 and installed it and encountered the same problem.  I install both pfSense-2.0-BETA1-20100317-0224 and pfSense-2.0-BETA1-20100315-0646 on a completely different system, unplugged it and the same thing.

    To add a bit I left out the first time was the only time that I got the "dhcpd: no such user: dhcpd" error.  All the consecutive times pfSense loses its IP's, once reassigned the the webgui is still inaccessible. And at the console prints a message along the lines of "Warning: Invalid argument supplied for foreach() in /etc/inc/util.inc on line."  The line numbers seem to change every time.

    Dan



  • Chris,

    I have the exact opposite experience - but then again I have only been using pfSense for a month (full install, not nano).
    I guess I have pulled the plug some 10 or 20 times, and I cannot remember a single time where pfSense came up correctly afterwards.
    I have to boot into a different partition and manually fsck the file systems. After manual fsck I guess pfSense comes up about 50% of the time, otherwise I have to reinstall  :'(
    I switched on soft updates on the root file system as well, and it did not help.

    So for some time I have thus been careful to shut down nicely.

    But, just for the fun of it I just janked the power, and pfSense did not come up.
    After boot to a different partition and fsck and reboot, pfSense almost came up.
    BUT the "pfSense console setup" did not appear on the serial console.
    After some digging into logfiles I found out that /etc/gettytabs was empty.
    (This, as far as I know, is a read-only file…).
    After copying /etc/gettytabs from another partition and rebooting, pfSense seems to have come up correctly.

    I am wondering if it would make sense to use GEOM journaling?

    /Henrik


  • Rebel Alliance Developer Netgate

    kaarposoft,

    What kind of hard drive and controller are you using?

    And are you on 1.2.3 or 2.0?



  • im not sure if its DHCP but i get this message in console

    Generating RRD graphs…done.
    Starting DHCP service...done.
    32379: not found
    Starting UPnP service... done.
    Starting CRON... done.



  • jimp,
    I am using various snapshots of BETA 2.
    My hardware is a Soekris net5501, using AMD CS5536 as controller.
    The disk is a 64G Kingston SSDNow V+ Series (SNVP325-S2/64GB).
    /henrik

    PS: I have the same experience when just pushing the reset button - presumably this abruptly halts the OS but keeps power on the SSD disk.

    PPS: smartctl on the Kingston disk does not show anything I can interpret as a problem…


  • Rebel Alliance Developer Netgate

    kaarposoft,

    It seems to be specific to 2.0 then. Perhaps something in the FS code has made it more prone to corruption, or it could be due to having all of the debugging in the kernel still.

    Try editing your /etc/fstab and find the line for your root fs, and change it to something more like:

    /dev/ad0s1a              /               ufs     rw,noasync,noatime              1       1
    

    And then see if you can repeat the fs corruption.

    You might try just "sync" also.



  • jimp,

    "noasync" should make no difference, since this is the default.

    YES, everything should be "noatime". Why did I not think of that? Why does pfSense not do this by default?

    Anyway, I put "noatime" on all filesystems.
    Yank power, and nothing works ))-:
    This time I think I need to re-install ))))))-:

    I did not try "sync" since my box is now borked ))))))))))))))))))-:

    /Henrik


  • Rebel Alliance Developer Netgate

    @kaarposoft:

    "noasync" should make no difference, since this is the default.

    Emphasis on "should" - better safe than sorry when you're testing. :)

    @kaarposoft:

    YES, everything should be "noatime". Why did I not think of that? Why does pfSense not do this by default?

    Not sure. It's been brought up before but I don't recall why it hasn't been done. It may just be that nobody has taken the time to make the changes.


Log in to reply