最近准备利用NanopiM2来操纵一下传感器,这次使用的是提供的Matrix库,在根据NanopiM2的官方维基教程中,克隆Matrix代码仓库的过程中出现了一些问题:
可能用到的命令:
显示git版本:git --version
克隆代码:git clone代码的网址
根据维基教程
第一步: apt-getupdate此时报错
错误信息提示如下:
根据报错提示,显示证书验证失败。详细原因如下:
(根据网络修正)
当你通过HTTPS访问Git远程仓库,如果服务器的SSL证书未经过第三方机构签署,那么Git就会报错。这是十分合理的设计,毕竟未知的没有签署过的证书意味着很大安全风险。
一种比较好的解决方法:
(1) 克隆远程仓库时,用env命令设置GIT_SSL_NO_VERIFY环境变量为"ture",并同时调用正常的git clone命令。完整的命令如下:
代码
env GIT_SSL_NO_VERIFY=true git clone https://github.com/friendlyarm/matrix.git
(2) 在克隆完毕的仓库中将http.sslVerify设置为"false"。完整的命令如下:
代码
git config http.sslVerify "false"
总结:
以上方法应该是Git处理可信任的SSL临时证书很好的方法,第一步使用env命令保证了忽略证书错误是单次行为,不会成为默认的设置。第二次,则把忽略证书错误的设置限定在特定的仓库,避免扩大该设置的适用范围而引起的潜在安全风险。
注意:对于fatal: unable to access'https:github.com/friendlyarm/matrix.git':server certificate verificationfailed.Cafile,该错误提示,网上有的说是可以通过关闭系统安全防护来通过验证,这完全没有必要,安全性还是很重要的。
第四步:envGIT_SSL_NO_VERIFY=true git clone https://github.com/friendlyarm/matrix.git
第五步:输入自己Git的用户名和密码
此处报错是由于代码地址输入错误导致,注意仔细核对代码地址(下图所示)
https://github.com/friendlyarm/matrix.git
在这里自己由于不熟悉git的规则,以及粗心大意输错了代码的地址,耗费了大量时间进行git报错的查询。
(其实是我断句有问题。。。)
更正后顺利clone代码到本地
继续进行,克隆完成后会得到一个名为matrix的目录。
第六步:编译并安装Matrix,输入命令:cd matrix
第七步:make
第八步:matrix-temp_humidity
下图为权限不够的警告,由于不是是root(我第一次按照要求重启了Nanopi M2)
顺利读取了DHT11传感器的值
存在的小问题为,会出现能够读到和不能读到传感器值的情况交替出现,怀疑可能是由于我的传感器插针上锈接触不良导致。
更多回帖