Moments 的人脸识别bug、第三方社区套件无法加载、及视频转码失败bug#
第一个问题,人脸识别失败bug#
Moments提供了强大的相册分类,相册识别,相册根据人脸和场景自动分类.但是无论黑裙白裙都有不少人遇到Moments的相册渲染失败的问题.
针对此问题网上一堆的答案,各种putty,winscp,甚至需要修改linux基础配置,允许root登录,甚至需要洗白…
以上一系列解决方案有众多冗余操作无需进行,本文亲测的经验将会附上.
首先这个bug存在于Moments,是相册人脸和场景分类失败.
影响文件:
1 | /var/packages/SynologyMoments/target/usr/lib/libsynophoto-plugin-detection.so |
具体建立索引时的错误日志在:
1 | /var/log/synophoto.log |
解决方案:#
先看看网上说的最多的几种方案:
要求洗白的: https://zhuanlan.zhihu.com/p/424429988
putty+WinSCP+创建root账号的: https://zhuanlan.zhihu.com/p/95300888
其实以上方案都太复杂了,尤其各种开启root账号,替换文件的教程.本质上只有一个核心-----------替换受影响的libsynophoto-plugin-detection.so
文件!
所以全程无需任何工具即可完成:
-
下载修复的
libsynophoto-plugin-detection.so
文件,上面后两个文章中都有下载链接.解压后的libsynophoto-plugin-detection.so
的md5是:c995d39544ae5aa374c4259429ed1fc5 libsynophoto-plugin-detection.so
-
下载后传到任意一个群晖的文件夹下,然后将老的
/var/packages/SynologyMoments/target/usr/lib/libsynophoto-plugin-detection.so
变成/var/packages/SynologyMoments/target/usr/lib/libsynophoto-plugin-detection.so.bak
-
然后将群晖咱们修改后的
libsynophoto-plugin-detection.so
放到/var/packages/SynologyMoments/target/usr/lib
目录下,替代上面的老的bak的so,真正完成工作. -
注意要修改文件属主和组:
1
sudo chown SynologyMoments:SynologyMoments libsynophoto-plugin-detection.so
-
然后,需要在套件中心先停用,再启用Moments
-
在Moments中点击重新创建索引就解决了.
其实核心比较简单,替换不起作用的老文件,并修改文件属主让它可被使用.
第二个问题,套件中心第三方社区套件无法加载bug#
**问题:**社区套件某天突然在套件中心无法显示,或者新增社区套件地址,提示"无效的位置".
此问题我一度以为是群晖识别到黑群,或者是群晖主动屏蔽了大陆ip导致,没太在意.直到我必须要安装一个ffmpeg套件的时候才查到根源。主要是因为
黑群时间太久,黑群的自带的证书信任验证库过期了(验证方法是手动把时钟日期回调到2016-2020年,确定又可以添加了就是证书过期了,此方法不一定验证成功,因为有的网站时钟不同步也无法访问),导致所有访问https或者http都会证书过期(实际上未过期)。这玩意是随着DSM版本更新更新的。
详情在这里:
解决方案:#
上文一言以蔽之,更新根证书文件/etc/ssl/certs/ca-certificates.crt
文中推荐:
SSH连接黑群,输入以下命令手动备份并替换ca-certificates.crt
sudo mv /etc/ssl/certs/ca-certificates.crt /etc/ssl/certs/ca-certificates.crt.bak && sudo curl -Lko /etc/ssl/certs/ca-certificates.crt https://curl.se/ca/cacert.pem
如果不信任curl提供的证书可以自己去找openssl的证书替换。或者可以自己有能力折腾的手动更新黑群(自带的更新黑群会失败不要用)
当然,我肯定不会使用上面这个来路不明的证书,既然问题是根证书过期.那就从机器上copy一个上去就行.
故: 从本机(linux)或者自己可信的服务器,找到/etc/ssl/certs/ca-certificates.crt 上传到黑群中,然后进入黑群后台,cp覆盖即可。
更新后,套件中心大量的第三方套件都可以加载出来了。
第三个问题,视频缩略图bug#
这个问题通常伴随日志中心报错System failed to convert video [/volume1/xxxxxxxxxxxxxxxx.mp4] to mpeg4.
这个问题需要先在套件中心安装ffmpeg
,如果搜不到,按照上一章节先解决套件中心的问题
然后
1 | # 看一眼所有的ffmpeg文件 |
看一眼版本
1 | # 自己安装的是4.4.2 |
替换MediaServer里面的ffmpeg
1 | # 备份 |
重建索引:
moments---左下角---设置---重建索引
即可