canonical / canonical/microceph

Smartctl has received an unknown argument (error code -22)

Open
#654 10 comments 0 reactions 0 assignees View on GitHub
documentation Needs Investigation
Dominant language
Go
Stars
396
Forks
74
Avg merge
2d 20h
Merged PRs (30d)
7

Description

Hello,
I am using microceph on Ubuntu 22.04.5 LTS on arm.
I have setup my CEPH cluster and enable the Dashboard, which correctly report the details of my environment.
However, once opening the **Device health** under **Hosts** after a few seconds I can see the below [Warning](https://github.com/user-attachments/assets/21640bc6-11e9-4884-9dd6-edd6f1359df0):

*Smartctl has received an unknown argument (error code -22). You may be using an incompatible version of smartmontools. Version >= 7.0 of smartmontools is required to successfully retrieve data.*

The root cause seems pretty straightforward, however once I have checked the version of my smartmontools is updated:
```
❯ smartctl --version
smartctl 7.2 2020-12-30 r5155 [aarch64-linux-6.6.0-rc5-rockchip-rk356x] (local build)
Copyright (C) 2002-20, Bruce Allen, Christian Franke, www.smartmontools.org
....
```
And the command itself run (as **sudo**):
```
❯ sudo smartctl --all /dev/nvme0n1
smartctl 7.2 2020-12-30 r5155 [aarch64-linux-6.6.0-rc5-rockchip-rk356x] (local build)
Copyright (C) 2002-20, Bruce Allen, Christian Franke, www.smartmontools.org

=== START OF INFORMATION SECTION ===
Model Number: SAMSUNG MZ9L4128HCHQ-00BH1
....
=== START OF SMART DATA SECTION ===
SMART overall-health self-assessment test result: PASSED

SMART/Health Information (NVMe Log 0x02)
Critical Warning: 0x00
Temperature: 38 Celsius
....
Error Information (NVMe Log 0x01, 16 of 64 entries)
No Errors Logged
```
Is there a way to have this working?

Regards,

Contributor guide

Open the contributing guide

Research direction

Start by reproducing the warning from the Dashboard's Hosts > Device health view on Ubuntu 22.04 ARM with /dev/nvme0n1, then inspect the code that invokes smartctl and parses its output. Compare that invocation with the working `sudo smartctl --all /dev/nvme0n1` command. Done means the dashboard retrieves device health without reporting the incompatible-version warning.

Written by the indexing model from the issue text.

Assessment

Tech stack
go, linux, ubuntu
Domain
backend, observability
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
45/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.