User Tools

Site Tools


NEMS Linux 1.4

NEMS 1.4 was a complete rebuild of NEMS Linux. NEMS 1.3 was an upgraded 1.2. 1.2 was an upgraded 1.1. But NEMS Linux 1.4 was the first generation of a new build architecture for NEMS Linux, being re-built from the ground up.

As the initiator of the next generation of NEMS Linux, version 1.4 was a highly ambitious build. The goal for the NEMS 1.4 release cycle was two-fold:

  1. Become much more current with software versions, particularly migrating NEMS off Nagios 3 and onto Nagios 4, and deprecating software that was holding NEMS back, such as Check_MK Multisite.
  2. Port NEMS Linux to other platforms, beginning with other Raspberry Pi systems, the ODROID XU4, plus other single board computers.

NEMS Linux 1.4 Supports:

  • Raspberry Pi 3/3B+
  • Raspberry Pi 2
  • Raspberry Pi 1
  • Raspberry Pi Zero W
  • Pine A64+/A64
  • Pine A64-LTS/SOPine
  • Pine Rock64

Release Dates:

  • June 10, 2018 - NEMS 1.4 for Raspberry Pi 3/3B+.
  • June 17, 2018 - NEMS 1.4 official support for Raspberry Pi Zero W (NEMS 1.4.1 release).
  • June 24, 2018 - NEMS 1.4 official support for Raspberry Pi 2 (no new image).
  • June 25, 2018 - NEMS 1.4 official support for Pine A64+/A64.
  • August 25, 2018 - NEMS 1.4 for ODROID XU4.
  • August 26, 2018 - Pine A64-LTS.
  • September 1, 2018 - Pine Rock64.

This changelog is a list of the major revisions culminated during this NEMS release cycle. To see the full list of Git commits, please also check out the web site.

NEMS 1.4 Patrons

I'd like to thank all of our Patrons for your continued support of NEMS Linux development.

Originally the next generation NEMS Linux was not to be ported to the Raspberry Pi until 1.5, but thanks to NEMS Patron support NEMS 1.4 was released on the Raspberry Pi Zero W and higher, along with the other platforms it has been ported to!

Here is a list of those Patrons who kicked in that little bit extra to have their name included in the changlogs:

  • Patrick Kersten
  • Dave Harman
  • Bill Marshall
  • Aaron Tringle

Want your name on this list? Become a Patron

NEMS 1.4

  • Software Upgrade: NEMS 1.4 uses Nagios Core 4.3.4.
  • Linux Kernel upgraded to 4.14.44-v7+.
  • You can now access your user home folder via SMB at \\nems.local\Home with both read and write access. This is ideal for transferring your backup.nems file from a previous deployment.
  • New Platforms at Initial Release: Raspberry Pi Zero W, Raspberry Pi 1, Raspberry Pi 2, more coming soon.
  • Software Upgrade: NEMS 1.4 supports a larger number of check commands out of the box than previous releases. These include SNMP, WMIC, LDAP, as well as the traditional NRPE-based plugins.
  • New Feature: Added new notification option notifications by Pushover as per kevinds.
  • Bug Fix: notify-host-by-email was logging to /var/log/sendmail instead of the correct /var/log/sendemail. Fixed. Also patched default database as per baggins.
  • Tweak: Monitorix cronjobs modified to no longer create mail output.
  • New Feature: Screen connected to NEMS server (via HDMI) now shows hostname and IP address of NEMS server rather than getty login prompt. It also includes basic stats like CPU usage, Disk Usage and Active Sessions. Users may still access the login prompt if needed (as is the case on a Raspberry Pi Zero W to configure the WiFi connection) by pressing CTRL-ALT-F2.
  • Tweak: Grub menu now hidden on boot on platforms that use Grub (eg., CL100).
  • Bug Fix: Fixed Monitorix repository to use https.
  • New Feature: Added Cockpit 0.99.
  • Tweak: All Nagios configs moved out of “nagios3” folders.
  • Software Upgrade: Upgraded check_mk-livestatus to 1.4.0p31, compiled for Nagios 4.
  • Software Upgrade: Upgrade rpimonitor to 2.12.
  • Software Upgrade: NagVis upgraded to 1.9.8.
  • Software Upgrade: Monitorix upgraded to 3.10.1.
  • New Feature: Adagios
  • Deprecated Feature: Check_MK Multisite
  • Issues with monit not being accessible via the web browser in NEMS 1.3.x have been fixed.
  • Low-power SBCs such as the Raspberry Pi Zero W will by default have all optional services (ie., Webmin, Monitorix) disabled by default, whereas more powerful boards (such as Raspberry Pi 3) will have them all enabled by default. This can always be changed after initialization by visiting NEMS SST.

