Realtek 8168 스크립트가 작동하지 않습니다

Realtek 8168 스크립트가 작동하지 않습니다

최신 Realtek 드라이버를 사용하고 싶지만 Ubuntu 22에서는 사용할 수 없습니다. Realtek 스크립트는 이전 오픈 소스 드라이버를 제거했으며 USB를 사용하여 휴대폰에 연결했습니다. Realtek 로그는 다음과 같습니다.

make -C src/ clean
make[1]: Entering directory '/home/deb/Downloads/r8168-8.050.03/src'
make -C /lib/modules/5.15.0-41-generic/build M=/home/deb/Downloads/r8168-8.050.03/src clean
make[2]: Entering directory '/usr/src/linux-headers-5.15.0-41-generic'
  CLEAN   /home/deb/Downloads/r8168-8.050.03/src/Module.symvers
make[2]: Leaving directory '/usr/src/linux-headers-5.15.0-41-generic'
make[1]: Leaving directory '/home/deb/Downloads/r8168-8.050.03/src'
make -C src/ modules
make[1]: Entering directory '/home/deb/Downloads/r8168-8.050.03/src'
make -C /lib/modules/5.15.0-41-generic/build M=/home/deb/Downloads/r8168-8.050.03/src modules
make[2]: Entering directory '/usr/src/linux-headers-5.15.0-41-generic'
  CC [M]  /home/deb/Downloads/r8168-8.050.03/src/r8168_n.o
  CC [M]  /home/deb/Downloads/r8168-8.050.03/src/r8168_asf.o
  CC [M]  /home/deb/Downloads/r8168-8.050.03/src/rtl_eeprom.o
  CC [M]  /home/deb/Downloads/r8168-8.050.03/src/rtltool.o
  LD [M]  /home/deb/Downloads/r8168-8.050.03/src/r8168.o
  MODPOST /home/deb/Downloads/r8168-8.050.03/src/Module.symvers
  CC [M]  /home/deb/Downloads/r8168-8.050.03/src/r8168.mod.o
  LD [M]  /home/deb/Downloads/r8168-8.050.03/src/r8168.ko
  BTF [M] /home/deb/Downloads/r8168-8.050.03/src/r8168.ko
make[2]: Leaving directory '/usr/src/linux-headers-5.15.0-41-generic'
make[1]: Leaving directory '/home/deb/Downloads/r8168-8.050.03/src'
make -C src/ install
make[1]: Entering directory '/home/deb/Downloads/r8168-8.050.03/src'
make -C /lib/modules/5.15.0-41-generic/build M=/home/deb/Downloads/r8168-8.050.03/src INSTALL_MOD_DIR=kernel/drivers/net/ethernet/realtek modules_install
make[2]: Entering directory '/usr/src/linux-headers-5.15.0-41-generic'
  INSTALL /lib/modules/5.15.0-41-generic/kernel/drivers/net/ethernet/realtek/r8168.ko
  SIGN    /lib/modules/5.15.0-41-generic/kernel/drivers/net/ethernet/realtek/r8168.ko
  DEPMOD  /lib/modules/5.15.0-41-generic
make[2]: Leaving directory '/usr/src/linux-headers-5.15.0-41-generic'
make[1]: Leaving directory '/home/deb/Downloads/r8168-8.050.03/src'

이것은 쉘 출력입니다:

deb@deb:~/Downloads/r8168-8.050.03$ sudo bash autorun.sh

Check old driver and unload it. 
Build the module and install 
Skipping BTF generation for /home/deb/Downloads/r8168-8.050.03/src/r8168.ko due to unavailability of vmlinux 
arch/x86/Makefile:142: CONFIG_X86_X32 enabled but no binutils support 
At main.c:160:
    - SSL error:FFFFFFFF80000002:system library::No such file or directory: ../crypto/bio/bss_file.c:67
    - SSL error:10000080:BIO routines::no such file: ../crypto/bio/bss_file.c:75 
sign-file: certs/signing_key.pem: No such file or directory 
Warning: modules_install: missing 'System.map' file. Skipping depmod. 
DEPMOD 5.15.0-41-generic 
load module r8168 
modprobe: ERROR: could not insert 'r8168': Operation not permitted 
Updating initramfs. Please wait. 
update-initramfs: Generating /boot/initrd.img-5.15.0-41-generic Completed.

Lspci-k

02:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller (rev 15)
Subsystem: Acer Incorporated [ALI] RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller
Kernel modules: r8168

