Problem upgrading from 2.15 -> 2.2.1 (nanobsd 4g, AMD64, AMD GX-415GA SOC)


  • I tried upgrading from 2.1.5 -> 2.2.1 but after upgrading (tried auto update and manual update) the system ist still at 2.1.5.
    Diagnostic -> NanoBSD -> Upgrade log shows this at the end:

    Misc log:

    fdisk: unable to get correct path for mmcs2a: No such file or directory
    expr: syntax error
    [: : bad number
    fdisk: unable to get correct path for mmc: No such file or directory
    bsdlabel: unable to get correct path for mmcs1: No such file or directory
    bsdlabel: unable to get correct path for mmcs2: No such file or directory
    bsdlabel: unable to get correct path for mmcs3: No such file or directory
    gzip: error writing to output: Broken pipe
    gzip: /root/firmware.tgz: uncompress failed
    fdisk: unable to get correct path for mmc: No such file or directory
    bsdlabel: unable to get correct path for mmcs1: No such file or directory
    bsdlabel: unable to get correct path for mmcs2: No such file or directory
    bsdlabel: unable to get correct path for mmcs3: No such file or directory
    fdisk: unable to get correct path for mmc: No such file or directory
    bsdlabel: unable to get correct path for mmcs1: No such file or directory
    bsdlabel: unable to get correct path for mmcs2: No such file or directory
    bsdlabel: unable to get correct path for mmcs3: No such file or directory
    tar: Failed to set default locale
    tar: Failed to set default locale
    shutdown: [pid 73167]

    Does anybody habe any tips what goes wrong here?


  • Hi, I am relatively new to pfsense (and freebsd), so please forgive me, if I don't understand the system correctly.

    I had the same problem updating our firewall with the same upgrade log error. Our system is an AMD GX-210JA based system with a SD card as storage (Sense A10 Dual Core desktop, www.applianceshop.eu).

    I worked around the problem in backing up the system config file, writing the new version directly to the SD card externaly (so kind of a new installation) and afterwords reloading the configuration from the config backup file.

    The workaround works for updating once, but does not fix the underlaying problem. Also the other nanoBSD features don't work correctly (like coping the current slice and change between them). When I have a look in the /dev/ directory I don't see mmcs1 and  mmcs2 devices at all. It looks like they are linked in by the kernel as mmcsd1 and mmcsd2. So maybe pfsense (or nanoBSD, I am not sure who is to blame) should look not only for mmcs but also for mmcsd, or the kernel should be told to link the devices as mmcs as well. To me it looks like this is a bug. What does the community think?


  • Interestingly, we also have a 19"-rack pfsense from applianceshop.eu! Before that we had an ALIX pfsense box, there we never had this kind of problem.


  • I have contacted the support of applianceshop.eu and they seem to have worked out a fix for this problem.
    They asked me to post this:

    Here is the fix for mmcsd support in pfsense you can post in the forum.
    The .new files are a drop-in replacement. The .patch files are patch files for both.

    Is it possible to incorporate this fix with the next pfsense firmware update? That would be great!
    I have attached the above-mentioned files to this post. Please note that I had to add '.txt' to every file because the original file types were not allowed to be attached.

    pfsense-utils.inc.new.txt
    pfsense-utils.inc.patch.txt
    rc.firmware.new.txt
    rc.firmware.patch.txt


  • @Vertec:

    I have contacted the support of applianceshop.eu and they seem to have worked out a fix for this problem.
    They asked me to post this:

    Here is the fix for mmcsd support in pfsense you can post in the forum.
    The .new files are a drop-in replacement. The .patch files are patch files for both.

    Is it possible to incorporate this fix with the next pfsense firmware update? That would be great!
    I have attached the above-mentioned files to this post. Please note that I had to add '.txt' to every file because the original file types were not allowed to be attached.

    I'm unwilling to even look at putting these in until someone from Applianceshop (Deciso) sends them (preferably as git pull requests), and we have a contributor agreement in place for them.

    Then we'll have to attempt to determine the impact of them against other hardware.


  • Ah, I wish I had realised that you need to be signed in to see the attached files. I just spend about 4 hours solving this problem myself as I couldn't see the attachments anywhere and assumed they were never attached properly. :p

    Anyway, I had the same issue on an APU2 board with an 8GB SD card from Yawarra trying to upgrade from 2.2.6 to 2.3.1.

    The fix in the files from Vertec is probably the best approach. but just for completeness I was able to get around this by changing this line:

    return trim(`/sbin/glabel list | /usr/bin/grep -B2 ufs/pfsense | /usr/bin/head -n 1 | /usr/bin/cut -f3 -d' ' | /usr/bin/cut -d's' -f1`);
    

    to:

    return trim(`/sbin/glabel list | /usr/bin/grep -B2 ufs/pfsense | /usr/bin/head -n 1 | /usr/bin/cut -f3 -d' ' | /usr/bin/cut -d's' -f1,2`);
    

    This had to be changed on /etc/inc/pfsense_utils.inc to fix the Diagnostics > NanoBSD page and also in /etc/rc.firmware to fix the upgrade script itself.

    Fortunately it looks like the Upgrade issue has been fixed. The /etc/rc.firmware file no longer exists after upgrading to 2.3.1 and I have just completed an upgrade from 2.3.1 to 2.3.2 successfully. It actually threw an error saying that it failed but it seems to have worked ok in spite of what the GUI said.

    I just had a look after the upgrade and the Diagnostics > NanoBSD page has reverted to reading mmcs again instead of the correct slice/device names. I assume that any functions on that page will be broken. The Dashboard also shows the incorrect values in the NanoBSD Boot Slice section.

    +1 for getting this issue fixed so that SD cards and pfSense can play together.

    Hope it helps someone save some frustration with their shiny new toy.

    Lukas.