FlightAware Discussions

PiAware 5.0 Update Failing

Tried to update to PiAware 5.0 the easy way using the settings icon on the web interface, but it’s aborting because of dependency issues. The log indicates that it’s trying to install the 5.0 versions of dump1090-fa and other services but there are dependencies to the 4.0, versions, so it aborts.

I can ssh into the unit to enter some command line workarounds, if anyone has a detailed list of what I need to do, but I’d prefer if someone would fix the update script to prevent the issue for all of us. I already tried stopping those services first, to see if the dependency problems were being caused because they were actively running, but that didn’t help. I also tried the suggested “—fix-broken” apt command, but that also didn’t help.

Here’s the log of one of the aborts.

Thanks.

[2021-03-16 07:07 GMT] *** running command '/usr/lib/piaware/helpers/run-apt-get upgrade-package piaware' and logging output
[2021-03-16 07:07 GMT] run-apt-get(8439): dpkg: error: parsing file '/var/lib/dpkg/status' near line 12425 package 'soapysdr0.6-module-rtlsdr:armhf':
[2021-03-16 07:07 GMT] run-apt-get(8439): duplicate value for 'Description' field
[...]
[2021-03-16 07:07 GMT] run-apt-get(8439): dpkg-deb: error: subprocess returned error exit status 2
[2021-03-16 07:07 GMT] run-apt-get(8439): dpkg-deb (subprocess): decompressing archive member: lzma error: compressed data is corrupt
[2021-03-16 07:07 GMT] run-apt-get(8439): dpkg-deb (subprocess): cannot copy archive member from '/var/cache/apt/archives/piaware_5.0_armhf.deb' to decompressor pipe: failed to write (Broken pipe)

Looks like you have a failing sdcard

Possibly. Thanks for checking into it. But it’s equally possible that the corruption is caused by a simple communications error while the update package was being downloaded to the device. Is there a link I could use to re-fetch that package and reattempt the installation? Thanks.

apt validates the downloaded file against checksums downloaded from the repository (the checksums themselves are signed by the archive key, and the checksum integrity is verified by checking that signature) - corruption during the download would cause those checks to fail before getting to the point of trying to extract the package. So in your case it looks like corruption has been introduced after the download but before the extraction i.e. locally.

The damage to /var/lib/dpkg/status also indicates local corruption - that file is essentially the database that tracks locally installed packages. Recovering from this type of corruption is, at best, tricky, as your system no longer has a good idea of what’s installed.

You could try an apt-get install --reinstall of the affected packages and/or some hand-editing of the status file to try to repair the damage but frankly your best bet at this point is to reimage or recover from backups to a new sdcard.

1 Like

Fair enough. All good points. Thanks for the analysis and the explanation, and sorry for the trouble. I’ll image the 5.0 version on a new SD card and go from there. Thanks again.

1 Like

If you are feeding multiple sites, you will need to save sharing keys / feeder-id and other feeder settings to use with new image on new microSD card. This guide may serve as a quick reference:

Re-imaging Made Easy

 

1 Like