Boot problem (f1) with ALIX and Pfsense 1.2.1 rc2



  • I have had pfsense installed on a CF card. This works works fine. Now I am trying to install a full install on a harddisk with embedded kernel but this combination will not boot. It will not even pass the FreeBSD F1 menu. Does anyone have the same problem?



  • @gammaman666:

    I have had pfsense installed on a CF card. This works works fine. Now I am trying to install a full install on a harddisk with embedded kernel but this combination will not boot. It will not even pass the FreeBSD F1 menu. Does anyone have the same problem?

    The full version will not boot on a device without a VGA port…
    I take it you got a embeded type that does not have a VGA port but does have IDE?

    Follow this guide, its about installing the full version on an embeded device using a microdrive (which could last longer than a CF being constantly written to).



  • I haven't tried 1.2RC, but I have run 1.2 on a laptop drive connected to an Alix 2c3. I had to get into setup and and enable the harddrive (W)ait option to get it to boot.



  • I´m waiting for my HW to be delivered. Have ordered an ALIX 2.c2 + wireless mini-PCI. May want to go for a 2,5" HD install - is there any tutorial covering this?

    BR

    /Uffe



  • The 2C's have been superseded by the 2D series. Note that the IDE header was optional and not all 2C's have one on the board. IIRC, I used a standard to laptop IDE converter and installed from CD on another machine. I picked the embedded kernel then connected the HDD to the Alix. I used a cable I had from something else (similar to this cable http://www.eutronix.com/IDE_cable.htm). There is no place for a drive in the standard case, so one might be better off with a Soekris net 5501 for applications requiring a hard drive. I was just playing with it, so I left the case open and the HDD sitting on some anti-static foam next to it.



  • here is something I put together to help those people not able to get the microdrives to boot on the alix boards, it should work for the hd problem you are having. some instructions I modified, the original is from StarScream.  I added the config of the bios I have on the alix board and the boot up that I see.

    1: buy a microdrive or at least a compact flash II Ultra Card (but i recommend microdrive)
    2: insert your card a CF2IDE adapter, or an USB Card reader
    3a: insert the pfsense 1.2 full install disc to your cd rom and install the normal way…
    3b: use your cf card as physical disc in vmware, virtualbox or whatever you want use the pfsense image in the cdrom section and install…

    The point is the pfsense installer see your cf card and the most important thing: while the pfsense kernel loading see the booting display and write down what is the device name of your cf card! (my cf card is da0)

    4: install pfsense and leave all settings in default but in the end use Embedded Kernel(!) and the bootloader section use GRUB(!)
    5: boot again from the install CD and select shell from the menu
    6: in the shell:
    pfsense#: ls /dev
    search your device name (da0 or something) and you see what is the full name of the pfsense partition. if your device name is da0 the full name is da0s1a
    7: make a mount directory in tmp
    pfsense#: mkdir /tmp/mntmd
    8: mount this partition to the /tmp/mntmd
    pfsense#: mount /dev/da0s1a /tmp/mntmd
    9: then make the fstab file read/write
    pfsense#chmod 666 /tmp/mntmd/etc/fstab
    10: and then edit the fstab file, replace all da0 or whatever is your device name to ad0!
    pfsense#: vi /tmp/mntmd/etc/fstab
    da0s1a change to ad0s1a and then replace all da0 string
    11: save the file
    12: then return fstab file right back
    pfsens#: chmod 644 /tmp/mntmd/etc/fstab
    13: exit from the shell
    14: halt the pc and place into the alix board and boot
    BIOS setup:

    9 9600 baud (2) 19200 baud (3) 38400 baud (5) 57600 baud (1) 115200 baud
    (C) CHS mode L LBA mode W HDD wait (V) HDD slave (U) UDMA enable
    (M) MFGPT workaround
    (P) late PCI init
    R Serial console enable
    (E) PXE boot enable
    (X) Xmodem upload
    (Q) Quit

    PC Engines ALIX.2 v0.99
    640 KB Base Memory
    261120 KB Extended Memory
    Waiting for HDD …

    01F0 Master 848A HMS360604D5CF00
    Phys C/H/S 7936/16/63 Log C/H/S 992/128/63
    GRUB Loading stage1.5.

    GRUB loading, please wait...

    Press any key to continue.

    Press any key to continue.

    Press any key to continue.

    GNU GRUB  version 0.97  (640K lower / 261120K upper memory)

    +–-----------------------------------------------------------------------+
    | pfSense                                                                 |
    |                                                                         |
    |                                                                         |
    +-------------------------------------------------------------------------+
          Use the ^ and v keys to select which entry is highlighted.
          Press enter to boot the selected OS, 'e' to edit the
          commands before booting, or 'c' for a command-line.

    The highlighted entry will be booted automatically in 1 seconds.
      Booting 'pfSense'

    root (hd0,0,a)
    Filesystem type is ufs2, partition type 0xa5
    kernel /boot/loader
       [FreeBSD-a.out, loadaddr=0x200000, text=0x1000, data=0x33000, bss=0x0, entry
    =0x200000]

    Copyright © 1992-2007 The FreeBSD Project.
    Copyright (c) 1979, 1980, 1983, 1986, 1988, 1989, 1991, 1992, 1993, 1994
            The Regents of the University of California. All rights reserved.
    FreeBSD is a registered trademark of The FreeBSD Foundation.
    FreeBSD 6.2-RELEASE-p11 #0: Sun Feb 24 16:38:29 EST 2008
        sullrich@builder6.pfsense.com:/usr/obj.pfSense/usr/src/sys/pfSense_wrap.6
    Timecounter "i8254" frequency 1193182 Hz quality 0
    CPU: Geode(TM) Integrated Processor by AMD PCS (498.05-MHz 586-class CPU)
      Origin = "AuthenticAMD"  Id = 0x5a2  Stepping = 2
      Features=0x88a93d <fpu,de,pse,tsc,msr,cx8,sep,pge,cmov,clflush,mmx>AMD Features=0xc0400000 <mmx+,3dnow+,3dnow>real memory  = 268435456 (256 MB)
    avail memory = 253272064 (241 MB)
    pnpbios: Bad PnP BIOS data checksum
    wlan: mac acl policy registered
    K6-family MTRR support enabled (2 registers)
    ath_hal: 0.9.17.2 (AR5210, AR5211, AR5212, RF5111, RF5112, RF2413, RF5413)
    cpu0 on motherboard
    pcib0: <host to="" pci="" bridge="">pcibus 0 on motherboard
    .
    .
    .
    .
    usb1: companion controller, 4 ports each: usb0
    usb1: <amd cs5536="" usb="" 2.0="" controller="">on ehci0
    usb1: USB revision 2.0
    uhub1: AMD EHCI root hub, class 9/0, rev 2.00/1.00, addr 1
    uhub1: 4 ports with 4 removable, self powered
    orm0: <isa option="" rom="">at iomem 0xe0000-0xea7ff on isa0
    ppc0: parallel port not found.
    sio0 at port 0x3f8-0x3ff irq 4 flags 0x10 on isa0
    sio0: type 16550A, console
    sio1: configured irq 3 not in bitmap of probed irqs 0
    sio1: port may not be enabled
    Timecounter "TSC" frequency 498052607 Hz quality 800
    Timecounters tick every 10.000 msec
    Fast IPsec: Initialized Security Association Processing.
    ad0: 3906MB <hms360604d5cf00 dp4oc40d="">at ata0-master UDMA33
    Trying to mount root from ufs:/dev/ad0s1a

    ___
    / f
    / p _
    / Sense
    _
    /   
        _
    _/

    Welcome to pfSense 1.2-RELEASE on the 'pfSense' platform...

    Mounting filesystems... done.
    Creating symlinks......done.
    Launching PHP init system... done.
    Initializing.................. done.
    Starting device manager (devd)...done.
    Loading configuration......done.
    Updating configuration...done.
    Cleaning backup cache...done.
    Setting up extended sysctls...done.
    Syncing user passwords...done.
    Starting Secure Shell Services...done.
    Setting timezone...done.
    Starting syslog...done.
    Configuring LAN interface...done.
    Configuring WAN interface...done.
    Configuring OPT interfaces...done.
    Configuring CARP interfaces...done.
    Syncing system time before startup...done.
    Configuring firewall......done.
    Starting webConfigurator...done.
    Starting DHCP service...done.
    Starting DNS forwarder...done.
    Starting DynDNS client...done.
    Setting up microcode and tx/rx offloading...done.
    Configuring IPsec VPN... done
    Starting FTP helpers...done.
    Generating RRD graphs...done.
    Starting DHCP service...done.
    Starting OpenNTP time client...done.
    Starting CRON... done.
    Syncing packages: sshterm Dashboard squid squidGuard Lightsquid.
    Executing rc.d items...
    Starting /usr/local/etc/rc.d/proxy_monitor.sh...done.
    Starting /usr/local/etc/rc.d/squid.sh...done.
    appending output to nohup.out
    Bootup complete

    FreeBSD/i386 (zinha) (console)

    *** Welcome to pfSense 1.2-RELEASE-pfSense on zinha ***

    LAN*                     ->   vr0     ->      xxx.xxx.xxx.xxx
      WAN*                     ->   vr1     ->      xxx.xxx.xxx.xxx(DHCP)
      OPT1(DMZ)                ->   vr2     ->      NONE
      OPT2(WIFI)               ->   ath0    ->      NONE

    pfSense console setup


    0)  Logout (SSH only)
    1)  Assign Interfaces
    2)  Set LAN IP address
    3)  Reset webConfigurator password
    4)  Reset to factory defaults
    5)  Reboot system
    6)  Halt system
    7)  Ping host
    8)  Shell
    9)  PFtop
    10)  Filter Logs
    11)  Restart webConfigurator
    12)  pfSense PHP shell
    13)  Upgrade from console

    Enter an option:</hms360604d5cf00></isa></amd></host></mmx+,3dnow+,3dnow></fpu,de,pse,tsc,msr,cx8,sep,pge,cmov,clflush,mmx>



  • I have bought a couple of Microdrives: Seagate 8 GB ST1.2. Have tried your guide and other guides - but it seems Iḿ never able to boot from the drive at all. I do not get the Grub menu, instead some other boot loader (which I interpret run from the disk, though) takes the command. In any case it is not possible to tell the boot loader to boot fro the disk since it is not recognized properly. I have pasted a log below. Believ this to be a common issue - have seen some other comments with similar problems. Would be very interesting to see a solution, though…

    244736
    261120 KB Extended Memory
    Waiting for HDD ...

    01F0 Master 848A ST68022CF                             
    Phys C/H/S 15501/16/63 Log C/H/S 972/255/63 LBA
    -\|/-\|//bboooott..ccoonnffiigg::  --DD//--\||//--\||//--\||//--\||//--\||//--\||//--\||//--\||//--\||//--\||//--\||//--\||//--\||//--\||//--\||//--\||//--\Consoles: internal video/keyboard  serial port 
    BIOS drive C: is disk0
    BIOS 640kB/261120kB available memory

    FreeBSD/i386 bootstrap loader, Revision 1.1
    (sullrich@freebsd7-releng_1_2_1.pfsense.org, Thu Dec 25 14:00:26 EST 2008)
    |/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\Loading /boot/defaults/loader.conf
    |/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/boot/kernel/kernel text=0x66daac /-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-data=0x9b0ec+0x4df60 \|/-\|/-\|/-\
    |/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|                                                                                                    ______                      /      \                /    f  \              /    \        /            /  p  _/  Sense       \      /      \                _/        \                    \        /                    __/                                                                ����������������������������������������������������������������������������������������������������������������������������Welcome to pfSense!1 . Boot pfSense [default]2 . Boot pfSense with ACPI enabled3 . Boot pfSense in Safe Mode4 . Boot pfSense in single user mode5 . Boot pfSense with verbose logging6 . Escape to loader prompt7 . RebootSelect option, [Enter] for defaultor [Space] to pause timer    1 1 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 /-\|/-\Copyright © 1992-2008 The FreeBSD Project.
    Copyright (c) 1979, 1980, 1983, 1986, 1988, 1989, 1991, 1992, 1993, 1994
    The Regents of the University of California. All rights reserved.
    FreeBSD is a registered trademark of The FreeBSD Foundation.
    FreeBSD 7.0-RELEASE-p7 #0: Thu Dec 25 14:23:58 EST 2008
        sullrich@freebsd7-releng_1_2_1.pfsense.org:/usr/obj.pfSense/usr/src/sys/pfSense_wrap.7
    Timecounter "i8254" frequency 1193182 Hz quality 0
    CPU: Geode(TM) Integrated Processor by AMD PCS (498.05-MHz 586-class CPU)
      Origin = "AuthenticAMD"  Id = 0x5a2  Stepping = 2
      Features=0x88a93d <fpu,de,pse,tsc,msr,cx8,sep,pge,cmov,clflush,mmx>AMD Features=0xc0400000 <mmx+,3dnow!+,3dnow!>real memory  = 268435456 (256 MB)
    avail memory = 252841984 (241 MB)
    pnpbios: Bad PnP BIOS data checksum
    wlan: mac acl policy registered
    K6-family MTRR support enabled (2 registers)
    ath_hal: 0.9.20.3 (AR5210, AR5211, AR5212, RF5111, RF5112, RF2413, RF5413)
    ACPI Error (tbxfroot-0308): A valid RSDP was not found [20070320]
    ACPI: Table initialisation failed: AE_NOT_FOUND
    ACPI: Try disabling either ACPI or apic support.
    cryptosoft0: <software crypto="">on motherboard
    cpu0 on motherboard
    pcib0: <host to="" pci="" bridge="">pcibus 0 on motherboard
    pci0: <pci bus="">on pcib0
    MFGPT bar: f00100006200
    pci0: <encrypt decrypt,="" entertainment="" crypto="">at device 1.2 (no driver attached)
    vr0: <via 10="" vt6105m="" rhine="" iii="" 100basetx="">port 0x1000-0x10ff mem 0xe0000000-0xe00000ff irq 10 at device 9.0 on pci0
    vr0: Quirks: 0x6
    vr0: Revision: 0x96
    miibus0: <mii bus="">on vr0
    ukphy0: <generic ieee="" 802.3u="" media="" interface="">PHY 1 on miibus0
    ukphy0:  10baseT, 10baseT-FDX, 100baseTX, 100baseTX-FDX, auto
    vr0: Ethernet address: 00:0d:b9:14:b1:2c
    vr0: [ITHREAD]
    vr1: <via 10="" vt6105m="" rhine="" iii="" 100basetx="">port 0x1400-0x14ff mem 0xe0040000-0xe00400ff irq 12 at device 11.0 on pci0
    vr1: Quirks: 0x6
    vr1: Revision: 0x96
    miibus1: <mii bus="">on vr1
    ukphy1: <generic ieee="" 802.3u="" media="" interface="">PHY 1 on miibus1
    ukphy1:  10baseT, 10baseT-FDX, 100baseTX, 100baseTX-FDX, auto
    vr1: Ethernet address: 00:0d:b9:14:b1:2d
    vr1: [ITHREAD]
    ath0: <atheros 5212="">mem 0xe0080000-0xe008ffff irq 11 at device 14.0 on pci0
    ath0: [ITHREAD]
    ath0: using obsoleted if_watchdog interface
    ath0: Ethernet address: 00:0b:6b:db:e0:73
    ath0: mac 5.9 phy 4.3 radio 3.6
    isab0: <pci-isa bridge="">port 0x6000-0x6007,0x6100-0x61ff,0x6200-0x623f,0x9d00-0x9d7f,0x9c00-0x9c3f at device 15.0 on pci0
    isa0: <isa bus="">on isab0
    atapci0: <amd cs5536="" udma100="" controller="">port 0x1f0-0x1f7,0x3f6,0x170-0x177,0x376,0xff00-0xff0f at device 15.2 on pci0
    ata0: <ata 0="" channel="">on atapci0
    ata0: [ITHREAD]
    ata1: <ata 1="" channel="">on atapci0
    ata1: [ITHREAD]
    ohci0: <ohci (generic)="" usb="" controller="">mem 0xefffe000-0xefffefff irq 15 at device 15.4 on pci0
    ohci0: [GIANT-LOCKED]
    ohci0: [ITHREAD]
    usb0: OHCI version 1.0, legacy support
    usb0: <ohci (generic)="" usb="" controller="">on ohci0
    usb0: USB revision 1.0
    uhub0: <amd 1="" 9="" ohci="" root="" hub,="" class="" 0,="" rev="" 1.00="" 1.00,="" addr="">on usb0
    uhub0: 4 ports with 4 removable, self powered
    ehci0: <ehci (generic)="" usb="" 2.0="" controller="">mem 0xefffd000-0xefffdfff irq 15 at device 15.5 on pci0
    ehci0: [GIANT-LOCKED]
    ehci0: [ITHREAD]
    usb1: EHCI version 1.0
    usb1: companion controller, 4 ports each: usb0
    usb1: <ehci (generic)="" usb="" 2.0="" controller="">on ehci0
    usb1: USB revision 2.0
    uhub1: <amd 1="" 9="" ehci="" root="" hub,="" class="" 0,="" rev="" 2.00="" 1.00,="" addr="">on usb1
    uhub1: 4 ports with 4 removable, self powered
    orm0: <isa option="" rom="">at iomem 0xe0000-0xea7ff pnpid ORM0000 on isa0
    ppc0: parallel port not found.
    sio0 at port 0x3f8-0x3ff irq 4 flags 0x10 on isa0
    sio0: type 16550A, console
    sio0: [FILTER]
    sio1: configured irq 3 not in bitmap of probed irqs 0
    sio1: port may not be enabled
    Timecounter "TSC" frequency 498054031 Hz quality 800
    Timecounters tick every 10.000 msec
    Fast IPsec: Initialized Security Association Processing.
    Trying to mount root from ufs:/dev/ad0s1a

    Manual root filesystem specification:
      <fstype>:<device>  Mount <device>using filesystem <fstype>eg. ufs:da0s1a
      ?                  List valid disk boot devices
      <empty line="">      Abort manual input

    mountroot></empty></fstype></device></device></fstype></isa></amd></ehci></ehci></amd></ohci></ohci></ata></ata></amd></isa></pci-isa></atheros></generic></mii></via></generic></mii></via></encrypt></pci></host></software></mmx+,3dnow!+,3dnow!></fpu,de,pse,tsc,msr,cx8,sep,pge,cmov,clflush,mmx>



  • uffez,

    did you insert the correct drive information in the fstab file?  It looks to me that your are missing it and that is why you are getting this

    Manual root filesystem specification:
      <fstype>:<device>Mount <device>using filesystem <fstype>eg. ufs:da0s1a
      ?                  List valid disk boot devices
      <empty line="">Abort manual input

    mountroot>

    here is the portion of my instructions that do that.

    5: boot again from the install CD and select shell from the menu
    6: in the shell:
    pfsense#: ls /dev
    search your device name (da0 or something) and you see what is the full name of the pfsense partition. if your device name is da0 the full name is da0s1a
    7: make a mount directory in tmp
    pfsense#: mkdir /tmp/mntmd
    8: mount this partition to the /tmp/mntmd
    pfsense#: mount /dev/da0s1a /tmp/mntmd
    9: then make the fstab file read/write
    pfsense#chmod 666 /tmp/mntmd/etc/fstab
    10: and then edit the fstab file, replace all da0 or whatever is your device name to ad0!
    pfsense#: vi /tmp/mntmd/etc/fstab
    da0s1a change to ad0s1a and then replace all da0 string
    11: save the file
    12: then return fstab file right back
    pfsens#: chmod 644 /tmp/mntmd/etc/fstab
    13: exit from the shell
    14: halt the pc and place into the alix board and boot</empty></fstype></device></device></fstype>



  • @spraguedc:

    uffez,

    did you insert the correct drive information in the fstab file?

    Good question, but this clue from the startup output suggests fstab was modified:

    Trying to mount root from ufs:/dev/ad0s1a

    I had a lot of trouble getting a Seagate 4GB microdrive to work and gave up. I don't know if that experience should be extrapolated to Seagate 8GB microdrives. I had no trouble with the drive in a USB card reader. Can the Alix boot off a USB mass storage device?

    A curious thing about the startup output is that it apparently booted off the microdrive but the startup output doesn't report the drive.



  • your fstab file should looking something like this did you modify it, if you do not is will not boot pfsense.
    Trying to mount root from ufs:/dev/ad0s1a means it is searching for /dev/ad0s1a mount point and does not look like it is there.  Did you change your fstab?

    Device                Mountpoint      FStype  Options        Dump    Pass#

    /dev/ad0s1a            /              ufs    rw              1      1
    /dev/ad0s1b            none            swap    sw              0      0



  • I had a quick look in the kernel source file sys/kern/vfs_mount.c and it looks to me that one way the kernel gets to know the location of the root file system is from the boot loader telling it through kernel environment variable vfs.root.mountfrom A comment in the same file suggests the bootloader reads /etc/fstab (presumably on the same disk as the kernel file) to determine the value for vfs.root.mountfrom.

    On my system a dump of the kernel environment variables (# kenv -q) shows vfs.root.mountfrom="ufs:/dev/ad0s1a" and this value corresponds with the startup report: Trying to mount root from ufs:/dev/ad0s1a

    I suspect that though the boot loader can apparently read the kernel off the microdrive (and possibly also /etc/fstab) the kernel doesn't see it.

    A search through the forums for Seagate and microdrive shows a number of reports of problems with Seagate microdrives, eg http://forum.pfsense.org/index.php/topic,2665.msg26180.html#msg26180

    .



  • Sorry for late reply - yes I adjusted fstab as specified. But, as you say - it appears that Seagate Microdrives have problems… However, would be very interesting to know what lies behind this mystery...


Locked