Skip to main content

Storage and network panel

The Storage/Net panel reports capacity and whole-device I/O for the root eMMC, optional NVMe storage mounted at /media/nvme, aggregate non-loopback network counters, and default-route uplink utilization for local agents.

Filesystem capacity​

FieldSource and calculation
eMMC used / used MBstatvfs("/")
NVMe used / used MBstatvfs("/media/nvme"), only when that path is a mount

Sentinel calculates:

total = f_blocks × f_frsize
available = f_bavail × f_frsize
used = total - available
used_pct = used / total × 100

Because f_bavail is space available to an unprivileged process, reserved filesystem blocks contribute to the displayed used value. MB uses binary MiB conversion.

NVMe metric definitions are added only when /media/nvme is detected as a mount when the daemon starts. Restart Sentinel after mounting or unmounting the drive so the available metric set matches the system.

Disk I/O​

Sentinel resolves the mount's parent block device from /proc/mounts, reads sector counters from /proc/diskstats, multiplies by the device hardware sector size, and divides the byte delta by elapsed sample time.

The read/write rates therefore describe the whole parent block device, not only files accessed through the displayed filesystem. Other partitions or users of the same device can contribute.

If mount-to-device resolution fails, Sentinel uses a device-name heuristic:

  • eMMC: first whole mmcblk* device;
  • NVMe: first whole nvme* device.

The first sample has no previous counter baseline and reports zero rate. Counter resets and device replacement are handled with saturating subtraction, so they do not create a negative rate.

The UI labels rates as MB/s, but calculation divides by 1024 twice and is therefore MiB/s-equivalent.

Network fields​

FieldCalculation
Network RXSum of receive-byte deltas from /proc/net/dev for every non-loopback interface, divided by elapsed time.
Network TXSum of transmit-byte deltas from /proc/net/dev for every non-loopback interface, divided by elapsed time.
Network chartRX + TX.
Uplink RX/TXReceive/transmit byte delta for the interface selected by the IPv4 default route, divided by elapsed time.
Uplink RX/TX utilizationDirectional uplink rate in bits per second divided by the interface link speed from /sys/class/net/<interface>/speed.

The aggregation includes physical interfaces, bridges, VLANs, tunnels, and virtual Ethernet devices when present. The same traffic can therefore be counted at multiple layers, such as once on a physical interface and again on a bridge. It is system-interface activity, not necessarily external-wire throughput.

Interfaces must exist in consecutive samples to contribute a delta. The first network sample reports zero. The keys end in _mbps, but the unit is MiB/s-equivalent, not megabits per second.

The local API also exposes network_rx_bytes_per_second, network_tx_bytes_per_second, network_rx_utilization_percent, and network_tx_utilization_percent. These unambiguous metrics only measure the default-route interface, avoiding the double counting possible in the aggregate UI counters. Utilization is unavailable when Linux does not report a positive link speed (for example, for some virtual or wireless interfaces).