有很多关于这个错误的问题,并且有一个建议的手动修复很好,但是没有永久的解决方案。我怎样才能永久解决这个问题?我在debian服务器上出现了这个问题,使用OpenVPN客户端连接到OpenVPN服务器。
建议的修正如下所示。看起来,/dev/net不是自动创建的,当然在每次重新启动时都会消失。
mkdir -p /dev/net
mknod /dev/net/tun c 10 200
chmod 600 /dev/net/tun
发布于 2020-02-14 19:35:03
debian自2018年5月(https://www.debian.org/releases/wheezy/)以来就失去了支持,到2020年你就不应该再把它用于生产了。
现在,您可以添加临时修复问题的命令,添加一个bash脚本,并使用@reboot昵称(man 5 crontab)添加到根crontab中。
因此,在您的文件系统中的某个地方创建一个bash脚本,如下所示:
#!/bin/bash
mkdir -p /dev/net
mknod /dev/net/tun c 10 200
chmod 600 /dev/net/tun
/etc/init.d/openvpn restart
使用755权限保存它,并修改根crontab:
# crontab -e
至少有这样的内容
@reboot /path/to/where/you/saved/the/script
在重新启动之后,应该已经成功地启动了openvpn。
发布于 2022-04-19 07:46:24
它也发生在拱门/马吉罗。
我设法解决了这个问题,显然内核升级只是移动模块目录,所以试图从它们已知的位置到达模块是不可用的,当前正在运行的内核仍然在运行,但我似乎不能modprobe
(加载)任何尚未加载的模块(比如OpenVPN连接所需的tun
)。
因此,例如,/lib/modules/
目录在升级之前有以下目录(我有多个内核,请注意5.16系列):
5.15.32-1-MANJARO *5.16.14-1-MANJARO* extramodules-5.15-MANJARO extramodules-5.16-MANJARO
这是升级后的状态:
5.15.32-1-MANJARO *5.16.18-1-MANJARO* extramodules-5.15-MANJARO extramodules-5.16-MANJARO
试图加载tun
模块显示了以下消息:
modprobe: FATAL: Module tun not found in directory /lib/modules/5.16.14-1-MANJARO
这完全有意义,因为这个目录不存在。
那么,我在这个问题上提出的解决方案是什么?重新开始。
https://serverfault.com/questions/1003011
复制相似问题