enp2s0은 nmcli에서 사용할 수 없습니다.

왜 Linux를 사용하려고 할 때마다 고통스러운 일에 직면하게 되는지 모르겠지만 어쨌든 그런 일이 발생합니다.

몇 가지 조언?

수정===================================

@telcoM 유익한 답변 감사드립니다. 그러나 상황은 더욱 악화되었습니다. MOK 파일이 있지만 다음과 같습니다.

deb@deb:~$ sudo ls /var/lib/shim-signed/mok
MOK.der  MOK.priv

deb@deb:~$ ls /lib/modules/$(uname -r)/kernel/drivers/net/ethernet/realtek
8139cp.ko  8139too.ko  atp.ko  r8168.ko  r8169.bak

deb@deb:~$ sudo kmodsign sha512 \ /var/lib/shim-signed/mok/MOK.priv \ /var/lib/shim-signed/mok/MOK.der \ /lib/modules/$(uname -r)/kernel/drivers/net/ethernet/realtek/r8168.ko
At main.c:249:
- SSL error:FFFFFFFF80000002:system library::No such file or directory: ../crypto/bio/bss_file.c:67
- SSL error:10000080:BIO routines::no such file: ../crypto/bio/bss_file.c:75
kmodsign:  /var/lib/shim-signed/mok/MOK.priv: No such file or directory

그래서 openssl을 확인했습니다.

deb@deb:~$ ls /usr/lib/ssl/
certs  misc  openssl.cnf  private

재설치가 도움이 되었다고 말했지만 Chrome과 많은 항목도 삭제되었습니다.

deb@deb:~$ sudo apt-get remove openssl
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
The following packages were automatically installed and are no longer required:
  apport-symptoms apturl-common cups-server-common gir1.2-dbusmenu-glib-0.4 gir1.2-dee-1.0 gir1.2-goa-1.0 gir1.2-snapd-1 gir1.2-unity-7.0
  gnome-software-common hplip-data libauthen-sasl-perl libclone-perl libcupsimage2 libdata-dump-perl libfile-listing-perl libflatpak0
  libfont-afm-perl libglu1-mesa libhpmud0 libhtml-form-perl libhtml-format-perl libhtml-parser-perl libhtml-tagset-perl libhtml-tree-perl
  libhttp-cookies-perl libhttp-daemon-perl libhttp-date-perl libhttp-message-perl libhttp-negotiate-perl libimagequant0 libio-html-perl
  libio-socket-ssl-perl liblwp-mediatypes-perl libmailtools-perl libnet-http-perl libnet-smtp-ssl-perl libnet-ssleay-perl libraqm0
  libsane-hpaio libtie-ixhash-perl libtimedate-perl libtry-tiny-perl libvncclient1 libwww-robotrules-perl libxatracker2
  libxml-xpathengine-perl libxvmc1 perl-openssl-defaults printer-driver-postscript-hp python3-blinker python3-cffi-backend python3-chardet
  python3-cryptography python3-dateutil python3-debconf python3-debian python3-distro-info python3-distupgrade python3-idna python3-jeepney
  python3-jwt python3-keyring python3-lazr.uri python3-nacl python3-oauthlib python3-olefile python3-pexpect python3-pil
  python3-problem-report python3-protobuf python3-ptyprocess python3-pymacaroons python3-pyparsing python3-renderpm python3-reportlab
  python3-reportlab-accel python3-rfc3339 python3-secretstorage python3-six python3-systemd python3-tz python3-update-manager
  python3-urllib3 python3-wadllib ubuntu-advantage-desktop-daemon unattended-upgrades x11-apps x11-session-utils xbitmaps xinit xinput
  xserver-xorg-input-all xserver-xorg-input-libinput xserver-xorg-input-wacom xserver-xorg-video-all xserver-xorg-video-amdgpu
  xserver-xorg-video-ati xserver-xorg-video-fbdev xserver-xorg-video-intel xserver-xorg-video-nouveau xserver-xorg-video-qxl
  xserver-xorg-video-radeon xserver-xorg-video-vesa xserver-xorg-video-vmware
