Resolving the Error, "Doesn't Support Architecture i386" When Updating or Installing Access Server
How to resolve the error with architecture i386 when updating or installing Access Server.
This topic 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.
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.
If you're using a 32-bit Linux server for hosting Access Server, you need to migrate to a 64-bit platform:
Install Access Server on a new, 64-bit platform.
Copy the Access Server database files from your 32-bit platform.
Move those files to the 64-bit platform.
Update your hostname or IP address to point to the new 64-bit platform and test it.
Refer to this helpful tutorial: How to Migrate an Access Server Installation.
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.
Connect to your console and get root privileges.
Open the file /etc/apt/sources.list.d/openvpn-as-repo.list:
nano /etc/apt/sources.list.d/openvpn-as-repo.list
Look for this content:
deb http://as-repository.openvpn.net/xxxx xxx xxx
Tip
The text at the end depends on your flavor of Linux. For instance, Ubuntu will read ‘debian bionic focal main’.
Add
[arch=amd64]
between deb and before http:// to force 64-bit architecture. For example:deb [arch=amd64] http://as-repository.openvpn.net/debian bionic focal main
Now attempt to update Access Server:
apt update
apt upgrade
Tips
In Ubuntu, if you don't need to support 32-bit applications and want to remove multi-arch support:
dpkg --remove-architecture i386
If this command returns i386, you support 32-bit:
dpkg --print-foreign-architectures
If this command returns amd64, you support 64-bit:
dpkg --print-architecture