3.2 General settings

HOSTNAME

Default Setting: HOSTNAME='fli4l'

At the very beginning you should choose a name for your fli4l router.

PASSWORD

Default Setting: PASSWORD='fli4l'

This password is needed for logging on to the router--regardless whether you use a keyboard attached to the router or a remote SSH console (for the latter you will need the sshd package). The minimum password length is 1, the maximum 126 characters.

BOOT_TYPE

Default setting: BOOT_TYPE='hd'

BOOT_TYPE determines the boot medium in the broadest sense and affects the drivers (kernel modules) and start scripts being included in the RootFS. A short description of the boot process for better understanding:

The following values are valid for BOOT_TYPE at the moment:

ls120
Choose this to boot from LS120/240 and ZIP disks.
hd
Choose this to boot from a hard disk. You will find more information in the Documentation of the HD package.
cd
Choose this to boot from CD-ROM. With this setting, the ISO image fli4l.iso will be created which you have to burn onto CD with your favourite CD burning application. Please pay attention to choosing the right driver for your CD drive.
integrated
Choose this if you do not plan to use a conventional boot medium but e.g. want to boot over a network. This setting integrates the OPT archive into the RootFS so the kernel can extract everything at once and does not need not mount a boot medium.
Note: You cannot perform a remote update of your fli4l router in this case.
attached
This setting is similar to integrated but it does not integrate the contents of the OPT archive into the RootFS; rather, the OPT archive is put ``as is'' into the /boot directory. From there it will be extracted during the boot process.
Apart from that, the caveats described for integrated apply to this boot type as well.
netboot
This setting corresponds to integrated. However, the script mknetboot.sh is additionally run to create an image for booting over the local network. Please read the wiki https://ssl.nettworks.org/wiki/display/f/fli4l+und+Netzboot for further information.
pxeboot
Two images are generated, kernel and rootfs.img. These are the two files to be loaded by the PXE bootloader. During execution the local tftp directory may be specified and in addition a subdirectory in the tftp directory (-pxesubdir). Refer to the Wiki here as well: https://ssl.nettworks.org/wiki/display/f/fli4l+und+Netzboot.

Note: How to configure fli4l as a boot-server (pxe/tftp) you can find in the documentation of opt dns_dhcp!

LIBATA_DMA

Default Setting: LIBATA_DMA='disabled'

This options selects if DMA is used for libata based Devices. It is needed for example for incompletely wired IDE to CompactFlash Adapters. Select 'enabled' to use DMA.

MOUNT_BOOT

Default Setting: MOUNT_BOOT='rw'

This variable specifies how to mount the boot medium. There are three possibilities:

rw
 - Read/Write - Writing and reading is possible
ro
 - Read-Only - Only reading is possible
no
 - None - Medium will be unmounted after booting and can then be removed if desired

Some configurations require mounting the boot medium read/write, e.g. if you want to run a DHCP server or if you want the imond log file to be stored on the boot medium.

BOOTMENU_TIME

Default setting: BOOTMENU_TIME='20'

This variable controls how LONG the syslinux boot loader should wait until the default installation is booted automatically.

The OPT_RECOVER variable of the HD package allows you to activate a function which enables you to create a recovery installation from a working installation. This recovery installation can be activated in the boot menu by choosing the recovery version.

If this variable contains the value '0', the syslinux boot loader will wait indefinitely until the user chooses either the default or the recovery installation!

TIME_INFO

Default Setting: TIME_INFO='MEZ-1MESZ,M3.5.0,M10.5.0/3'

Normally, Unix operating systems use the UTC (Coordinated Universal Time) for clocks running under their control, and so does fli4l. The UTC is consistent around the world and has to be converted to local time before use. By using TIME_INFO, you provide the necessary information for fli4l about your time zone, its difference to UTC, and about daylight saving time. Your local hardware clock must be set to UTC (corresponds to London Standard Time) in order to make these settinge effective. Alternatively, you may use the chrony Package which allows fli4l to synchronize its clock with an external time server (time servers always provide the current time in UTC).

The meaning of the possible settings TIME_INFO are as follows:

        TIME_INFO='MEZ-1MESZ,M3.5.0,M10.5.0/3'

Normally you do not have to touch these settings, unless your fli4l router resides in another time zone. In this case you have to adjust these settings accordingly. In order to do this properly, it is helpful to take a look at the specification of the TZ environment variable which can be found at the following URL:

http://pubs.opengroup.org/onlinepubs/009695399/basedefs/xbd_chap08.html

KERNEL_VERSION

Chooses the version of the kernel to be used. According to the contents of this variable, the kernel and the kernel modules are selected from img/kernel-<kernel version>.<compression extension> and opt/files/lib/modules/<kernel version>, respectively. You can also use the suffix ``-virt'' for newer kernels which activates support for virtual machines. However, these versions require at least a Pentium processor with support for PAE.

