How to install packages on embedded installations
-
Installing Packages on an Embedded Installation
NOTE: This is NOT supported in any way by the developers!
There is good reason for this; some plugins require read/write access to the physical disk (which is disabled on embedded installations) and therefore may not be a good idea! This is not a problem for some packages (e.g., pfflow), but could cause problems for others when run from a read-only. Continuing to run the embedded version with read/write enabled could wear out your CompactFlash card very quickly.
Once again, this is NOT supported. Use at your own risk.
First, go into the webConfigurator and enable ssh. ssh into the router (use putty on windows). As a reminder, the host is the IP address of the router and the username is root, with the password being the same as the webConfigurator password. Press 8 to enter the shell.
The following command will enable read/write capability on the filesystem. Enter it so we can start changing things:
mount -o rw /dev/ufs/pfSense /
Now, we need to make the box think it is a full installation, so we can install packages from the webConfigurator (The following command is CASE SENSITIVE. Note the capital 'S'.):
echo "pfSense" > /etc/platform
Now, we need to make the read/write capability persistent by making the appropriate changes to /etc/fstab:
echo "/dev/ufs/pfSense / ufs rw 1 1" > /etc/fstab; echo "/dev/ufs/pfSenseCfg /cf ufs rw 1 1" >> /etc/fstab
Note the ">>" in the second part of the command.
At this point, we need to exit the shell (type "exit") and then press "5" to reboot the system.
After the reboot, there should be an option to install packages on the webConfigurator under "System". Install and configure your packages, then continue reading to return your system to embedded mode. Your packages WILL still be installed in embedded mode, and they should continue to function properly as long as they do not need to write out to disk.
ssh into the pfSense box again and press "8" for the shell.
We need to return /etc/platform to read "embedded":
echo "embedded" > /etc/platform
And then we need to return the /etc/fstab file to its original state:
echo "/dev/ufs/pfSense / ufs ro 1 1" > /etc/fstab; echo "/dev/ufs/pfSenseCfg /cf ufs ro 1 1" >> /etc/fstab
Type "exit" to exit the shell, and then press "5" to reboot.
Once again, this is NOT supported by the developers, so don't bother them with questions about this! They will NOT help you as this is NOT supported!
Just in case you missed it:
NOTE: This is NOT supported in any way by the developers!