Rolling Updates 1.4

  • June 11, 2018 - Fix location of Nagios lock file, which was causing systemd to be unable to reload Nagios config upon changes.
  • June 12, 2018 - Fix memory leak caused by yesterday's patch. Monit was reading the wrong PID file and therefore launching another instance of Nagios… until the system ran out of memory.
  • June 12, 2018 - nems-mailtest was looking for the old config file from NEMS 1.3.1 which caused a bunch of PHP errors (as the file wasn't found). Fixed.
  • June 13, 2018 - check_nrpe got installed to an old default folder (not the correct libexec folder). Fixed with a symlink. Thanks to Ron Taylor for pointing out the issue.
  • June 13, 2018 - NEMS 1.4 now automatically installs critical OS security patches without notifying.
  • June 14, 2018 - RPi-Monitor was showing undefinedMHz under CPU frequencies as per ronjtaylor. Fixed.
  • June 17, 2018 - platform-name in nems-info updated to use local hw_model log rather than always defaulting to the online API. This fixes a problem with Raspberry Pi Zero W giving an error when it can't reach the API while trying to display the model prior to setting up WiFi.

Rolling Updates 1.4.1

  • June 17, 2018 - NEMS 1.4.1 rolling release introduces official support for Raspberry Pi Zero W. All NEMS 1.4 systems will automatically roll up to 1.4.1 (no need to reinstall).
  • June 17, 2018 - Made some changes to the way NEMS Migrator's Restore feature handles NEMS 1.4.1.
  • June 18, 2018 - Fixed a glitch in NEMS Migrator which was causing Nagios to restart every time a backup occurred (ie., every 5 minutes). As reported by kd4pyr
  • June 20, 2018 - Available version was being reported based on the old location in nems-www. Fixed to use Migrator source.
  • June 20, 2018 - Modify the ZRAM loader so it leaves everything as is should ZRAM be unavailable (which is the case for example on the Pine A64+ build).
  • June 21, 2018 - Fixed some NEMS 1.4.1 servers reporting as the version.
  • June 21, 2018 - Fixed Nagios unable to auto-archive log file /var/log/nagios/nagios.log
  • June 24, 2018 - Raspberry Pi 2 officially supported.
  • June 25, 2018 - Port to Pine A64+/A64 released.
  • June 25, 2018 - Create Pine64 HWID based on eth0 Mac Address since CPU Serial Number is not available within the OS.
  • June 27, 2018 - Build 2 released for Pine A64+/A64. The first build had trouble booting. Build 2 should fix this.
  • July 4, 2018 - Fix default Nagios config for Pine64 build.
  • July 8, 2018 - A previously un-spotted bug in NEMS Anonymous Stats was fixed: NEMS 1.4 was still trying to find the host and service count in the old 1.3.x conf files (which don't exist), so all NEMS 1.4+ servers were reporting 0 hosts and 0 services. Fixed.
  • July 16, 2018 - Output a blank username instead of an error if nems-info username is initiated before a nems-init (username doesn't yet exist).
  • July 16, 2018 - Reduce the possibility of false negatives when detecting Internet connectivity by failing over to a second ping request. This impacts the nems-info online command.
  • July 16, 2018 - Hide error output from nems-init when no files exist to be moved to the new home folder.
  • July 16, 2018 - Initializing NEMS resulted in the default test configuration files rather than the user configuration files. Fixed.
  • July 16, 2018 - Force nems-restore to abort if the path to the backup.nems file is not specified. Suggests relative path as possible desired path.
  • July 16, 2018 - Fix minor typos in the comments generated by NEMS Migrator in the header of the reconciled config files.
  • July 16, 2018 - Significant issue fixed where migrated users could not generate configs in NEMS NConf, as initially reported by sbrock, confirmed by automationgeek, with a ton of community feedback and assistance. nems-restore, nems-init and NEMS NConf's default database have all been patched.
  • July 16, 2018 - Add rudimentary error handling to nems-mailtest so users have a better idea why it's failing if it is failing.
  • July 17, 2018 - New command nems-support creates a special backup file which contains information required by tech support to assist with NEMS issues.
  • July 18, 2018 - NEMS Anonymous Stats system now sends a log to /var/log/nems/stats.log
  • July 18, 2018 - NEMS Migrator (NEMS 1.4+ only) now reconciles restored data with the sample data prior to importing. This means unused advanced_services, checkcommands and so-on will appear in NEMS Nconf even if the user's backup did not contain them. Thanks to Ron Taylor, Dave Harman, Rick, and others within the NEMS Linux community for pointing out the issue.
  • July 18, 2018 - NEMS Migrator (all versions) now honors parent/child host relationships and restores them correctly.
  • July 19, 2018 - After restoring a backup from the newly updated NEMS Migrator, generating Nagios configs in NEMS NConf would result in all Host default configs check-host-alive being replaced with notify-service-by-pushover. This of course resulted in many blank Pushover notifications every time the server would check the host. Turns out the new version of the misccommands.cfg file, because it contained many more commands, needed to be re-ordered. Rather than NEMS NConf looking for check-host-alive while assigning the check_command, it was selecting the 6th misccommand in the config. This happened to be notify-service-by-pushover. Having re-ordered the misccommands.cfg, generating configs now works as expected, and Pushover notifications are working correctly.
  • July 19, 2018 - Added backup.nems to support.nems, making it easier for support to assist users with nems-restore if needed.
  • July 20, 2018 - New feature: NEMS TV Dashboard - a tactical overview for your server room TVs. Based on work by Morten Bekkelund, Jonas Drange Grønås, IPNett AS, Peter Andersson, Advance AB, Mattias Bergsten, John Carehag, Anders K Lindgren, Misiu Pajor, Lars Michelsen and fnordpojk.
  • July 22, 2018 - Adagios and Nagios Core can both administer scheduled downtime and alert acknowledgements as reported by ronjohntaylor.
  • July 22, 2018 - Nagios now supports Event Handlers as as requested by mcornhill.
  • July 22, 2018 - Adagios interface patched to remove items that do not apply to NEMS (will further work on this in future).
  • July 23, 2018 - Adagios admin settings revamped to allow logged in user to see and manage Nagios even if they'd changed their admin username in NEMS NConf.
  • July 23, 2018 - Created a dummy port listener on Port 9590. This is part of the documentation exercises to demonstrate how to set up a check_tcp service.
  • July 25, 2018 - New options available in nems-info: socket, hosts, services.
  • July 27, 2018 - Corrected URL for support.nems within the instructions provided when running nems-support.
  • July 27, 2018 - Issued patch to stop NEMS from blanking the TTY1 screen after 10 minutes. Now, connected screens (device-based) and virtual machine consoles (VM-based) will always display the bootscreen.
  • August 1, 2018 - NEMS-OSB now supports restoring Off-Site Backups that originated on different hardware, as long as that hardware's NEMS-OSB account is still active and contains backups, and the user has the originating HWID, OSB Key and backup decryption key.
  • August 15, 2018 - Add NEMS user to both the nagios and www-data groups, which grants the user (while non-root) to access nagios commands such as nems-info hosts.
  • August 16, 2018 - Significant reworking of the NEMS Benchmark cron: now uses Phoronix Test Suite on NEMS 1.4.1. The reason for this change is because as NEMS launches on other platforms, we need a more accurate measurement to compare performance between boards.
  • August 16, 2018 - New query for nems-info: nems-info phoronix
  • August 16, 2018 - Added less command. Just one of those tools no Linux distro should be without.
  • August 20, 2018 - Added nems-api to nems-www.
  • August 20, 2018 - Before a benchmark runs, NEMS will automatically schedule itself for scheduled downtime, preventing admin from receiving notifications of high CPU usage during benchmark tests.
  • August 20, 2018 - NEMS Linux for ODROID advance launch to Patrons.
  • August 22, 2018 - nems-api locked down to LAN.
  • August 23, 2018 - Rewrite the nagios-plugin compiler script. Now, while the bulk of the plugins are 2.2.1, the check_snmp command is 2.1.1 to ensure timeticks are displayed correctly, as noted by Tech Dave.
  • August 24, 2018 - nems-tools warninglight daemon pushed out to all NEMS 1.4.1 servers.
  • August 25, 2018 - nems-init now waits for nems-quickfix to complete upon boot. Prevents users from running an init while an update is occurring in the background. Also, removed fixes (updates) from the init procedure. Now the user experience is improved as init does only that: initialize NEMS. Updates will happen at boot.
  • August 25, 2018 - nems-init will now warn a user if their NEMS server is already initialized.
  • August 25, 2018 - The initialization screen (what you see if you try to access NEMS through the browser prior to initialization) now shows the platform. Reworded platform on the main dashboard to say “For device name” rather than “Running on device name” since it works better for devices such as SOPINE.
  • August 25, 2018 - NEMS Linux 1.4.1 for ODROID XU3/XU4/HC1/HC2 released.
  • August 26, 2018 - NEMS Linux 1.4.1 for Pine A64-LTS/SOPine released.
  • August 27, 2018 - Added two new tests to benchmark in an effort to make scores more accurate.
  • August 28, 2018 - A few bug fixes for warninglight, and make it restart after patching log file.
  • August 29, 2018 - nems-init no longer requires reboot on systems that do not need to reboot.
  • August 29, 2018 - In cases where the base distro installs PHP to /usr/bin instead of /usr/local/bin, create a symlink automatically (affected Rock64 and possibly others).
  • September 1, 2018 - NEMS Linux 1.4.1 for Pine Rock64 released.
  • September 1, 2018 - nems-init no longer requires an Internet connection.
  • September 3, 2018 - Change Pine A64+ resize to automatically run at first boot.
  • September 4, 2018 - Warning Light wasn't starting after an update if it wasn't already running. Fixed.
  • September 7, 2018 - Make it so nems-info uses decimal “.” for all locales, including those who use commas as per borgelite. This should fix the MOTD for regions such as Germany which would have received an error Ungültige Zahl (invalid number).
  • September 10, 2018 - Apostrophes, semicolons, quotes, etc. in SMTP passwords would fail nems-mailtest. Fixed. As per arwed and SFM.
  • September 16, 2018 - Minor UI improvements on NEMS Dashboard: bullet lists use a brighter font, selected menu items have darker background (mostly affects smartphone display), navigation has more uniform item color despite whether item is a drop down or single link.
  • September 16, 2018 - Restore browser-based SSH to NEMS Init screen now that nems-init doesn't require reboot.
  • Pause in development as I spent time being interviewed for various magazines and publications, and wrote two articles for ODROID Magazine.
  • October 24, 2018 - Add glances command as per RSABear.
  • October 25, 2018 - Port Freeze. No new ports will be created until the next major release cycle (NEMS Linux 1.5). On deck are the RockPro64, NanoPi M4, as well as the delayed CL100, FitLet2 and OVA ports.
  • October 26, 2018 - Add our Discord Server to the Support menu on NEMS Dashboard.
  • October 26, 2018 - Begin fixing Monitorix so it does not try to display Raspberry Pi graphs on non-Raspberry Pi NEMS servers. Not complete, but have replaced some of the code with generic images rather than Pi-specific.
  • October 26, 2018 - Added cloudauth, state and alias to nems-info.
  • October 27, 2018 - NEMS 1.4.1 Build 3 released for ODROID XU3/XU4/HC1/HC2. This build fixes an issue affecting some users where their filesystem would not correctly resize on first boot, leaving them with very little disk space, as reported by JonBackhaus. The issue in fact arose only if the user had both a eMMC and SD card connected, as the resize script would detect the partitions incorrectly.
  • October 28, 2018 - NEMS SST now features an Alias field, allowing you to specify a friendly name for your NEMS Server. In NEMS 1.5 this will be used for NEMS Cloud to allow you to more easily identify multiple NEMS servers (eg., Site 1, Site 2).
  • October 28, 2018 - Add the nagiosadmin user to the forbidden list in nems-init as per dlayng.
  • October 28, 2018 - Remove Raspberry Pi-specific graphs from Monitorix when running on other SBC. Also fix “Last updated” date detection on non-Raspberry Pi SBCs.
  • October 28, 2018 - NEMS Dashboard now displays the server's NEMS Alias on screen.
  • October 28, 2018 - If a user removes the NEMS Alias (creating a blank alias), NEMS will now replace it with the hostname.
  • October 31, 2018 - nems-init now prompts for the notification email address, because I realized that it was an idiotic redundant step. Now you don't have to manually edit the email address in NConf.
  • November 3, 2018 - Added check_http to the documentation as the rather extensive syntax has caused problems for NEMS users such as Tommernnor. Also included a few key examples, such as how to check https hosts or alternate ports.
  • November 3, 2018 - New Feature: Mouse cursor hides automatically on NEMS TV Dashboard after 1 second of inactivity.
  • November 6, 2018 - Static favicon.ico added to NEMS TV Dashboard to help it stand out among browser tabs.
  • November 7, 2018 - nems-cert (and therefore nems-init) now generates new SSH Host Keys in addition to the SSL certificates.
  • November 12, 2018 - Removed all Phoronix tests from NEMS' Benchmark tool and removed phoronix commands from nems-info.
  • November 12, 2018 - Replaced Phoronix with sysbench, and rewrote the new tests into NEMS Benchmark. Added benchmark switch to nems-info.
  • November 13, 2018 - If updates run and no benchmarks have previously been logged, run benchmarks (ie., first boot).
  • November 13, 2018 - An incomplete update to NEMS Migrator accidentally got pushed and wasn't noticed for about a week. This incomplete update made the reconciler crash on nems-restore. Fixed.
  • November 14, 2018 - nagios-plugins recompiled on all servers against the latest version of openssl. This ensures the -S feature works in check_http, for example.
  • November 16, 2018 - If a GitHub repository gets corrupted for any reason (eg., power loss during previous pull, local editing conflict), NEMS' nightly update process will now automatically reinstall the repository.
  • November 28, 2018 - Changed the order of nems-init removal of account nemsadmin to prevent Cockpit users from having their session end prematurely (before the init completes).
  • November 28, 2018 - New Feature: NEMS Server Overview. Shows a plethora of useful information about your NEMS server. Moved HWID to this page. Found on the Configuration menu.
  • November 29, 2018 - Added wifi to nems-info.
  • November 29, 2018 - NEMS TV Dashboard will now visibly show that it is disconnected if your NEMS Linux server goes offline. It will also re-connect and continue operation as normal once the NEMS Server comes online. As requested on Discord by Patrick Misner.
  • November 30, 2018 - Bug Fix: “Parameter must be an array or an object that implements Countable” showing up in warninglight log. Fixed and patched log.
  • December 1, 2018 - nems-info nic command now traces the path to to determine the default NIC and report that result. This fixes an issue with nems-info ip when more than one NIC is connected (eg., eth0 and wlan0).
  • December 1, 2018 - Fixed and retroactively patched Raspberry Pi WiFi issue as per community forum thread.
  • December 9, 2018 - If /boot is too full and a user tries to run nems-upgrade it will now abort and warn that /boot needs to be cleaned up first. This is particularly an issue with the ODROID XU4 build at present, since it has a small /boot partition.
  • December 11, 2018 - Feature Improvement: When attempting to restore an encrypted backup with NEMS Migrator, nems-restore will prompt for the user to input the decryption key if one is not found in NEMS SST.
  • December 13, 2018 - Force NEMS Migrator to re-detect the hardware after restoring backup, in case the backup was from a different platform.
  • December 17, 2018 - Only output the first word of nems-info nic result due to IPv6 issue. Should solve erroneous NIC detection as per baggins.
  • December 17, 2018 - Added socketstatus to nems-info and made it so NEMS Anonymous Stats waits for the socket to become ready before attempting to report status, as per panda2297.
  • December 24, 2018 - NEMS SST now features pagination to separate various configuration groups into tabs.
  • December 28, 2018 - nems-init now prompts to install locale(s), as requested by Zerant.
  • December 31, 2018 - Allow scheduling downtime via NEMS Mobile UI as per ronjohntaylor.
  • January 4, 2019 - NEMS Dashboard's Migrator page now shows the current size of your local backup. This is also stored in size.log within the backup samba share.
  • January 4, 2019 - NEMS Command: nems-support now has a report option which generates a quick report to help diagnose problems.
  • January 4, 2019 - NEMS Migrator backup scripts now suppress warnings about files changing while being backed up.
  • January 7, 2019 - NEMS SST variables defined to reduce bloat in Apache error log.
  • January 7, 2019 - Weekly benchmarks will not run on slow boards effective immediately.
  • January 7, 2019 - NEMS Migrator's local automated backup now saves a new file every 6 hours rather than every 5 minutes.
  • January 9, 2019 - /var/log will no longer be part of NEMS Migrator backups, although /var/log/nems is kept. This significantly reduces the size of backup.nems thereby improving the reliability on long-standing NEMS servers.
  • January 12, 2019 - The tab title for NEMS servers will now include the NEMS Server alias if applicable, making it easier to distinguish between NEMS servers when multiple tabs have multiple NEMS servers.
  • January 16, 2019 - SMTP Username in NEMS SST no longer has to be a full email address, as requested by Zerant.

Jump to the NEMS 1.5 Changelog.

changelogs/nems_1.4.txt · Last modified: 2019/01/16 08:26 by Robbie Ferguson