我目前在 Debian Bookworm 上使用联想 E14 时遇到了一个问题。当我合上盖子时,系统会像预期的那样自行挂起。当我打开盖子时,系统会唤醒。但每当我在计算机上更改某些操作(例如插入或拔出 USB 外围设备)时,甚至当我合上盖子(这是我遇到的最大问题)时,系统都会唤醒!
我可以通过以下方式重现它:
- 手动暂停计算机
- 合上电脑盖子
- 它醒了
有什么想法吗?提前谢谢!:)
我目前在 Debian Bookworm 上使用联想 E14 时遇到了一个问题。当我合上盖子时,系统会像预期的那样自行挂起。当我打开盖子时,系统会唤醒。但每当我在计算机上更改某些操作(例如插入或拔出 USB 外围设备)时,甚至当我合上盖子(这是我遇到的最大问题)时,系统都会唤醒!
我可以通过以下方式重现它:
有什么想法吗?提前谢谢!:)
我设置了一个分段的本地网络,其中每个段都划分为 VLAN,并且所有 VLAN 根部的交换机还充当所有 IP 段/VLAN 之间的路由器(交换机是运行 DNOS 9.14 的 Dell S4810)。 其中一个段是通向互联网的网关,互联网网关的本地 IP 地址是 S4810 的默认网关 IP 地址。 在将数据包转发到外部之前,它会应用 SNAT(伪装),以便转发到互联网的数据包具有默认路由器的公共地址作为源地址。 这里没什么特别的。 几乎所有事情似乎都按预期工作:任一段中的节点都可以联系其他段中的其他节点,它们都可以访问互联网并获得回复,并且该 LAN 之外的节点确实会看到正确的伪装源 IP 地址。
当 Internet 网关机器(不是 S4810)也运行带有 Proxmox 的虚拟机时,事情就变得棘手了。这台机器运行 Debian 12.5,并在通往 S4810 的物理接口之上配置了 VLAN 接口,并且 VLAN 接口本身被包装到桥接器中,每个 VLAN 一个。通往互联网的接口也包装在自己的桥接器中。我使用桥接器,以便 Proxmox VM 可以使用它们连接到任一网络。当这台机器上运行的虚拟机在 Internet 桥接器中具有虚拟接口时,它可以正确访问互联网,但源 IP 地址不需要 SNAT,也没有 SNAT。
当另一个虚拟机在其中一个 VLAN 接口/网桥上具有虚拟接口时,它可以访问相应 VLAN 中的其他计算机。此外,VLAN 段中的任何计算机都可以使用 S4810 作为默认网关毫无问题地访问互联网,包括虚拟机,只要它们不在互联网网关/Proxmox 虚拟机管理程序上运行,而是在任何其他 Proxmox 虚拟机管理程序计算机上运行。但是,当在互联网网关/Proxmox 虚拟机管理程序上运行的虚拟机想要通过其中一个 VLAN 访问互联网时,它无法这样做。就像其他按预期工作的机器一样,虚拟机配置为使用 S4810 作为默认网关。S4810 将从其接收到的任何发往互联网的数据包重定向到互联网网关/Proxmox 虚拟机管理程序,并且该网关应该使用伪装转发数据包。除了在这个精确场景中,伪装不适用
我可以看到数据包发往 S4810,我可以看到 S4810 将数据包发送回 Internet 网关,我可以tshark
在 Internet 网关上看到该数据包两次(一次使用ttl 64
,第二次使用ttl 62
,即在执行第二次路由之后)但nftables
的nat postrouting
表(优先级srcnat
)似乎只捕获了它一次,使用ttl 64
,即在它被发送到任何地方之前,以及在需要应用伪装之前。当数据包返回并且需要应用伪装时,似乎 根本nftables
看不到它,如表meta nftrace set 1
顶部的规则nat
postrouting
和相应的nft monitor trace
命令所断言的那样。结果,根本没有应用伪装,接收数据包的外部节点使用未经 SNAT 的源地址接收它,并且它无法发送回复。
是否有这样的功能,即nftables
它只接受查看给定的数据包一次?如果是这样,我该如何停用它,以便在正确的时刻应用伪装?还是发生了其他完全不同的事情?我很乐意为您提供任何您需要的日志或捕获,以帮助我进行故障排除。
我的公共媒体服务器 (debian 11) server1每小时通过私人媒体/torrent 服务器 (debian 12) server2/home/TV/...
复制电视节目:cron
rsync
/home/TV/
rsync --update --omit-dir-times --no-perms -av 192.168.1.153:/home/TV/ /home/TV
Torrent 应用程序设置下载完成和下载开始时修改的时间。
当 server2 中的电视文件在 server1 尝试复制时恰好正在下载时,会发生什么情况?
我的 debian 12 大约每 3 天就会出现锁定问题,所以我在午夜重新启动,当rsync
尝试从停机的服务器复制时会发生什么?
自从搬进宿舍后我第一次拿起我的树莓派,apt已经完全坏了。看起来可能是防火墙问题,但我不完全确定。我参考了这篇 文章,但所有逻辑修复都不起作用。
我直接在我的电脑和 pi 之间从 Wifi 切换到以太网,再切换到 LAN,但仍然遇到以下错误的一些变化。
sudo apt-get update 产生:
rector.raspbian.org/raspbian stretch InRelease
Err:2 http://mirrordirector.raspbian.org/raspbian stretch Release
404 Not Found [IP: 93.93.128.193 80]
Reading package lists... Done
E: The repository 'http://mirrordirector.raspbian.org/raspbian stretch Release' does no longer have a Release file.
N: Updating from such a repository can't be done securely, and is therefore disabled by default.
N: See apt-secure(8) manpage for repository creation and user configuration details.
apt Upgrade 有很多 404 错误,甚至不值得放在这里,但这里有几个:
b9u1_armhf.deb 404 Not Found [IP: 93.93.128.193 80]
E: Failed to fetch http://mirrordirector.raspbian.org/raspbian/pool/main/u/udisks2/udisks2_2.1.8-1+deb9u1_armhf.deb 404 Not Found [IP: 93.93.128.193 80]
E: Failed to fetch http://mirrordirector.raspbian.org/raspbian/pool/main/u/unzip/unzip_6.0-21+deb9u2_armhf.deb 404 Not Found [IP: 93.93.128.193 80]
E: Failed to fetch http://mirrordirector.raspbian.org/raspbian/pool/main/u/usbutils/usbutils_007-4+deb9u1_armhf.deb 404 Not Found [IP: 93.93.128.193 80]
无论我尝试下载什么内容,这几乎都是相同的。
我还在sources.list中尝试了deb [trusted=yes],但这没有效果。然后 --allow-unauthenticated 也没有效果。
我在这里几乎完全不知所措,所以如果需要更多信息,请询问。
我正在尝试在 debian 上安装最新的 docker compose,以便我可以使用 newinclude
关键字,但 apt info 和docker compose version
.
我已将 docker 存储库添加到我的sources.list
:
$ cat /etc/apt/sources.list.d/docker.list
deb [arch=amd64 signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/debian bookworm stable
apt 正在从 docker 存储库安装软件包:
$ sudo apt policy docker-compose-plugin
docker-compose-plugin:
Installed: 2.25.0-1~debian.12~bookworm
Candidate: 2.25.0-1~debian.12~bookworm
Version table:
*** 2.25.0-1~debian.12~bookworm 500
500 https://download.docker.com/linux/debian bookworm/stable amd64 Packages
100 /var/lib/dpkg/status
$ apt policy docker-ce
docker-ce:
Installed: 5:26.0.0-1~debian.12~bookworm
Candidate: 5:26.0.0-1~debian.12~bookworm
Version table:
*** 5:26.0.0-1~debian.12~bookworm 500
500 https://download.docker.com/linux/debian bookworm/stable amd64 Packages
100 /var/lib/dpkg/status
但docker compose version
确实显示了旧的:
$ docker compose version
Docker Compose version v2.2.3
相反,docker
显示了正确的版本:
$ docker --version
Docker version 26.0.0, build 2ae903e
我是否需要docker compose
通过其他方法安装才能获得更新的功能?
编辑:正如答案中所建议的,我docker-compose
在其中一个二进制文件夹中发现了过时的版本(~/.docker/cli-plugins
)
有很多教程展示了如何使用 Raspberry Pi 4 设置 Wifi AP,所有教程都有不同的配置。我正在尝试使用我的具体设置来执行此操作,如下所示:
RPi4 充当 Wifi AP。它与Kali for Raspberry一起安装。它有一个eth0
通过我的家庭 Wifi 路由器(我们称之为路由器HomeWifi
)连接到互联网的接口。我想将此 RPi4wlan0
用作 Wifi AP 接口,接收来自其他设备的本地网络流量。所以,基本上,这个 RPi4 位于我HomeWifi
和我想要连接到互联网的设备之间。
一台 Debian 笔记本电脑位于 RPi4 后面,想要访问互联网。我们称这个设备为TestDevice
以下是我在 RPi4 上设置的各种配置:
1 - 在/etc/network/interfaces
:
auto lo
iface lo inet loopback
auto eth0
allow-hotplug eth0
iface eth0 inet dhcp
allow-hotplug wlan0
iface wlan0 inet static
address 192.168.220.1/24
2 - 在/etc/hostapd/hostapd.conf
:
interface=wlan0
driver=nl80211
hw_mode=g
channel=6
ieee80211n=1
wmm_enabled=0
macaddr_acl=0
ignore_broadcast_ssid=0
auth_algs=1
wpa=2
wpa_key_mgmt=WPA-PSK
wpa_pairwise=TKIP
rsn_pairwise=CCMP
ssid=mypirouter
wpa_passphrase=password_for_mypirouter
3 - 在/etc/init.d/hostapd
:
DAEMON_CONF=/etc/hostapd/hostapd.conf
4进/etc/dnsmasq.conf
:
resolve-file="/etc/resolv.dnsmasq"
server=1.1.1.1
interface=wlan0
bind-dynamic
dhcp-range=192.168.220.50,192.168.220.150,12h
dhc-option=option:router,192.168.1.1
log-queries
log-dhcp
5 - 在/etc/resolv.conf
nameserver 127.0.0.1
关于我这样做的原因的注释:我引用了NOTES
页面中的部分man dnsmasq
。它说
...in order to configure dnsmasq to act as cache for the host on which it is running, put "nameserver 127.0.0.1" in /etc/resolv.conf....
6英寸/etc/resolv.dnsmasq
nameserver 1.1.1.1
nameserver 8.8.8.8
7英寸/proc/sys/net/ipv4/ip_forward
1
8在/etc/sysctl.conf
:
net.ipv4.ip_forward=1
9 - 以下是设置iptables
:
*nat
:PREROUTING ACCEPT [1:32]
:INPUT ACCEPT [1:32]
:OUTPUT ACCEPT [1:248]
:POSTROUTING ACCEPT [0:0]
-A POSTROUTING -o eth0 -j MASQUERADE
COMMIT
*filter
:INPUT ACCEPT [9023:800718]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [8673:816768]
-A FORWARD -i eth0 -o wlan0 -m state --state RELATED,ESTABLISHED -j ACCEPT
-A FORWARD -i wlan0 -o eth0 -j ACCEPT
COMMIT
结果:
在 RPi4 上运行以下服务后:
sudo systemctl start hostapd
sudo systemctl start dnsmasq
我确认这两个服务都在 RPi4 上运行。
然后,在我的 上,我成功TestDevice
连接到 SSID 。mypirouter
运行ifconfig
显示TestDevice
它已被分配 IP 为192.168.220.141
,完全在上面配置的范围内。
现在,当我尝试ping www.google.com
使用时TestDevice
,出现以下错误:
PING www.google.com 56(84) bytes of data
From TestDevice (192.168.220.141) icmp_seq=1 Destination Host Unreachable
From TestDevice (192.168.220.141) icmp_seq=2 Destination Host Unreachable
...
但是,如果我尝试通过其静态 IP 对 RPi4 执行 ping 操作
ping 192.168.220.1
我能够收到这样的回复:
PING 192.168.220.1 56(84) bytes of data
64 bytes from 192.168.220.1: icmp_seq=1 ttl=64 time=2.46 ms
64 bytes from 192.168.220.1: icmp_seq=2 ttl=64 time=2.84 ms
...
此时,我怀疑iptables
. 但我不知道如何解决这个问题。非常感谢任何建议。
简而言之,我想在我的 Debian 12 系统上添加 HPE 存储库。我将存储库添加到了它自己的sources.list.d 列表中,而不是直接添加到sources.list 中,因为我听说这是不好的做法。每次更新时,我都会收到以下消息:
GPG 错误:http://downloads.linux.hpe.com/SDR/repo/mcp bookworm/current 版本:由于公钥不可用,无法验证以下签名:NO_PUBKEY C208ADDE26C2B797 E:存储库 'http: //downloads.linux.hpe.com/SDR/repo/mcp bookworm/current Release' 未签名。N:从这样的存储库进行更新无法安全地完成,因此默认情况下被禁用。N:有关存储库创建和用户配置详细信息,请参阅 apt-secure(8) 联机帮助页。
我检查过,gpg 密钥位于存储库中,我在研究时发现的只是 .pub 密钥而不是 .gpg 密钥。
编辑:是的,在我最初的研究过程中,我发现了这个 debian 论坛,但据了解 apt-key 命令已被贬值,所以我不介意。但是,如果在这种情况下可以使用 apt-key,那么我将使用它。抱歉搞混了。
EDIT2:所以我更改了源文件 mcp.list 以反映这一点: deb http://downloads.linux.hpe.com/SDR/repo/mcp/debian/ bookworm/12.80 non-free non-free-firmware
之后我运行了这些命令:
卷曲-fsSL https://downloads.linux.hpe.com/SDR/hpPublicKey2048.pub | gpg --dearmor -o /usr/share/keyrings/hpPublicKey2048.gpgcurl -fsSL https://downloads.linux.hpe.com/SDR/hpePublicKey2048_key1.pub | gpg --dearmor -o /usr/share/keyrings/hpPublicKey2048.gpg gpg --dearmor -o /usr/share/keyrings/hpePublicKey2048_key1.gpgcurl -fsSL https://downloads.linux.hpe.com/SDR/hpPublicKey2048_key1.pub | gpg --dearmor -o /usr/share/keyrings/hpePublicKey2048_key1.gpg gpg --dearmor -o /usr/share/keyrings/hpPublicKey2048_key1.gpg
但我仍然没有任何效果,然后我尝试了该目录并更改为trusted.gpg.d的目录。现在这最终产生了更大的影响。现在它已经工作了一半,一些存储库被忽略了:
跳过配置文件“non-free-firmware/binary-amd64/Packages”的获取作为存储库“http://downloads.linux.hpe.com/SDR/repo/mcp/debian bookworm/12.80 InRelease”没有组件“non-free-firmware”(sources.list 中的组件拼写错误?) 跳过将配置文件“non-free-firmware/i18n/Translation-en_US”获取为存储库“http://downloads.linux.hpe.com/” SDR/repo/mcp/debian bookworm/12.80 InRelease”没有组件“non-free-firmware”(组件在sources.list中拼写错误?) 跳过配置文件“non-free-firmware/i18n/Translation-”的获取en'作为存储库'http://downloads.linux.hpe.com/SDR/repo/mcp/debian bookworm/12.80 InRelease'没有组件'non-free-firmware'(组件在sources.list中拼写错误? )
然后,我通过更改源文件以反映它建议的更改来对此进行更多实验:“InRelease”、“Release”等。但是,每当我更改文件以反映这些更改时,我仍然得到类似的结果,它会弹出类似的消息,但我显然缺少另一个词。
我安装了以下软件包:
:~# apt search 7zip|grep installed
7zip/stable,now 22.01+dfsg-8 amd64 [installed]
libarchive13/stable,now 3.6.2-1 amd64 [installed,automatic]
liblzma-dev/stable,now 5.4.1-0.2 amd64 [installed,automatic]
liblzma5/stable,now 5.4.1-0.2 amd64 [installed]
p7zip/stable,now 16.02+dfsg-8 amd64 [installed,automatic]
p7zip-full/stable,now 16.02+dfsg-8 amd64 [installed,automatic]
p7zip-rar/stable,now 16.02-3 amd64 [installed]
xarchiver/stable,now 1:0.5.4.20-2 amd64 [installed,automatic]
但是当我尝试使用 7zip 或 xarchiver 解压 rar 文件时,出现以下错误
$ 7z ../Archive.rar
7-Zip [64] 16.02 : Copyright (c) 1999-2016 Igor Pavlov : 2016-05-21
p7zip Version 16.02 (locale=en_US.UTF-8,Utf16=on,HugeFiles=on,64 bits,32 CPUs AMD Ryzen 5 PRO 5650GE with Radeon Graphics (A50F00),ASM,AES-NI)
Command Line Error:
Unsupported command:
../Archive.rar
如前所述,在 xarchiver 下也会出现同样的错误
我想让我的世界服务器与我的朋友一起玩,我需要将我的 Orange Pi 连接到 WireGuard 服务器,因为它位于 NAT 下(如果我正确理解这个术语的话)。但是当我尝试时apt install wireguard
,它也会安装 Linux 内核:
orangepi@orangepi4:~$ sudo apt install wireguard
[sudo] password for orangepi:
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
The following additional packages will be installed:
linux-image-5.10.0-27-rt-arm64 linux-image-rt-arm64 wireguard-tools
Suggested packages:
linux-doc-5.10 debian-kernel-handbook
Recommended packages:
firmware-linux-free apparmor
The following NEW packages will be installed:
linux-image-5.10.0-27-rt-arm64 linux-image-rt-arm64 wireguard wireguard-tools
0 upgraded, 4 newly installed, 0 to remove and 27 not upgraded.
Need to get 44.8 MB of archives.
After this operation, 252 MB of additional disk space will be used.
Do you want to continue? [Y/n] n
Abort.
orangepi@orangepi4:~$
当我第一次尝试应用 WireGuard 配置时,它说未知的设备类型(没有确切的消息)。我搜索了它并认为这是因为未应用内核模块。重新启动后,我无法通过 SSH 连接到我的 Orange Pi。我重新安装系统并尝试再次安装 WireGuard。现在我看到它尝试安装内核6.x,并认为这可能是Orange Pi“死”的原因。我发现错误/etc/apt/sources.list
并更改它:
-deb http://mirror.docker.ru/debian/ stable main contrib non-free-firmware
+deb http://mirror.docker.ru/debian/ bullseye main contrib non-free
我安装了wireguard,因为现在看到它具有几乎相同的内核版本。但在意识到modprobe
不想应用新模块后,我将其删除了。这是我安装后的内核:
orangepi@orangepi4:/boot$ dpkg --list | grep linux-image
ii linux-image-5.10.0-27-rt-arm64 5.10.205-2 arm64 Linux 5.10 for 64-bit ARMv8 machines, PREEMPT_RT (signed)
ii linux-image-current-rk3399 3.0.6 arm64 Linux kernel, version 5.10.43 # <-- that one is which I had in the start
ii linux-image-rt-arm64 5.10.205-2 arm64 Linux for 64-bit ARMv8 machines (meta-package)
orangepi@orangepi4:/boot$ sudo find /boot/ -iname "vmlinuz*"
/boot/vmlinuz-5.10.43 # <-- that one is which I had in the start
/boot/vmlinuz-5.10.0-27-rt-arm64
我认为重新启动后我的 Orange Pi 可能会再次“死机”并删除带有内核的 WireGuard。
那么如何在我的 Orange Pi 4B 上安装wireguard?或者我应该使用其他解决方案,例如 OpenVPN?
以下是一些可能有用的附加信息:
orangepi@orangepi4:~$ uname -a
Linux orangepi4 5.10.43 #3.0.6 SMP Mon Aug 1 18:31:02 CST 2022 aarch64 GNU/Linux
Debian 镜像:Google Drive
Orange Pi 4B 下载部分:orangepi.org