Boot issue with pfSense 2.1.5 on PCEngine APU
Executive summary: Use Linux Minicom as a terminal and not Windows with Putty.
Environment:
- PCEngines APU1C, with apu140908.rom
- 16G mSATA SSD
- USB or SDCard install image
I had a lot of issues getting both the pfSense image and the pfSense install image to boot successfully. It would stop in single user mode with the message "/etc/rc terminated abnormally, going to single user mode". The first prerequisite step was to add the following during boot:
set hw.ata.atapi_dma="1" set hw.ata.ata_dma="1" set hw.ata.wc="1" set kern.cam.boot_delay="10000" boot
The following console was observed where the application was almost up, but then dropped to a single user console:
GEOM: da0s1: geometry does not match label (16h,63s != 255h,63s). GEOM: da0s2: geometry does not match label (16h,63s != 255h,63s). Trying to mount root from ufs:/dev/ufs/pfsense0 Configuring crash dumps... Mounting filesystems... Setting up memory disks... done. ___ ___/ f \ / p \___/ SSep 13 08:57:49 init: /bin/sh on /etc/rc terminated abnormally, going to single user mode Enter full pathname of shell or RETURN for /bin/sh:
The solution was to move the Prolific serial port adapter from the Windows computer running putty as a serial console to a Linux box running MiniCom as a serial console. I haven't invested the specific reason why this helped - it could be as simple as the terminal emulation.
Links
Appendices
Boot configuration
So that the system boot up, extra loader settings are provided. Press '7' at the menu
▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒Ŀ ▒ ▒ ▒ ▒ ▒ ▒ ▒ Welcome to pfSense! ▒ ▒ ▒ ______ ▒ ▒ / \ ▒ 1. Boot pfSense [default] ▒ _____/ f \ ▒ 2. Boot pfSense with ACPI disabled ▒ / \ / ▒ 3. Boot pfSense using USB device ▒ / p \______/ Sense ▒ 4. Boot pfSense in Safe Mode ▒ \ / \ ▒ 5. Boot pfSense in single user mode ▒ \_____/ \ ▒ 6. Boot pfSense with verbose logging ▒ \ / ▒ 7. Escape to loader prompt ▒ \______/ ▒ 8. Reboot ▒ ▒ ▒ ▒ ▒ ▒ ▒ ▒ Select option, [Enter] for default ▒ ▒ or [Space] to pause timer 9 ▒ ▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒ Type '?' for a list of commands, 'help' for more detailed help. OK set hw.ata.atapi_dma="1" OK set hw.ata.ata_dma="1" OK set hw.ata.wc="1" OK set kern.cam.boot_delay="10000" OK boot KDB: debugger backends: ddb KDB: current backend: ddb Copyright (c) 1992-2012 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 8.3-RELEASE-p16 #0: Mon Aug 25 08:27:11 EDT 2014 root@pf2_1_1_amd64.pfsense.org:/usr/obj.amd64/usr/pfSensesrc/src/sys/pfSense _SMP.8 amd64 Timecounter "i8254" frequency 1193182 Hz quality 0 CPU: AMD G-T40E Processor (1000.01-MHz K8-class CPU) Origin = "AuthenticAMD" Id = 0x500f20 Family = 14 Model = 2 Stepping = 0 Features=0x178bfbff<FPU,VME,DE,PSE,TSC,MSR,PAE,MCE,CX8,APIC,SEP,MTRR,PGE,MCA,C MOV,PAT,PSE36,CLFLUSH,MMX,FXSR,SSE,SSE2,HTT> Features2=0x802209<SSE3,MON,SSSE3,CX16,POPCNT> AMD Features=0x2e500800<SYSCALL,NX,MMX+,FFXSR,Page1GB,RDTSCP,LM> AMD Features2=0x35ff<LAHF,CMP,SVM,ExtAPIC,CR8,ABM,SSE4A,MAS,Prefetch,IBS,SKINI T,WDT> TSC: P-state invariant