Use 'sudo apt autoremove' to remove them.
The following packages will be REMOVED:
  apport apport-gtk apturl bluez-cups ca-certificates cups cups-browsed cups-core-drivers cups-daemon gnome-online-accounts gnome-software
  gnome-software-plugin-flatpak gnome-software-plugin-snap google-chrome-stable hplip liblwp-protocol-https-perl libnet-dbus-perl libtpms0
  libwww-perl libxml-parser-perl libxml-twig-perl nautilus-share openssl printer-driver-hpcups printer-driver-splix python3-apport
  python3-certifi python3-httplib2 python3-launchpadlib python3-lazr.restfulclient python3-macaroonbakery python3-requests
  python3-software-properties snapd software-properties-common software-properties-gtk ssl-cert swtpm swtpm-tools ubuntu-desktop
  ubuntu-desktop-minimal ubuntu-release-upgrader-core ubuntu-release-upgrader-gtk update-manager update-manager-core update-notifier
  update-notifier-common x11vnc xorg xserver-xorg
0 upgraded, 0 newly installed, 50 to remove and 0 not upgraded.
After this operation, 397 MB disk space will be freed.
Do you want to continue? [Y/n] y
(Reading database ... 197839 files and directories currently installed.)
Removing apport-gtk (2.20.11-0ubuntu82.1) ...
Removing apport (2.20.11-0ubuntu82.1) ...
Removing nautilus-share (0.7.3-2ubuntu6) ...
Removing apturl (0.5.2ubuntu22) ...
Removing bluez-cups (5.64-0ubuntu1) ...
Removing google-chrome-stable (103.0.5060.134-1) ...
Removing ubuntu-desktop (1.481) ...
Removing printer-driver-splix (2.0.0+svn315-7fakesync1build3) ...
Removing hplip (3.21.12+dfsg0-1) ...
Removing printer-driver-hpcups (3.21.12+dfsg0-1) ...
Removing cups (2.4.1op1-1ubuntu4.1) ...
Removing cups-browsed (1.28.15-0ubuntu1) ...
Removing cups-core-drivers (2.4.1op1-1ubuntu4.1) ...
Removing cups-daemon (2.4.1op1-1ubuntu4.1) ...
Removing gnome-online-accounts (3.44.0-1ubuntu1) ...
Removing gnome-software-plugin-flatpak (41.5-2) ...
Removing gnome-software-plugin-snap (41.5-2) ...
Removing gnome-software (41.5-2) ...
Removing libnet-dbus-perl (1.2.0-1build3) ...
Removing libxml-twig-perl (1:3.52-1) ...
Removing libxml-parser-perl:amd64 (2.46-3build1) ...
Removing swtpm-tools (0.6.3-0ubuntu3) ...
Removing swtpm (0.6.3-0ubuntu3) ...
Removing libtpms0:amd64 (0.9.3-0ubuntu1) ...
Removing x11vnc (0.9.16-8) ...
Removing ssl-cert (1.1.2) ...
Removing ubuntu-desktop-minimal (1.481) ...
Removing xorg (1:7.7+23ubuntu2) ...
Removing xserver-xorg (1:7.7+23ubuntu2) ...
Removing python3-apport (2.20.11-0ubuntu82.1) ...
Removing python3-macaroonbakery (1.3.1-2) ...
Removing python3-requests (2.25.1+dfsg-2) ...
Removing python3-certifi (2020.6.20-1) ...
Removing software-properties-gtk (0.99.22.2) ...
Removing software-properties-common (0.99.22.2) ...
Removing python3-software-properties (0.99.22.2) ...
Removing python3-launchpadlib (1.10.16-1) ...
Removing python3-lazr.restfulclient (0.14.4-1) ...
Removing python3-httplib2 (0.20.2-2) ...
Removing snapd (2.55.5+22.04) ...
Warning: Stopping snapd.service, but it can still be activated by:
  snapd.socket
Removing liblwp-protocol-https-perl (6.10-1) ...
Removing libwww-perl (6.61-1) ...
Removing update-notifier (3.192.54) ...
Removing update-manager (1:22.04.9) ...
Removing update-notifier-common (3.192.54) ...
Removing update-manager-core (1:22.04.9) ...
Removing ubuntu-release-upgrader-gtk (1:22.04.11) ...
Removing ubuntu-release-upgrader-core (1:22.04.11) ...
Removing ca-certificates (20211016) ...
Removing dangling symlinks from /etc/ssl/certs... done.
Removing openssl (3.0.2-0ubuntu1.6) ...
Processing triggers for hicolor-icon-theme (0.17-2) ...
Processing triggers for gnome-menus (3.36.0-1ubuntu3) ...
Processing triggers for libglib2.0-0:amd64 (2.72.1-1) ...
Processing triggers for libc-bin (2.35-0ubuntu3) ...
Processing triggers for man-db (2.10.2-1) ...
Processing triggers for dbus (1.12.20-2ubuntu4) ...
Processing triggers for shared-mime-info (2.1-2) ...
Processing triggers for mailcap (3.70+nmu1ubuntu1) ...
Processing triggers for desktop-file-utils (0.26-1ubuntu3) ...

