# networkupstools/nut

**Attribution required: if you use, quote, or summarise this content, you must credit and link back to [awesome-repositories.com](https://awesome-repositories.com/repository/networkupstools-nut).**

4,122 stars · 439 forks · C · NOASSERTION

## Links

- GitHub: https://github.com/networkupstools/nut
- Homepage: https://networkupstools.org/
- awesome-repositories: https://awesome-repositories.com/repository/networkupstools-nut.md

## Topics

`epdu` `management` `modbus` `monitoring` `netxml` `nut` `pdu` `serial` `snmp` `ups` `usb`

## Description

NUT is an uninterruptible power supply management system that monitors and controls power protection hardware. It functions as an automated shutdown coordinator and a network power monitor, implementing the RFC 9271 standard for communicating with power hardware.

The project acts as a hardware driver translation layer, converting signals from USB, serial, and SNMP interfaces into a unified data format. It employs a client-server architecture to stream battery and voltage metrics from hardware drivers to remote monitoring clients across a network.

Capabilities include real-time power monitoring, hardware status visualization via web-based dashboards, and the management of power distribution units. The system also handles automated safe shutdowns based on critical battery thresholds and provides tools for device discovery and hardware reset recovery.

Security is managed through IP-based access control for server commands and the assignment of hardware access privileges via system rules.

## Tags

### Software Engineering & Architecture

- [Power-Down Sequences](https://awesome-repositories.com/f/software-engineering-architecture/event-driven-logic/power-down-sequences.md) — Triggers system power-down sequences based on specific hardware events and critical battery thresholds.
- [Client-Server Architecture](https://awesome-repositories.com/f/software-engineering-architecture/client-server-architecture.md) — Employs a centralized server to manage hardware state and stream that state to multiple remote monitoring clients.
- [Request-Response Interfaces](https://awesome-repositories.com/f/software-engineering-architecture/request-response-interfaces.md) — Processes standardized control commands and status queries between remote clients and the management server.

### System Administration & Monitoring

- [Automated Shutdown Coordinators](https://awesome-repositories.com/f/system-administration-monitoring/automated-shutdown-coordinators.md) — Triggers safe operating system power-downs when battery thresholds reach critical levels to prevent data loss.
- [Hardware Health Monitoring](https://awesome-repositories.com/f/system-administration-monitoring/hardware-health-monitoring.md) — Provides tracking of physical hardware metrics such as battery health, voltage, and runtime for uninterruptible power supplies. ([source](https://github.com/networkupstools/nut/blob/master/NEWS.adoc))
- [Metric Distribution](https://awesome-repositories.com/f/system-administration-monitoring/metric-distribution.md) — Streams collected device metrics from drivers to remote monitoring clients across a network connection. ([source](https://github.com/networkupstools/nut/blob/master/README.adoc))
- [UPS Network Monitors](https://awesome-repositories.com/f/system-administration-monitoring/monitoring-and-status-pages/device-power-monitors/network-hardware-monitors/ups-network-monitors.md) — Provides a server-client architecture that streams battery and voltage metrics from hardware drivers to remote clients.
- [Real-Time Power Monitoring](https://awesome-repositories.com/f/system-administration-monitoring/real-time-monitoring/real-time-power-monitoring.md) — Retrieves real-time status variables and sensor data from connected power devices via a network server. ([source](https://github.com/networkupstools/nut#readme))
- [Hardware Metric Visualizers](https://awesome-repositories.com/f/system-administration-monitoring/metrics-visualizers/hardware-metric-visualizers.md) — Generates web-based dashboards and dynamic images to monitor real-time power metrics and device performance.
- [Power Metric Visualizations](https://awesome-repositories.com/f/system-administration-monitoring/power-metric-visualizations.md) — Generates web-based status pages and dynamic images representing voltage, battery charge, and load percentages. ([source](https://github.com/networkupstools/nut#readme))
- [Web-Based Dashboards](https://awesome-repositories.com/f/system-administration-monitoring/status-monitors/web-based-dashboards.md) — Provides web-based dashboards and administrative controls to visualize real-time power metrics and device status. ([source](https://github.com/networkupstools/nut/))

### Development Tools & Productivity

- [Hardware Signal](https://awesome-repositories.com/f/development-tools-productivity/modular-architecture/translation-layers/hardware-signal.md) — Converts USB, serial, and SNMP signals from power devices into a unified data format.
- [Power Event Schedulers](https://awesome-repositories.com/f/development-tools-productivity/cron-scheduling/power-event-schedulers.md) — Executes shutdown sequences based on specific power events and timer-based logic to protect system integrity. ([source](https://github.com/networkupstools/nut/blob/master/NEWS.adoc))

### Hardware & IoT

- [Protocol Translation](https://awesome-repositories.com/f/hardware-iot/legacy-hardware-support/protocol-translation.md) — Converts diverse hardware signals from USB, serial, or SNMP into a standardized internal data format.
- [Automatic Network Hardware Discovery](https://awesome-repositories.com/f/hardware-iot/automatic-network-hardware-discovery.md) — Scans local and remote network interfaces using various protocols to identify and list compatible power devices.
- [Device Operational Parameter Configurators](https://awesome-repositories.com/f/hardware-iot/device-operational-parameter-configurators.md) — Updates read and write variables directly on the hardware to change operational parameters. ([source](https://github.com/networkupstools/nut#readme))
- [Physical Power Termination](https://awesome-repositories.com/f/hardware-iot/hardware-power-management/physical-power-termination.md) — Sends direct commands to hardware to physically terminate power delivery to all connected loads. ([source](https://github.com/networkupstools/nut/))
- [Power Distribution Unit Management](https://awesome-repositories.com/f/hardware-iot/hardware-power-management/power-distribution-unit-management.md) — Controls power outlets and sets operational thresholds to monitor and regulate electricity across distribution units. ([source](https://github.com/networkupstools/nut#readme))

### Networking & Communication

- [Protocol Server Communications](https://awesome-repositories.com/f/networking-communication/protocol-server-communications.md) — Uses standardized communication interfaces to retrieve status data or send control commands to a management server. ([source](https://github.com/networkupstools/nut/tree/master/lib))
- [Power Metric Distribution](https://awesome-repositories.com/f/networking-communication/remote-access-control/remote-management-access/remote-power-state-management/power-metric-distribution.md) — Implements a client-server architecture to stream battery and voltage metrics from hardware drivers to remote monitoring clients.
- [RFC 9271 Implementations](https://awesome-repositories.com/f/networking-communication/rfc-9271-implementations.md) — Implements the RFC 9271 standard for communicating with power protection hardware.

### Operating Systems & Systems Programming

- [UPS Management](https://awesome-repositories.com/f/operating-systems-systems-programming/power-management/ups-management.md) — Provides a comprehensive system for monitoring and controlling uninterruptible power supplies.
- [Safe Shutdown Coordination](https://awesome-repositories.com/f/operating-systems-systems-programming/safe-shutdown-coordination.md) — Initiates system power-downs when power failure is detected or batteries reach critical thresholds to prevent data loss. ([source](https://github.com/networkupstools/nut#readme))
- [System Shutdowns and Restarts](https://awesome-repositories.com/f/operating-systems-systems-programming/system-shutdowns-and-restarts.md) — Triggers controlled operating system shutdowns during power failures or critical battery levels to prevent data loss.
- [Power State Controllers](https://awesome-repositories.com/f/operating-systems-systems-programming/power-management/power-state-controllers.md) — Runs startup and shutdown sequences across different operating systems to ensure continuous monitoring service operation. ([source](https://github.com/networkupstools/nut/tree/master/scripts))
- [Power Device Control](https://awesome-repositories.com/f/operating-systems-systems-programming/system-administration-maintenance/system-power-utilities/hardware-power-controllers/power-device-control.md) — Triggers immediate device actions such as initiating battery tests or shutting down connected loads. ([source](https://github.com/networkupstools/nut#readme))
- [Power Distribution Unit Control](https://awesome-repositories.com/f/operating-systems-systems-programming/system-administration-maintenance/system-power-utilities/hardware-power-controllers/power-distribution-unit-control.md) — Provides management of power distribution units, including controlling power outlets and operational thresholds.

### User Interface & Experience

- [Hardware Control Interfaces](https://awesome-repositories.com/f/user-interface-experience/responsive-web-interfaces/hardware-control-interfaces.md) — Executes instant commands and modifies hardware variables through a browser-based interface. ([source](https://github.com/networkupstools/nut/blob/master/README.adoc))

### Web Development

- [API Data Exposure](https://awesome-repositories.com/f/web-development/api-data-exposure.md) — Serves device information through a web interface and language bindings for external software integration. ([source](https://github.com/networkupstools/nut/blob/master/NEWS.adoc))
- [CGI Interfaces](https://awesome-repositories.com/f/web-development/web-interfaces/cgi-interfaces.md) — Generates dynamic HTML pages and status images using Common Gateway Interface programs to visualize hardware metrics.
