System wide and admin settings¶
Hardware¶
Alternative kernels, headers, overlays, bootenv
Alternative kernels¶
Use alternative kernels
Switching between different kernel versions can significantly impact the functionality of your device. A newer or older kernel may introduce changes to hardware compatibility, drivers, and system stability. Some features may stop working, while others may improve or be reintroduced.
Kernel changes carry inherent risks!
- A mismatched or incompatible kernel may result in boot failures, rendering the system unresponsive.
- Certain peripherals or hardware components (e.g., Wi-Fi, GPU acceleration, or power management) may no longer function correctly.
- Custom configurations or third-party modules might need to be recompiled or adjusted to work with the new kernel.
Precautions Before Switching Kernels Before switching kernels, it is strongly recommended to:
- Back up your system to prevent data loss.
- Verify compatibility of your hardware and essential drivers with the target kernel version.
- Keep a rescue method available, such as a bootable SD card / USB drive or serial console access, to recover the system if necessary.
Recovery Steps if Boot Fails If your device fails to boot after a kernel change, you may need to:
- Revert to a previous working kernel using recovery options.
- Use a serial console or debug mode to diagnose the issue.
- Reinstall the system if no recovery options are available.
Exercise caution when switching kernels, especially on production systems or devices with limited recovery options.
Status: Stable
Architecture: x86-64 aarch64 armhf riscv64
Maintainer: @armbian
Documentation: Link
armbian-config --cmd KER001
Kernel Headers¶
Install Linux headers
Kernel headers are files required to build modules (drivers) or software that interfaces directly with the Linux kernel. Installing headers ensures compatibility when compiling custom drivers, DKMS modules (like ZFS, WireGuard), or updating third-party software that requires access to kernel internals. The installed headers match your running kernel version and are critical for system extensions and hardware support.
Status: Stable
Architecture: x86-64 aarch64 armhf riscv64
Maintainer: @armbian
Documentation: Link
armbian-config --cmd HEAD01
Remove Linux headers: | |
---|---|
Device Tree Overlays¶
Manage device tree overlays
Device Tree Overlays allow you to dynamically modify the Linux device tree at runtime, without rebuilding the kernel. They are used to enable or configure specific hardware features (like GPIO pins, I²C, SPI, sensors, displays) on single-board computers. Overlays are small snippets that can add, change, or remove parts of the hardware description, making it flexible to adapt the system for different peripherals without recompiling the full device tree.
Status: Stable
Architecture: x86-64 aarch64 armhf riscv64
Maintainer: @armbian
Documentation: Link
armbian-config --cmd DTO001
Odroid Boards Config¶
Select Odroid board configuration
Status: Preview
Architecture: armhf
armbian-config --cmd ODR001
Boot Environment¶
Edit the boot environment
Edit the boot environment allows you to modify critical boot settings stored in /boot/armbianEnv.txt
. You can adjust options such as root filesystem location, kernel parameters, overlays, boot targets, or enable advanced features like early serial console. This is essential for fine-tuning hardware support, troubleshooting, or optimizing system startup behavior.
Status: Stable
Architecture: x86-64 aarch64 armhf riscv64
Maintainer: @armbian
Documentation: Link
armbian-config --cmd BOOT01
Storage¶
Install to internal media, ZFS, NFS, read-only rootfs
Architecture: x86-64 aarch64 armhf riscv64
Maintainer: @armbian
Documentation: Link
Install¶
This section provides an option to transfer the live running Armbian system from an SD card to internal storage devices such as eMMC, SATA, NVMe, or USB drives. It prepares the target storage, copies the active system, adjusts bootloader settings, and ensures the system can boot independently without requiring reinstallation.
Status: Preview
Architecture: x86-64 aarch64 armhf riscv64
Maintainer: @armbian
Documentation: Link
armbian-config --cmd STO001
Read Only FS¶
Enable read only filesystem
Read-only filesystem is enabled using overlayroot, a utility that places a temporary writable layer over the system root filesystem. Changes made during runtime are redirected into RAM or an alternative writable storage, while the underlying system remains untouched. This ensures that after a reboot, the system returns to a clean original state. It’s ideal for kiosks, appliances, SD card-based systems, and scenarios where long-term filesystem durability and recovery are critical.
Status: Stable
Architecture: x86-64 aarch64 armhf riscv64
Maintainer: @armbian
Documentation: Link
armbian-config --cmd ROO001
Disable read only filesystem: | |
---|---|
NFS¶
Enable Network filesystem (NFS) support
Status: Stable
Architecture: x86-64 aarch64 armhf riscv64
Maintainer: @armbian
Documentation: Link
armbian-config --cmd NETF01
Disable Network filesystem (NFS) support: | |
---|---|
NFS server¶
Enable network filesystem (NFS) daemon
Status: Stable
Architecture: x86-64 aarch64 armhf riscv64
Maintainer: @armbian
Documentation: Link
armbian-config --cmd NETF04
Configure network filesystem (NFS) daemon: | |
---|---|
Remove network filesystem (NFS) daemon: | |
---|---|
Show network filesystem (NFS) daemon clients: | |
---|---|
Find NFS servers¶
Find NFS servers in subnet and mount shares
Status: Stable
Architecture: x86-64 aarch64 armhf riscv64
Maintainer: @armbian
Documentation: Link
armbian-config --cmd NETF09
Show and manage NFS mounts: | |
---|---|
ZFS¶
ZFS filesystem - enable support
ZFS is an advanced, high-performance file system and volume manager designed for data integrity, scalability, and ease of use. It offers features like copy-on-write snapshots, native compression, data deduplication, automatic repair, and efficient storage pooling. Originally developed by Sun Microsystems, ZFS is ideal for handling large amounts of data reliably with minimal maintenance.
When enabling ZFS support, Armbian checks if the running kernel can support ZFS, installs matching kernel headers if necessary, and builds the ZFS DKMS (Dynamic Kernel Module Support) module automatically.
Status: Stable
Architecture: x86-64 aarch64 armhf riscv64
Maintainer: @armbian
Documentation: Link
armbian-config --cmd ZFS001
Key Features¶
Data Integrity¶
- Copy-on-Write (CoW): Prevents data corruption by never overwriting live data.
- Checksumming: Detects and corrects silent data corruption (bit rot).
Storage Management¶
- Pooled Storage: Eliminates the need for traditional partitions; all storage is managed dynamically.
- Snapshots & Clones: Creates instant backups without using extra storage.
Performance & Scalability¶
- Efficient Compression & Deduplication: Reduces storage usage without performance loss.
- Dynamic Striping & Caching: Distributes data across multiple disks for optimized read/write speeds.
Advanced Security¶
- Native Encryption: Supports dataset-level encryption for secure data storage.
- RAID-Z: A superior RAID alternative that prevents write-hole issues.
ZFS filesystem - remove support: | |
---|---|
SSH daemon¶
Manage SSH daemon options, enable 2FA
Native¶
Disable root login
Manage native SSH daemon allows you to configure SSH server settings such as login security, authentication methods, and connection restrictions. It also enables setting up Two-Factor Authentication (2FA) to further secure SSH access using time-based codes (TOTP), adding an extra layer of protection beyond passwords.
Status: Stable
Architecture: x86-64 aarch64 armhf riscv64
Maintainer: @armbian
Documentation: Link
armbian-config --cmd ACC001
Enable root login: | |
---|---|
Disable password login: | |
---|---|
Enable password login: | |
---|---|
Disable Public key authentication login: | |
---|---|
Enable Public key authentication login: | |
---|---|
Disable OTP authentication: | |
---|---|
Enable OTP authentication: | |
---|---|
Generate new OTP authentication QR code: | |
---|---|
Show OTP authentication QR code: | |
---|---|
Disable last login banner: | |
---|---|
Enable last login banner: | |
---|---|
Containerised¶
Sandboxed & containerised SSH server
Sandboxed & containerised SSH server allows ssh access without giving keys to the entire server. Giving ssh access via private key often means giving full access to the server. This container creates a limited and sandboxed environment that others can ssh into. The users only have access to the folders mapped and the processes running inside this container.
Status: Stable
Architecture: x86-64 arm64
Maintainer: @igorpecovnik
Documentation: Link
armbian-config --cmd SSH001
ssh username@<your.IP> -p 2222
- Install directory:
/armbian/openssh-server
- Configuration directory:
/armbian/openssh-server/config
- Shared storage directory:
USER_DEFINED
Bash | |
---|---|
Remove sandboxed SSH server: | |
---|---|
Purge sandboxed SSH server with data folder: | |
---|---|
Shell and MOTD¶
Change shell, adjust MOTD
Change shell¶
Change shell system wide to ZSH
ZSH is a powerful and customizable shell designed to be an enhanced replacement for BASH. When combined with Oh My Zsh, which is integrated in armbian-zsh
, it offers an extensive plugin system, beautiful themes, and productivity features like autosuggestions, syntax highlighting, and easier navigation.
Status: Stable
Architecture: x86-64 aarch64 armhf riscv64
Maintainer: @armbian
Documentation: Link
armbian-config --cmd SHELL1
Change shell system wide to BASH: | |
---|---|
Adjust MOTD¶
Adjust welcome screen (motd)
Status: Stable
Architecture: x86-64 aarch64 armhf riscv64
Maintainer: @armbian
Documentation: Link
armbian-config --cmd MOTD01
OS updates and distribution upgrades¶
Status: Active
Firmware¶
Enable Armbian firmware upgrades
Enable Armbian firmware upgrades manages whether the Armbian firmware (kernel + u-boot + firmware) packages are held or unheld in the package manager. By removing or setting the hold, it controls if firmware updates are applied automatically through regular apt update
and apt upgrade
processes. This allows users to either freeze the firmware version for stability or enable updates for improved hardware support.
Status: Stable
Architecture: x86-64 aarch64 armhf riscv64
Maintainer: @armbian
Documentation: Link
armbian-config --cmd UPD001
Disable Armbian firmware upgrades: | |
---|---|
Rolling¶
Switch system to rolling packages repository
The daily rolling repository offers frequently updated packages directly from development branches. It provides access to the latest features, bug fixes, and hardware support improvements but may introduce instability or regressions. This channel is intended for testing, development, and users who need the newest updates at the cost of reduced stability.
Status: Stable
Architecture: x86-64 aarch64 armhf riscv64
Maintainer: @armbian
Documentation: Link
armbian-config --cmd ROLLIN
Stable¶
Switch system to stable packages repository
The stable repository provides thoroughly tested packages intended for production use. Updates from this channel prioritize stability, long-term reliability, and minimal risk, ensuring systems remain secure and operational without unexpected changes. Only critical bug fixes and essential improvements are introduced after extensive testing.
Status: Stable
Architecture: x86-64 aarch64 armhf riscv64
Maintainer: @armbian
Documentation: Link
armbian-config --cmd STABLE
Docker images¶
Enable automating Docker container base images updating
Watchtower is a lightweight tool that automatically monitors and updates running Docker containers whenever a new image version becomes available. It checks remote registries for updated images, pulls them, stops the old containers, and restarts them using the updated versions — all without manual intervention. Watchtower is fully configurable, allowing you to control update frequency, select specific containers, and manage notification settings.
Status: Stable
Architecture: x86-64 arm64
Maintainer: @igorpecovnik
Documentation: Link
armbian-config --cmd WTC001
Disable automating Docker container base images updating: | |
---|---|
Packages¶
Enable automatic package updates.
Unattended upgrades automatically install security updates and important package updates on your system without requiring manual intervention. It helps keep your system secure, stable, and up-to-date by silently applying patches. The behavior is fully configurable — you can control which packages are upgraded, set reboot options, and customize notifications or logging.
Status: Stable
Architecture: x86-64 aarch64 armhf riscv64
Maintainer: @armbian
Documentation: Link
armbian-config --cmd UNAT01
Configure automatic package updates: | |
---|---|
Disable automatic package updates: | |
---|---|