Bug 39620

Summary: Добавить утилиту для вывода списка и состояния интерфейсов (ethlist ?)
Product: Sisyphus Reporter: Sergey Y. Afonin <asy>
Component: ethtoolAssignee: Michael Shigorin <mike>
Status: CLOSED FIXED QA Contact: qa-sisyphus
Severity: enhancement    
Priority: P5 CC: dans, klark.devel, klark, mike, rider, vt
Version: unstable   
Hardware: x86   
OS: Linux   
Attachments:
Description Flags
Концепт-скрипт
none
Кандидат в пакет
none
Кандидат в пакет v2 none

Description Sergey Y. Afonin 2021-01-28 17:56:22 MSK
Было бы не плохо иметь возможность получить список и состояние ethernet-интерфейсов, как это когда-то умел делать mii-tool. Хотя сейчас уже он не справляется:

# mii-tool
eth0: negotiated, link ok
eth1: negotiated 100baseTx-FD, link ok
eth2: negotiated 100baseTx-FD, link ok
SIOCGMIIPHY on 'eth3' failed: Operation not supported

"не так давно" ( :-) ) в рассылке было:
https://lists.altlinux.org/pipermail/sysadmins/2010-March/032484.html
Comment 1 Sergey Y. Afonin 2021-01-28 18:00:17 MSK
Created attachment 9163 [details]
Концепт-скрипт

Скрипт из ранее упомянутой рассылки, чуть доделанный в плане вывода информации. Но код, мягко говоря, не хорош из-за количества лишних вызовов ethtool/grep/sed.
Comment 2 Sergey Y. Afonin 2021-01-28 18:06:25 MSK
Леонид, по мотивам изготовленя grub-entries может и этот можно довести? А то я себя никак не заставлю в эти sed/awk закопаться.
Comment 3 Leonid Krivoshein 2021-01-31 04:16:24 MSK
Это давно и успешно решено в пакете ifplugd: man 8 ifplugstatus или см:
https://github.com/antiX-Linux/ifplugd/blob/master/src/ifplugstatus.c
Утилита ip тоже умеет показывать состяние интерфейсов.

Можете взять исходник за основу или грепать, если хотите какой-то другой вывод получить. У меня в ближайшие месяцы не будет на это времени.
Comment 4 Sergey Y. Afonin 2021-01-31 15:37:21 MSK
(In reply to Leonid Krivoshein from comment #3)

> Это давно и успешно решено в пакете ifplugd: man 8 ifplugstatus или см:
> https://github.com/antiX-Linux/ifplugd/blob/master/src/ifplugstatus.c
> Утилита ip тоже умеет показывать состяние интерфейсов.

Это несколько не то, утилиты показывают все интерфейсы, а не только физические. При наличии VLAN это не очень удобно.

> У меня в ближайшие месяцы не будет на это времени.

Понял.
Comment 5 Michael Shigorin 2021-03-01 12:54:16 MSK
Предлагаю тому, кто сочтёт своё предложение достаточно хорошим, просто сделать NMU.  А так-то это всё следствие разнобоя в ядре -- если правильно помню, существует _три_ способа поинтересоваться состоянием интерфейса и разные драйверы в различной степени реализуют их (универсальной утилиты сходу не припоминаю).

2 vt: возможно, мои данные устарели -- если есть что прибавить, расскажи.
Comment 6 Sergey Y. Afonin 2021-11-29 09:39:16 MSK
Created attachment 9992 [details]
Кандидат в пакет

Лишние вызовы вроде поубирал. Осталась правда выборка самих устройств, может там можно одним awk обойтись?
Comment 7 Sergey Y. Afonin 2022-10-24 11:04:28 MSK
(In reply to Sergey Y. Afonin from comment #6)

> Created attachment 9992 [details]
> Кандидат в пакет

NMU делаю в таком виде?
Comment 8 Sergey Y. Afonin 2023-11-13 11:50:38 MSK
Created attachment 15025 [details]
Кандидат в пакет v2

Вот так лучше
Comment 9 Sergey Y. Afonin 2023-11-15 00:48:09 MSK
https://git.altlinux.org/tasks/334424
если возражений нет, надо бы зааппрувить

Кстати, а на не x86 ethtool везде работает?
Comment 10 Sergey Y. Afonin 2023-11-15 10:26:34 MSK
Забыл добавить, то же самое для p10: https://git.altlinux.org/tasks/334422
Если у кого Сизифа нет на посмотреть.
Comment 11 Sergey Y. Afonin 2023-11-17 12:27:55 MSK
(In reply to Sergey Y. Afonin from comment #9)

> https://git.altlinux.org/tasks/334424
> если возражений нет, надо бы зааппрувить

И тишина...
Comment 12 Anton Farygin 2023-11-17 13:54:55 MSK
У меня не было времени посмотреть.
Comment 13 Repository Robot 2023-11-17 15:53:03 MSK
ethtool-1:6.5-alt3 -> sisyphus:

 Tue Nov 14 2023 Sergey Y. Afonin <asy@altlinux> 1:6.5-alt3
 - NMU: added the ethlist script (ALT #39620)
Comment 14 Sergey Y. Afonin 2023-11-17 15:56:53 MSK
(In reply to Anton Farygin from comment #12)

> У меня не было времени посмотреть.

Да тут список большой. Подумал, что все друг на друга подумали. :-)
Спасибо.
Comment 15 Vitaly Chikunov 2023-11-18 00:00:16 MSK
Если не секрет - зачем эта утилита не в своем пакете, а в ethtool, но при этом не апстримтся?
Comment 16 Sergey Y. Afonin 2023-11-18 02:02:39 MSK
(In reply to Vitaly Chikunov from comment #15)

> Если не секрет - зачем эта утилита не в своем пакете, а в ethtool, но при
> этом не апстримтся?

Без ethtool она смысла не имеет, а городить пакет ради нескольких десятков строк как-то тоже странно. Про апстрим мысль была кстати, но подумал, что пусть пока так, а там видно будет.
Comment 17 Vitaly Chikunov 2023-11-18 03:22:34 MSK
Спасибо за ответ. 

> Без ethtool она смысла не имеет

(Но есть же Requires.)