그리고

deb@deb:~$ sudo apt-get install openssl
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
The following packages were automatically installed and are no longer required:
  apport-symptoms apturl-common cups-server-common gir1.2-dbusmenu-glib-0.4 gir1.2-dee-1.0 gir1.2-goa-1.0 gir1.2-snapd-1 gir1.2-unity-7.0
  gnome-software-common hplip-data libauthen-sasl-perl libclone-perl libcupsimage2 libdata-dump-perl libfile-listing-perl libflatpak0
  libfont-afm-perl libglu1-mesa libhpmud0 libhtml-form-perl libhtml-format-perl libhtml-parser-perl libhtml-tagset-perl libhtml-tree-perl
  libhttp-cookies-perl libhttp-daemon-perl libhttp-date-perl libhttp-message-perl libhttp-negotiate-perl libimagequant0 libio-html-perl
  libio-socket-ssl-perl liblwp-mediatypes-perl libmailtools-perl libnet-http-perl libnet-smtp-ssl-perl libnet-ssleay-perl libraqm0
  libsane-hpaio libtie-ixhash-perl libtimedate-perl libtry-tiny-perl libvncclient1 libwww-robotrules-perl libxatracker2
  libxml-xpathengine-perl libxvmc1 perl-openssl-defaults printer-driver-postscript-hp python3-blinker python3-cffi-backend python3-chardet
  python3-cryptography python3-dateutil python3-debconf python3-debian python3-distro-info python3-distupgrade python3-idna python3-jeepney
  python3-jwt python3-keyring python3-lazr.uri python3-nacl python3-oauthlib python3-olefile python3-pexpect python3-pil
  python3-problem-report python3-protobuf python3-ptyprocess python3-pymacaroons python3-pyparsing python3-renderpm python3-reportlab
  python3-reportlab-accel python3-rfc3339 python3-secretstorage python3-six python3-systemd python3-tz python3-update-manager
  python3-urllib3 python3-wadllib ubuntu-advantage-desktop-daemon unattended-upgrades x11-apps x11-session-utils xbitmaps xinit xinput
  xserver-xorg-input-all xserver-xorg-input-libinput xserver-xorg-input-wacom xserver-xorg-video-all xserver-xorg-video-amdgpu
  xserver-xorg-video-ati xserver-xorg-video-fbdev xserver-xorg-video-intel xserver-xorg-video-nouveau xserver-xorg-video-qxl
  xserver-xorg-video-radeon xserver-xorg-video-vesa xserver-xorg-video-vmware
Use 'sudo apt autoremove' to remove them.
Suggested packages:
  ca-certificates
The following NEW packages will be installed:
  openssl
0 upgraded, 1 newly installed, 0 to remove and 0 not upgraded.
Need to get 0 B/1.184 kB of archives.
After this operation, 2.102 kB of additional disk space will be used.
Selecting previously unselected package openssl.
(Reading database ... 195686 files and directories currently installed.)
Preparing to unpack .../openssl_3.0.2-0ubuntu1.6_amd64.deb ...
Unpacking openssl (3.0.2-0ubuntu1.6) ...
Setting up openssl (3.0.2-0ubuntu1.6) ...
Processing triggers for man-db (2.10.2-1) ...

Ubuntu 개인 라벨 키가 무엇인지 모르겠습니다. 어쩌면 문제는 "..crypto/" 디렉토리일까요?

답변1

보안 부팅이 활성화되어 있고 드라이버 패키지를 유지 관리하는 사람이 보안 부팅 요구 사항을 모르거나 전혀 신경 쓰지 않을 수 있습니다.

설치하려는 드라이버가 이 드라이버입니까?https://github.com/mtorromeo/r8168

다음 메시지는 무해할 수 있습니다.

Skipping BTF generation for /home/deb/Downloads/r8168-8.050.03/src/r8168.ko due to unavailability of vmlinux 
arch/x86/Makefile:142: CONFIG_X86_X32 enabled but no binutils support 

