Requirements: Difference between revisions

From Alpine Linux
(→‎Architectures: s390x: link to main article)
 
(27 intermediate revisions by 8 users not shown)
Line 4: Line 4:
== Hardware requirements ==
== Hardware requirements ==


For installation and usage take in consideration Alpine can run in several devices, from the popular PC machine also including video game consoles like Game boy Advance and 3DS, so you must check:
For installation and usage consider that Alpine can run on several kinds of devices, from personal computers to video game consoles, and as such you must verify the details below:


** Architectures
* CPU architecture
** Memory
* Memory
** Storage
* Storage
** Peripherals
* Peripherals


=== Architectures ===
=== Architectures ===


'''Means kind of computer, The most popular is the misnamed "intel IBM PC"''' or "i386" which is actually in fact the x86 or x64, there are other computers supporteds that are not "x86" like mainframes also servers, as embebed devices.. inclusivelly routers like Sonicwall and Cisco ones. Here are the supported:
CPU architecture is an instruction set design that defines how a processor is used by software. Widely used across desktops and servers are x86 (mostly i686) and x86_64 (also known as amd64). There are other supported computer architectures that are not "x86", like mainframes, servers, and embedded devices (such as routers like Sonicwall and Cisco ones). The table below represents architectures supported by Alpine:


