Мне нужно проверить изменение статуса подключения по протоколу eth (ссылка вверх и ссылка вниз) по программе (с использованием c или perl). Теперь я использую способ поддержки активности, но иногда теряю уведомление. Внутри файлов сообщений я вижу уведомление ядра о «eth0 link down», и это примечание всегда верно, поэтому я ищу способ, возможно, системный вызов, чтобы проверить статус eth.
Если вы хотите проверить статус ссылки (носитель), вы можете проверить файл:
$ cat /sys/class/net/eth0/carrier
Будет отображаться 1 (ссылка вверх) или 0 (ссылка не работает).
Так же как обходной путь для RH73 (пожалуйста не спрашивайте, зачем у меня куча коробок с RH73 в 2010 году):
[madhatta@ms01 madhatta]$ cat /etc/redhat-release
Red Hat Linux release 7.3 (Valhalla)
[madhatta@ms01 madhatta]$ uname -a
Linux ms01.company.com 2.4.20-30.7.legacysmp #1 SMP Fri Feb 20 10:12:55 PST 2004 i686 unknown
[madhatta@ms01 madhatta]$ sudo mii-tool eth0
eth0: negotiated 100baseTx-FD, link ok
[madhatta@ms01 madhatta]$