网络设备配置备份怎么做:Oxidized 从规划到上线的实用指南
网络设备配置备份怎么做Oxidized 从规划到上线的实用指南【免费下载链接】oxidizedOxidized is a network device configuration backup tool. Its a RANCID replacement!项目地址: https://gitcode.com/GitHub_Trending/ox/oxidizedOxidized 是一个网络设备配置备份工具定时登录设备拉取运行配置写进 Git 仓库保留每次变更的历史。它支持 130 多种操作系统类型适合有几十到几千台设备、想要版本化配置和审计追踪的运维团队。 动手前先想清楚先别装软件三个问题定下来后面的配置基本就定型了备份范围和频率多少台设备、多久拉一次规模决定你用 CSV 还是数据库做设备清单也决定线程数。配置存到哪全部塞进一个 Git 仓库还是按部门/站点拆成多个仓库要不要落盘加密权限边界谁能读配置、谁能改仓库设备侧用密码还是密钥是否要去掉口令等敏感字段想清楚这三点你就知道该用哪套 output、要不要 git-crypt、要不要按 group 拆库。 最小可用配置先装依赖和主程序以 Debian/Ubuntu 为例apt install ruby ruby-dev libsqlite3-dev libssl-dev pkg-config libssh2-1-dev libyaml-dev gem install oxidized也可以从源码装git clone https://gitcode.com/GitHub_Trending/ox/oxidized cd oxidized rake install第一次运行oxidized会在~/.config/oxidized/config生成默认配置。把下面这份精简配置填进去只保留能跑起来的部分username: backup password: changeit model: ios interval: 3600 output: default: git git: user: Oxidized email: oexample.com repo: /var/lib/oxidized/devices.git再建一个设备清单文件~/.config/oxidized/router.db一行一台格式是主机名:模型可再加账号、密码、enable 口令router01.example.com:ios:backup:secret跑一次oxidizeddevices.git里就会出现第一次备份。到此为止已经能用了剩下的按场景选路。 按你的场景选路单一 Git 仓库所有设备进一个库方便统一 diff 和检索。适合设备在一两千台以内、团队共用一个视图的情况。output: default: git git: user: Oxidized email: oexample.com repo: /var/lib/oxidized/devices.git single_repo: true注意single_repo让所有分组共用一个仓库配合clean_obsolete_nodes: true还能自动清掉已下线设备的旧配置。按分组拆多个仓库不同部门或站点要权限隔离时用分组Oxidized 会为每个 group 自动建库。在 source 的map里把某一列映射成group即可。output: default: git git: user: Oxidized email: oexample.com repo: /var/lib/oxidized/git-repos/default.git注意无分组的设备进default.git其余按分组名各建一个.git目录结构会多一层。Git-Crypt 加密落盘配置含敏感信息、落盘必须加密时用 gitcrypt 输出提交时被 git-crypt 在线加密。output: default: gitcrypt gitcrypt: user: Oxidized email: oexample.com repo: /var/lib/oxidized/devices users: - 0xABCDEF0123456789注意users列表只在建仓时写入一次之后要加解密人得手动git-crypt add-gpg-user。设备清单来自数据库设备多、手工维护 router.db 不现实、已有 CMDB 时直接用 SQL source。source: default: sql sql: adapter: sqlite database: /var/lib/oxidized/nodes.db table: nodes map: name: fqdn model: model注意name字段是必填的它决定输出文件名映射错了对应不上配置。✅ 上线前的最后检查调线程和超时threads、timeout、timelimit默认是 30 / 20 / 300按设备规模和慢设备情况调别让一台慢设备堵住整个队列。仓库写权限git 输出要能写 repo 目录用专门的oxidized用户跑别用 root。ls -ld /var/lib/oxidized确认属主对得上。去掉敏感字段加vars: { remove_secret: true }让模型里的替换规则把 SNMP community 之类的口令抹掉别把明文带进仓库。接一个告警用 hook 订阅node_fail备份连续失败时第一时间知道而不是第二天才发现。要不要开 Web需要 REST API 和界面就装oxidized-web默认不加载按需再开。 跑起来之后查某台设备的变更历史最直接cd /var/lib/oxidized/devices.git git log --follow router01.example.com git diff HEAD~1 HEAD -- router01.example.com想把每次变更邮件发出去挂一个 exec hook 调用仓库自带的脚本 extra/oxidized-report-git-commits它在post_store事件里跑生成 diff 并发信。日常看设备清单、手动触发某台设备立即备份则用 oxidized-web 的GET /nodes、GET/PUT /node/next/[NODE]接口。⚠️ 别踩这些坑连上设备却拉不到配置、或直接超时。多半是设备真实提示符和模型里定义的prompt正则对不上。用 irb 验证实际提示符 ~ /模型里的正则/不匹配就把该模型复制到~/.config/oxidized/model/下改正则Oxidized 会优先用本地这份。仓库越来越大、备份越来越慢。Git 仓库只增不减积累多了就变卡。停掉 oxidized、先备份数据进仓库跑一次git gc再启动。配了 githubrepo 却推不到远端。运行用户的known_hosts没信任那台 Git 服务器。执行ssh-keyscan git.intranet ~/.ssh/known_hosts容器里要把这个目录映射进容器。你改了仓库oxidized 却不认。裸仓库的 index 不会随 push 更新Oxidized 读的是缓存的 HEAD。进仓库执行git ls-tree -r HEAD | git update-index --index-info手动同步。下一步想让某类设备把show version、show inventory拆成独立输出类型、或写自己的设备模型看 docs/Creating-Models.md全部输入、输出、hook、日志的完整参数在 docs/Configuration.md。模型实现本身放在 lib/oxidized/model/照着现成的 ios.rb、junos.rb 抄结构最快。【免费下载链接】oxidizedOxidized is a network device configuration backup tool. Its a RANCID replacement!项目地址: https://gitcode.com/GitHub_Trending/ox/oxidized创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

