打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
sysrepo介绍
http://blog.sina.com.cn/s/blog_a6e8043c0102xzqe.html
1.sysrepo是干什么的
sysrepo是一个数据库。可以用来保存可读可写的配置,例如IP,netmask。你可以坐在家里,给远端的设备的sysrepo下修改配置命令。
另外远端设备还有一些只读的状态,也可以读回来,例如温度。
2.sysrepo的订阅功能
订阅实际上就是回调函数。
例如我们的程序告诉sysrepo,我们要订阅/net/eth0/ip这个xml地址,当有人发消息给sysrepo,写这个路径时,sysrepo就会告诉我们这个xml发生变化了,我们就执行实际的操作。
3.sysrepo的修改配置
修改配置用写xml路径的方法, 例如写xml路径/net/eth0/ip,那么sysrepo就会把修改的信息写到此路径中,保存到sysrepo的数据库中。
但是sysrepo并没有去做修改ip的实际工作,这个实际工作是怎么完成的呢?
sysrepo提供了一个回调函数,我们只要把这个回调函数写好就行。
当写xml路径时,sysrepo就会调用回调函数,完成实际的工作。
sysrepo实际只是保存配置,并调用回调函数这两件事。
完成一个修改配置的操作,共需要3个程序,一个是发命令的程序,一个收命令的sysrepo,另外我们自己还要写个程序,接收sysrepo发过来的修改配置的路径,我们自己的程序发现是要修改ip的路径,那么就改ip了。
4.sysrepo返回状态
和2类似,我们的程序收到读某个路径的消息,就把数据写到指定路径中就可以
sysrepo
(2018-02-19 17:56:56)
1.建议先用ubuntu装sysrepo
2. sysrepo例子使用说明
2.0 说明
sysrepoctl用来安装yang文件
sysrepocfg用来加载xml文件
帮助看 `sysrepoctl -h` or `sysrepocfg -h`.
2.1  先安装两个yang文件
$ sudo sysrepoctl --install --yang=/home/leim/sysrepo/examples/yang/ietf-interfaces@2014-05-08.yang --owner=用户组:用户名 --permissions=644
$ sudo sysrepoctl --install --yang=/home/user/sysrepo/examples/yang/iana-if-type.yang --owner=leim:leim --permissions=644
看 安装
$ sysrepoctl -l
2.2 启动sysrepod
/usr/bin/sysrepod
2.3 导入xml配置文件
$ sysrepocfg --import=ietf-interfaces.data.xml --format=xml --datastore=startup ietf-interfaces
2.4 在build/example目录下有已经编译好的例子
$ ./sr_get_item_example
[INF] Connected to daemon Sysrepo Engine at socket=/var/run/sysrepod.sock
/ietf-interfaces:interfaces/interface[name='eth0']/enabled = true
3.其它例子
sr_get_items_example 查看多个
cat /etc/sysrepo/data/ietf-interfaces.startup
sr_set_item_example
sr_delete_item_example
sr_get_items_iter_example  用高级的迭代器方式,但是运行后没反应
本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
H3C NETCONF简介
直接上一段用于内网获取本机ip地址的方法,更全面的可以先获取本机网络类型,在获取ip
oracle xml数据类型常见操作
Ubuntu14.04下如何配置固定IP
如何通过EthernetKRL软件包跟KAKA KRC4机器人通信新闻中心库卡机器人系统集成服务商
Google Talk---Google 发布的IM产品
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服