Проблема с драйвером Ubuntu Server 19.10 AX88179

Я запускаю Ubuntu Server 19.10 с последними обновлениями и т. Д.Моя проблема в том, что я использую очень старую материнскую плату без GBit LAN, поэтому я купил внешний «адаптер» GBit LAN. Но это не работает. Когда я подключаю его, он загорается примерно на 6 секунд, а затем гаснет. Но когда я выполняю lsusb , он показывает, что он все еще подключен и распознается. ifconfig -a выглядит следующим образом:

docker0: flags=4099<UP,BROADCAST,MULTICAST>  mtu 1500
        inet 172.17.0.1  netmask 255.255.0.0  broadcast 172.17.255.255
        ether (*macadress*)  txqueuelen 0  (Ethernet)
        RX packets 0  bytes 0 (0.0 B)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 0  bytes 0 (0.0 B)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

enp1s0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 192.168.178.45  netmask 255.255.255.0  broadcast 192.168.178.255
        inet6 fe80::225:22ff:fe5c:776a  prefixlen 64  scopeid 0x20<link>
        inet6 2003:c0:ff32:fe00:225:22ff:fe5c:776a  prefixlen 64  scopeid 0x0<global>
        ether (*macadress*)  txqueuelen 1000  (Ethernet)
        RX packets 1908  bytes 169364 (169.3 KB)
        RX errors 0  dropped 894  overruns 0  frame 0
        TX packets 700  bytes 72274 (72.2 KB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

enx000ec65d0eff: flags=4098<BROADCAST,MULTICAST>  mtu 1500
        ether (*macadress*)  txqueuelen 1000  (Ethernet)
        RX packets 0  bytes 0 (0.0 B)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 0  bytes 0 (0.0 B)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

lo: flags=73<UP,LOOPBACK,RUNNING>  mtu 65536
        inet 127.0.0.1  netmask 255.0.0.0
        inet6 ::1  prefixlen 128  scopeid 0x10<host>
        loop  txqueuelen 1000  (Local Loopback)
        RX packets 1260  bytes 89772 (89.7 KB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 1260  bytes 89772 (89.7 KB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

Где «enx000ec65d0eff» - это внешний адаптер GBit. Между прочим, адаптер представляет собой "UGREEN USB 3.0 Ethernet Adapter". Я попытался переустановить ядро, модули ядра и даже попытался собрать этот драйвер сам, хотя он встроен в ядро ​​(5.3.0-40), но он не завершается и завершается с кодом ошибки 2 («build-essential» и «linux- headers-generic "установлены):

make -C /lib/modules/5.3.0-40-generic/build SUBDIRS=/home/julius/Downloads/AX88179_178A_LINUX_DRIVER_v1.19.0_SOURCE modules
make[1]: Entering directory '/usr/src/linux-headers-5.3.0-40-generic'
Makefile:227: ================= WARNING ================
Makefile:228: 'SUBDIRS' will be removed after Linux 5.3
Makefile:229:
Makefile:230: If you are building an individual subdirectory
Makefile:231: in the kernel tree, you can do like this:
Makefile:232: $ make path/to/dir/you/want/to/build/
Makefile:233: (Do not forget the trailing slash)
Makefile:234:
Makefile:235: If you are building an external module,
Makefile:236: Please use 'M=' or 'KBUILD_EXTMOD' instead
Makefile:237: ==========================================
  CC [M]  /home/julius/Downloads/AX88179_178A_LINUX_DRIVER_v1.19.0_SOURCE/ax88179_178a.o
/home/julius/Downloads/AX88179_178A_LINUX_DRIVER_v1.19.0_SOURCE/ax88179_178a.c:816:3: error: ‘struct ethtool_ops’ has no member named ‘get_settings’; did you mean ‘get_strings’?
  816 |  .get_settings  = ax88179_get_settings,
      |   ^~~~~~~~~~~~
      |   get_strings
/home/julius/Downloads/AX88179_178A_LINUX_DRIVER_v1.19.0_SOURCE/ax88179_178a.c:816:19: error: initialization of ‘int (*)(struct net_device *, struct ethtool_eeprom *, u8 *)’ {aka ‘int (*)(struct net_device *, struct ethtool_eeprom *, unsigned char *)’} from incompatible pointer type ‘int (*)(struct net_device *, struct ethtool_cmd *)’ [-Werror=incompatible-pointer-types]
  816 |  .get_settings  = ax88179_get_settings,
      |                   ^~~~~~~~~~~~~~~~~~~~
/home/julius/Downloads/AX88179_178A_LINUX_DRIVER_v1.19.0_SOURCE/ax88179_178a.c:816:19: note: (near initialization for ‘ax88179_ethtool_ops.set_eeprom’)
/home/julius/Downloads/AX88179_178A_LINUX_DRIVER_v1.19.0_SOURCE/ax88179_178a.c:817:3: error: ‘struct ethtool_ops’ has no member named ‘set_settings’; did you mean ‘get_strings’?
  817 |  .set_settings  = ax88179_set_settings,
      |   ^~~~~~~~~~~~
      |   get_strings
/home/julius/Downloads/AX88179_178A_LINUX_DRIVER_v1.19.0_SOURCE/ax88179_178a.c:817:19: error: initialization of ‘int (*)(struct net_device *, struct ethtool_coalesce *)’ from incompatible pointer type ‘int (*)(struct net_device *, struct ethtool_cmd *)’ [-Werror=incompatible-pointer-types]
  817 |  .set_settings  = ax88179_set_settings,
      |                   ^~~~~~~~~~~~~~~~~~~~
/home/julius/Downloads/AX88179_178A_LINUX_DRIVER_v1.19.0_SOURCE/ax88179_178a.c:817:19: note: (near initialization for ‘ax88179_ethtool_ops.get_coalesce’)
cc1: some warnings being treated as errors
make[2]: *** [scripts/Makefile.build:290: /home/julius/Downloads/AX88179_178A_LINUX_DRIVER_v1.19.0_SOURCE/ax88179_178a.o] Error 1
make[1]: *** [Makefile:1655: _module_/home/julius/Downloads/AX88179_178A_LINUX_DRIVER_v1.19.0_SOURCE] Error 2
make[1]: Leaving directory '/usr/src/linux-headers-5.3.0-40-generic'
make: *** [Makefile:30: default] Error 2

По-настоящему странно то, что я проверил адаптер на рабочем столе Ubuntu вживую и запустил его, не предпринимая дальнейших действий ... Так что я думаю, что это проблема с драйверами. Переход на рабочий стол Ubuntu не вариант для меня, потому что у меня только 2 ГБ ОЗУ, а сервер Ubuntu использует ~ 400 МБ в режиме ожидания, тогда как рабочий стол Ubuntu использует более 1,3 ГБ, так что да ... cat /etc/netplan/*.yaml приводит к

# This file is generated from information provided by
# the datasource.  Changes to it will not persist across an instance.
# To disable cloud-init's network configuration capabilities, write a file
# /etc/cloud/cloud.cfg.d/99-disable-network-config.cfg with the following:
# network: {config: disabled}
network:
    ethernets:
        enp1s0:
            dhcp4: true
    version: 2

Я буду очень рад, если кто-нибудь сможет мне помочь! Заранее спасибо.

0
задан 7 March 2020 в 22:56

1 ответ

Согласно OP (в edits):

Заработало, отредактировав файл, расположенный в /etc/netplan/, на:

network:
Ethernet:
enp1s0:
DHCP4: правда
enx000ec65d0eff:
DHCP4: правда
версия: 2

Спасибо chili555.

1
ответ дан 7 May 2020 в 14:29

Другие вопросы по тегам:

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