Update from version 2.3.1_1 to 2.3.1_5 failed on ALIX 2D13



  • Since about three versions the update no longer works on my ALIX 2D13. There is nothing special setup. The box is still almost in its original state. The only thing that is different: the box has no WAN, vr0 is down. I noticed that the search for update takes a very long time. Where else can I look to narrow the cause of the error?

    My last attempt to update from version 2.3.1_1 to 2.3.1_5:

    >>> Updating repositories metadata... 
    Updating pfSense-core repository catalogue...
    pfSense-core repository is up-to-date.
    Updating pfSense repository catalogue...
    pfSense repository is up-to-date.
    All repositories are up-to-date.
    **** WARNING ****
    Duplicate slice required!!
    
    Before starting the upgrade process, the currently mounted nanobsd partition
    needs to be cloned to the secondary partition, where the update will happen
    
    After installation a reboot will be required to switch partition.
    
    >>> Cleaning secondary partition... done.
    >>> Duplicating current slice... done.
    >>> Restoring slice label... done.
    >>> Testing duplicated partition integrity... done.
    >>> Mounting second partition to run upgrade... done.
    >>> Unlocking package pfSense-kernel-pfSense_wrap_vga... done.
    >>> Downloading upgrade packages... 
    Updating pfSense-core repository catalogue...
    Unable to update repository pfSense-core
    Updating pfSense repository catalogue...
    Unable to update repository pfSense
    All repositories are up-to-date.
    Checking for upgrades (41 candidates): .......... done
    Processing candidates (41 candidates): .......... done
    The following 41 package(s) will be affected (of 0 checked):
    
    Installed packages to be UPGRADED:
    	php56-zlib: 5.6.21 -> 5.6.22 [pfSense]
    	php56-xmlwriter: 5.6.21 -> 5.6.22 [pfSense]
    	php56-xmlreader: 5.6.21 -> 5.6.22 [pfSense]
    	php56-xml: 5.6.21 -> 5.6.22 [pfSense]
    	php56-tokenizer: 5.6.21 -> 5.6.22 [pfSense]
    	php56-sysvshm: 5.6.21 -> 5.6.22 [pfSense]
    	php56-sysvsem: 5.6.21 -> 5.6.22 [pfSense]
    	php56-sysvmsg: 5.6.21 -> 5.6.22 [pfSense]
    	php56-sqlite3: 5.6.21 -> 5.6.22 [pfSense]
    	php56-sockets: 5.6.21 -> 5.6.22 [pfSense]
    	php56-simplexml: 5.6.21 -> 5.6.22 [pfSense]
    	php56-shmop: 5.6.21 -> 5.6.22 [pfSense]
    	php56-session: 5.6.21 -> 5.6.22 [pfSense]
    	php56-readline: 5.6.21 -> 5.6.22 [pfSense]
    	php56-posix: 5.6.21 -> 5.6.22 [pfSense]
    	php56-pdo_sqlite: 5.6.21 -> 5.6.22 [pfSense]
    	php56-pdo: 5.6.21 -> 5.6.22 [pfSense]
    	php56-pcntl: 5.6.21 -> 5.6.22 [pfSense]
    	php56-openssl: 5.6.21 -> 5.6.22 [pfSense]
    	php56-opcache: 5.6.21 -> 5.6.22 [pfSense]
    	php56-mcrypt: 5.6.21 -> 5.6.22 [pfSense]
    	php56-mbstring: 5.6.21 -> 5.6.22 [pfSense]
    	php56-ldap: 5.6.21 -> 5.6.22 [pfSense]
    	php56-json: 5.6.21 -> 5.6.22 [pfSense]
    	php56-hash: 5.6.21 -> 5.6.22 [pfSense]
    	php56-gettext: 5.6.21 -> 5.6.22 [pfSense]
    	php56-filter: 5.6.21 -> 5.6.22 [pfSense]
    	php56-dom: 5.6.21 -> 5.6.22 [pfSense]
    	php56-curl: 5.6.21 -> 5.6.22 [pfSense]
    	php56-ctype: 5.6.21 -> 5.6.22 [pfSense]
    	php56-bz2: 5.6.21 -> 5.6.22 [pfSense]
    	php56-bcmath: 5.6.21 -> 5.6.22 [pfSense]
    	php56: 5.6.21 -> 5.6.22 [pfSense]
    	pfSense-rc: 2.3.1_1 -> 2.3.1_5 [pfSense-core]
    	pfSense-kernel-pfSense_wrap_vga: 2.3.1_1 -> 2.3.1_5 [pfSense-core]
    	pfSense-default-config: 2.3.1_1 -> 2.3.1_5 [pfSense-core]
    	pfSense-base-nanobsd: 2.3.1_1 -> 2.3.1_5 [pfSense-core]
    	pfSense-Status_Monitoring: 1.3_1 -> 1.4.2_1 [pfSense]
    	pfSense: 2.3.1_1 -> 2.3.1_5 [pfSense]
    	ntp: 4.2.8p7 -> 4.2.8p8 [pfSense]
    	expat: 2.1.0_3 -> 2.1.1_1 [pfSense]
    
    42 MiB to be downloaded.
    >>> Locking package pfSense-kernel-pfSense_wrap_vga... done.
    Failed
    
    


  • I have the same issue with the exception of the last line. My last line simply states: "42 MiB to be downloaded.

    Locking package pfSense-kernel-pfSense_wrap… done." and then no update occurs.


  • Rebel Alliance Developer Netgate

    This pops up now and then but we haven't been able to reliably reproduce it, last I knew. If you let it go, eventually it should finish.

    Otherwise, connect over SSH and try updating with option 13



  • Hi there,
    this is the exact error description I was about to post a few minutes back. Same board, same behaviour, same version numbers. Slightly different packages in list though and our board has all interfaces active.

    I already did a few attempts to update via console (#13) with no success. Basicly the same error lines.

    I'm very interested in a fix for this, since a few important packages need updates. If someone wants to look into this and needs a few more details to investigate I'll be happy to help and provide those on request.

    Cheers!

    @sh0gun:

    Since about three versions the update no longer works on my ALIX 2D13. There is nothing special setup. The box is still almost in its original state. The only thing that is different: the box has no WAN, vr0 is down. I noticed that the search for update takes a very long time. Where else can I look to narrow the cause of the error?

    My last attempt to update from version 2.3.1_1 to 2.3.1_5:

    >>> Updating repositories metadata... 
    Updating pfSense-core repository catalogue...
    pfSense-core repository is up-to-date.
    Updating pfSense repository catalogue...
    pfSense repository is up-to-date.
    All repositories are up-to-date.
    **** WARNING ****
    Duplicate slice required!!
    
    Before starting the upgrade process, the currently mounted nanobsd partition
    needs to be cloned to the secondary partition, where the update will happen
    
    After installation a reboot will be required to switch partition.
    
    >>> Cleaning secondary partition... done.
    >>> Duplicating current slice... done.
    >>> Restoring slice label... done.
    >>> Testing duplicated partition integrity... done.
    >>> Mounting second partition to run upgrade... done.
    >>> Unlocking package pfSense-kernel-pfSense_wrap_vga... done.
    >>> Downloading upgrade packages... 
    Updating pfSense-core repository catalogue...
    Unable to update repository pfSense-core
    Updating pfSense repository catalogue...
    Unable to update repository pfSense
    All repositories are up-to-date.
    Checking for upgrades (41 candidates): .......... done
    Processing candidates (41 candidates): .......... done
    The following 41 package(s) will be affected (of 0 checked):
    
    Installed packages to be UPGRADED:
    	php56-zlib: 5.6.21 -> 5.6.22 [pfSense]
    	php56-xmlwriter: 5.6.21 -> 5.6.22 [pfSense]
    	php56-xmlreader: 5.6.21 -> 5.6.22 [pfSense]
    	php56-xml: 5.6.21 -> 5.6.22 [pfSense]
    	php56-tokenizer: 5.6.21 -> 5.6.22 [pfSense]
    	php56-sysvshm: 5.6.21 -> 5.6.22 [pfSense]
    	php56-sysvsem: 5.6.21 -> 5.6.22 [pfSense]
    	php56-sysvmsg: 5.6.21 -> 5.6.22 [pfSense]
    	php56-sqlite3: 5.6.21 -> 5.6.22 [pfSense]
    	php56-sockets: 5.6.21 -> 5.6.22 [pfSense]
    	php56-simplexml: 5.6.21 -> 5.6.22 [pfSense]
    	php56-shmop: 5.6.21 -> 5.6.22 [pfSense]
    	php56-session: 5.6.21 -> 5.6.22 [pfSense]
    	php56-readline: 5.6.21 -> 5.6.22 [pfSense]
    	php56-posix: 5.6.21 -> 5.6.22 [pfSense]
    	php56-pdo_sqlite: 5.6.21 -> 5.6.22 [pfSense]
    	php56-pdo: 5.6.21 -> 5.6.22 [pfSense]
    	php56-pcntl: 5.6.21 -> 5.6.22 [pfSense]
    	php56-openssl: 5.6.21 -> 5.6.22 [pfSense]
    	php56-opcache: 5.6.21 -> 5.6.22 [pfSense]
    	php56-mcrypt: 5.6.21 -> 5.6.22 [pfSense]
    	php56-mbstring: 5.6.21 -> 5.6.22 [pfSense]
    	php56-ldap: 5.6.21 -> 5.6.22 [pfSense]
    	php56-json: 5.6.21 -> 5.6.22 [pfSense]
    	php56-hash: 5.6.21 -> 5.6.22 [pfSense]
    	php56-gettext: 5.6.21 -> 5.6.22 [pfSense]
    	php56-filter: 5.6.21 -> 5.6.22 [pfSense]
    	php56-dom: 5.6.21 -> 5.6.22 [pfSense]
    	php56-curl: 5.6.21 -> 5.6.22 [pfSense]
    	php56-ctype: 5.6.21 -> 5.6.22 [pfSense]
    	php56-bz2: 5.6.21 -> 5.6.22 [pfSense]
    	php56-bcmath: 5.6.21 -> 5.6.22 [pfSense]
    	php56: 5.6.21 -> 5.6.22 [pfSense]
    	pfSense-rc: 2.3.1_1 -> 2.3.1_5 [pfSense-core]
    	pfSense-kernel-pfSense_wrap_vga: 2.3.1_1 -> 2.3.1_5 [pfSense-core]
    	pfSense-default-config: 2.3.1_1 -> 2.3.1_5 [pfSense-core]
    	pfSense-base-nanobsd: 2.3.1_1 -> 2.3.1_5 [pfSense-core]
    	pfSense-Status_Monitoring: 1.3_1 -> 1.4.2_1 [pfSense]
    	pfSense: 2.3.1_1 -> 2.3.1_5 [pfSense]
    	ntp: 4.2.8p7 -> 4.2.8p8 [pfSense]
    	expat: 2.1.0_3 -> 2.1.1_1 [pfSense]
    
    42 MiB to be downloaded.
    >>> Locking package pfSense-kernel-pfSense_wrap_vga... done.
    Failed
    
    

  • Rebel Alliance Developer Netgate

    Check the upgrade log file in /conf/ and see if it has anything better.

    You can also try this:

    pkg update -f
    

    And then re-run the upgrade. If that fails, then try:

    pkg upgrade -f
    

    Which would upgrade the packages in-place forcefully without attempting to duplicate the NanoBSD slice first.



  • @jimp:

    Check the upgrade log file in /conf/ and see if it has anything better.

    Hi jimp,
    thanks for pushing me to that location. I haven't noticed that spot before, only checked /var/log/ for logfiles occasionally.
    The upgrade_log.txt contains just what console output or web GUI update page brought on display. Nothing new here.

    There are interesting log files fdisk_upgrade_log.txt and firmware_update_misc_log.txt. They date back to April 13 which seems to be the time when the last successful (sort of) update took place.

    Here's firmware_update_misc_log.txt's content:

    
    fdisk: invalid fdisk partition table found
    bsdlabel: /dev/ada0s3: no valid label found
    bsdlabel: /dev/ada0s3: no valid label found
    bsdlabel: /dev/ada0s3: no valid label found
    
    

    Doesn't sound too good to me.

    And here is the detailed fdisk_upgrade_log.txt content, which shares the same timestamp as the other one: http://pastebin.com/aUUFmXsD  It's a bit long so I stored it externally.

    Although the device does reboot successfully in this disk layout state, I postponed your suggestions for running the pkg tool with -f to apply a bit of force and to run update/upgrade in-place. Will to this later.


  • Rebel Alliance Developer Netgate

    Some errors like that are expected as the partitions get rewritten.

    You could also try the less invasive:

    pfSense-upgrade -d
    

    Which would run the usual upgrade script in debug mode for more output.



  • @jimp:

    You could also try the less invasive:

    pfSense-upgrade -d
    

    Which would run the usual upgrade script in debug mode for more output.

    That sounds great and this is the output:

    
    [2.3-RELEASE][root@pfsense]/root: pfSense-upgrade -d
    >>> Updating repositories metadata...
    Updating pfSense-core repository catalogue...
    pfSense-core repository is up-to-date.
    Updating pfSense repository catalogue...
    Repository pfSense contains no repodata table, need to re-create database
    Fetching meta.txz: . done
    Fetching packagesite.txz: .......... done
    Processing entries: .......... done
    pfSense repository update completed. 384 packages processed.
    **** WARNING ****
    Duplicate slice required!!
    
    Before starting the upgrade process, the currently mounted nanobsd partition
    needs to be cloned to the secondary partition, where the update will happen
    
    After installation a reboot will be required to switch partition.
    
    Proceed with upgrade? (y/N) y
    >>> Cleaning secondary partition...
    1+0 records in
    1+0 records out
    1048576 bytes transferred in 0.172520 secs (6077999 bytes/sec)
    >>> Duplicating current slice...
    14772+1 records in
    14772+1 records out
    968155648 bytes transferred in 228.198003 secs (4242612 bytes/sec)
    >>> Restoring slice label...
    >>> Testing duplicated partition integrity...
    ** /dev/ufs/pfsense1
    ** Last Mounted on /
    ** Phase 1 - Check Blocks and Sizes
    ** Phase 2 - Check Pathnames
    ** Phase 3 - Check Connectivity
    ** Phase 4 - Check Reference Counts
    ** Phase 5 - Check Cyl groups
    15947 files, 875281 used, 984077 free (2109 frags, 122746 blocks, 0.1% fragmentation)
    
    ***** FILE SYSTEM IS CLEAN *****
    >>> Mounting second partition to run upgrade...
    >>> Unlocking package pfSense-kernel-pfSense_wrap...
    Unlocking pfSense-kernel-pfSense_wrap-2.3
    >>> Downloading upgrade packages...
    Updating pfSense-core repository catalogue...
    Unable to update repository pfSense-core
    Updating pfSense repository catalogue...
    Unable to update repository pfSense
    All repositories are up-to-date.
    Checking for upgrades (63 candidates): .......... done
    Processing candidates (63 candidates): .......... done
    The following 65 package(s) will be affected (of 0 checked):
    
    New packages to be INSTALLED:
    	uclcmd: 0.1 [pfSense]
    	libucl: 0.8.0 [pfSense]
    
    Installed packages to be UPGRADED:
    	unbound: 1.5.5 -> 1.5.8 [pfSense]
    	sqlite3: 3.9.2 -> 3.11.1 [pfSense]
    	smartmontools: 6.4_1 -> 6.4_2 [pfSense]
    	rate: 0.9 -> 0.9_1 [pfSense]
    	python27: 2.7.11_1 -> 2.7.11_2 [pfSense]
    	php56-zlib: 5.6.20 -> 5.6.22 [pfSense]
    	php56-xmlwriter: 5.6.20 -> 5.6.22 [pfSense]
    	php56-xmlreader: 5.6.20 -> 5.6.22 [pfSense]
    	php56-xml: 5.6.20 -> 5.6.22 [pfSense]
    	php56-tokenizer: 5.6.20 -> 5.6.22 [pfSense]
    	php56-sysvshm: 5.6.20 -> 5.6.22 [pfSense]
    	php56-sysvsem: 5.6.20 -> 5.6.22 [pfSense]
    	php56-sysvmsg: 5.6.20 -> 5.6.22 [pfSense]
    	php56-sqlite3: 5.6.20 -> 5.6.22 [pfSense]
    	php56-sockets: 5.6.20 -> 5.6.22 [pfSense]
    	php56-simplexml: 5.6.20 -> 5.6.22 [pfSense]
    	php56-shmop: 5.6.20 -> 5.6.22 [pfSense]
    	php56-session: 5.6.20 -> 5.6.22 [pfSense]
    	php56-readline: 5.6.20 -> 5.6.22 [pfSense]
    	php56-posix: 5.6.20 -> 5.6.22 [pfSense]
    	php56-pdo_sqlite: 5.6.20 -> 5.6.22 [pfSense]
    	php56-pdo: 5.6.20 -> 5.6.22 [pfSense]
    	php56-pcntl: 5.6.20 -> 5.6.22 [pfSense]
    	php56-openssl: 5.6.20 -> 5.6.22 [pfSense]
    	php56-opcache: 5.6.20 -> 5.6.22 [pfSense]
    	php56-mcrypt: 5.6.20 -> 5.6.22 [pfSense]
    	php56-mbstring: 5.6.20 -> 5.6.22 [pfSense]
    	php56-ldap: 5.6.20 -> 5.6.22 [pfSense]
    	php56-json: 5.6.20 -> 5.6.22 [pfSense]
    	php56-hash: 5.6.20 -> 5.6.22 [pfSense]
    	php56-gettext: 5.6.20 -> 5.6.22 [pfSense]
    	php56-filter: 5.6.20 -> 5.6.22 [pfSense]
    	php56-dom: 5.6.20 -> 5.6.22 [pfSense]
    	php56-curl: 5.6.20 -> 5.6.22 [pfSense]
    	php56-ctype: 5.6.20 -> 5.6.22 [pfSense]
    	php56-bz2: 5.6.20 -> 5.6.22 [pfSense]
    	php56-bcmath: 5.6.20 -> 5.6.22 [pfSense]
    	php56: 5.6.20 -> 5.6.22 [pfSense]
    	pfSense-rc: 2.3 -> 2.3.1_5 [pfSense-core]
    	pfSense-kernel-pfSense_wrap: 2.3 -> 2.3.1_5 [pfSense-core]
    	pfSense-default-config-serial: 2.3 -> 2.3.1_5 [pfSense-core]
    	pfSense-base-nanobsd: 2.3 -> 2.3.1_5 [pfSense-core]
    	pfSense-Status_Monitoring: 1.0_1 -> 1.4.2_1 [pfSense]
    	pfSense: 2.3_1 -> 2.3.1_5 [pfSense]
    	perl5: 5.20.3_8 -> 5.20.3_12 [pfSense]
    	pecl-zmq: 1.1.3 -> 1.1.3_1 [pfSense]
    	openvpn: 2.3.9 -> 2.3.11 [pfSense]
    	ntp: 4.2.8p7 -> 4.2.8p8 [pfSense]
    	nettle: 2.7.1 -> 3.2 [pfSense]
    	libzmq4: 4.1.3 -> 4.1.4_1 [pfSense]
    	libsodium: 1.0.3 -> 1.0.8 [pfSense]
    	libedit: 3.1.20150325_1 -> 3.1.20150325_2 [pfSense]
    	gmp: 5.1.3_2 -> 5.1.3_3 [pfSense]
    	glib: 2.44.1_3 -> 2.46.2 [pfSense]
    	gettext-runtime: 0.19.6 -> 0.19.7 [pfSense]
    	filterlog: 0.1_1 -> 0.1_2 [pfSense]
    	expat: 2.1.0_3 -> 2.1.1_1 [pfSense]
    	dnsmasq-devel: 2.76.0test8 -> 2.76.0test12 [pfSense]
    	curl: 7.47.0 -> 7.48.0_1 [pfSense]
    	cpdup: 1.17_2 -> 1.18 [pfSense]
    	bsnmp-ucd: 0.4.1 -> 0.4.2 [pfSense]
    
    Installed packages to be REINSTALLED:
    	rrdtool-1.5.5_1 [pfSense] (options changed)
    	nginx-1.8.1,2 [pfSense] (options changed)
    
    72 MiB to be downloaded.
    >>> Locking package pfSense-kernel-pfSense_wrap...
    Locking pfSense-kernel-pfSense_wrap-2.3
    
    

    No errors, no failure. Then I did a reboot manually, the introduced one did'nt happen. Thereafter everything's still like it was before. I ran that command twice with no recognizable result.

    Then I launched  pkg update -f  and  pkg upgrade -f. They both didn't do anything at all, prompt was back immediately after hitting Enter.


  • Rebel Alliance Developer Netgate

    You appear to be on 2.3 and not 2.3.1_1 like the thread topic indicates, which could be a different issue. Try going to Diagnostics > NanoBSD and setting the permanent read/write setting.



  • @jimp:

    You appear to be on 2.3 and not 2.3.1_1 like the thread topic indicates, which could be a different issue. Try going to Diagnostics > NanoBSD and setting the permanent read/write setting.

    First things first: you were right regarding the release number. After switching the FS to be writable a very usual FreeBSD-style update&upgrade run (without -f) went fine and the box is now on 2.3.1-RELEASE-p5. Huge thanks to you for your help and pushing me in the right direction.

    Strange things remain, though. I am very certain that the one-click update from 2.3 to 2.3.1 (back in April?) and also the one to 2.3.1_1 applied successfully. This is btw. the only one pfSense box I have, so a mixup is unlikely here. I remember blaming pfsense to be having an unproper version scheme in regard to omitting the patch level part in the web GUI. Which it hasn't and which it doesn't, as I now clearly can see, if that hasn't been modified since then.
    So it is unclear (and not especially confidence inspiring) why the system left the normal predefined update train. Also unclear if it is back to normal now, since the r/w switch in Diag > NanoBSD seems to be gone. Well, seems it'll need a watchful eye the weeks to come.



  • since the r/w switch in Diag > NanoBSD seems to be gone

    In the most recent versions that switch has indeed been removed. All nanoBSD systems are now set to RW all the time.

    Note for future readers: That does not mean that there are now any more writes to the media, the code is still as careful as it always was to minimize writes and keep run-time variable stuff in /var and /tmp



  • After some test I've found out that I run into this problem: https://redmine.pfsense.org/issues/6557. pkg is unable to download new packages in the chroot.

    Updating with```
    pkg update -f
    pkg upgrade -f

    
    Thank you.


  • I had the same exact problem yesterday on my Alix box with a fresh install of 2.3.1. In my case I had DNS resolver disabled, and once I enabled it the upgrade started worked normally.


  • Rebel Alliance Developer Netgate

    We have also had a case where the DNS Forwarder or Resolver was enabled but not bound to localhost (127.0.0.1), so the chroot had no working DNS. We have a fix in for this in future versions, but for the time being, make sure you have localhost selected in your DNS Resolver or Forwarder configurations for good measure.

    https://redmine.pfsense.org/issues/6557


Log in to reply