编写一个 MAC 地址转换工具
网络中每台设备都有一个唯一的网络标识,这个地址叫 MAC 地址或网卡地址,由网络设备制造商生产时写在硬件内部。MAC 地址则是 48 位的(6 个字节),通常表示为 12 个 16 进制数,每 2 个 16 进制数之间用冒号隔开,如 08:00:20:0A:8C:6D 就是一个 MAC 地址。 但是,在计算机系统中 MAC 地址有许多种写法,例如 1234(1)08:00:20:0A:8C:6D(2)08-00-20-0A-8C-6D(3)0800200A8C6D(4)0800.200A.8C6D 有时,我们需要对这些地址进行转换,今天我们将写一个小工具,实现各种格式的 MAC 地址之间的转换。 程序设计简单说一下程序的设计思路,用户输入一个字符串,首先我们应该判断一下,用户输入的是否是一个合法的 MAC 地址(以上四种格式),如果不是,那应该抛出一个异常,告诉用户他输入的不是一个合法的 MAC 地址,如果用户输入的是一个合法的 MAC...
华为 HCIE Cloud Computing 面试考试总结
本文是《华为 HCIE Cloud Computing LAB 考试总结》 的后文,希望能给其他准备备考 HCIE 的小伙伴一点帮助。~ 我是 7 月 22 日参加的 HCIE 云计算方向 Lab 考试的,因为 Lab 成绩的有效期只有 3 个月,拿到考试成绩后,我就必须开始预约面试考试了。面试考试可以说是 HCIE 中最困难的一关,也是华为 IE 级认证含金量高的原因所在。最终,我在 10 月 21 日收到了通过 HCIE 云计算方向面试的邮件。 预约考位华为面试的考位一般非常紧张,每月第一周周四 (16:00—19:00) 发布后 2 个月的考位,建议根据自己的实际情况去预约考试,就近选择考站,预约成功之后,一般不能取消。 备考复习云计算的备考可以从华为云计算产品全景图、FusionCompute 虚拟化、FusionAccess 桌面云、FusionStorage 分布式存储、FusionSphere OpenStack、华为云 Stack、迁移、备份、容灾等几个部分展开复习。具体的内容可以参考一下 HCIE 云计算方式的考试大纲。复习的工具有 PPT、HedEx...
Zabbix 5.0 企业微信机器人故障文本告警
2020 年 5 月,zabbix 发布了 5.0LTS 版,这个版本从界面到功能都有了很大的提升。大家可以通过Zabbix 5.0 LTS released了解新版本的特性。 新版本的 Zabbix 对于告警(报警媒介)进行了扩展和优化,可以直接支持 WebHook 类型的报警媒介。我们再开发企业微信机器人可以直接通过 JavaScript 语言编写脚本,因为得到了 Zabbix 的原生支持,告警脚本通用性强且更加灵活。 本文我将分享一下,如何通过 Zabbix 报警媒介在企业微信发送告警信息。 注册企业微信机器人首先我们需要先在自己的企业微信群里创建一个机器人,并获取其 WebHook 地址。右击群聊天卡片,添加群机器人。为你的机器人起一个名字,点击确定,获得一个类似下图的 WebHook 地址。注意,这个 WebHook 地址非常重要,请不要泄露,否则他人可以通过这个地址给你捣乱。把这个地址复制出来,后面需要用到。 创建告警媒介登录...
【ESXI】通过-flat.vmdk 文件恢复 VMware 虚拟机映像文件 vmdk
自己的 HomeLab 在做虚拟机迁移,是直接通过 SCP 将虚拟机文件直接 Copy 到新服务器的。迁移之后,在新机器上启动虚拟机,提示无法打开虚拟机磁盘。马上 SSH 到服务器,查看虚拟机磁盘文件,只剩下了 -flat.vmdk 文件,回到 WebUI 上看文件是 File 格式的,并非虚拟机磁盘文件。确认 -flat.vmdk 文件所依赖的 vmdk 丢失。 故障描述解决虚拟机磁盘文件 vmdk 丢失,只剩下 -flat.vmdk 文件的情况。通过 -flat.vmdk 恢复 vmdk 文件。 处理过程提示以下操作有一定的危险性,建议做好备份后再进行操作。不要直接对生产环境执行操作。 1.使用 SSH 登录到 ESXI 服务器。查找到 -flat.vmdk 文件所在位置。如图 SeafileServer-data1-flat.vmdk 即为目标-flat.vmdk 文件。 2.创建一个新的 vmdk 文件,大小和 -flat.vmdk 文件保持一致。命令为 vmkfstools -c 磁盘文件大小 -a lsilogic 磁盘名称 根据上图的-flat.vmdk...
【August 2020】接收 ISS SSTV 纪实
2020 年 8 月 4 日和 5 日,ISS 进行了 SSTV 活动,本次活动代号 MAI-75,这是莫斯科航空学院的 SSTV 实验,模式为 PD-120,并以 145.800 MHz 的速度传输。SSTV 即慢扫描电视。这是业余无线电爱好者的一种主要图片传输方法,慢扫描电视通过无线电传输和接收单色或彩色静态图片。今天晚上,我通过一台欧迅的 UV8D 接收了此次 SSTV 的图片。这也是我第一次去抄收来自卫星的 SSTV 图片。可能是因为时间的原因,比较遗憾的是只收到了半张清晰图片。本文就主要记录一下本次 SSTV 活动。以备以后继续参加活动使用,也希望其他 HAM 可以对此次活动纪实进行批评指正,这里是 BH1XAQ,73。 ISS 的 SSTV 活动一般功率都不小,所以这次我就使用了一台欧迅的 UV8D(原装天线)和一台宝峰的 UV-5R(拉杆天线)备用。注意,设备需要将频率调整成 145800,并且关闭静噪。设备准备就绪之后,我们需要计算一下卫星何时过境,这就需要使用到追星软件了。我使用的是 Orbitron,这个软件支持中文,而且操作非常简单。 进行卫星追踪打开...
华为 HCIE Cloud Computing LAB 考试总结
7 月 22 日我在华为北京考场参加了 HCIE Cloud Computing LAB 考试,等待了一周之后,今天我拿到了 LAB 成绩单,实验考试评级 A,通过了实验考试。还是挺开心的。简单写一写,总结一下这段时间包括在复习备考、考前准备、考中考后发生的一些事情。希望可以备忘一下,也希望可以帮助到其他准备考 HCIE LAB 的同学。 复习备考云计算的 LAB 并不是很难,但是也需要充分的时间去准备,我自己是提前一个月预约的北京考站的考试。预约考试需要购买考试券,然后登录华为人才在线进行预约,预约 LAB 前需要通过笔试。而且 IE 的考试券是实验 +...
【排错】如何解决 ESXI 数据存储伪挂载问题
故障描述前几天,我突然发现,自己的 ESXI 服务器重启之后,所有的数据存储(本地)都不见了,表现为可以扫描到存储设备,但是在数据存储栏目下看不到存储卷,甚至连 system 的存储卷都看不到了,ESXI 系统虽然可以正常加载启动,但是机器上所有的虚拟机都显示异常,处于无法访问的状态,提示无法连接到数据存储。 解决方法高风险提示以下操作可能会造成无法挽回的数据丢失,请您谨慎操作!!! 首先我先通过 VMware vSphere Client 对存储设备进行了卸载,再重新挂载,回去看数据存储的状态。我发现依然是存储设备挂载正常,而数据存储没有显示。然后去扫描未被使用的存储设备,很遗憾的是并没有扫描到任何数据存储。 使用 ssh 登录到 ESXI 物理机,使用 df -h 命令查看,发现本地存储没有被挂载,然后我通过以下命令重新手动挂载了本地存储。 1234# 列出存储卷信息esxcfg-volume -l# 挂载指定的存储卷esxcfg-volume -m VOLUMEID 手动挂载后,在 ESXI...
【一箭双雕】使用 CODING CI 同时在云开发和 CODING 上部署 React 应用
「云开发静态托管」是云开发提供的静态网站托管的能力,静态资源(HTML、CSS、JavaScript、字体等)的分发由腾讯云对象存储 COS 和拥有多个边缘网点的腾讯云 CDN 提供支持。在过去的几个月中,越来越多的用户支持了静态托管能力,众多开发者也给予了越来越多的关注。「CODING 静态网站」(原 CODING Pages 服务)是一个面向境外用户的静态网站托管服务,可在中国境外网络下正常访问,但不能确保境内网络正常访问。云开发的静态网站托管能力,可以为国内用户提供一个非常快速的访问空间,而 CODING 静态网站托管服务对境外用户访问又比较友好,我们为了集两者之优势,会选择把网站部署到两个平台上。传统的部署方式需要我们进行两次部署操作,费时费力,今天我来介绍一种方法,使用 CODING CI 能力“一箭双雕”,将静态网站同时部署到云开发和 CODING 静态网站托管服务上。本文将以部署 React 应用为例进行演示操作。 工作流梳理因为需要使用到 CODING CI,构建一条持续集成流水线是少不了的,第一步我们需要梳理一下工作流。通过工作流程梳理,我们会发现使用到了两个...
NodeMCU 固件编译常见问题答疑
smartconfig.h: No such file or directory 报错信息:wifi.c:20:31: fatal error: smart/smartconfig.h: No such file or directory 12345678910111213wifi.c:20:31: fatal error: smart/smartconfig.h: No such file or directory#include "smart/smartconfig.h" ^compilation terminated.../../Makefile:422: recipe for target '.output/eagle/debug/obj/wifi.o' failedmake[2]: *** [.output/eagle/debug/obj/wifi.o] Error 1make[2]: Leaving directory...
JavaScript 实现 Hexo 中给时间久远的文章增加友好的提示(Pug)
最近发现一直有流量会访问到我很早之前写的文章,但随着时间的变化,文章的内容可能已经不适用于现在了。比较喜欢 v2ex 的风格,对很久以前的文章增加一个 tip,告诉读者要注意文章的时效性。 本着一个对读者负责任的态度,希望读者可以注意到文章时效性的问题,能对文章有一个主观的判断,避免因为时效性问题而走弯路,所以我决定给 Hexo 时间久远文章加上一个友好的提示,因为我本人的博客是 Butterfly 的主题,所以只适配了 Butterfly,也许也适用于使用 Pug 渲染器的主题,大家可以随意取用。使用 JavaScript 实现,只需修改 Butterfly 主题的两个文件。在 themes/Butterfly/layout/includes/post 目录下新增一个 timecount.pug 文件,内容如下。 1234567891011121314151617script. var now = new Date() now = now.getTime() // 当前时间戳 var postinfo =...