私はKaliを初めて使用していますが、StackExchangeの誰かが問題を解決するには、次の手順に従うと言っているのを見ました。試しましたが、次のエラーが発生しました。私の場合、ファームウェアに問題があるようです。助けてください。
提供されるソリューション:
ほとんどすべてのHPノートブックにはこの問題があります。つまり、WiFiアダプタには1つのアンテナしかないため、別のファームウェアをインストールする必要があります。このようなことを繰り返し繰り返さなければならず、台本を作りました。 USBテザリングを使用してイーサネット接続を接続し、
fixwifi.sh
以下を使用してファイルを作成します。
nano fixwifi.sh
コンテンツのコピー
apt install linux-headers-$(uname -r) git build-essential dkms
git clone git clone -b extended https://github.com/lwfinger/rtlwifi_new.git
sudo dkms add ./rtlwifi_new
sudo dkms install rtlwifi-new/0.6
sudo modprobe -r rtl8723de && sudo modprobe rtl8723de
echo "options rtl8723de ant_sel=2" | sudo tee /etc/modprobe.d/rtl8723de.conf
文書を保存
Ctrl+SとCtrl+X
それを使って実行
chmod +x fixwifi.sh && ./fixwifi.sh
今行ってもいいです。
Error:Reading package lists... Done
Building dependency tree
Reading state information... Done
build-essential is already the newest version (12.8).
dkms is already the newest version (2.8.2-2).
git is already the newest version (1:2.27.0-1).
linux-headers-5.6.0-kali2-amd64 is already the newest version (5.6.14-2kali1).
0 upgraded, 0 newly installed, 0 to remove and 884 not upgraded.
fatal: Too many arguments.
使用法:git clone [<options>] [--] <repo> [<dir>]
-v, --verbose be more verbose
-q, --quiet be more quiet
--progress force progress reporting
-n, --no-checkout don't create a checkout
--bare create a bare repository
--mirror create a mirror repository (implies bare)
-l, --local to clone from a local repository
--no-hardlinks don't use local hardlinks, always copy
-s, --shared setup as shared repository
--recurse-submodules[=<pathspec>]
initialize submodules in the clone
--recursive ... alias of --recurse-submodules
-j, --jobs <n> number of submodules cloned in parallel
--template <template-directory>
directory from which templates will be used
--reference <repo> reference repository
--reference-if-able <repo>
reference repository
--dissociate use --reference only while cloning
-o, --origin <name> use <name> instead of 'origin' to track upstream
-b, --branch <branch>
checkout <branch> instead of the remote's HEAD
-u, --upload-pack <path>
path to git-upload-pack on the remote
--depth <depth> create a shallow clone of that depth
--shallow-since <time>
create a shallow clone since a specific time
--shallow-exclude <revision>
deepen history of shallow clone, excluding rev
--single-branch clone only one branch, HEAD or --branch
--no-tags don't clone any tags, and make later fetches not to follow them
--shallow-submodules any cloned submodules will be shallow
--separate-git-dir <gitdir>
separate git dir from working tree
-c, --config <key=value>
set config inside the new repository
--server-option <server-specific>
option to transmit
-4, --ipv4 use IPv4 addresses only
-6, --ipv6 use IPv6 addresses only
--filter <args> object filtering
--remote-submodules any cloned submodules will use their remote-tracking branch
--sparse initialize sparse-checkout file to include only files at root
間違い!
Could not find module source directory.
Directory: /usr/src/.-rtlwifi_new does not exist.
Error! Could not find module source directory.
Directory: /usr/src/rtlwifi-new-0.6 does not exist.
modprobe: FATAL: Module rtl8723de not found.
options rtl8723de ant_sel=2
私の$ lspci -vq
結果
02:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller (rev 15)
DeviceName: Hanksville Gbe Lan Connection
Subsystem: Hewlett-Packard Company RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller
Flags: bus master, fast devsel, latency 0, IRQ 16
I/O ports at 4000 [size=256]
Memory at b1104000 (64-bit, non-prefetchable) [size=4K]
Memory at b1100000 (64-bit, non-prefetchable) [size=16K]
Capabilities: [40] Power Management version 3
Capabilities: [50] MSI: Enable- Count=1/1 Maskable- 64bit+
Capabilities: [70] Express Endpoint, MSI 01
Capabilities: [b0] MSI-X: Enable+ Count=4 Masked-
Capabilities: [100] Advanced Error Reporting
Capabilities: [140] Virtual Channel
Capabilities: [160] Device Serial Number 01-00-00-00-68-4c-e0-00
Capabilities: [170] Latency Tolerance Reporting
Capabilities: [178] L1 PM Substates
Kernel driver in use: r8169
Kernel modules: r8169
03:00.0 Network controller: Realtek Semiconductor Co., Ltd. RTL8723DE 802.11b/g/n PCIe Adapter
DeviceName: Hanksville Gbe Lan Connection
Subsystem: Hewlett-Packard Company RTL8723DE 802.11b/g/n PCIe Adapter
Flags: bus master, fast devsel, latency 0, IRQ 11
I/O ports at 3000 [size=256]
Memory at b1000000 (64-bit, non-prefetchable) [size=64K]
Capabilities: [40] Power Management version 3
Capabilities: [50] MSI: Enable- Count=1/1 Maskable- 64bit+
Capabilities: [70] Express Endpoint, MSI 00
Capabilities: [100] Advanced Error Reporting
Capabilities: [148] Virtual Channel
Capabilities: [168] Device Serial Number 00-e0-4c-00-00-00-00-00
Capabilities: [178] Latency Tolerance Reporting
Capabilities: [180] L1 PM Substates
Kernel modules: wl
iwconfig results:
lo no wireless extensions.
eth0 no wireless extensions.
usb0 no wireless extensions.
wlan0 IEEE 802.11 ESSID:off/any
Mode:Managed Access Point: Not-Associated Tx-Power=20 dBm
Retry short limit:7 RTS thr:off Fragment thr:off
Encryption key:off
Power Management:on
wlan1 IEEE 802.11 ESSID:off/any
Mode:Managed Access Point: Not-Associated Tx-Power=20 dBm
Retry short limit:7 RTS thr:off Fragment thr:off
Encryption key:off
Power Management:on
hwsim0 no wireless extensions.
ifconfig results:
eth0: flags=4099<UP,BROADCAST,MULTICAST> mtu 1500
ether 18:60:24:14:83:0b 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 12 bytes 556 (556.0 B)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 12 bytes 556 (556.0 B)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
usb0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet 192.168.42.53 netmask 255.255.255.0 broadcast 192.168.42.255
inet6 2401:4900:2586:2d5e:d805:78ff:fe65:65b3 prefixlen 64 scopeid 0x0<global>
inet6 fe80::d805:78ff:fe65:65b3 prefixlen 64 scopeid 0x20<link>
inet6 2401:4900:2586:2d5e:fd3a:dc44:a795:21ca prefixlen 64 scopeid 0x0<global>
ether da:05:78:65:65:b3 txqueuelen 1000 (Ethernet)
RX packets 32851 bytes 37101808 (35.3 MiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 21202 bytes 3335363 (3.1 MiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
wlan0: flags=4099<UP,BROADCAST,MULTICAST> mtu 1500
ether 52:fd:b2:36:a8:38 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
wlan1: flags=4099<UP,BROADCAST,MULTICAST> mtu 1500
ether 72:06:d6:de:52:48 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
答え1
最初の実際のエラーメッセージは次のとおりです。
fatal: Too many arguments.
usage: git clone [<options>] [--] <repo> [<dir>]
[... rest of git usage message omitted ...]
git clone
これは、スクリプトのコマンドに何か項目があってはならないことを伝えます。関連する行は次のとおりです。
git clone git clone -b extended https://github.com/lwfinger/rtlwifi_new.git
これは繰り返さないでくださいgit clone
。
後続のエラーメッセージは、最初の失敗によって発生します。モジュールのソースコードをgit
ダウンロードできないため、rtl8723de
そのソースコードをコンパイルして結果ドライバをインストールするコマンドも失敗します。
出力にはドライバが現在RTL8723DEカードを使用しており、スクリプトはそれを変更しないというlspci -vq
内容も示しています。wl
もし実際にスクリプトがダウンロードするドライバのGitHubページを読みます。、次のテキストが表示されます。
このリポジトリのマスターブランチは正式に廃棄されました。 5.0より高いカーネルバージョンを実行している場合は、カーネルに組み込まれているドライバを使用してください。これにより作業量が大幅に削減されます。
スクリプトが使用したいブランチのサブページを見ると、extended
以下も見つかります。
このリポジトリの拡張分岐は正式に廃棄されました。 5.0より高いカーネルバージョンを実行している場合は、カーネルに組み込まれているドライバを使用してください。これにより作業量が大幅に削減されます。
どちらにも次の推奨事項が含まれています。
Realtek RTL8723DE、RTL8822BE、RTL8822CE、またはRTL8821CEを使用する場合は、rtw88分岐が必要です。
これはあなたが試すべき提案とスクリプトを提案します。昔ながらかもしれません提案とスクリプトが書かれた後、Kaliのドライバ開発とカーネルリリースは改善され続けています。
ただし、まだこのドライバを使用したい場合は、このスクリプトの修正版をお勧めします。
apt install linux-headers-$(uname -r) git build-essential dkms
git clone -b rtw88 https://github.com/lwfinger/rtlwifi_new.git
sudo dkms add ./rtlwifi_new
sudo dkms install rtlwifi-new/0.6
echo "options rtl8723de ant_sel=2" | sudo tee /etc/modprobe.d/rtl8723de.conf
echo "blacklist wl" | sudo tee -a /etc/modprobe.d/rtl8723de.conf
sudo modprobe -r rtl8723de wl && sudo modprobe rtl8723de
したがって、その行を変更するgit clone
と、冗長コマンドが削除され、ドライバブランチが廃止され、現在extended
推奨に変更されますrtw88
。wl
新しいrt8723de
モジュールと交換できるように、現在のドライバのブラックリストを追加しました。また、モジュールが実際に再起動せずにロードされている場合でも、そのオプションを選択するように作業順序を少し変更しましたant_sel=2
。ただし、カードがすでに有効になっているため、スクリプトが古いドライバを削除できない可能性があるため、スクリプトを実行した後に再起動する必要があります。
新しいドライバがまったく機能しない場合は、システム設定を開始した場所に戻す方法は次のとおりです。
sudo rm /etc/modprobe.d/rtl8723de.conf
sudo dkms remove rtlwifi-new/0.6 --all