有没有办法使用Python来模拟使用dbus存在活动网络连接?如果我在dbus上调用getstate(),我就可以获得当前的网络状态。我想将当前状态设置为4(连接存在)。这是因为网络管理器无法使用我的调制解调器连接,我使用其他工具进行连接。 Pidgin,Empathy和其他软件无法检测网络。
答案 0 :(得分:1)
我很确定如果您通过右键单击网络管理器托盘图标并取消选中启用网络来禁用NM,Pidgin和Empathy都会假设您在线。因此,当您通过非NM机制进行连接时,可以执行此操作。没有必要的代码!
(您可以编写一个应用程序,它实现与NetworkManager相同的D-Bus接口,位于系统总线上,假装在线,然后当您想要使用您的网络时,杀死真正的NetworkManager程序并启动您的假一个,但那闻起来像是有点过分了......)
答案 1 :(得分:0)
您可以选择编写一些模拟NetworkManager D-Bus接口的东西,或编写支持您使用的工具的NetworkManager模块。