Resolving the error “doesn’t support architecture i386” when updating or installing Access Server

Introduction

This page explains the possible reasons and what to do if you encounter the issue, “doesn’t support architecture i386.” You may have received this after using apt-get update with the openvpn-as package. Your Linux system then skips the package update. This likely occurs because your Linux server is on a 32-bit version, or your Linux server is configured to receive 32-bit packages.

OpenVPN Access Server no longer supports 32-bit Linux operating systems. To fix the issue, you will need to determine which of the below situations is the cause of your issue, then follow the steps accordingly.

Your Linux version is 32-bit

If you are using a 32-bit Linux server for hosting OpenVPN Access Server, you need to migrate to a 64-bit platform:

  1. Set up a new VPN server on a 64-bit platform. You can find the OpenVPN Access Server download information for the environment you need on our downloads page.
  2. Copy the OpenVPN Access Server database information from your 32-bit platform.
  3. Move those files to the 64-bit platform.
  4. Update your hostname or IP address to point to the new, 64-bit platform and test it (if it has changed).

The documentation on this page will help with the above steps: Migrating An Access Server Installation. Once you have your VPN on a 64-bit server, you should no longer receive the i386 message.

Your 64-bit Linux server is configured to retrieve 32-bit packages (multi-arch enabled)

If the issue arises on a 64-bit system, it may be because it is configured with multi-architecture support. Whether this is to support a legacy application or for another reason, you can get around the problem by specifying that the OpenVPN Access Server package uses 64-bit.

Steps to force the use of the 64-bit package for OpenVPN Access Server with apt:

Open the OpenVPN Access Server repository configuration file on your server:

  1. Open the file etc/apt/sources.list.d/openvpn-as-repo.list
  2. Look for this content: deb http://as-repository.openvpn.net/xxxx xxx xxx
    The text at the end depends on your flavor of Linux. For instance, Ubuntu will read ‘debian bionic focal main’

For example, if you were to do this on an Ubuntu server, you could open the file with the command below:

nano /etc/apt/sources.list.d/openvpn-as-repo.list

Update the repository configuration file:

  1. Add [arch=amd64] in between deb and before http:// to force 64-bit architecture.

For example, on an Ubuntu server, it would read:
deb [arch=amd64] http://as-repository.openvpn.net/debian bionic focal main

Update OpenVPN Access Server:

  1. Run
    apt update
  2. Run
    apt upgrade

Your OpenVPN Access Server should successfully update without the i386 issue notification.

If you have further questions or issues, contact support.

Notes

In Ubuntu, if you do not need to support any 32-bit applications and would like to remove multi-arch support, you can run this command:

dpkg --remove-architecture i386

This command, if it returns i386, tells you if you support 32-bit:

dpkg --print-foreign-architectures

This command, if it returns amd64, tells you if you support 64-bit:

dpkg --print-architecture