我最近在摆弄我的桌面目录,结果弄得一团糟。我有一个备份,所以我删除了该目录,并用备份替换了它。问题是,现在 Debian 无法识别这个主目录,只能将其视为普通目录,因此它很困惑,现在将我的整个主目录用作桌面。
我尝试过重新启动以查看是否有帮助,但是没有效果。创建新用户也是如此。
我如何让 Debian 识别桌面目录并按预期使用它?我正在使用带有 XFCE 的 Debian 12。
我最近在摆弄我的桌面目录,结果弄得一团糟。我有一个备份,所以我删除了该目录,并用备份替换了它。问题是,现在 Debian 无法识别这个主目录,只能将其视为普通目录,因此它很困惑,现在将我的整个主目录用作桌面。
我尝试过重新启动以查看是否有帮助,但是没有效果。创建新用户也是如此。
我如何让 Debian 识别桌面目录并按预期使用它?我正在使用带有 XFCE 的 Debian 12。
我目前在 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
. 但我不知道如何解决这个问题。非常感谢任何建议。