Discord Solution

Why CasaOS Logs “CPU Thermal Zone Found” Every 5 Minutes

A fresh CasaOS install on a Debian x86 server logged the same x86_pkg_temp thermal-zone discovery message roughly every five minutes.

Key conclusion: the CasaOS log line CPU thermal zone found: x86_pkg_temp is not an overheating warning. It means CasaOS found the Linux thermal sensor it can use to read CPU package temperature. The real issue is log frequency: on some systems the same informational discovery message is written about every five minutes.

The original report described exactly that pattern after a fresh CasaOS install on Debian: “Every 5 minutes the console gets an info message about thermal zone found.” The machine was a normal x86 desktop repurposed as a server, not a system reporting a thermal shutdown.

What a Linux thermal zone is

Linux exposes temperature sensors through /sys/class/thermal/thermal_zone*. The kernel's Linux thermal zones include attributes such as:

  • type — the thermal zone type;
  • temp — the current temperature;
  • trip_point_*_temp — temperature thresholds when the platform exposes them;
  • trip_point_*_type — threshold roles such as passive, hot, or critical.

So a path such as:

/sys/devices/virtual/thermal/thermal_zone2

is a sensor interface. Finding it is normal.

What x86_pkg_temp means

On Intel-compatible x86 systems, x86_pkg_temp is associated with package-level CPU temperature sensing. The kernel's x86 package sensor registers the CPU digital package-temperature sensor as a Linux thermal zone.

That is why this log:

CPU thermal zone found: x86_pkg_temp,
path: /sys/devices/virtual/thermal/thermal_zone2

should be read as:

CasaOS found the CPU temperature source it was looking for.

It does not say that the CPU crossed a hot or critical threshold.

Check the actual CPU temperature

Read the zone type first:

cat /sys/class/thermal/thermal_zone2/type

If it returns:

x86_pkg_temp

read the temperature:

cat /sys/class/thermal/thermal_zone2/temp

Linux thermal-zone temperatures are normally reported in millidegrees Celsius. For example:

48000

means approximately:

48°C

The kernel's thermal zone attributes define both type and temp under the thermal sysfs interface.

Check thermal trip points before calling it overheating

If the system exposes thermal trip points, inspect them:

grep . /sys/class/thermal/thermal_zone2/trip_point_* 2>/dev/null

You may see entries such as:

trip_point_0_type:critical
trip_point_0_temp:100000

A 100000 trip point represents 100°C. The exact thresholds depend on the CPU, firmware, and kernel driver, so use the values exported by your own machine rather than copying a generic temperature limit.

This is the important distinction: sensor discovery is not threshold crossing. A true thermal problem needs temperature or throttling evidence, not just the words “thermal zone found.”

Why the message repeats every five minutes

The report points to service.GetCPUThermalZone inside CasaOS. Other CasaOS logs show the same function being called repeatedly at roughly five-minute intervals, so the recurring line is consistent with periodic system-status polling rather than a new thermal event each time.

That repetition is annoying, but the log level is info. It is not an emergency message.

For a visual example of a home server exposing live CPU temperature alongside other system data, the CPU temperature display project shows temperature as one normal system metric among CPU, RAM, and disk usage.

When you should investigate temperature further

Move from “log noise” to thermal troubleshooting only when there is stronger evidence, such as:

  • the reported CPU temperature stays close to a critical trip point;
  • the CPU is throttling under ordinary workloads;
  • the machine shuts down or restarts under load;
  • fans fail to ramp when the platform should use active cooling;
  • kernel logs report thermal throttling or critical-temperature events.

Useful checks include:

journalctl -k | grep -i thermal
journalctl -k | grep -i thrott
sensors

The sensors command comes from lm-sensors on many Linux distributions and can provide a more convenient view when the necessary hardware monitoring driver is available.

Do you need to suppress the message?

If temperatures are normal, there is no functional repair required just because the line appears. The 2026 issue asks for better logging behavior—ideally discovering or reporting the sensor once rather than repeating the same informational line every few minutes.

Avoid editing CasaOS binaries or disabling Linux thermal management just to hide the message. Kernel thermal zones are part of normal hardware monitoring and can also expose real trip points when the platform supports them.

For ZimaOS users, dashboard hardware monitoring exposes system status through the current client workflow. If you are choosing a compact x86 home server with a fanless thermal design, ZimaBoard 2 is built around a passive aluminum enclosure and a 10W Intel N150 platform.

FAQ

Does “CPU thermal zone found” mean CasaOS detected overheating?

No. It means CasaOS located the Linux thermal zone used to read CPU package temperature. Check the actual temp value and trip points before diagnosing overheating.

Why does the temperature file show 48000 instead of 48?

Linux thermal sysfs commonly reports temperature in millidegrees Celsius. A value of 48000 corresponds to about 48°C.

Why is the same message written every five minutes?

The CasaOS function that discovers the CPU thermal zone is being called periodically. The repeated informational log reflects that polling behavior, not a new overheating event every five minutes.

Should I disable the thermal zone?

No. Do not disable Linux thermal management just to remove an informational log line. First confirm temperatures are normal; the logging frequency itself is the software issue being reported.