相关新闻

一条命令把游戏还原成可编辑工程:Godot 反编译与 PCK 恢复完整上手指南

一条命令把游戏还原成可编辑工程:Godot 反编译与 PCK 恢复完整上手指南

一条命令把游戏还原成可编辑工程:Godot 反编译与 PCK 恢复完整上手指南 【免费下载链接】gdsdecomp Godot reverse engineering tools 项目地址: https://gitcode.com/GitHub_Trending/gd/gdsdecomp 硬盘阵亡后,Godot 游戏只剩发给测试的 .pck 和…

2026/10/19 11:45:59 阅读更多 →
EMC整改:屏蔽与接地的“看似做了”陷阱,细节拆解与排查方法

EMC整改:屏蔽与接地的“看似做了”陷阱,细节拆解与排查方法

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/19 11:45:59 阅读更多 →
MySQL锁机制深度解析:从行锁到死锁的并发控制与优化实战

MySQL锁机制深度解析:从行锁到死锁的并发控制与优化实战

做数据库开发或者运维的朋友,一定都遇到过这样的场景:白天业务正常跑着,突然某个更新操作卡住了,等了半天还在执行,紧接着一堆请求堆积起来,数据库CPU蹭蹭往上飙。查了半天,发现罪魁祸首就是一条…

2026/10/19 11:45:59 阅读更多 →

最新新闻

857个AI模型仅3.6%公开安全测试:AI安全测试的行业真相与落地实践

857个AI模型仅3.6%公开安全测试:AI安全测试的行业真相与落地实践

1. 一组数字背后的行业真相857个模型,只有3.6%公开了安全测试结果。这个比例我第一次看到的时候,盯着屏幕愣了好几秒。3.6%是什么概念?大概就是你在一个坐满100个人的会议室里扫一圈,只有不到4个人手里拿着体检报告,剩…

2026/10/19 17:41:48 阅读更多 →
逆序对计数:归并排序的O(n log n)解法与Go实现

逆序对计数:归并排序的O(n log n)解法与Go实现

1. 逆序对的定义:为什么这一题能拦住很多人 我第一次认真接触“逆序对”是在处理一批排序统计相关的小工具时。当时我需要量化一组序列到底“有多乱”,排序本身只能给出结果顺序,却丢失了原始乱序程度。后来才意识到,逆序对数量正…

2026/10/19 17:41:48 阅读更多 →
TensorFlow分布式FFT:大规模频谱分析的实战指南

TensorFlow分布式FFT:大规模频谱分析的实战指南

先聊一个有点反常识的现象:FFT(快速傅里叶变换)本身是个再经典不过的数学工具,单条 16384 点的信号,就算是纯 Python 调库也快得几乎感觉不到延迟,那为什么还会有人执着地把“TensorFlow 中的分布式快速傅里…

2026/10/19 17:41:48 阅读更多 →
Qwen-Image-2512本地部署实战:消费级显卡跑通AI绘图全流程

Qwen-Image-2512本地部署实战:消费级显卡跑通AI绘图全流程