{| class="wikitable"
{| class="wikitable"
|-
|-
! Supported Arch !! Supported since !! Meaning of installation and target architecture
! Supported architecture !! Available since !! Description
|-
|-
| x86_64 || all || The popular AMD64 compatible 64-bit x86 based machines, i386 is not recommended for newer/latest hardware.
| x86_64 || all || Widely spread AMD64 compatible 64-bit x86 instruction set.
|-
|-
| x86 || all || The all popular 32 bit intel (i386 pc 32bit) and x86_64 (i686 pc 64bit and amd64)compatible (both)
| x86 || all || [https://en.wikipedia.org/wiki/Pentium_Pro i686 compatible] (or later) CPUs with at least [https://en.wikipedia.org/wiki/Predication_(computer_architecture)#History CMOV] and [https://en.wikipedia.org/wiki/SSE2 SSE2]
|-
|-
| ppc64le || v3.6 || For the PowerPC devices with pure little-endian mode, mostly for POWER8 and POWER9
| [[ppc64le]] || v3.6 || For PowerPC devices with pure little-endian mode, mostly for POWER8 and POWER9
|-
|-
| armhf || v3.0 || The newer ARM hard-float for newer, more powerful 32-bit devices alongside 64-bit. Including video games!
| armhf || v3.0 || A 32-bit ARM instruction set with hard-float point extension.
|-
|-
| armv7 || v3.9 || The 32-bit ARM only execution state of the ARMv7 devices machines. Including video game consoles!
| armv7 || v3.9 || The 32-bit ARM only execution state of the ARMv7 devices machines.
|-
|-
| aarch64 || v3.5 || The 64-bit ARM only execution state of the ARMv8 device machines. Like Rasberri's
| aarch64 || v3.5 || The 64-bit ARM only execution state of the ARMv8+ device machines..
|-
|-
| ppc64le || v3.6 || for 64-bit big-endian PowerPC and Power ISA processors like some MAC computers.
| [[s390x]] || v3.6 || For IBM mainframes, especially IBM Z and IBM LinuxONE servers.
|-
|-
| s390x || v3.6 || For the Super powered IBM mainframes, especially IBM Z and IBM LinuxONE servers.
| riscv64 || v3.20 ||
|}
|}


=== Memory ===
=== Memory ===
 
{{Draft|Most of these numbers seem to be guessed, if not outright fabricated for non x86* architectures.}}
'''Means minimum amount of RAM memory. Need of RAM it depends of the meaning of the installation''', any hardware are supported and there is minimum sizes for:
Below are shown minimum RAM amounts for various installation types and phases:


{| class="wikitable sortable"
{| class="wikitable sortable"
Line 44: Line 44:
! Target Arch !! Minimum RAM to start !! Minimum RAM to install !! Minimum RAM for GUI desktop !! Enough for GUI work
! Target Arch !! Minimum RAM to start !! Minimum RAM to install !! Minimum RAM for GUI desktop !! Enough for GUI work
|-
|-
| x86_64 || 512 Megs || 512 Megs || 2 Gigs || 8 Gigs
| x86_64 || 128 Megs || 320 Megs || 512 Megs || 8 Gigs
|-
|-
| x86_32 || 128 Megs || 256 Megs || 1 Gigs || 3 Gigs
| x86 || 96 Megs || 128 Megs || 320 Megs || 3 Gigs
|-
|-
| ppc64le || 128 Megs || 256 Megs || 2 Gigs || 8 Gigs
| ppc64le || 128 Megs || 256 Megs || 2 Gigs || 8 Gigs
Line 55: Line 55:
|-
|-
| aarch64 || 256 Megs || 512 Megs || 2 Gigs || 8 Gigs
| aarch64 || 256 Megs || 512 Megs || 2 Gigs || 8 Gigs
|-
| ppc64le || 256 Megs || 512 Megs || 1 Gigs || 6 Gigs
|-
|-
| s390x || 128 Megs || 256 Megs || 2 Gigs || N/A
| s390x || 128 Megs || 256 Megs || 2 Gigs || N/A
Line 63: Line 61:
=== Storage ===
=== Storage ===


'''Means any external or internal storage device that can be added after or before install to use''' by the Alpine Linux system. Currently depends of the current linux kernel supported.
This means any external or internal storage device that can be added after or before installation to use by the Alpine Linux system.  


'''All the PATA and SATA hard disk drives are supported, also any USB or SD''' card that can be detected by USB BUS by the linux kernel subsystem during install.
PATA and SATA hard disk drives are supported, as well as any USB or SD card that can be detected by the Linux during installation.


=== Peripherals ===
=== Peripherals ===


'''Means any external or internal device that can be added after or before install to detectd''' by the Alpine Linux system. Currently depends of the current linux kernel supported.
This means any external or internal device that can be added before or after installation and detected by Alpine Linux. The peripherals that are supported depends on the current version of the Linux kernel.


ISA devices are not supported since 3.8 because kernel drops support.
Almost any GPU is supported, but certain features and 3D acceleration might depend on MESA drivers:


Almost any GPU are supported, but for advanced features, 3D acceleration are manager by MESA project:
* Intel: Most Intel chips since approximately 2001 should work with the exception of PowerVR-based chips (such as GMA 500, GMA 600, GMA 3600, GMA 3650)
 
* ATI/AMD, only Radeon series with exception of recent last two years, Rage r128/mach64 series are unsupported.
* Intel: mostly any Intel by one exception, intel i810/i815 will lack of features cos only has 4Mb memory, Mesa and Linux drop theit support.
* Nvidia: support for Nvidia GPUs is limited since their drivers are proprietary and built for GNU libc. Nouveau drivers are available as free alternative.
* ATI/AMD, only radeon series with exception of recent two last years respect Alpine release, Rage r128/match64 series has limited support.
* 3DfX, S3 Savage, SiS, VIA, and Matrox are all completely unsupported since kernel 6.3 <small>(Alpine 3.18 was the most recent version that had even the slimmest chances of these devices working)</small>
* Nvidia: limited; only few are complete supported! not all features are allowed!
* Matrox: not all features are supported, just cos are shipped on most servers.
* Sis: limited features are supported, since code are not updated on Xorg and Linux kernel
* Via: limited features are supported, since openchrome code are not updated on Xorg and Linux kernel


== Software requirements ==
== Software requirements ==
** Media
** Booting
** Storage
** Firmware


=== Media ===
=== Media ===


'''Means the files need for dump the install media, and later boot from the target install''' machine, of course downloaded from http://dl-cdn.alpinelinux.org/alpine/latest-stable/releases/ or main Download page.
Alpine boot images are provided on [https://alpinelinux.org/downloads/ downloads page] or on a [https://dl-cdn.alpinelinux.org/alpine/latest-stable/releases/ mirror]


{| class="wikitable"
The images should be verified as in [[Installation]], to ensure the file wasn't corrupted during transfer.
|-
! Available for !! ISO (for USB, CD/DVD) !! IMG (for Netboot)  !! TAR (for ROOTFS, in tar.gz) !! Download links
|-
| x86_64 || YES || YES || N/A || http://dl-cdn.alpinelinux.org/alpine/latest-stable/releases/x86_64/
|-
| x86 || YES || YES || N/A || http://dl-cdn.alpinelinux.org/alpine/latest-stable/releases/x86/
|-
| ppc64le || NO || YES || YES || http://dl-cdn.alpinelinux.org/alpine/latest-stable/releases/ppc64le/
|-
| armhf || NO || YES || YES || http://dl-cdn.alpinelinux.org/alpine/latest-stable/releases/armhf/
|-
| armv7 || NO || YES || YES || http://dl-cdn.alpinelinux.org/alpine/latest-stable/releases/armv7/
|-
| aarch64 ||  YES || YES || YES || http://dl-cdn.alpinelinux.org/alpine/latest-stable/releases/aarch64/
|-
| mips64 || YES || YES || N/A || http://dl-cdn.alpinelinux.org/alpine/latest-stable/releases/mips64/
|-
| s390x || YES || YES || N/A || http://dl-cdn.alpinelinux.org/alpine/latest-stable/releases/s390x/
|}
 
==== Checksum ====
 
'''Means Commands to verify the checksum and GPG signature of a downloaded image file on different systems, is complete optional!'''. This kind of check are made to verify if the download media ISO (for USB, CD/DVD),  IMG (for Netboot)  or TAR (for ROOTFS, in tar.gz) file are correct and will work. Just performs that command in your system before use that downloaded file:
 
{|  class="wikitable"
! OS where media was downloaded !! <code>sha265</code> calculation (to be compared manually) !! <code>GPG</code> signature verification
|-
| Linux || <code>sha256sum -c alpine-*.iso.sha256</code>    || <code>curl https://alpinelinux.org/keys/ncopa.asc &#124;<br> gpg --import ;<br><nowiki>gpg --verify alpine-*.iso.asc alpine-*.iso</nowiki></code>
|-
| MACOS  || <code>shasum -a 256 alpine-*.iso</code> || - ? -
|-
| BSD || <code>/usr/local/bin/shasum -a 256 alpine-*.iso</code> || - ? -
|}


=== Booting ===
=== Booting ===


'''Means support for kind of BIOS setup of machine, and where can be media downloaded will be boot''', please for more info check [[Alpine_and_UEFI|Alpine and UEFI]] wiki page.
The following table describes supported firmware types, for more information please check [[Alpine_and_UEFI|Alpine and UEFI]] wiki page.


{| class="wikitable"
{| class="wikitable"
|-
|-
! Supported Arch !! Supported BIOS !! Supported Types !! Media Boot Recommended
! Supported Arch !! Supported firmware !! Supported Types
|-
| x86_64 || Coreboot, Vendor/OEM || BIOS, UEFI || '''USB''', CD/DVD (ISO)
|-
|-
| x86 || Coreboot, Vendor/OEM || BIOS, UEFI || '''USB''', CD/DVD (ISO)
| x86_64 || Coreboot, Vendor/OEM || BIOS, UEFI
|-
|-
| ppc64le || Coreboot, Vendor/OEM || BIOS, UEFI || '''USB''', CD/DVD (ISO)
| x86 || Coreboot, Vendor/OEM || BIOS, UEFI
|-
|-
| armhf || Uboot, Vendor/OEM || BIOS, UEFI || '''NET''', MINIROOTFS (TAR.GZ)
| ppc64le || Coreboot, Vendor/OEM || UEFI
|-
|-
| armv7 || Uboot, Vendor/OEM || BIOS, UEFI || '''NET''', MINIROOTFS (TAR.GZ)
| armhf || Uboot, Vendor/OEM || UEFI
|-
|-
| aarch64 || ?Coreboot?, Vendor/OEM || BIOS, ?UEFI? || '''USB''', CD/DVD (ISO)
| armv7 || Uboot, Vendor/OEM || UEFI
|-
|-
| mips64 || Vendor/OEM || ? || MINIROOTFS (TAR.GZ)
| aarch64 || Vendor/OEM || UEFI
|-
|-
| s390x || Vendor/OEM || BIOS, ?UEFI?|| '''USB''', CD/DVD
| s390x || Vendor/OEM || unknown
|}
|}
If the computer does not automatically boot from the desired device, one needs to bring up the boot menu selection for choosing the media to boot from. Depending on the computer the menu may be accessed by quickly (repeatedly) pressing a key when booting starts, or sometimes it is needed to press the button before starting the computer and keep holding it when it boots. Typical keys are:  `F9`-`F12`, sometimes `F7` or `F8`. If these don't bring up the boot menu, it may be necessary to enter the BIOS configuration and adjust the boot settings, for which typical keys are: `Del.` `F1` `F2` `F6` or `Esc.`


=== Space ===
=== Space ===
{{Draft|Required storage space should be moved to the hardware section and the partitioning seems a bit out of place here.}}


'''This means amount of available space in disk partitions to perform a kind of install''' and of course will depends of type and meaning of your desired install, this are the recommended sizes but depends of the BIOS/UEFI supported you must perform and read the [[Alpine_and_UEFI#Alpine_disk_layout_for_UEFI|Alpine disk layout for UEFI/BIOS at Alpine and UEFI]] wiki page.
A default installation of Alpine requires at least 1GB of free space. You can see various partition configurations and their sizes on [[Alpine_and_UEFI#Alpine_disk_layout_for_UEFI|Alpine disk layout for UEFI/BIOS at Alpine and UEFI]] wiki page.
 
{| class="wikitable"
|-
! Minimum sizes !! Partition for BOOT (<code>/boot</code>) !! Partition for ROOT (<code>/</code>) !! Partition for HOME (<code>/home</code>) !! Partition for SWAP (<code>N/A</code>)
|-
| base only || 100 Megs || 500 Megs || 1 Gigs || Optional
|-
| default server || 200 Megs || 2 Gigs || 2 Gigs || 4 Gigs
|-
| default desktop || 250 Megs || 12 Gigs || 80 Gigs || 8 Gigs
|-
| mail server || 200 Megs || 20 Gigs || 20+ Gigs || 8 Gigs
|-
| web server || 200 Megs || 10 Gigs || 20+ Gigs || 8 Gigs
|}


= See Also =
= See Also =


# [[Installation]]
* [[Installation]]
# [[Alpine_newbie#Install|Alpine_newbie Install section]]


[[Category:Installation]]
[[Category:Installation]]
[[Category:Hardware]]


__FORCETOC__
__FORCETOC__

Latest revision as of 10:22, 7 July 2024

This page will tell you what requirements you will need to use the Alpine Linux operating system:

Hardware requirements

For installation and usage consider that Alpine can run on several kinds of devices, from personal computers to video game consoles, and as such you must verify the details below:

  • CPU architecture
  • Memory
  • Storage
  • Peripherals

Architectures

CPU architecture is an instruction set design that defines how a processor is used by software. Widely used across desktops and servers are x86 (mostly i686) and x86_64 (also known as amd64). There are other supported computer architectures that are not "x86", like mainframes, servers, and embedded devices (such as routers like Sonicwall and Cisco ones). The table below represents architectures supported by Alpine:

Supported architecture Available since Description
x86_64 all Widely spread AMD64 compatible 64-bit x86 instruction set.
x86 all i686 compatible (or later) CPUs with at least CMOV and SSE2
ppc64le v3.6 For PowerPC devices with pure little-endian mode, mostly for POWER8 and POWER9
armhf v3.0 A 32-bit ARM instruction set with hard-float point extension.
armv7 v3.9 The 32-bit ARM only execution state of the ARMv7 devices machines.
aarch64 v3.5 The 64-bit ARM only execution state of the ARMv8+ device machines..
s390x v3.6 For IBM mainframes, especially IBM Z and IBM LinuxONE servers.
riscv64 v3.20

Memory

This material is work-in-progress ...

Most of these numbers seem to be guessed, if not outright fabricated for non x86* architectures.
(Last edited by WhyNotHugo on 7 Jul 2024.)

Below are shown minimum RAM amounts for various installation types and phases:

Target Arch Minimum RAM to start Minimum RAM to install Minimum RAM for GUI desktop Enough for GUI work
x86_64 128 Megs 320 Megs 512 Megs 8 Gigs
x86 96 Megs 128 Megs 320 Megs 3 Gigs
ppc64le 128 Megs 256 Megs 2 Gigs 8 Gigs
armhf 256 Megs 512 Megs 1 Gigs 6 Gigs
armv7 256 Megs 512 Megs 1 Gigs 6 Gigs
aarch64 256 Megs 512 Megs 2 Gigs 8 Gigs
s390x 128 Megs 256 Megs 2 Gigs N/A

Storage

This means any external or internal storage device that can be added after or before installation to use by the Alpine Linux system.

PATA and SATA hard disk drives are supported, as well as any USB or SD card that can be detected by the Linux during installation.

Peripherals

This means any external or internal device that can be added before or after installation and detected by Alpine Linux. The peripherals that are supported depends on the current version of the Linux kernel.

Almost any GPU is supported, but certain features and 3D acceleration might depend on MESA drivers:

  • Intel: Most Intel chips since approximately 2001 should work with the exception of PowerVR-based chips (such as GMA 500, GMA 600, GMA 3600, GMA 3650)
  • ATI/AMD, only Radeon series with exception of recent last two years, Rage r128/mach64 series are unsupported.
  • Nvidia: support for Nvidia GPUs is limited since their drivers are proprietary and built for GNU libc. Nouveau drivers are available as free alternative.
  • 3DfX, S3 Savage, SiS, VIA, and Matrox are all completely unsupported since kernel 6.3 (Alpine 3.18 was the most recent version that had even the slimmest chances of these devices working)

Software requirements

Media

Alpine boot images are provided on downloads page or on a mirror

The images should be verified as in Installation, to ensure the file wasn't corrupted during transfer.

Booting

The following table describes supported firmware types, for more information please check Alpine and UEFI wiki page.

Supported Arch Supported firmware Supported Types
x86_64 Coreboot, Vendor/OEM BIOS, UEFI
x86 Coreboot, Vendor/OEM BIOS, UEFI
ppc64le Coreboot, Vendor/OEM UEFI
armhf Uboot, Vendor/OEM UEFI
armv7 Uboot, Vendor/OEM UEFI
aarch64 Vendor/OEM UEFI
s390x Vendor/OEM unknown

Space

This material is work-in-progress ...

Required storage space should be moved to the hardware section and the partitioning seems a bit out of place here.
(Last edited by WhyNotHugo on 7 Jul 2024.)

A default installation of Alpine requires at least 1GB of free space. You can see various partition configurations and their sizes on Alpine disk layout for UEFI/BIOS at Alpine and UEFI wiki page.

See Also