分类: NAS

  • 群晖(Synology)NAS DS418 Play升级到DSM7.2后应用商店无法采用SPK安装Docker的解决方案 群晖NAS命令行(CMD)安装Docker

    群晖(Synology)NAS DS418 Play升级到DSM7.2后应用商店无法采用SPK安装Docker的解决方案 群晖NAS命令行(CMD)安装Docker

    几乎找遍了各个网站,也快有好几年没在群晖NAS当中运行Docker容器了,也就是从升级了DSM到7的版本后。

    群晖官网是明确表示DS418 Play型号是不支持docker容器,但是以前能够通过其他版本的SPK文件进行安装,例如DS918+的安装文件Docker-x64-20.10.3-1308.spk.

    而现在,不管下载那个版本的spk,又或者使用更改链接的大法,再也搞不定Docker的安装了。

    当然,国内外也有不少网友通过应用市场上传spk这种方法就安装成功了,但是技术奇客ITGeeker.net就没那么幸运,好像很多人也没那么幸运,如果你想尝试一下,就去群晖的官网下载Docker的spk文件安装试试看吧。

    https://archive.synology.cn/download/Os/DSM

    对了,Docker在群晖DSM中的名称已经更改为:Container Manager

    by 技术奇客ITGeeker.net

    原本想着随着群晖的不断升级,以后或许还能在DS418 play当中使用docker的,但是没想到群晖NAS的价格越卖越贵,还真就不管以前用户的死活了!

    所以今天就分享一下如何用命令行安装docker,让您的群晖DS418play重新用上Docker容器。也幸亏群晖还没封死这条路,毕竟有些简单的docker应用,用NAS来运行的话又稳定数据又安全。

    至于可以运行哪些docker可以参看技术奇客ITGeeker.net的这篇文章:

    群晖DS418play如何使用命令行安装Docker – Container Manager

    1. 下载docker的源文件

    首先,从Docker官网下载一个最新版本吧: https://download.docker.com/linux/static/stable/x86_64

    # 比如下载当前最新版,或者下载后上传到NAS
    wget https://download.docker.com/linux/static/stable/x86_64/docker-26.1.3.tgz

    2. 给你的群晖添加一个docker的用户

    这一步是必须的,如果没添加成功则后面运行会出错

    sudo synogroup --add docker $USER

    3. 解压缩前面下载的docker源码安装包

    tar xzvf docker-26.1.3.tgz
    
    # 然后将文件复制到对应目录
    sudo cp docker/* /usr/bin/

    4. 创建守护程序Daemon

    echo '{
      "storage-driver": "vfs",
      "iptables": false,
      "bridge": "none"
    }' > /etc/docker/daemon.json

    5. 运行Docker

    sudo dockerd &

    解决群晖NAS运行源码安装的Docker空间不足的问题

    no space left on device

    docker info -f '{{ .DockerRootDir }}'

    通过此命令,可以发现直接运行的Docker默认目录的空间很小,大约1-2G左右,随便拉个稍大点的image就会空间不足,所以我们要创建并使用一个自定义的存放Docker image的目录。

    mkdir -p /volume1/homes/image_docker
    
    # 然后vi /etc/docker/daemon.json添加
    "data-root": "/volume1/homes/tmp_docker"
    
    # 重启docker
    ps ax | grep docker
    kill -9 id
    sudo dockerd &
    
    # 再确认一遍路径是否已改变:
    docker info -f '{{ .DockerRootDir}}'

    DSM安装docker-compose

    DOCKER_CONFIG=${DOCKER_CONFIG:-$HOME/.docker}
    mkdir -p $DOCKER_CONFIG/cli-plugins
    curl -SL https://github.com/docker/compose/releases/download/v2.17.2/docker-compose-linux-x86_64 -o $DOCKER_CONFIG/cli-plugins/docker-compose
    chmod +x $DOCKER_CONFIG/cli-plugins/docker-compose
    
    # 检查一下版本
    docker compose version

    DSM运行Portainer测试一下吧

    sudo docker run -d --network=host portainer/portainer:linux-amd64
    
    # 检查一下容器是否已运行 
    docker ps

    http://NAS_IP:9000

    登录Portainer就可以用界面来管理Docker的容器了,适合不喜欢用CMD的小伙伴们

    One More Thing

    由于 Synology 的限制,所有容器都需要使用–network=host(或 compose 中的 network_mode: host),所有内容都将可直接从主机访问。没有端口映射。

    by 技术奇客ITGeeker.net
  • Synology群晖NAS如何安装iperf3内网测速工具 非Docker运行模式

    Synology群晖NAS如何安装iperf3内网测速工具 非Docker运行模式

    装了ESXi8,发现了第一个问题,华硕Z490-A自带的Interl I225-V 2.5G网卡只能被识别成100M。幸亏另加的英特尔I350T2X1双网口网卡能被正确识别成1000M的,而且显示支持SR-IOV,但是设置了好多次SR-IOV,重启后模拟网卡数量就会跳回0个,无法正确启用。不知道是ESXi版本问题还是别的什么原因

    因为低配高价,放弃升级群晖NAS的想法 转而 来玩玩ESXi 8.0吧

    趁着这个机会,把所有ESXi的虚拟机和路由器的速度都测了一遍,果然只要把虚拟机的网络适配器改为英特尔I350T2X1网卡的端口组,速度马上就从百兆变为千兆。

    100M速度
    1K速度

    这个时候想到测试一下我的群晖DS418play到路由器的速度,结果一下子还找不到iperf3在Synology的应用,网上又编译的spk是针对DSM6.3的,而且无法下载,DSM7又提到的一般是用Docker运行,而我的群晖DS418play无法运行Docker。

    几经搜索,发现了群晖的Diagnosis Tool工具,里面有78个工具,其中就包括iperf3,方法很简单。

    群晖NAS内网速度测试

    1. SSH登录群晖NAS,并切换到管理员权限sudo -i
    2. 安装Diagnosis Tool,sudo synogear install
    3. 运行/var/packages/DiagnosisTool/target/tool/iperf3 -c 192.168.188.1

    群晖NAS外网速度测试

    • 运行:/var/packages/DiagnosisTool/target/tool/speedtest-cli.py
    • 会在结果可以找到Download: 138.89 Mbit/s;Upload: 63.01 Mbit/s(这是我千兆移动的测试结果)

    如果不想使用synogear了, 一个命令就可移除:

    sudo synogear remove

    78个群晖的Diagnosis Tool工具命令行参考

    1. /var/packages/DiagnosisTool/target/tool/addr2name
    2. /var/packages/DiagnosisTool/target/tool/arping
    3. /var/packages/DiagnosisTool/target/tool/ash
    4. /var/packages/DiagnosisTool/target/tool/bash
    5. /var/packages/DiagnosisTool/target/tool/cifsiostat
    6. /var/packages/DiagnosisTool/target/tool/clockdiff
    7. /var/packages/DiagnosisTool/target/tool/dig
    8. /var/packages/DiagnosisTool/target/tool/domain_test.sh
    9. /var/packages/DiagnosisTool/target/tool/file
    10. /var/packages/DiagnosisTool/target/tool/fix_idmap.sh
    11. /var/packages/DiagnosisTool/target/tool/free
    12. /var/packages/DiagnosisTool/target/tool/gcore
    13. /var/packages/DiagnosisTool/target/tool/gdb
    14. /var/packages/DiagnosisTool/target/tool/gdbserver
    15. /var/packages/DiagnosisTool/target/tool/iftop
    16. /var/packages/DiagnosisTool/target/tool/iostat
    17. /var/packages/DiagnosisTool/target/tool/iotop
    18. /var/packages/DiagnosisTool/target/tool/iperf
    19. /var/packages/DiagnosisTool/target/tool/iperf3
    20. /var/packages/DiagnosisTool/target/tool/kill
    21. /var/packages/DiagnosisTool/target/tool/killall
    22. /var/packages/DiagnosisTool/target/tool/ldd
    23. /var/packages/DiagnosisTool/target/tool/lsof
    24. /var/packages/DiagnosisTool/target/tool/ltrace
    25. /var/packages/DiagnosisTool/target/tool/mpstat
    26. /var/packages/DiagnosisTool/target/tool/name2addr
    27. /var/packages/DiagnosisTool/target/tool/ncat
    28. /var/packages/DiagnosisTool/target/tool/ndisc6
    29. /var/packages/DiagnosisTool/target/tool/nethogs
    30. /var/packages/DiagnosisTool/target/tool/nfsiostat-sysstat
    31. /var/packages/DiagnosisTool/target/tool/nmap
    32. /var/packages/DiagnosisTool/target/tool/nping
    33. /var/packages/DiagnosisTool/target/tool/nslookup
    34. /var/packages/DiagnosisTool/target/tool/perf-check.py
    35. /var/packages/DiagnosisTool/target/tool/pgrep
    36. /var/packages/DiagnosisTool/target/tool/pidof
    37. /var/packages/DiagnosisTool/target/tool/pidstat
    38. /var/packages/DiagnosisTool/target/tool/ping6
    39. /var/packages/DiagnosisTool/target/tool/ping
    40. /var/packages/DiagnosisTool/target/tool/pkill
    41. /var/packages/DiagnosisTool/target/tool/pmap
    42. /var/packages/DiagnosisTool/target/tool/ps
    43. /var/packages/DiagnosisTool/target/tool/pstree
    44. /var/packages/DiagnosisTool/target/tool/pwdx
    45. /var/packages/DiagnosisTool/target/tool/rarpd
    46. /var/packages/DiagnosisTool/target/tool/rdisc6
    47. /var/packages/DiagnosisTool/target/tool/rdisc
    48. /var/packages/DiagnosisTool/target/tool/rltraceroute6
    49. /var/packages/DiagnosisTool/target/tool/sa1
    50. /var/packages/DiagnosisTool/target/tool/sa2
    51. /var/packages/DiagnosisTool/target/tool/sadc
    52. /var/packages/DiagnosisTool/target/tool/sadf
    53. /var/packages/DiagnosisTool/target/tool/sar
    54. /var/packages/DiagnosisTool/target/tool/sh
    55. /var/packages/DiagnosisTool/target/tool/sid2ugid.sh
    56. /var/packages/DiagnosisTool/target/tool/slabtop
    57. /var/packages/DiagnosisTool/target/tool/sockstat
    58. /var/packages/DiagnosisTool/target/tool/speedtest-cli.py
    59. /var/packages/DiagnosisTool/target/tool/strace
    60. /var/packages/DiagnosisTool/target/tool/sysctl
    61. /var/packages/DiagnosisTool/target/tool/sysstat
    62. /var/packages/DiagnosisTool/target/tool/tcpdump
    63. /var/packages/DiagnosisTool/target/tool/tcpdump_wrapper
    64. /var/packages/DiagnosisTool/target/tool/tcpspray6
    65. /var/packages/DiagnosisTool/target/tool/tcptraceroute6
    66. /var/packages/DiagnosisTool/target/tool/telnet
    67. /var/packages/DiagnosisTool/target/tool/tload
    68. /var/packages/DiagnosisTool/target/tool/top
    69. /var/packages/DiagnosisTool/target/tool/tracepath
    70. /var/packages/DiagnosisTool/target/tool/traceroute6
    71. /var/packages/DiagnosisTool/target/tool/tracert6
    72. /var/packages/DiagnosisTool/target/tool/uptime
    73. /var/packages/DiagnosisTool/target/tool/vmstat
    74. /var/packages/DiagnosisTool/target/tool/w
    75. /var/packages/DiagnosisTool/target/tool/watch
    76. /var/packages/DiagnosisTool/target/tool/zblacklist
    77. /var/packages/DiagnosisTool/target/tool/zmap
    78. /var/packages/DiagnosisTool/target/tool/ztee
  • 因为低配高价,放弃升级群晖NAS的想法 转而 来玩玩ESXi 8.0吧

    因为低配高价,放弃升级群晖NAS的想法 转而 来玩玩ESXi 8.0吧

    家里有个群晖的DS418play NAS, 搜了一下购买订单,是2017年11月11日买的,到现在已整整5年了。当时配了5块希捷的酷狼4T硬盘,1块备用,结果到现在都没罢过工,是个踏实的机子。

    当年的折后价格是7905.56元,加上加配的内存319.58元,还有APC的UPS电源430.86元,总共:8656元

    2017年11月11日NAS订单
    UPS和增加的内存

    现在的升级版应该是Synology群晖DS420+了,价格还是和当年的DS418Play差不多,增加了两个NVMe,CPU从Intel Celeron J3355升级到了J4025。

    一样的内存2G

    一样的网络1GX2

    感觉比牙膏厂还要爱挤牙膏!

    by itgeeker.net

    DSM7不让使用Docker了

    还有一个主要的原因:DSM升级到7.1之后,之前能使用的Docker在我的DS418play上面就再也不能使用了,网上搜了好多人也是这个情况,试了很多方法,反正就是不让用了。群晖官方本来就没说DS418play支持Docker使用,也只好哑巴吃黄连-有苦难言了。

    虽然还是可以安装VMM,当系统资源的占用极高,速度那叫一个煎熬。

    硬盘空间有些吃紧了

    对ITGeeker技术奇客来说,NAS最常用的功能主要有:

    1. Emby电影服务器,自带的Video Station不太好用禁用了。
    2. Download Station下载电影,通过Chrome浏览器插件比aria2还方便。
    3. Synology Photo手机,PAD照片自动备份
    4. Synology Drive文件同步,外网实在是慢。没法和Nextcloud比的。
    5. SAN Manager iSCSI分享给Windows做硬盘用。比Samba和NFS方便许多。
    6. Cloud Sync同步Onedrive和百度云
    7. Git Server同步代码,也配置了计划任务定时备份外围的git资源
    8. 安装Syncthing同步各个设备的文件
    9. 备份各种文件,软件,游戏等等。

    也用过Audio Station,Calendar,Contact等。Docker后来不能玩了,VMM太慢了也不用了。

    硬盘空间,4个4T的酷狼,用了群晖自带推荐的Synology Hybrid RAID (SHR),空间总共有10.5T,空间使用率一度达到85%以上,碰上疫情在家,整理了一番后,使用率降到了70%。当平常用Emby看完电影,要经常删掉一些才行,否则有些吃紧了。

    放弃购买NAS

    想来想去,NAS配置太低,价格又贵,手里还有个酷冷至尊的ATX大机箱和电源,自己装一个吧。

    ITGeeker 2022 ESXi主机开销

    在购买这个主机之前,折腾了好多省钱的方法,有兴趣可以看看我的之前的博客:

    折腾了一周的硬盘Raid计划 主机始终点不亮故障分析 原来是华硕主板的显卡Bug

    这是最终为这个ESXi主机所购买的设备和价格:

    2022 ESXi主机

    用的英特尔10代主板和CPU-i310105, 华硕Z490-A的硬核主板,内存48G,NVMe三星980 1TB,希捷16T企业级氦气硬盘2个,外加原先使用过的SSD硬盘3个。

    网卡现在很贵,买了一个全新的INTEL千兆网卡I350X1两口的,等价格低了再考虑4口吧。本想再海鲜市场淘一个的,有了之前折腾的经历,想着还是简单点吧

    I350X1能被ESXI8.0自动识别,还是SR-IOV挺方便:

    用的都是好品牌的东西,安装一切的都很顺利。价格也就和NAS差不多。相比NAS,机箱有点大,能耗可能会更高些,但配置和可玩度不可同日而语吧。

    一上来就建了7个虚拟机,日后跟大家慢慢分享ESXi的折腾情况吧。

  • 群晖DSM7.1 Emby中文字幕插件–Emby.MeiamSub替换subfinder 插件路径及权限问题已解决

    群晖DSM7.1 Emby中文字幕插件–Emby.MeiamSub替换subfinder 插件路径及权限问题已解决

    Emby自带的一些字幕插件TheTVDB, TheMovieDb, The Open Movie Database, Open Subtitles等往往无法满足中文字幕的需求,ITGeeker技术奇客之前也使用subfinder来搜索中文字幕,在群晖里新建一个任务计划,定时可以搜索相应字幕,安装和使用也非常简单:

    
    #适用DSM7.1
    #首先安装
    pip install subfinder
    
    #然后每次运行
    export PATH="/var/services/homes/YOURUSERNAME/.local/bin:$PATH"
    subfinder /volume1/video/film_path -m zimuku shooter subhd
    

    subfinder已有一年有余未更新了,对于新的电影已经时常搜不到字幕了

    那就试试中文字幕插件–Emby.MeiamSub

    Emby中文字幕插件–Emby.MeiamSub

    开源插件地址:https://github.com/91270/Emby.MeiamSub

    如果要安装插件,先去https://github.com/MediaBrowser/Emby.Releases/下载并解压缩

    群晖7.1安装方法

    群晖

    复制插件文件到 /var/packages/EmbyServer/target/var/plugins

    复制插件文件到 /var/packages/EmbyServer/target/system/plugins

    重启服务

    这是作者原始里的说明

    如果按照这种方法操作过的小伙伴就会发现,/var/packages/EmbyServer/target/var/plugins在DSM7.1里面其实是找不到的,那么只要复制插件文件到 /var/packages/EmbyServer/target/system/plugins就可以了。

    然后按要求重启Emby Server服务,再去插件目录查看,其实发现并没有找到Emby.MeiamSub.Shooter和Emby.MeiamSub.Thunder。

    去Emby日志里查看,会找到一条错误信息:

    System.UnauthorizedAccessException: System.UnauthorizedAccessException: Access to the path '/volume1/@appstore/EmbyServer/system/plugins/Emby.MeiamSub.Shooter.dll' is denied.

    登入:/volume1/@appstore/EmbyServer/system/plugins目录发现,刚才的两个dll插件文件都已再目录,但权限不对:

    Emby.MeiamSub.Thunder.dll
    Emby.MeiamSub.Shooter.dll
    更改文件所有权及权限

    其实就是更改成和/volume1/@appstore/EmbyServer/system/plugins目录中其他插件一样的权限:

    cd /volume1/@appstore/EmbyServer/system/plugins
    chown -R emby:emby Emby*.dll
    sudo chmod 644 Emby*.dll

    然后再重启就可以再插件目录发现字幕插件了

    如何使用中文字幕插件–Emby.MeiamSub

    在菜单-媒体库新建或选择编辑已有的库,然后找到字幕下载部分,勾选这两个字幕,默认是选上的。如图:

    然后就默默的等待字幕更新吧

    如果心急,那么尝试重新创建媒体库然后等待更新

    ITGeeker技术奇客也是刚刚启用,后续有问题会继续更新此文。

    后续,发现字幕获取失败后,会重复下载字幕

    Github也也已有人递交了issue: https://github.com/91270/MeiamSubtitles/issues/61

    但似乎没人更新,所以就先用折中的版办法吧:

    #看了一下重复的文件都是没获取成功产生的,大小在300字节左右,可以用命令先列出来看一下
    find /volume1/video/film -size -500c -size +200c -type f -name "*.srt" -exec ls -ld {} ;
    
    #然后直接删除,也可以添加一个计划任务吧
    find /volume1/video/film -size -500c -size +200c -type f -name "*.srt" -exec rm -f {} ;

    再等等应该有大神更新一下源代码,彻底解决问题。

  • 华为手机访问群辉NAS的问题 需要SMBv1协议支持

    华为手机访问群辉NAS的问题 需要SMBv1协议支持

    折腾的目的是为了手机的备份,官方云端的空间需要支付费用价格如何icloud,家里的NAS还有空间,能利用自然更加方便了。而且也免去用华为手机助手备份,毕竟现在文件巨大,用这种人工方式耗不起时间的。能有备份自然更安全

    华为Mate 20 X自带的文件管理可以自动发现网络邻居,包括你家里的NAS存储设备,但每每尝试连接都以失败告终,所以就无法使用自带的备份功能了。网上也有同样问题者,有的说连不上有的说很幸运,一联就成功了。不知道你是否幸运?

    Google官方出的应用Android Samba Client ​​​​

    谷歌官方2017出的andriod app,还是个开源的应用,github官方链接:https://github.com/google/samba-documents-provider 已经2年没有更新了。Google Play的官方链接也已取消,原地址:https://play.google.com/store/apps/details?id=com.google.android.sambadocumentsprovider

    网上reddit评论说该应用只支持到Samba的SMBv1协议,对于目前主流SMBv2和SMBv3都不支持,然后就成了谷歌的一个弃子。于是我试想者华为可能采用了这个源码,但并没有开发支持v2和v3的samba协议。

    修改NAS的samba协议支持SMBv1

    检查了一些群辉NAS 418play的控制面板—文件服务—samba的高级设置里,有一个最小SMB协议,默认是SMB2,改成SMB1,应用后再在华为手机的网上邻居登录,顺利打开了NAS的共享文件夹。

    其他android smb client尝试

    Google Play里搜索有一个叫AndSMB的,里面显示可以选择smbv2和smbv3协议,但实际测试还是连不上,只有打开NAS的SMBv1支持才最靠普。

    其他有人说可以用Asus File Manager华硕的文件管理app,实测还是不支持smbv1以上协议。应该是谷歌停止开发后大家都没去继续开发。

    NFS协议

    ITGeeker技术奇客认为SAMBA是适合windows和linux之间共享文件的协议,andriod来源是linux内核,NAS系统也应该是基于linux,所以彼此共享应该用NFS协议更合适。

    有推荐的NFS Android Clinet有ES File Explorer,Solid Explorer File Manager,甚至说用Kodi来访问NFS,ITGeeker技术奇客对这些还没有验证,有兴趣的去试试看吧。

  • 群晖NAS无法同步阿里云OSS文件的原因

    群晖NAS无法同步阿里云OSS文件的原因

    阿里云对象存储OSS的权限已经给足,群晖使用CloudSync添加OSS的Bucket的添加也很顺利,为何还是不能同步呢?

    群晖同步失败截图

    后来用阿里云官方提供的OSS Browser试着下载,会看到提示:

    归档文件,需要恢复才能预览或下载

    选择恢复后,过了一定时间,网上说要一分钟,实际似乎要长一些,然后就可以同步了。

    几经查询才发现是自己创建Bucket的时候,在存储的时候选择存储类型的时候,选择了“归档存储”所致。

    对象存储OSS存储类型有标准存储类型(Standard)、低频访问存储类型(Infrequent Access)和归档存储类型(Archive)三种存储类型。三种存储类型拥有不同的价格:

    • 标准类型的存储费用:0.148元/GB/月
    • 低频类型的存储费用:0.08元/GB/月
    • 归档类型的存储费用:0.033元/GB/月

    真是一个复杂,具体关于这三个存储类型的特点和优劣,请参看官方文档https://help.aliyun.com/document_detail/51374.html?spm=5176.8466010.0.0.43431450cHTEns

    群晖NAS同步出错解决方案-OSS生命周期管理

    官方说用户可以对一个Bucket中有需要的Object设置Lifecycle规则,实现一个Object从Standard -> 低频 -> 归档 -> 过期删除的生命周期管理。

    这个方式可以解决节省费用的问题,但对于群晖同步时的错误提示,很难做到消除,而且NAS会一直发送请求。如果群晖的CloudSync做到能选择只同步指定存储类型的文件,问题可能就解决了。

    其他解决方案还请技术奇客们多多留意指点一二。

奇客罗方公众号 奇客罗方小程序 奇客罗方客服 ITGeeker Telegram

网站由ITGeeker技术奇客开发并管理;隶属于GeekerCloud奇客罗方智能科技
Site designed and developed by ITGeekerwhich is a sub-website of GeekerCloud
网站地图 | 沪ICP备2021031434号-4