Bug 39421

Summary: wlan0 is unmanaged
Product: Sisyphus Reporter: Ivan A. Melnikov <iv>
Component: NetworkManager-daemonAssignee: Mikhail Efremov <sem>
Status: CLOSED FIXED QA Contact: qa-sisyphus
Severity: critical    
Priority: P5 CC: sem
Version: unstable   
Hardware: x86_64   
OS: Linux   

Description Ivan A. Melnikov 2020-12-10 13:44:15 MSK
После обновления NetworkManager-daemon и компании до 1.28.0-alt1 перестал работать wifi.

Конфиг для этого интерфейса в /etc/net сложился исторически и уходит корнями в какой-то ALT Workstation K времён p8. С тех пор эта машина переехала на XFCE/nm-applet, но wifi всегда управлялся через NetworkManager и конфиг этот я кажется не правил ни руками, ни какими-то инструментами. Выглядит оно так:

# ls /etc/net/ifaces/wlan0/
options
# cat /etc/net/ifaces/wlan0/options
NM_CONTROLLED=yes
ONBOOT=yes

Да, 2 строчки. Такой вот минимализм. На 1.28.0:
[...]
<info>  [1607591788.8761] etcnet-alt: Device eth0 is unmanaged
<info>  [1607591788.8761] etcnet-alt: Device tun0 is unmanaged
<warn>  [1607591788.8762] etcnet-alt: read connection: Wireless settings are not found in /etc/net/ifaces/wlan0.
<info>  [1607591788.8762] etcnet-alt: Device wlan0 is unmanaged
[...]

И никакими силами сделать его снова managed не удаётся.

Откат на NetworkManager 1.27.91 помог. При этом в логах:
[...]
<info>  [1607596538.5954] settings: Loaded settings plugin: etcnet-alt ("/usr/lib64/NetworkManager/1.27.91-alt1/libnm-settings-plugin-etcnet-alt.so")
<info>  [1607596538.5954] settings: Loaded settings plugin: keyfile (internal)
<info>  [1607596538.5962] etcnet-alt: Device eth0 is unmanaged
<warn>  [1607596538.5963] etcnet-alt: read connection: Wireless settings are not found in /etc/net/ifaces/wlan0.
<info>  [1607596538.5963] etcnet-alt: No connections for device wlan0 found
[...]

и при этом wlan0 вполне managed и wifi работает.
Comment 1 Ivan A. Melnikov 2020-12-10 13:53:27 MSK
Убрал в бекапы /etc/net/ifaces/wlan0, помогло.

Но баг всё равно считаю критическим. Нехорошо, когда обычное обновление оставляет человека без сети.
Comment 2 Mikhail Efremov 2020-12-11 17:27:53 MSK
(Ответ для Ivan A. Melnikov на комментарий #0)
> # ls /etc/net/ifaces/wlan0/
> options
> # cat /etc/net/ifaces/wlan0/options
> NM_CONTROLLED=yes
> ONBOOT=yes

Ну с таким конфигом и у etcnet будут проблемы. Нужно еще как минимум TYPE=eth, а лучше еще и CONFIG_WIRELESS=yes. Задача плагина понимать конфиги, которые понимает etcnet, то, что на таком конфиге работало раньше - это случайно и всегда может вдруг перестать.
Впрочем, в данном случае в плагине действительно баг, TYPE=eth все равно не поможет :(.
Comment 3 Mikhail Efremov 2020-12-11 17:31:10 MSK
Хотя в таком конфиге основное это NM_CONTROLLED=yes, наверное. В этом случае нужно всегда делать интерфейс managed, видимо, даже если тип неизвестен.
Comment 4 Ivan A. Melnikov 2020-12-14 12:46:43 MSK
> Нужно еще как минимум TYPE=eth

etcnet пытается получить тип из имени, для wlan0 и eth0 это вполне работает (функция name2type). Кстати, плагин пытается сделать то же самое, но получив из имени интерфейса подстроку "wlan" считает это unknown.

> а лучше еще и CONFIG_WIRELESS=yes

Не уверен, что etcnet важно знать, каким именно интерфейсом она не управляет.

Хотя я конечно не утверждаю, что конфиг не кривой. Но я почти уверен, что это не я, а наш инсталятор из p8 и alterator сделали его таким -- а значит NetworkManager должен продолжать как-то работать. Этот баг про это.

Надо будет кстати посмотреть как настраивает wlan0 инсталятор ALT Workstation K и Simply где-то 7 и 8 версий.

(In reply to Mikhail Efremov from comment #3)
> Хотя в таком конфиге основное это NM_CONTROLLED=yes, наверное. В этом случае
> нужно всегда делать интерфейс managed, видимо, даже если тип неизвестен.

+1
Comment 5 Repository Robot 2020-12-16 17:51:28 MSK
NetworkManager-1.28.0-alt2 -> sisyphus:

 Wed Dec 16 2020 Mikhail Efremov <sem@altlinux> 1.28.0-alt2
 - etcnet-alt: Add test for unknown type with NM_CONTROLLED=yes.
 - etcnet-alt: Fix tests with bad type.
 - etcnet-alt: Fix comment.
 - etcnet-alt: Always manage ifaces with NM_CONTROLLED=yes
     (closes: #39421).
 - etcnet-alt: Fix check for unmanaged devices (closes: #39437).
Comment 6 Ivan A. Melnikov 2020-12-17 13:57:51 MSK
Спасибо!