Есть ли способ получить текущий активный интерфейс сетевой карты Wi-Fi из файла в fs -вместо запуска таких команд, как iwconfig?

Когда вы входите через ssh с Mac на Pi, клиентская программа (oneko )запускается на Pi и связывается с X-сервером, работающим на Mac.

Я только что попробовал это, войдя в свой компьютер с Debian с моего MacBook через ssh, и onekoработает нормально, и когда я делаю xdpyinfo, я вижу то же количество расширений, что и при xdpyinfoпрямо на моем Mac.

Однако в вашем случае переадресация соединения кардинально отличается:

number of extensions:    2
  BIG-REQUESTS
  XC-MISC

и это путь к нескольким расширениям, в частности к SHAPE. Итак, теперь вопрос, почему это происходит.

Я вижу, что у вас есть два логина для переадресации X (sshd, прослушивающие как на 6010, так и на 6011 ). Что происходит, когда вы используете только один логин?

Редактировать

Чтобы добавить результат комментариев к ответу :Необходимо использовать ssh с доверенной переадресацией (, т.е. ssh -Yвместо ssh -X), чтобы сделать все расширения доступными.

1
16.11.2021, 12:06
2 ответа

Эту информацию можно получить из:

cat /sys/class/net/$IFACE/operstate 

Результаты upилиdown

Чтобы просмотреть имена всех интерфейсов:

ls /sys/class/net

Чтобы проверить, является ли это беспроводной картой или нет:

[[ -d "/sys/class/net/$IFACE/wireless" ]] && echo "WiFi card"

Документация для /proc/sys/net/

архивы ядра

1
16.11.2021, 13:38

Добавление к ответу GAD3R на тот случай, если кому-то понадобится скрипт для автоматизации действий, рекомендованных в ответе (фрагмент, который я написал для этой цели):

#!/bin/bash
function getFirstActiveNIC()
{
    interfaces="/sys/class/net/*"
    for interface in ${interfaces};
        do 
            if [ $(cat "${interface}/operstate") = "up" ];
            then
                echo "$(basename ${interface})"
            fi
    done
}
1
17.11.2021, 20:32

Теги

Похожие вопросы