私のイーサネットデバイスはDebianにありません

私のイーサネットデバイスはDebianにありません

私のコンピュータには2つのオペレーティングシステムがインストールされていますが、今日は奇妙なことが起こりました。私のイーサネットデバイスはDebianにありません! grubでwin10と入力し、pppoe経由でインターネットに接続します。
grubにdebian10と入力します。

ifconfig

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 20  bytes 1120 (1.0 KiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 20  bytes 1120 (1.0 KiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0



sudo lshw -C network
  *-network UNCLAIMED       
       description: Ethernet controller
       product: RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller
       vendor: Realtek Semiconductor Co., Ltd.
       physical id: 0
       bus info: pci@0000:06:00.0
       version: 15
       width: 64 bits
       clock: 33MHz
       capabilities: pm msi pciexpress msix bus_master cap_list
       configuration: latency=0
       resources: ioport:f000(size=256) memory:fcd04000-fcd04fff memory:fcd00000-fcd03fff

ipconfig /allwin10からmacアドレス情報(xx:xx:70:c2:2c:4a)を取得します。

sudo pppoeconf  xx:xx:70:c2:2c:4a
Cannot find device "xx:xx:70:c2:2c:4a"
ioctl(SIOCGIFHWADDR): No such device
Cannot find device "xx:xx:70:c2:2c:4a"
Plugin rp-pppoe.so loaded.
/usr/sbin/pppd: unknown host: nic-00

r8168-dkms_8.048.03-1~bpo10+1_all.debwin10を使用してUSBフラッシュドライブにダウンロードし、debian10と入力します。

sudo mount /dev/sdc  /mnt
sudo dpkg -i  /mnt/r8168-dkms_8.048.03-1~bpo10+1_all.deb

再インストール後:

sudo pppoeconf  xx:xx:70:c2:2c:4a 
#input account name and password
sudo pon dsl-provier
plugin rp-pppoe.so load
/usr/sbin/pppd:unknown host nic-00

昨日、debian10でpppoe経由でインターネットに接続できましたが、どうすれば解決できますか?

Windowsが休止状態の場合、カードはDebianで利用できない可能性があります。回避策は、Windowsが休止状態ではなく終了するようにすることです。
@Nikita Kipriyanov、Windowsとは何の関係もないと確信しています。
以前のdebian10がイーサネットデバイスを認識しなかった後、同じバージョンの新しいdebian10をインストールし、私のコンピュータには2つではなく3つのオペレーティングシステムがあります。 ここに画像の説明を入力してください。

新しくインストールされたDebianに入ると、pppoeconfを介してインターネットにアクセスできます!つまり、win10と新しくインストールされたdebian10の両方がインターネットに接続できるということです!私の古いdebian10がEthernetデバイスを認識しないのはなぜですか? win10からUSBにダウンロードし、以前のdebian10からdpkgにダウンロードしましたが、何も変更されませんでした
!すべてのドライバーは以下を表示します。firmware-realtek_20190114-2_all.deb

modinfo r8169
filename:       /lib/modules/5.10.0-0.bpo.7-amd64/kernel/drivers/net/ethernet/realtek/r8169.ko
firmware:       rtl_nic/rtl8125b-2.fw
firmware:       rtl_nic/rtl8125a-3.fw
firmware:       rtl_nic/rtl8107e-2.fw
firmware:       rtl_nic/rtl8107e-1.fw
firmware:       rtl_nic/rtl8168fp-3.fw
firmware:       rtl_nic/rtl8168h-2.fw
firmware:       rtl_nic/rtl8168h-1.fw
firmware:       rtl_nic/rtl8168g-3.fw
firmware:       rtl_nic/rtl8168g-2.fw
firmware:       rtl_nic/rtl8106e-2.fw
firmware:       rtl_nic/rtl8106e-1.fw
firmware:       rtl_nic/rtl8411-2.fw
firmware:       rtl_nic/rtl8411-1.fw
firmware:       rtl_nic/rtl8402-1.fw
firmware:       rtl_nic/rtl8168f-2.fw
firmware:       rtl_nic/rtl8168f-1.fw
firmware:       rtl_nic/rtl8105e-1.fw
firmware:       rtl_nic/rtl8168e-3.fw
firmware:       rtl_nic/rtl8168e-2.fw
firmware:       rtl_nic/rtl8168e-1.fw
firmware:       rtl_nic/rtl8168d-2.fw
firmware:       rtl_nic/rtl8168d-1.fw
license:        GPL
softdep:        pre: realtek
description:    RealTek RTL-8169 Gigabit Ethernet driver

ls /lib/firmware/rtl_nic
rtl8105e-1.fw  rtl8107e-1.fw  rtl8125b-2.fw  rtl8168d-2.fw  rtl8168e-3.fw  rtl8168fp-3.fw  rtl8168g-3.fw  rtl8402-1.fw
rtl8106e-1.fw  rtl8107e-2.fw  rtl8153a-3.fw  rtl8168e-1.fw  rtl8168f-1.fw  rtl8168g-1.fw   rtl8168h-1.fw  rtl8411-1.fw
rtl8106e-2.fw  rtl8125a-3.fw  rtl8168d-1.fw  rtl8168e-2.fw  rtl8168f-2.fw  rtl8168g-2.fw   rtl8168h-2.fw  rtl8411-2.fw

たとえば、イーサネットデバイスはありませんenp*s*

ifconfig -a
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 20  bytes 1120 (1.0 KiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 20  bytes 1120 (1.0 KiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

uname -a
Linux debian 5.10.0-0.bpo.7-amd64 #1 SMP Debian 5.10.40-1~bpo10+1 (2021-06-04) x86_64 GNU/Linux

答え1

このパッケージには、特定のカードモデルの基本モジュールの代わりにこのモジュールをロードするようにカーネルに指示するr8168-dkms_8.048.03-1~bpo10+1_all.debファイルが含まれています。/etc/modprobe.d/r8168-dkms.confr8168r8169

パッケージにはr8168ソースコード形式のモジュールのみが含まれています。これを有効にするために、パッケージはdkmsこのユーティリティを使用して、使用している各カーネルバージョンのモジュールを自動的にビルドします。

(パッケージの内容物一覧です)

linux-headersただし、DKMSは、インストールされているカーネルのバージョンと完全に一致するコンパイラとパッケージをインストールした場合にのみ操作を実行できます。linux-headers現在、カーネルに適したパッケージがインストールされていない場合、またはr8168DKMSが自動的にモジュールをビルドしようとすると問題が発生する可能性があります。

DKMSが正しい状態であることを確認するために実行してトラブルシューティングを開始する必要がありますsudo dkms status

カーネルモジュールが正しく構築されている場合は、dkms statusコマンド出力に次の行を含める必要があります。

r8168, 8.048.03, <your current kernel version>, amd64: installed

この<your current kernel version>フィールドはの出力と正確に一致する必要がありますuname -r

installed最後の単語は、実際のバイナリモジュールが正常に構築され、現在のカーネルの/lib/modules/$(uname -r)/...ディレクトリツリーに挿入されたことを示します。他の可能なステータスワードは、builtバイナリモジュールが正常に構築されたがまだカーネルで利用できないことを意味し、これはモジュールのソースコードがインストールされたがaddedバイナリモジュールが構築されていないことを意味します。

次のコマンドを実行して適切なパッケージがインストールされていることを確認し、モジュールのlinux-headersビルドを再試行する必要があります。

sudo dkms install r8168/8.048.03

問題を報告すると、ビルドプロセスの詳細なログとプロセス中に発生したエラーメッセージを確認できます/var/lib/dkms/r8168/8.048.03/$(uname -r)/x86_64/log/make.log

デフォルトのドライバを使用するには、r8169パッケージを削除するか、r8168-dkms_8.048.03-1~bpo10+1_all.deb名前を実行して現在のinitramfsファイルに変更を伝播する必要があります。/etc/modprobe.d/r8168-dkms.conf/etc/modprobe.d/r8168-dkms.conf.disabledsudo update-initramfs -u

答え2

現在の状態を確認してください。

debian@debian:~$ sudo dkms status
r8168, 8.048.03: added
debian@debian:~$  sudo dkms install r8168/8.048.03
Error! Your kernel headers for kernel 5.10.0-0.bpo.7-amd64 cannot be found.
Please install the linux-headers-5.10.0-0.bpo.7-amd64 package,
or use the --kernelsourcedir option to tell DKMS where it's located

linux-headers-5.10.0-0.bpo.7-amd64_5.10.40-1~bpo10+1_amd64.debをUSBにダウンロードし、インストールのためにUSBをマウントしました。

sudo dpkg -i  linux-headers-5.10.0-0.bpo.7-amd64_5.10.40-1~bpo10+1_amd64.deb
Selecting previously unselected package linux-headers-5.10.0-0.bpo.7-amd64.
(Reading database ... 269528 files and directories currently installed.)
Preparing to unpack .../linux-headers-5.10.0-0.bpo.7-amd64_5.10.40-1~bpo10+1_amd64.deb ...
Unpacking linux-headers-5.10.0-0.bpo.7-amd64 (5.10.40-1~bpo10+1) ...
dpkg: dependency problems prevent configuration of linux-headers-5.10.0-0.bpo.7-amd64:
 linux-headers-5.10.0-0.bpo.7-amd64 depends on linux-headers-5.10.0-0.bpo.7-common (= 5.10.40-1~bpo10+1); however:
  Package linux-headers-5.10.0-0.bpo.7-common is not installed.
 linux-headers-5.10.0-0.bpo.7-amd64 depends on linux-kbuild-5.10 (>= 5.10.40-1~bpo10+1); however:
  Version of linux-kbuild-5.10 on system is 5.10.24-1~bpo10+1.

dpkg: error processing package linux-headers-5.10.0-0.bpo.7-amd64 (--install):
 dependency problems - leaving unconfigured
Errors were encountered while processing:
 linux-headers-5.10.0-0.bpo.7-amd64

今すぐダウンロードしてインストールしてくださいlinux-headers-5.10.0-0.bpo.5-amd64_5.10.24-1~bpo10+1_amd64.deb

sudo dpkg -i  linux-headers-5.10.0-0.bpo.5-amd64_5.10.24-1~bpo10+1_amd64.deb
sudo mv  /etc/modprobe.d/r8168-dkms.conf   /etc/modprobe.d/r8168-dkms.conf.disabled
sudo update-initramfs -u

再起動:

ip link
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN mode DEFAULT group default qlen 1000
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
2: enp6s0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP mode DEFAULT group default qlen 1000
    link/ether 00:e0:70:c2:2c:4a brd ff:ff:ff:ff:ff:ff

インターネットに接続できます!

関連情報