Difference between revisions of "Bering-uClibc 7.x"

From bering-uClibc
Jump to: navigation, search
(Development History)
(Main Features)
Line 5: Line 5:
 
The key characteristics of [[Bering-uClibc 7.x]] are:
 
The key characteristics of [[Bering-uClibc 7.x]] are:
 
* Based on a recent long-term release of the Linux Kernel.
 
* Based on a recent long-term release of the Linux Kernel.
* Easy-of-use
+
* Easy-to-use
 +
<!--** Provided with simple USB bootable images of a basic working system-->
 
** Hardware detection during boot, necessary modules enabling the hardware will be loaded automatically.
 
** Hardware detection during boot, necessary modules enabling the hardware will be loaded automatically.
 
** Load modules when needed for various Packages - e.g. netfilter modules for <code class="filename">shorewall[6]</code>.
 
** Load modules when needed for various Packages - e.g. netfilter modules for <code class="filename">shorewall[6]</code>.
** Check for and receive updates with command line utility (<code class="filename">upgrade</code>) or Web GUI (<code class="filename">webconf</code>) from the Packages repository.  
+
** Check for and receive updates with command line utility (<code class="filename">upgrade</code>) or Web GUI (<code class="filename">webconf</code>) from the Packages repository.
 +
 
 
* Targeted to run on industry standard devices even with non-x86 processors.[[Image:Bering-uClibc_5.0-prealpha_armv5.png|center|frame|alt=QEMU ARM Screenshot|Bering-uClibc 5.0-prealpha running on an emulated ARM processor]]
 
* Targeted to run on industry standard devices even with non-x86 processors.[[Image:Bering-uClibc_5.0-prealpha_armv5.png|center|frame|alt=QEMU ARM Screenshot|Bering-uClibc 5.0-prealpha running on an emulated ARM processor]]
 
* Designed to perform well on relatively low-specification hardware. In particular:
 
* Designed to perform well on relatively low-specification hardware. In particular:

Revision as of 21:01, 4 October 2020

Overview

Bering-uClibc is one of the branches of the LEAF (Linux Embedded Appliance Framework) project, delivering on LEAF's ambition to provide a secure, feature-rich, customizable embedded Linux network appliance for use in a variety of network topologies. Although it can be used in other ways, its primary goal is as a Internet gateway, BRAS, router, firewall and wireless access point.

Main Features

The key characteristics of Bering-uClibc 7.x are:

  • Based on a recent long-term release of the Linux Kernel.
  • Easy-to-use
    • Hardware detection during boot, necessary modules enabling the hardware will be loaded automatically.
    • Load modules when needed for various Packages - e.g. netfilter modules for shorewall[6].
    • Check for and receive updates with command line utility (upgrade) or Web GUI (webconf) from the Packages repository.
  • Targeted to run on industry standard devices even with non-x86 processors.
    QEMU ARM Screenshot
    Bering-uClibc 5.0-prealpha running on an emulated ARM processor
  • Designed to perform well on relatively low-specification hardware. In particular:
    • The system runs from an in-memory filesystem. Disk storage is only required for booting and for storing configuration settings.
    • The uClibc-ng C library is used in place of the GNU C Library since uClibc-ng is much smaller in size.
    • Considerable use is made of BusyBox utilities as replacements for larger applications.
  • Focussed on providing excellent networking facilities.
  • Designed to have high fault tolerance:
    • There are no writes on HDD/flash during work (except saving configurations during maintenance) - so a power failure will not break file system.
    • Corrupted/erased config file, or even 'rm -rf /' isn't a problem - changes are stored permanently only when user requires that, and reboot will restore all as it was before.
    • Enabled by default watchdog, reboot on kernel panic and kernel soft-lockup detection will help to have minimum downtime of router.
    • Backup scripts will help to restore system state on storage failure/operator mistake.

Development History

Bering-uClibc 7.x is basically Bering-uClibc 6.x brought up to date with the latest versions of the main software components and with reworked toolchain.

Bering-uClibc 7.0.0 provides in particular:

  • gcc update to 8.3.0
  • The Linux kernel has been upgraded to 5,4.x
  • The uClibc library has been upgraded to uClibc-ng 1.0.34
  • syslog-ng has been replaced by rsyslog

Version Changelog


Known Issues

Further Documentation

For further information see: