Skip to content

Commit 62e15d9

Browse files
committed
docs: add pfSense installation guide
1 parent 9cb8ad4 commit 62e15d9

File tree

1 file changed

+105
-0
lines changed

1 file changed

+105
-0
lines changed

docs/pfSense-install-guide.md

Lines changed: 105 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,105 @@
1+
pfSense Installation Guide
2+
===========================
3+
4+
## Contents
5+
6+
<!-- TOC -->
7+
8+
- [pfSense Installation Guide](#pfsense-installation-guide)
9+
- [Contents](#contents)
10+
- [pfSense Image](#pfsense-image)
11+
- [Booting installer](#booting-installer)
12+
- [Installation](#installation)
13+
14+
<!-- /TOC -->
15+
16+
17+
## pfSense Image
18+
19+
In order to install pfSense on apu2/3/5 platforms from USB, obtain following
20+
[Image](https://sgpfiles.pfsense.org/mirror/downloads/pfSense-CE-memstick-serial-2.4.2-RELEASE-amd64.img.gz)
21+
from official mirror.
22+
23+
Extract the image somewhere and burn it onto usb stick using `dd`:
24+
25+
```
26+
dd if=pfSense-CE-memstick-serial-2.4.2-RELEASE-amd64.img of/dev/sdx status=progress
27+
```
28+
29+
where `sdx` is the correct USB drive.
30+
31+
> On BIOS v4.6.4 or later and v4.0.14 or later one will have to deal with double
32+
> console redirection in newer BIOSes due to multiconsole option in installer.
33+
> In the [Installation section](#installation) there is a description how to fix
34+
> it. If one has a write access to the stick, just edit `/boot.config` to
35+
> `-S115200 -h` and in `/boot/loader.conf` change
36+
> `console="comconsole,vidconsole"` to `console="comconsole"` before booting
37+
> pfSense for the first time. Append `hint.ahci.0.msi="0"` to
38+
> `/boot/device.hints` file. Also it is good to change
39+
> `/boot/defaults/loader.conf`:
40+
>
41+
> - change `#boot_serial=""` to `boot_serial="YES"`
42+
> - change `#comconsole_speed="9600"` to `comconsole_speed="115200"`
43+
> - change `#console="vidconsole"` to `console=comconsole`
44+
>
45+
> Already prepared image is available at [3mdeb cloud](https://cloud.3mdeb.com/index.php/s/I36WY5x8pDcTd9y)
46+
47+
## Booting installer
48+
49+
Plug the USB stick prepared earlier to apu and boot from it.
50+
51+
When main installer menu pops up do the following:
52+
53+
- for BIOS v4.0.13 or earlier let it boot automatically
54+
- for BIOS v4.6.3 or earlier, interrupt the installer by pressing `ESC` and type
55+
following commands:
56+
57+
```
58+
set hint.ahci.0.msi="0"
59+
boot
60+
```
61+
62+
> v4.6.x BIOSes need to have MSI disabled, due to signal races causing disk
63+
> write commands timeouts. This issue is not present in legacy BIOSes v4.0.x
64+
> Do it if did not edit `/boot/device.hints` earlier.
65+
66+
Installer should load the kernel now and begin installation process.
67+
68+
## Installation
69+
70+
Proceed with the installation choosing the options that fit you.
71+
72+
> Only for installation on BIOS v4.6.4 or later and v4.0.14 or later
73+
74+
At the end of installation open the shell to customize the system:
75+
76+
```
77+
echo "-S115200 -h" > /boot/config
78+
rm /boot.config
79+
ln /boot/config /boot.config
80+
```
81+
82+
> It is necessary to create hardlink, because /boot.config seems to not be
83+
> persistent between boots.
84+
85+
Copy `/boot/loadef.conf` and name it as `/boot/loadef.conf.local`.
86+
87+
```
88+
cp /boot/loader.conf /boot/loader.conf.local
89+
```
90+
91+
Open `/boot/loadef.conf.local`, change `console="comconsole,vidconsole"` to
92+
`console="comconsole"` and delete `boot_multicons="YES"` line. Append
93+
`hint.ahci.0.msi="0"` at the end and save.
94+
95+
> This is needed for BIOS v4.6.4 or later and v4.0.14 or later to avoid doubled
96+
> output in loader. `hint.ahci.0.msi="0"` is needed when system hangs or reboots
97+
> after few hours uptime.
98+
99+
Edit `/boot/defaults/loader.conf`:
100+
- change `#boot_serial=""` to `boot_serial="YES"`
101+
- change `#comconsole_speed="9600"` to `comconsole_speed="115200"`
102+
- change `#console="vidconsole"` to `console=comconsole`
103+
- change `loader_conf_files="/boot/device.hints /boot/loader.conf /boot/loader.conf.local"`
104+
to `loader_conf_files="/boot/device.hints /boot/loader.conf.local"`
105+

0 commit comments

Comments
 (0)