그러나 이 메시지는 보안 부팅이 활성화된 상태에서 사용할 모든 표준 모듈에 서명하도록 커널이 구성되었으며 드라이버가 동일한 프로세스를 사용하려고 시도하지만 기본적으로 Ubuntu의 개인 서명 키가 없기 때문에 실패함을 나타냅니다.

At main.c:160:
    - SSL error:FFFFFFFF80000002:system library::No such file or directory: ../crypto/bio/bss_file.c:67
    - SSL error:10000080:BIO routines::no such file: ../crypto/bio/bss_file.c:75 
sign-file: certs/signing_key.pem: No such file or directory 

이는 결과 모듈이 서명되지 않음을 의미하므로 보안 부팅이 활성화된 시스템은 이를 거부해야 합니다.

다음 단계에 따라 직접 문제를 해결할 수 있습니다.

  1. 아직 보안 부팅 MOK(머신 소유자 키)를 생성하지 않았다면 지금 생성하세요.
sudo update-secureboot-policy --new-key

MOK가 이미 존재하는 경우(즉, /var/lib/shim-signed/mok/디렉터리가 존재하고 비어 있지 않은 경우) 이 단계를 건너뛰고 사용할 수 있습니다.

Ubuntu 22를 설치하는 동안 "그래픽, Wi-Fi 하드웨어 및 기타 미디어 형식용 타사 소프트웨어 설치" 옵션과 "보안 부팅 구성" 하위 옵션을 활성화한 경우 기존 MOK를 생성했어야 합니다. . 이 경우 시스템에서 이미 사용하고 있는 다른 타사 드라이버에 문제가 발생할 수 있으므로 새 MOK를 생성하면 안 됩니다.

  1. 다음 명령을 사용하여 kmodsign모듈에 서명합니다 .
sudo kmodsign sha512 \
    /var/lib/shim-signed/mok/MOK.priv \
    /var/lib/shim-signed/mok/MOK.der \
    /lib/modules/$(uname -r)/kernel/drivers/net/r8168.ko
  1. initramfs를 업데이트하세요.
sudo update-initramfs -u
  1. 1단계에서 새 MOK를 생성한 경우 MOK 등록 절차를 수행해야 합니다. 먼저 다음 명령을 실행하면 새 MOK 등록 비밀번호를 생성하라는 메시지가 표시됩니다.
sudo mokutil --import /var/lib/shim-signed/mok/MOK.der

명령이 완료되면 재부팅해야 합니다. 그러면 부팅 프로세스가 중단되고 shimx64.efi상단에 블루 스크린이 표시됩니다. Perform MOK management"MOK 등록" 옵션을 선택하고 확인한 후 위 명령을 사용하여 방금 생성한 MOK 등록 비밀번호를 입력해야 합니다. 성공하면 상단 항목에 "다시 시작"이라는 작은 메뉴가 표시됩니다. 이를 선택하면 시스템이 보안 부팅 서명 r8168.ko모듈을 사용하여 정상적으로 부팅됩니다.

MOK 등록이 성공적으로 완료되면 MOK 등록 비밀번호가 생성됩니다.다시는 필요하지 않을 거야: MOK를 다시 등록해야 하는 경우(아마도 BIOS를 새로 고친 후) 이 작업을 위해 새 등록 비밀번호가 설정됩니다.

시스템이 커널 업데이트를 받을 때마다 새 커널이 다시 r8168.ko 모듈을 로드하지 못할 수 있습니다. 이런 일이 발생하면 이 드라이버를 수동으로 다시 빌드해야 합니다.

  1. cd드라이버 패키지를 추출한 디렉터리로 이동합니다.
cd ~/Downloads/r8168-8.050.03
  1. 재방송 autorun.sh:
sudo bash autorun.sh
  1. 재구축된 모듈에 서명합니다. (가독성을 위해 여러 줄로 묶었습니다. 이 명령을 단일 명령줄로 입력하려면 백슬래시를 제거하세요.)
sudo kmodsign sha512 \
    /var/lib/shim-signed/mok/MOK.priv \
    /var/lib/shim-signed/mok/MOK.der \
    /lib/modules/$(uname -r)/kernel/drivers/net/r8168.ko
  1. initramfs를 업데이트하세요.
sudo update-initramfs -u

예, 드라이버 패키지 관리자가 DKMS 시스템을 사용하도록 패키지를 업데이트하면 자동화될 수 있습니다.

관련 정보