V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
请不要把任何和邀请码有关的内容发到 NAS 节点。

邀请码相关的内容请使用 /go/in 节点。

如果没有发送到 /go/in,那么会被移动到 /go/pointless 同时账号会被降权。如果持续触发这样的移动,会导致账号被禁用。
HOMO114514
V2EX  ›  NAS

双十一买的 DX4600 Pro,玩了两个星期,系统基本被我摸明白了,非常逆天

  •  9
     
  •   HOMO114514 · 2023-11-13 12:34:50 +08:00 · 8492 次点击
    这是一个创建于 367 天前的主题,其中的信息可能已经有所发展或是发生改变。

    这世上基本很难再找到负责 UGNAS 这么低能的产品经理了,从系统底层到套件处处透露着反人类的设定

    我真心推荐感兴趣想买的用户尽量降低自己的需求,像我这样做纯仓储+网络协议访问+Jellyfin+自动追番的人都踩了一堆坑

    但是真心说实话,如果只想买个本地的百度网盘,那还是很合适的,国产 APP 的手机套件不说别的,随便把几个老牌厂商体验吊起来打

    我打算围绕这台东西写两篇文章,一篇深入分析系统,另一篇通过我踩坑的经验教人部署一点东西,目前不知道投哪里比较好,官方论坛什么用都没有,考虑去 smzdm 、酷安、知乎、v2 这些地方投

    另外,这牌子买的水文真的太多了,全都是什么上手轻度使用,挂个硬盘开个 app 就直接好好好,就连竞品对比文都是坑,我写的东西全是自己摸索出来的,在公网上搜都搜不到,简单放点预览


    (非常重要)权限模式与用户隔离

    UGOS 的权限模式非常的奇葩,我在一个正常的 Linux 系统上从来没有见过这样的用法,并且这个系统软件的很多功能缺陷都是由权限模式导致的。

    我把 UGOS 面向用户的服务套件叫做nas_server,暂且把它当作一个 service 级别的东西,那么我们有以下几个结论:

    1. 套件的所有用户事务(登录、权限管理、软件数据隔离、存储区区分等)全部交由 nas_server 托管,与 Linux 系统的 user-group 机制脱钩

    2. nas_server 自始至终在 UGOS 中以 root 身份运行

    3. 每个登录到绿联私有云 APP 、并且连接到某台 NAS 上面的用户,会被 nas_server 单独分配一个用户 uid 数字,nas_server 依据此数字来管理用户对应的物理存储、维护用户私有数据,并且这个 uid 对用户不可见

      (注意,这里说的 uid 和 Linux user 的 userid 没有任何关系,我们后续会将这个 id 称为 ug_uid )

    4. nas_server 在文件管理时,只负责目录级别的可见性,不会负责 rwx 权限。严格来说,整个系统都没有对 rwx 做任何管理,默认都是 777 。

      目录级别的可见性,指的是它只会把你用户在/mnt/dm-0 存储空间中对应的文件夹单独展示出来,而不管文件夹中是否有任何权限不对、owner 不匹配的内容

    5. nas_server 对文件的错误权限有恢复机制,当用户尝试通过套件访问存储空间里不属于它/权限不足的文件时,文件的权限会被强行修改为 root 777

      测试样例:root 登录 ssh 创建一个文本文件,将其 owner 修改为某个别的用户,权限修改为 755 ,移动到某个共享成员的存储空间内。成员通过套件内置的金山 WPS 打开文本后在 ssh 窗口 ls -l ,会发现文件被重置为 root 777

    (重要)为什么只有管理员能开 SMB ?

    这个问题是从我邀请家庭成员进入 nas 后探索目录时发现的。一开始我以为 nas_server 管理/mnt/dm-0 是简单地把所有文件都设为 root777 ,却惊奇地发现好像其他成员的文件夹 owner 并不一样,他们与文件夹同名,对应一串长长的数字,具体而言是 ug_uid+0000 。凭借着我对 Linux 浅薄的经验,去/etc/passwd ,以及其他地方找了很久都没有找到 username ,经过了大量的实验和思考之后我认识到了一件事情:

    只有管理员开设的“网络服务”中的“账户”在 Linux 下是真实存在的,其它用户在 Linux 系统中不存在!

    image-20231112010130346

    当你开通网络服务的账户后,你自己的 ug_uid 才在 Linux 系统下有真正的实体 user 对应,uid 和其他用户一样,都是 ug_uid+0000 ,而包括 SMB 在内的大量功能,需要依赖 Linux 的实体用户运行。因此,只有管理员能够开设 SMB ,并且出于隐私原因 SMB 也只能提供管理员的私人空间和公共空间。

    所有想要折腾绿联 NAS 的人都必须记住这个结论,这个结论可以解释后面非常多不合理的地方。

    nas_server 会自动将其它用户创建的文件 owner 设置成一个没有实体用户对应的 ug_uid+0000,以区分存储区 owner ,因为 Linux 系统是可以强制用 id 数字指派文件 owner 的。然而对文件指派 owner 似乎没有任何用处,可能是给内部其它服务进行区分,因为上面提到了,“文件管理”APP 只根据目录提供内容,根本不管 owner 是谁,错了就重置成 root 777 。

    这套容错机制可以保证用户通过套件使用绿联私有云的时候不会出现奇怪的权限问题,但是对于 SMB 等严格遵守 Linux 用户权限规范的服务来说并非如此。举个例子,我现在使用 root 在自己的存储空间里创建了一个文本并填充了内容,将其权限改写成 755 ,通过 SMB 访问文件,修改并保存,会发现没有保存权限,记事本弹出“另存为”窗口。

    image-20231112005418366

    这种情况会更多出现在某些 docker 镜像中,他们支持通过 PGID 和 PUID 环境变量指定 bind volume 产生文件的用户映射,并且假设默认的 permission mask 是 022 的话,产生的数据和配置文件通过“网络账户”登录的 SMB 访问是没有修改权限( 755 )的。

    很显然,这套权限模式经不起系统级的全面开放访问,所以聪明的绿联产品经理想出了一个解决方案,那就是:

    禁止非管理员使用 docker 和 smb 就好了,再在 docker 镜像管理页面里加上一条免责声明,出了问题不怪我哦。

    image-20231113121652004

    第 1 条附言  ·  2023-11-15 17:04:06 +08:00
    系统深入分析已经发布,摇一摇跳转:

    https://www.v2ex.com/t/991945
    51 条回复    2024-01-14 00:30:46 +08:00
    tedding
        1
    tedding  
       2023-11-13 12:44:07 +08:00
    这不就是大部分的产品经理的现状吗?脑袋和屁股结合想出来的产品解决方案...最后用户反馈产品不好用,会被归咎于开发没有很好的实现他的需求,导致只能部分妥协而造成产品不好用
    jasonyang9
        2
    jasonyang9  
       2023-11-13 13:24:06 +08:00 via Android
    感谢踩坑😂感谢分享👍
    arthurfyc97
        3
    arthurfyc97  
       2023-11-13 13:45:41 +08:00
    我也买了一个这玩意,软件确实是弱智。。
    KgM4gLtF0shViDH3
        4
    KgM4gLtF0shViDH3  
       2023-11-13 13:47:32 +08:00
    软件的用户 id 为什么要跟系统的用户 id 有关联?
    syubo2810
        5
    syubo2810  
       2023-11-13 13:47:45 +08:00
    我也是这玩意,除了做工满意,其他都不太满意,早知道刷群晖了,现在资料 docker 都搞上去了都不好弄了
    KgM4gLtF0shViDH3
        6
    KgM4gLtF0shViDH3  
       2023-11-13 13:48:45 +08:00
    不止极空间做的咋样。
    Masoud2023
        7
    Masoud2023  
       2023-11-13 13:52:08 +08:00
    这东西不都是买来刷别的系统的吗,都研究到这一步了,为什么不直接装个别的系统?

    没记错的话 4600 也有黑裙玩吧?
    UncleCat01
        8
    UncleCat01  
       2023-11-13 13:53:24 +08:00 via iPhone
    装 TrueNAS unraid 之类的吧
    Masoud2023
        9
    Masoud2023  
       2023-11-13 13:54:44 +08:00
    不是我非抬杠,这系统确实听很多人说问题很大
    HOMO114514
        10
    HOMO114514  
    OP
       2023-11-13 14:02:12 +08:00   ❤️ 1
    @bestkayle

    这套东西导致了什么问题,导致比如说百度网盘插件只有管理员能用,因为这类工具本身限制在一个系统里面运行多个实例
    那怎么解决呢?虚拟机或者容器化方案呗,问题就来了
    现在绿联根本没把虚拟机做出来
    那容器化呢?比如说每个用户建一个 docker ,然后隐藏
    docker 是不支持隐藏 container 的
    但是 docker 支持每个用户运行一个 dockerd
    理论上来说 把系统的一些容器挂在 root ,就拿这个百度网盘举例
    然后其它的用户有自己的 docked 他们看不到 root 的容器 是很好的方案
    但是非管理员的用户在 Linux 不真实存在,并且现在套件里的 docker 就是以 root 身份运行
    抛开百度网盘不谈,这套东西同时也限制了其它用户不配拥有生产力,SMB 只能挂管理员的私人空间,幸亏我家四口确实只有我在用 SMB
    多一个会的人 立马就要退货
    HOMO114514
        11
    HOMO114514  
    OP
       2023-11-13 14:04:45 +08:00
    @Masoud2023 家里有剩下 3 个人,他们有摄影存网盘、看网剧、相册备份的需求。这 3 点绿联套件都能很好地实现
    Withal
        12
    Withal  
       2023-11-13 14:09:30 +08:00
    凑合用吧就这个价格,jellyfin 硬解啥都能用对我来说也够了,反正也不用它的系统
    KgM4gLtF0shViDH3
        13
    KgM4gLtF0shViDH3  
       2023-11-13 14:15:20 +08:00
    @chowdpa02k413 #10 jellyfin 可以解决用户分离的问题。
    HOMO114514
        14
    HOMO114514  
    OP
       2023-11-13 14:20:28 +08:00
    @bestkayle 我的 jellyfin 不是给家里人用的😂是给我同年龄的兄弟朋友同事们用的,展示那些我这个年龄段该看的东西,比如说什么小电影、国产、fc2 、表番里番,然后正经内容丢到绿联云影院让家里人看

    但谁曾想这个绿联云影院更是很好地反映产品经理的脑缺……后面完整的文章发出来给大伙品鉴就知道了
    swordsmanX
        15
    swordsmanX  
       2023-11-13 14:22:10 +08:00
    @syubo2810 #5 做工感觉也一般,很多人 m.2 固态硬盘那两个螺丝都拧不下来,要用钳子才能搞定。
    windrun
        16
    windrun  
       2023-11-13 14:43:16 +08:00
    感谢分享,还好当时便宜只是看了看,没有下手
    zzgo88
        17
    zzgo88  
       2023-11-13 14:47:15 +08:00
    一直用黑裙,上个月同时买了 4600pro 和极空间 z4s ,现在在用 z4s 和老黑裙。买 4600 和 z4s 的原因是看中了免费的内网穿透,之前用 zerotier 和 tailscale 不稳定。并且感觉他们的功能比起 j1900 的黑裙还是多了不少。
    4600 pro 的软件难用,比 z4s 差很多,现在在吃灰,最近忙,打算装个 unraid 再看看怎么样。
    z4s 现在问题是硬盘没有 basic 模式(现在在外测,看论坛说最近会推送);黑裙有个好用的 drive 功能,z4s 虽然也有文档同步,尽管写的自动同步,但是每次都得手动点开始同步;另外还有个问题,家里 z4s 的 docker 应用,远程登录的客户端后,并不能直接端口访问,和 zerotier 那种直接 ip+端口访问家里服务还是有差别的
    Ansen
        18
    Ansen  
       2023-11-13 15:06:40 +08:00
    到手第一时间就刷黑群
    yelc668
        19
    yelc668  
       2023-11-13 15:11:27 +08:00
    我记得可以开启 docker ,开启 docker 随便玩啦,官方配套是垃圾
    HongDoNi
        20
    HongDoNi  
       2023-11-13 15:42:01 +08:00
    给楼主点赞,写的很好,坐等下一篇文章
    xshument
        21
    xshument  
       2023-11-13 16:35:18 +08:00
    之前买了 dx4600 然后退了,感觉软件设计的就是一个网盘而非一个 nas ,各种功能都不太完善,docker 有些残缺,虚拟机也遥遥无期。当然硬件做工很不错,比威联通的大塑料强多了。
    Newface
        22
    Newface  
       2023-11-13 16:47:28 +08:00
    之前在 wb 看到的说的,UGOS 是基于 OpenWrt 开发的,不是基于完整 Linux 发行版,所以...😅https://weibo.com/2213561393/N3hReuMaZ
    (但感觉对于小白就当个本地网盘可能还行
    flyqie
        23
    flyqie  
       2023-11-13 17:09:56 +08:00 via Android
    楼主方便给个 UGOS 镜像包嘛,绿联那边好像各种理由都不给。

    挺好奇的,想自己分析下 UGOS 。
    Infinite2K
        24
    Infinite2K  
       2023-11-13 17:59:47 +08:00
    是这样的,绿联的特点是,硬件真不错,软件真的拉,如果外观做成极空间棺材板那种,真的就没一个优点了,但是 4600 基础版的双十一 1650 的价格,他又是真的没对手,比极空间白裙联想威联通铁威马都便宜,刷黑裙要接 u 盘....一重启就复原,绿联产品经理就是,你说任你说,论坛随便反馈,我就是不改
    hambers
        25
    hambers  
       2023-11-13 18:08:40 +08:00 via iPhone
    所以建议是啥? 刷 or 不刷,如何刷 刷啥系统?
    Infinite2K
        26
    Infinite2K  
       2023-11-13 18:11:57 +08:00
    @Masoud2023 #9 他是适合真的简简单单用的人群,就是那种任何成品 nas 都能满足的客户群体,系统深挖以后,他很多东西确实是跟楼主开头说的一样,他很反人类的,你想不出来产品经理是在什么精神状态下想出来的这么个逆天的方案,满嘴“我敲?他怎么是这么搞的?”;问题是说了没用的,论坛反馈不行的,包括原来,去年吧,他的那个影音库,是个什么牛鬼,强迫症血压飙升;之前就有人吐槽过楼主说的管理员和子用户权限问题,跟别人家的不一样,很逆天的我敲
    zhouquanbest
        27
    zhouquanbest  
       2023-11-13 18:17:33 +08:00
    这东西我觉得看用户画像吧
    对于小白和不想折腾的人来说挺好,你把他当成是个私人网盘,他就希望不同用户看到的东西不一样,所以才产生了这样的权限设计;

    对于有进阶需求的人,直接格了装个黑裙 or 其他 NAS 系统,这硬件配置就值回票价了。


    我本来是想买回来折腾的,最后全家直接用他的系统了,配个 docker 就满足家用需求了。
    HOMO114514
        28
    HOMO114514  
    OP
       2023-11-13 18:28:23 +08:00 via iPhone
    @flyqie 拿不到,官方不给。不过这是 openwrt ,根目录里面好像是有放一套恢复镜像的
    PrinceofInj
        29
    PrinceofInj  
       2023-11-13 18:29:56 +08:00
    @Infinite2K #24 之前看帖子,这货不是可以直接安装 linux 当 x86 主机用么?搞得我都有点心动了。
    HOMO114514
        30
    HOMO114514  
    OP
       2023-11-13 18:30:11 +08:00 via iPhone   ❤️ 1
    @Newface 这个系统和套件很多 multiuser 的缺陷和问题在 systemd 环境都是能随便解决的,但不巧的就是 openwrt 它没有 systemd😇
    cp19890714
        31
    cp19890714  
       2023-11-13 18:50:23 +08:00
    绿联 NAS, 我用了 1 周后, 就对这个产品绝望了. 从软件设计的不足 和 bug, 以及部分技术设计, 能够看出来 这个团队全是混子.

    开发: 用户权限问题 OP 已经说了, 我不重复了. nginx 静态资源全部被加上 no-cache, 导致外网访问非常非常慢, 我 100M 的上行都不够用. 例如:图片查看器的 js 文件几兆, 每看一张图片, 都会重新下载这个 js. 我到现在都忍不住想骂这群 SB, 极其不负责任.

    测试: 登录窗口, 密码输错后, login 按钮不可点击, 只能刷新页面. 这种非常基本的功能 bug, 能存在 1 年不修复.

    产品: 产品规划非常混乱, 可以肯定, 这个产品经理根本不懂 NAS, 不知道该做什么. 基本的文件备份都没做好, 一堆 bug 不修复, 一直在搞些可有可无的功能, 比如:音乐播放器, 电子书, 然后做出来之后又完全不能用.

    这个团队, 没有任何人真的在日常使用他们的产品.

    这些问题, 不会随便时间而改变, 绿联 NAS 永远不会变好. 除非换管理层.
    aloxaf
        32
    aloxaf  
       2023-11-13 18:50:30 +08:00
    国内不少商业公司的软件,一旦牵扯到 Linux ,暴露出的水平简直让人地铁老人手机
    能做到不用 777 解决权限问题,都算是优秀级别了……
    flyqie
        33
    flyqie  
       2023-11-13 18:55:56 +08:00 via Android
    @chowdpa02k413 #28

    恢复镜像?能麻烦帮忙提取下吗,谢谢~
    ll26571
        34
    ll26571  
       2023-11-13 19:22:15 +08:00
    无脑 777 是真的牛逼
    JaviDN
        35
    JaviDN  
       2023-11-13 20:56:10 +08:00 via iPhone
    @tedding 大胆点,把脑袋去掉
    HOMO114514
        36
    HOMO114514  
    OP
       2023-11-13 21:18:39 +08:00
    @flyqie
    好消息。OpenWrt 的系统镜像是 ROM+Overlay 模式的,系统镜像固定烧在 mmcblk0p*的分区里,对系统做的所有改动都在/overlay 层上,不会影响固件区本身,而且这 ugos 开机就把/rom 挂载上了,还省得我搞 emmc dump 。
    我直接把整个/rom 分区打包下来,不确保完整性,不一定能用。
    https://1drv.ms/u/s!AnUR6E0c9koezg8AJ6hHrTSkZFgq?e=uBODp8
    flyqie
        37
    flyqie  
       2023-11-13 21:36:10 +08:00
    @chowdpa02k413 #36

    非常感谢~
    SenLief
        38
    SenLief  
       2023-11-14 01:03:52 +08:00 via iPhone
    看来绿联对于自己用户的自画像抓的很准啊。

    他要的就是什么都不懂的小白,所以系统和软件也要足够的小白,就是简单的点点点就行,但是外网访问要做好就行。
    csx163
        39
    csx163  
       2023-11-14 01:36:21 +08:00
    这机器前段时间网上铺天盖地的软文,极空间、联想、海康都 TM 一个样
    skvi
        40
    skvi  
       2023-11-14 08:33:58 +08:00 via Android
    差点入坑 4600pro ,还好没被价格冲昏头脑,选了 464c2.....最后入了 466c ,又感觉自己脑子坏掉了
    Infinite2K
        41
    Infinite2K  
       2023-11-14 09:07:05 +08:00
    @PrinceofInj #29 没看到装 linux 的帖子,不过确实是可以装别的系统的,只是 4600 没 hdmi 输出口,但是拆开后的主板上是有 hdmi 接口,需要外接键盘盲操刷系统,官方没做罢了,4600+和 4600pro 是做了输出口,价格也借机涨了;另外毕竟是绿联,所以官方 4600 全系列送的都是 7 类网线,同行家的都是 6 类线,硬件神软件鬼;

    自带的系统,简简单单的用户使用,可能性价比比较高,只是有真正需求的,复杂需求的,深挖这个系统,逻辑上是真的反人类;

    所以如果刷别的系统,u1s1 ,这个配置价格,还真的同类中没有对手,降维打击,不过 N100 ,N300 ,N305 的说不定该出了吧,最近没看新闻,极空间的双十一前出了,价格非常“自信”,等后面同行跟进后,价格可能会下降,目前这个配置确实还是最优解
    Archeb
        42
    Archeb  
       2023-11-14 11:05:22 +08:00
    感谢楼主的踩坑和探索,看来绿联还是到手就装群晖的命。
    mosfet
        43
    mosfet  
       2023-11-14 14:21:48 +08:00
    黑群晖或者威联通吧,白裙的价格相对配置太感人
    极空间总感觉融资烧完就要跑路,NAS 市场太小了,光靠卖硬件赚不了几个钱。
    shawnoob
        44
    shawnoob  
       2023-11-14 14:34:31 +08:00
    双十二在观望一波,绿联极空间二选一
    daya
        45
    daya  
       2023-11-14 15:55:07 +08:00
    这款一直在关注,期待楼主的文章早日发布,方便的话文章发布了 @我一下
    xiaooloong
        46
    xiaooloong  
       2023-11-14 16:11:49 +08:00
    当 代 软 件 开 发 现 状
    xiaooloong
        47
    xiaooloong  
       2023-11-14 16:12:03 +08:00
    当 代 软 件 开 发 现 状
    运行就是 0:0 ,权限就是 777 ,剩下的轮子全都自己造
    eternitym31
        48
    eternitym31  
       2023-11-15 00:18:51 +08:00
    马一下,正在看 nas 。
    iphoneXr
        49
    iphoneXr  
       2023-11-15 11:11:33 +08:00
    虽然,但是,你们上面的说的都很有道理呢!
    我的 威联通 NAS 里面的 共享目录/share 好像也都是权限 777 呢

    [~] # ll /share/SSD/
    total 11M
    drwxrwxrwx 11 admin administrators 4.0K 2023-11-13 09:03 ./
    drwxrwxrwx 4 admin administrators 4.0K 2023-05-30 15:35 ../
    drwxrwxrwx 6 admin administrators 4.0K 2023-07-31 16:47 doc/
    drwxrwxrwx 7 admin administrators 4.0K 2023-05-30 16:05 pc/
    yougotme
        50
    yougotme  
       306 天前 via iPhone
    @cp19890714 你说对了,绿联 nas 的绝大多数问题其实都出在产品那边,但码农的技术水平也三流,造就如今这个局面。一群不懂 nas 、不玩自家 nas 的草台班子开发的充斥着各种安全漏洞的 nas ,它们搞 nas 主要目的只是为了吹自己是科技公司,因为这样好讲故事圈钱。至于你提议换管理层,我觉得能把 nas 做得这么烂没被炒掉只能说明要么是亲属要么就是很会忽悠老板(一个臭卖数据线的懂什么 nas )
    yougotme
        51
    yougotme  
       306 天前 via iPhone
    @iphoneXr 既然选择了共享,不改 777 算哪门子共享? 绿联这边是无论对内对外统一 777
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   5768 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 29ms · UTC 02:58 · PVG 10:58 · LAX 18:58 · JFK 21:58
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.