Skip to content

Alternative install vs standard

Peter J. Mello edited this page Jun 12, 2022 · 11 revisions

The two types of Entware installations

Standard vs. Alternative

There are two levels of native filesystem integration supported by Entware, each with its own installation script: standard (or generic) and alternative. The fundamental distinction between the two is found in the management of user/group accounts. In the standard installation, Entware links to and uses the device firmware's user account database. In alternative installations, however, Entware's users/groups are independent (and sometimes duplicates) of the firmware's.

Alternative installations have their own root user account, whose default password is 12345. To edit user accounts, their passwords and group memberships, Entware includes in its integrated BusyBox utilities bundle its own copies of the users/passwd/groups, adduser/moduser/deluser and addgroup/modgroup/delgroup binaries and read/write account information to and from files kept within the Entware filesystem instead of those used by the firmware. The primary advantage of an alternative installation comes not from the separation of these users and groups from the firmware but rather that they are persistent, since most devices do not store theirs in non-volatile memory and revert to preset defaults at the start of each boot cycle.

The ability to add users and groups that survive a power loss or reboot is useful for packages that require dedicated system accounts in order to run, such as znc, stubby, tor and gerbera. For some devices, notably those that run Android as well as Keenetic routers, alternative installation is the only known method to have a working Entware.

Entware installation scripts for all supported architectures

Architecture Kernel Version GNU C Library Version Standard Install Script Alternative Install Script
armv7sf 2.6 2.23 generic.sh alternative.sh
x86 2.6 2.23 generic.sh alternative.sh
x86_64 3.2 2.27 generic.sh alternative.sh
armv5sf 3.2 2.27 generic.sh alternative.sh
armv7sf 3.2 2.27 generic.sh alternative.sh
mipssf 3.4 2.27 generic.sh alternative.sh
mipselsf 3.4 2.27 generic.sh alternative.sh
aarch64 3.10 2.27 generic.sh alternative.sh

Notes

  • To gain the majority of advantages offered by alternative installation, it is recommended to install an Entware package which provide a standalone SSH server, e.g. dropbear or openssh-server, and configure it to run at boot on a non-standard port. Doing this combined with an alternative installation fixes console screen blinking on ARM-based QNAP NASes, for example.
  • The Entware busybox package can also be installed on standard (generic) installations; it has many utilities that are commonly missing on the device's firmware that can be useful. Use caution, though, since the BusyBox version from Entware will almost certainly also contain many utilities which are present in the firmware and can, in some rare cases, interfere with firmware. This is usually because the BusyBox provided by the firmware and the Entware version are compiled with different options that control default behaviors, and can sometimes be resolved by manipulating the PATH environment variable so that none of the Entware directories appear ahead of their firmware counterparts.
  • The technical differences between standard and alternative installations are quite minor and simple to understand. Standard installations symlink their /opt/etc/passwd and /opt/etc/group files to the firmware's /etc/passwd and /etc/group files, while alternative installs create normal files for both that live in the Entware filesystem. This distinction also applies to the shadow file and some others.
Clone this wiki locally