KERNEL_BOOT_OPTION

Default Setting: KERNEL_BOOT_OPTION=''

The contents of this variable is appended to the kernel's command line defined in syslinux.cfg. Some systems require 'reboot=bios' for proper rebooting, i.e. WRAP systems.

COMP_TYPE_ROOTFS

Default setting: COMP_TYPE_ROOTFS='xz'

This variable selects the compression method to be used for the RootFS archive. Possible values are 'xz', 'lzma', and 'bzip2'.

COMP_TYPE_OPT

Default setting: COMP_TYPE_OPT='xz'

This variable selects the compression method to be used for the OPT archive. Possible values are 'xz', 'lzma', and 'bzip2'.

POWERMANAGEMENT

Default Setting: POWERMANAGEMENT='acpi'

The kernel supports different flavours of power management: the somewhat aged APM and the newer ACPI. This variable lets you choose which flavour is to be used. Possible values are 'none' (no power management), 'acpi', and the two APM variants 'apm' and 'apm_rm'. The latter uses a special processor mode before switching the router off.

FLI4L_UUID

Default Setting: FLI4L_UUID=''

This variable contains an universally unique identifier (UUID) which is used to point to a place where persistent data can be stored, e.g. on a USB stick. The UUID can be generated on any Linux system (e.g. on the fli4l router) by executing 'cat /proc/sys/kernel/random/uuid'. Each execution of this command above produces a new UUID which you can use in FLI4L_UUID variable. If you create a directory on a persistent medium by the name of this UUID, this directory will be used to store configuration changes as well as persistent run-time data (e.g. DHCP leases). However, the corresponding packages has to support this persistence mechanism (see the documentation to check this). Typically, use 'auto' for the according storage location, instead of a hard-coded path.

If fli4l already stored data using this mechanism before configuring an UUID and creating the directory, this data can be found under /boot/persistent. In this case, you will have to manually move the data to the new location. We advice that you generate and configure the UUID at the very beginning, avoiding the migration later on.

Additionally, please note that MOUNT_BOOT='rw' is needed if the storage directory is located on the /boot partition.

We suggest using the /data partition (with the UUID-named directory being a top-level directory there) or an USB stick for the storage location of persistent configuration and run-time data. The file systems allowed are VFAT or, if you use OPT_HD all read-writable filesystems supported there.

IP_CONNTRACK_MAX

Default Setting: IP_CONNTRACK_MAX=''

This variable enables you to change the maximum number of simultaneously existing connections. Normally, a sensible value for this setting is computed automatically, based on the amount of your router's physical RAM. Table 3.2 shows the defaults used.


Table 3.2: Automtically generated maximum number of simultaneous connections
RAM in MiB simultaneous connections
16 1024
24 1280
32 2048
64 4096
128 8192

If you use file sharing programs behind or on the router and your router has only little RAM, you will hit the maximum number of simultaneous connections fastly. This will prevent further connections to be established.
This causes error messages as

        ip_conntrack: table full, dropping packet

or

        ip_conntrack: Maximum limit of XXX entries exceeded

The variable IP_CONNTRACK_MAX changes the maximum number of simultaneously existing connections to a fixed value. Each possible connection consumes 350 bytes of RAM, which cannot be used for other things. If you e.g. choose the value '10000', you reserve about 3,34 MB RAM that are lost for any other usage (kernel, RAM disks, programs).

If your router has 32 MiB RAM, it should not be much of a problem to reserve 2 or 3 MiB for the ip_conntrack table. If only 16 MiB RAM or less are available you should be more conservative to prevent your router from running out of RAM.

The setting currently being used can be display on the console by executing

        cat /proc/sys/net/ipv4/ip_conntrack_max

and can be set on-the-fly by executing

        echo "XXX" > /proc/sys/net/ipv4/ip_conntrack_max

where XXX denotes the number of entries. The entries of the IP_CONNTRACK table can be displayed on the console by executing

        cat /proc/net/ip_conntrack

and can be counted by executing

        cat /proc/net/ip_conntrack | grep -c use

LOCALE

Default setting: LOCALE='de'

Meanwhile, some fli4l components support multiple languages, for example the console menu and the Web GUI. This variable lets you choose your preferred language. In addition, some components support a private setting to override this global setting if necessary. English is used as a fallback if the language chosen is not supported for some component.

KEYBOARD_LOCALE='auto' tries to find a keyboard layout that is compatible with the LOCALE setting.

By now, the following values are possible: de, en, fr.

© 2001-2019 The fli4l-Team - 28 April 2019