Handling missing packages in Login Enterprise upgrades


Starting with Login Enterprise 5.10, the system will detect if the Debian package manager cannot locate or download a required package. In such cases, the appliance will:

  • Provide information on how to supply the missing package.
  • Prompt the operator to decide whether to continue with the update.

This scenario is likely if your appliance is behind a firewall that restricts access to external systems.

Manually retrieving missing packages

If automatic package updates are not possible, you can manually retrieve the missing packages, upload them to the appliance, and then retry the update. This process should resolve the issue.

Error message example

When you run a Login Enterprise update and choose to include a system update, the process may fail with messages similar to the following:

After this operation, 883 MB of additional disk space will be used.
Err:1 https://deb.debian.org/debian bookworm/main amd64 libtcl8.6 amd64 8.6.13+dfsg-2
Could not connect to debian.map.fastly.net:443 ( - connect (113: No route to host) Unable to connect to deb.debian.org:https:
Err:2 https://deb.debian.org/debian bookworm/main amd64 tcl8.6 amd64 8.6.13+dfsg-2
Unable to connect to deb.debian.org:https:
Err:3 https://deb.debian.org/debian bookworm/main amd64 tcl-expect amd64 5.45.4-2+b1
Unable to connect to deb.debian.org:https:
Err:4 https://deb.debian.org/debian bookworm/main amd64 expect amd64 5.45.4-2+b1
Unable to connect to deb.debian.org:https:
Err:5 https://deb.debian.org/debian bookworm/main amd64 javascript-common all 11+nmu1
Unable to connect to deb.debian.org:https:
Err:6 https://deb.debian.org/debian bookworm/main amd64 libxapian30 amd64 1.4.22-1
Unable to connect to deb.debian.org:https:
Err:7 https://deb.debian.org/debian bookworm/main amd64 psmisc amd64 23.6-1
Unable to connect to deb.debian.org:https:
Download complete and in download only mode
E: Failed to fetch https://deb.debian.org/debian/pool/main/t/tcl8.6/libtcl8.6_8.6.13+dfsg-2_amd64.deb Could not connect to debian.map.fastly.net:443 ( - connect (113: No route to host) Unable to connect to deb.debian.org:https:
E: Failed to fetch https://deb.debian.org/debian/pool/main/t/tcl8.6/tcl8.6_8.6.13+dfsg-2_amd64.deb Unable to connect to deb.debian.org:https:
E: Failed to fetch https://deb.debian.org/debian/pool/main/e/expect/tcl-expect_5.45.4-2+b1_amd64.deb Unable to connect to deb.debian.org:https:
E: Failed to fetch https://deb.debian.org/debian/pool/main/e/expect/expect_5.45.4-2+b1_amd64.deb Unable to connect to deb.debian.org:https:
E: Failed to fetch https://deb.debian.org/debian/pool/main/j/javascript-common/javascript-common_11+nmu1_all.deb Unable to connect to deb.debian.org:https:
E: Failed to fetch https://deb.debian.org/debian/pool/main/x/xapian-core/libxapian30_1.4.22-1_amd64.deb Unable to connect to deb.debian.org:https:
E: Failed to fetch https://deb.debian.org/debian/pool/main/p/psmisc/psmisc_23.6-1_amd64.deb Unable to connect to deb.debian.org:https:

Warning: The following package(s) couldn't be downloaded:
libtcl8.6_8.6.13+dfsg-2_amd64.deb MD5Sum:017076f7f43bc9eee3355b21ec42cd16
tcl8.6_8.6.13+dfsg-2_amd64.deb MD5Sum:02ca287da37704e9df6ee0b06bd479c4
tcl-expect_5.45.4-2+b1_amd64.deb MD5Sum:88db84877ab2d4711b173e16f88cb6c5
expect_5.45.4-2+b1_amd64.deb MD5Sum:52a0d8ad1f8c18df2dd31fe6e39bfd63
javascript-common_11+nmu1_all.deb MD5Sum:f045ec32a84a135b9c218a227a07ead0
libxapian30_1.4.22-1_amd64.deb MD5Sum:f0b31ea1fb3e186af9266aad1166130e
psmisc_23.6-1_amd64.deb MD5Sum:2a758475a05809ab3080de96f9478401

Check the log at /loginvsi/missing_packages. You may need to download these packages manually and upload them to the "/var/cache/apt/archives" directory.

Do you want to proceed with the update? (Make sure you have a snapshot to revert to) [y/N]:

Handling download errors

If multiple packages fail to download (as indicated by the Err: and E: lines in the error message example above), the system will detect these errors and prompt you at the end, asking whether you want to continue.

Unless you are certain it is safe to proceed (or you have a VM snapshot to revert to), you should respond with n and follow the instructions below to manually provide the missing packages to your appliance.

Common errors and solutions

  • Unable to connect to deb.debian.org.
    • This error suggests that the appliance cannot reach the Internet at all, possibly due to basic connectivity issues or DNS errors like Temporary failure resolving 'http://deb.debian.org'
  • Certificate verification failed: The certificate is NOT trusted.
    • This error indicates that you can reach the Internet, but something interfered with the certificate on deb.debian.org, such as a packet-inspecting firewall.
    • To resolve this:
      • Respond with n to continue the upgrade.
      • Go to the Troubleshooting menu, and select Ignore certificate errors.

Frame 405.png

      • Choose Set apt config to tell the Debian package manager to ignore certificate errors.

Frame 406.png

      • Try the upgrade process again.

Frame 407.png

Manually downloading and uploading packages

If you cannot use the Internet to download additional packages directly to the appliance, follow these steps:

1. Download the required packages to a machine with Internet access.

2. Upload the packages to the appliance.

Once the packages are uploaded, you can safely rerun the upgrade process.

If the upgrade process fails, follow these instructions:

1. Check the log file at /loginvsi/missing_packages.

  • This file contains failure information and URLs that Debian attempted to use.
  • The log file will look similar to this:
'https://deb.debian.org/debian/pool/main/t/tcl8.6/libtcl8.6_8.6.13+dfsg-2_amd64.deb' libtcl8.6_8.6.13+dfsg-2_amd64.deb 1034548 MD5Sum:017076f7f43bc9eee3355b21ec42cd16
'https://deb.debian.org/debian/pool/main/t/tcl8.6/tcl8.6_8.6.13+dfsg-2_amd64.deb' tcl8.6_8.6.13+dfsg-2_amd64.deb 120328 MD5Sum:02ca287da37704e9df6ee0b06bd479c4
'https://deb.debian.org/debian/pool/main/e/expect/tcl-expect_5.45.4-2+b1_amd64.deb' tcl-expect_5.45.4-2+b1_amd64.deb 133128 MD5Sum:88db84877ab2d4711b173e16f88cb6c5
'https://deb.debian.org/debian/pool/main/e/expect/expect_5.45.4-2+b1_amd64.deb' expect_5.45.4-2+b1_amd64.deb 165996 MD5Sum:52a0d8ad1f8c18df2dd31fe6e39bfd63
'https://deb.debian.org/debian/pool/main/j/javascript-common/javascript-common_11+nmu1_all.deb' javascript-common_11+nmu1_all.deb 6260 MD5Sum:f045ec32a84a135b9c218a227a07ead0
'https://deb.debian.org/debian/pool/main/x/xapian-core/libxapian30_1.4.22-1_amd64.deb' libxapian30_1.4.22-1_amd64.deb 1100156 MD5Sum:f0b31ea1fb3e186af9266aad1166130e
'https://deb.debian.org/debian/pool/main/p/psmisc/psmisc_23.6-1_amd64.deb' psmisc_23.6-1_amd64.deb 258696 MD5Sum:2a758475a05809ab3080de96f9478401

2. Download the log file using WinSCP or another SFTP client with the admin account.

3. Manually download the necessary packages listed in the log file.

  • On any machine with Internet access, download each URL listed in the log file at /loginvsi/missing_packages.
  • Remove any single-quote characters from the URLs.

4. Upload the packages to the appliance:

  • Using WinSCP or another SFTP client, log in as admin.
  • Change the remote directory to /var/cache/apt/archives.
  • Upload all the DEB files you downloaded.

5. Rerun the upgrade process.

For your system, the packages may vary and could be numerous.

Handling additional package discoveries

After downloading an initial set of files, Debian Linux may discover additional packages it did not initially identify. You may need to repeat this process. The previous DEB packages will still be present on the appliance, so you only need to download and upload the newly listed ones.

Continuing with missing packages

You can choose to continue with the upgrade process even if there are missing packages by responding with y. Most missing packages are for non-system components, and Linux can operate safely without upgrading them. At worst, specific programs may not function properly while the rest of the system is upgraded. If you have a snapshot to revert to, you can always attempt to continue the upgrade if you think the remaining packages are unimportant.