User Tools

Site Tools


ubus

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
ubus [2018/05/27 07:26] midas_zhouubus [2025/10/14 06:22] (current) – external edit 127.0.0.1
Line 1: Line 1:
-ubus是openwrt用来实现进程间通信的一种消息总线机制,其数据格式类似json。守护进程dbusd以server/client的方式统一管理进程间的通信,进程可以通过dbus向其他进程发送数据调用服务,或则向dbus订阅特定消息。 +ubus是openwrt用来实现进程间通信的一种消息总线机制,其数据格式类似json。守护进程dbusd以server/client的方式统一管理进程间的通信,进程可以通过ubus向其他进程发送数据调用服务,或则向dbus订阅特定消息。 
  
-1. ubus中每个对象都用路径(object path)的方式来表达, 命令ubus list 可以列出所有注册对象:+=== 1. ubus中每个对象都用路径(object path)的方式来表达, 命令ubus list 可以列出所有注册对象: === 
 +<code bash>
    root@Widora:/# ubus list    root@Widora:/# ubus list
    dhcp    dhcp
Line 17: Line 18:
    system    system
    uci    uci
- +</code> 
-2.  加上-v选项可以看到指定对象可调用的具体方法(method):+=== 2. 加上-v选项可以列出指定对象可调用的具体方法(method): === 
 +<code bash>
    root@Widora:/# ubus list network.interface.lan -v    root@Widora:/# ubus list network.interface.lan -v
    'network.interface.lan' @3fcd0eda    'network.interface.lan' @3fcd0eda
Line 31: Line 33:
            "remove":{}            "remove":{}
            "set_data":{}            "set_data":{}
- +</code> 
-3.  调用对象方法的时候ubus向特定对象发送方法名和参数, 对象接收到后会返回要求的状态数据或执行结果。+=== 3. 调用对象方法:通过ubus向特定对象发送方法名和参数, 对象接收到后会返回要求的状态数据或执行结果。===
 比如调用network.wireless对象status方法(无需参数), 会返回无线网络的状态: 比如调用network.wireless对象status方法(无需参数), 会返回无线网络的状态:
 +<code bash>
    root@Widora:/# ubus call network.wireless status    root@Widora:/# ubus call network.wireless status
    {    {
Line 59: Line 62:
      ... ...      ... ...
    }    }
 +</code>
ubus.1527405986.txt.gz · Last modified: (external edit)

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki