summaryrefslogtreecommitdiffstats
path: root/usr/local/www/diag_nanobsd.php
diff options
context:
space:
mode:
authorScott Ullrich <sullrich@pfsense.org>2009-07-06 00:09:46 -0400
committerScott Ullrich <sullrich@pfsense.org>2009-07-06 00:09:46 -0400
commitfebdce5a6c26c166e2eda33fbb38b50b26a9f51e (patch)
tree45ca0ec37f501161a97ad5271a4dd2684f770987 /usr/local/www/diag_nanobsd.php
parent99623bd57ab9c153fb765ee0b517df7f3d1069a6 (diff)
downloadpfsense-febdce5a6c26c166e2eda33fbb38b50b26a9f51e.zip
pfsense-febdce5a6c26c166e2eda33fbb38b50b26a9f51e.tar.gz
Really set boot slice correctly
Diffstat (limited to 'usr/local/www/diag_nanobsd.php')
-rwxr-xr-xusr/local/www/diag_nanobsd.php25
1 files changed, 13 insertions, 12 deletions
diff --git a/usr/local/www/diag_nanobsd.php b/usr/local/www/diag_nanobsd.php
index c453b89..81865a1 100755
--- a/usr/local/www/diag_nanobsd.php
+++ b/usr/local/www/diag_nanobsd.php
@@ -57,6 +57,7 @@ if(strstr($REAL_BOOT_DEVICE, "s1")) {
$UFS_ID="1";
$OLD_UFS_ID="0";
$BOOTFLASH="{$BOOT_DRIVE}s{$OLDSLICE}";
+
} else {
$SLICE="1";
$OLDSLICE="2";
@@ -90,21 +91,21 @@ EOF;
if(strstr($_POST['bootslice'], "s2")) {
$ASLICE="2";
$AOLDSLICE="1";
- $ATOFLASH="{$BOOT_DRIVE}s{$SLICE}";
- $ACOMPLETE_PATH="{$BOOT_DRIVE}s{$SLICE}a";
+ $ATOFLASH="{$BOOT_DRIVE}s{$ASLICE}";
+ $ACOMPLETE_PATH="{$ABOOT_DRIVE}s{$ASLICE}a";
$AGLABEL_SLICE="pfsense1";
$AUFS_ID="1";
$AOLD_UFS_ID="0";
- $ABOOTFLASH="{$BOOT_DRIVE}s{$OLDSLICE}";
+ $ABOOTFLASH="{$ABOOT_DRIVE}s{$AOLDSLICE}";
} else {
$ASLICE="1";
$AOLDSLICE="2";
- $ATOFLASH="{$BOOT_DRIVE}s{$SLICE}";
- $ACOMPLETE_PATH="{$BOOT_DRIVE}s{$SLICE}a";
+ $ATOFLASH="{$ABOOT_DRIVE}s{$ASLICE}";
+ $ACOMPLETE_PATH="{$ABOOT_DRIVE}s{$ASLICE}a";
$AGLABEL_SLICE="pfsense0";
$AUFS_ID="0";
$AOLD_UFS_ID="1";
- $ABOOTFLASH="{$BOOT_DRIVE}s{$OLDSLICE}";
+ $ABOOTFLASH="{$ABOOT_DRIVE}s{$AOLDSLICE}";
}
exec("gpart set -a active -i {$ASLICE} {$ABOOT_DRIVE}");
exec("/usr/sbin/boot0cfg -s {$ASLICE} -v /dev/{$ABOOT_DRIVE}");
@@ -112,13 +113,13 @@ EOF;
exec("/sbin/fsck_ufs -y /dev/{$ACOMPLETE_PATH}");
exec("/sbin/mount /dev/ufs/{$AGLABEL_SLICE} /tmp/{$AGLABEL_SLICE}");
exec("/bin/cp /etc/fstab /tmp/{$AGLABEL_SLICE}/etc/fstab");
- $status = exec("sed -i \"\" \"s/pfsense{$OLD_UFS_ID}/pfsense{$UFS_ID}/g\" /tmp/{$AGLABEL_SLICE}/etc/fstab");
- if($status) {
- file_notice("UpgradeFailure","Something went wrong when trying to update the fstab entry. Aborting upgrade.");
- exec("/sbin/umount /tmp/{$AGLABEL_SLICE}");
- }
+ $fstab = <<<EOF
+/dev/ufs/{$AGLABEL_SLICE} / ufs ro 1 1
+/dev/ufs/cf /cf ufs ro 1 1
+EOF;
+ file_put_contents("/tmp/{$AGLABEL_SLICE}/etc/fstab", $fstab);
exec("/sbin/umount /tmp/{$AGLABEL_SLICE}");
- $savemsg = "The boot slice has been set to {$ABOOT_DRIVE} {$ASLICE}";
+ $savemsg = "The boot slice has been set to {$ABOOT_DRIVE} {$AGLABEL_SLICE}";
}
if($_POST['destslice']) {
OpenPOWER on IntegriCloud