讲真,本地跑AI绘图这件事,我前前后后折腾过不少模型,显卡从16G换到24G,环境装了一遍又一遍,踩的坑能写一箩筐。这次拿到Qwen-Image-2512的权重,本来没抱太大期待,结果跑通第一张图的时候确实愣住…

2026/10/19 17:41:48 阅读更多 →
开源CLI代码审查工具:Git集成+本地LLM驱动的实时代码质量门禁

开源CLI代码审查工具:Git集成+本地LLM驱动的实时代码质量门禁

1. 项目概述:一个真正能落地的开源代码审查 CLI 工具“open-code-review”这个名字乍一听像某个 GitHub 上刚起步的玩具项目,但如果你最近在团队里被 PR 堆得喘不过气、被“已阅”式评论糊弄过、或者自己写完代码不敢合入、反复删改 commit message——那…

2026/10/19 17:41:48 阅读更多 →
JSP+Servlet+JDBC图书管理系统实战:源码拆解与避坑指南

JSP+Servlet+JDBC图书管理系统实战:源码拆解与避坑指南

简介:针对Java课程设计与大作业中的常见选题,这套下载资源提供了一套完整可运行的图书管理系统源码与配套数据库。项目内包含前端页面、后端业务逻辑、数据库脚本以及相关配置文件,实现了图书信息的录入、删除、修改、查询和借阅归还等主要功…

2026/10/19 17:40:46 阅读更多 →

日新闻

频率跟踪型PWM电源设计:臭氧发生器谐振点漂移与软开关实现

频率跟踪型PWM电源设计:臭氧发生器谐振点漂移与软开关实现

简介:本资源为电源技术方向的学术研究文档,聚焦介质阻挡放电型臭氧发生器电源的频率跟踪型PWM控制策略,面向电力电子、高压电源及臭氧应用领域的科研人员与工程技术人员。针对负载呈容性、等效电容随外加电压升高而增大、谐振频率随之漂移的难…

2026/10/19 0:00:47 阅读更多 →
Vibe Coding 遇上 TaoToken:把开发者思维圣殿的灵感流接入统一 Key 通道

Vibe Coding 遇上 TaoToken:把开发者思维圣殿的灵感流接入统一 Key 通道

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/19 0:00:47 阅读更多 →
HundredCV-Chat话题建模实战教程:利用4,871个内置话题标签构建主题分析系统

HundredCV-Chat话题建模实战教程:利用4,871个内置话题标签构建主题分析系统

【免费下载链接】HundredCV-Chat 项目地址: https://ai.gitcode.com/hf_mirrors/Jax-dan/HundredCV-Chat 点击查看 免费下载 HundredCV-Chat 是一个由 100 位青年简历数据开发而来的中文多轮对话数据集,共包含 24,750 组日常闲聊对话和 4,871 个话题标签…

2026/10/19 0:00:47 阅读更多 →

周新闻

基于GMM的语音识别系统原理与MATLAB实现详解

基于GMM的语音识别系统原理与MATLAB实现详解

说到基于高斯混合模型(GMM)的语音识别系统,很多人第一反应就是一堆数学公式,觉得门槛很高。但如果你真的在MATLAB里把它落地跑通,会发现核心其实就是三件事:把声音变成特征向量,用GMM给每个类别…

2026/10/19 10:02:04 阅读更多 →
数字图像处理入门:反白、灰度化、调色板修改与导出txt实践

数字图像处理入门:反白、灰度化、调色板修改与导出txt实践

数字图像处理这四个字听起来挺唬人,但落到具体操作上,无非就是让计算机按你的想法“摆弄”像素。我在一个模拟项目X里用了一套特别经典的基础处理流程:对图像做反白、改调色板、彩色转灰度,最后把像素数据导出成txt文件。单看每一…

2026/10/19 17:32:41 阅读更多 →
机器人大脑技术盘点:具身智能的感知、决策与数据闭环

机器人大脑技术盘点:具身智能的感知、决策与数据闭环

如果你的信息流最近也天天刷到“机器人大脑”这个词,你会发现一个很有意思的现象:每个人说的“大脑”根本不是同一个东西。有人指的是大语言模型,有人指的是运动控制系统,还有人指的是能理解物理世界的端到端模型。在2026年这个时…

2026/10/19 1:30:52 阅读更多 →

月新闻

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/19 2:54:50 阅读更多 →
Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/19 9:10:22 阅读更多 →
黑夜航拍船只数据集训练YOLOV5模型全流程解析

黑夜航拍船只数据集训练YOLOV5模型全流程解析

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/18 12:16:16 阅读更多 →