Introduction
This architecture is for 32-bit Intel/AMD x86 machines and 32 bit IOT x86 boards (like Intel Edison).
Version 7.1810 is the Sixth major release of the 32 bit x86 by the AltArch Special Interest Group. This release is based on the Source Code from CentOS 7 (1810) x86_64 Architecture and includes all current updates from the main CentOS 7.1810 tree.
Versions Released: 7.1810 - Based on Source Code for Red Hat Enterprise Linux 7.6 - Current 7.1804 - Based on Source Code for Red Hat Enterprise Linux 7.5 - Archived 7.1708 - Based on Source Code for Red Hat Enterprise Linux 7.4 - Archived 7.1611 - Based on Source Code for Red Hat Enterprise Linux 7.3 - Archived 7.1511 - Based on Source Code for Red Hat Enterprise Linux 7.2 - Archived 7.1503 - Based on Source Code for Red Hat Enterprise Linux 7.1 - Archived
Known Issues
0.0.1. Exit issue on GNOME
There was a known issue that GNOME will not exit after logon (in version 7.1503). This caused the error described in CentOS Bug 8834.
This issue is now fixed in 7.1708, please see the bug link above for 7.1503
0.0.2. CPU selection in some versions of QEMU/KVM
In some versions of QEMU/KVM the default CPU for i386 is pentium2. This causes an error as described in CentOS Bug 8748
The workaround is to customize the CPU and pick copy host cpu in virt-manager.
Installation
Installation is performed via the install ISOs and is the same as described in the standard CentOS 7 installer articles.
Basically, boot one of the install ISOs and use the anaconda installer OR use a custom kickstart file.
Install ISOs are available here:
http://isoredirect.centos.org/altarch/7/isos/i386/
sha256sums
275cbb40c85bd81357c06cf868b3d40c215fbd111292d9878a1bac1bb3bd8140 CentOS-7-i386-Everything-1810.iso a85ed6b6bd1ac3fa96d1960d91b98942c1827a74e25ac741c59990b7d8a83dd4 CentOS-7-i386-Minimal-1810.iso fefd1e3ab188954ace9c39b42a67b0d6bc485a3e1acff4b2021bb3644399e5fa CentOS-7-i386-NetInstall-1810.iso
1. Net Install ISO Path
If you are using the CentOS-7-i386-NetInstall ISO, please use a nearby AltArch mirror as the install source. Appending "7/os/i386/" to the mirror's URL will give you the correct URL that you can use in the installer. Alternatively, you can use http://mirror.centos.org/altarch/7/os/i386/ as the URL, but a nearby external mirror would probably be faster.
Getting involved
The i386 effort is being done as a community SIG project. Everyone is welcome to participate, though the actual builds are an artefact of the 64 bit process in that all 32 bit packages are built, but only some used as multi-lib in the 64 bit architecture. But we still need community help to maintain documentation and also fix issues that may arise in this architecture.
We encourage vendors to come and join this effort, especially for the newer 32-bit IOT boards like Intel Edison, etc.
The wider CentOS Ecosystem is also welcome to engage with us, both at the project and code level. If you are working with a project that interfaces, manages or develops on topĀ of CentOS, especially in the virtualization, cloud, container and infrastructure management areas - we would love to have you guys get involved.
Package Changes
Most packages are clean builds from the most recent release of CentOS 7, but there are some changed sources specifically for i386, as listed here:
centos-release |
Modified for new altarch paths |
efibootmgr |
No secure boot for 32bit |
efivar |
No secure boot for 32bit |
kernel |
modified to build on the i686 arch |
kexec-tools |
No secure boot for 32bit |
syslinux |
modified to build on the i686 arch |
grub2 |
modified to build on the i386 arch |
Packages not in i686
The following packages exist in x86_64 but are not in i686:
(note: the i686.rpm in the name is for comparison only, these rpms do not exist as i686 rpms in the i386 Arch, but they do exist as .x86_64.rpm in the x86_64 Arch)
Experimental Repository
There is a repository in the i386 tree called experimental. This is where experimental stuff goes :). Right now it contains a very new kernel (currently 4.19.x) that might work better with newer IoT type boards like minnowboard, edison, jaguarboard, etc.
To enable the experimental repo, add a file called 'CentOS-Experimental.repo' to '/etc/yum.repo.d/' that contains this:
[experimental] name=CentOS-$releasever - Experimental mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=experimental #baseurl=http://mirror.centos.org/altarch/$releasever/experimental/$basearch/ gpgcheck=1 enabled=1 gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7