还剩1页未读,继续阅读
文本内容:
sysrepo介绍展开全文http://blog.sina.com.en/s/blog_a6e8043c0102xzqe.htmll.sysrepo是干什么的sysrepo是一个数据库可以用来保存可读可写的配置,例如IRnetmasko你可以坐在家里,给远端的设备的sysrepo下修改配置命令另外远端设备还有一些只读的状态,也可以读回来,例如温度
2.sysrepo的订阅功能订阅实际上就是回调函数例如我们的程序告诉sysrepo我们要订阅/net/ethO/ip这个xml地址,当有人发消息给sysrepo写这个路径时,sysrepo就会告诉我们这个xml发生变化了,我们就执行实际的操作
3.sysrepo的修改配置修改配置用写xml路径的方法例如写xml路暂net/ethO/ip那么sysrepo就会把修改的信息写到此路径中,保存到sysrepo的数据库中但是sysrepo并没有去做修改ip的实际工作,这个实际工作是怎么完成的呢?sysrepo提供了一个回调函数,我们只要把这个回调函数写好就行当写xml路径时,sysrepo就会调用回调函数完成实际的工作sysrepo实际只是保存配置,并调用回调函数这两件事完成一个修改配置的操作,共需要3个程序,一个是发命令的程序,一个收命令的sysrepo另外我们自己还要写个程序,接收sysrepo发过来的修改配置的路径,我们自己的程序发现是要修改ip的路径,那么就改ip了
4.sysrepo返回状态和2类似,我们的程序收到读某个路径的消息,就把数据写到指定路径中就可以sysrepo2018-02-1917:56:
56.建议先用ubuntu装sysrepo.sysrepo例子使用说明说明sysrepoctl用来安装yang文件sysrepocfg用来加载xml文件帮助看sysrepoctl-horsysrepocfg-hl先安装两个yang文件$sudosysrepoctl—install—yang=/home/leim/sysrepo/examples/yang/ietf-interfaces@2014-05-
08.yang—owner=用户组用户名—permissions=644$sudosysrepoctl—install-yang=/home/user/sysrepo/examples/yang/iana-if-type.yang—owner=leim:leim—permissions=644看安装$sysrepoctl-I启动sysrepod/usr/bin/sysrepod导入xml配置文件$sysrepocfg—import=ietf-interfaces.data.xml—format=xml—datastore=startupietf-interfaces在build/example目录下有已经编译好的例子$./sr_get_item_example[INF]ConnectedtodaemonSysrepoEngineatsocket=/var/run/sysrepod.sock/ietf-interfaces:interfaces/interface[name=ethO]/enabled=true.其它例子r_get_items_exampIe查看多个cat/etc/sysrepo/data/ietf-interfaces.startupsr_set_item_examplesr_delete_item_examplesr_get_items_iter_example用高级的迭代器方式,但是运行后没反应。