来吧兄弟,一起玩一起讨论!
您需要 登录 才可以下载或查看,没有账号?注册
×
本帖最后由 odie82544 于 2013-7-11 21:47 编辑
为何我迟迟没有发布 DS3612+ DSM 4.2-3211 x64 版?
这可从头说起, 简言之, 盗亦有道
话说, 我可是 Synology DS-1812+ 的合法使用者.
一年前我买了 DS-1812+ 产品, 拿到手的时后里面的 DSM 是 3.2-1955
我兴高采烈的把八槽全上了 2TB HDD, 然后手边的资料一口气都倒入, 超过 10TB 资料花了我一周时间完成.
正当要享受这 NAS 的时刻, DSM 4.0 第一版发布了, 我看了更新列表, 发现功能增进不少, 所以也升级了 DSM 4.0 第一版, 升级完成后, 所谓的悲剧就开始发生, 我发现从 Windows OS 下透过 cifs 连线, 挡案与目录都错了, 而且很多无法存取, 再来, 我有的电脑甚至连目录都无法访问, 这下可惨了, 10TB 资料呢...... 总不能要我都从 File Station 处里吧
PS: 我嚴重的質疑, Synology 的相容性測試單位在幹什麼吃的, 連這種 Bug 都放過
由于这是 Embedded Linux 系统, 我对这系统当时一点都不熟, 只好打电话向 Synology 原厂求助.
好歹我也是将近 20 年资历的电脑玩家了, 可以理解客服人员一惯用标准官方方式回答问题, 但整个过程, 只让我觉得我跟一个女工读生在对谈而已
电话不打还好, 结论只有一个, 根本没有用.
在对原厂技术支援完全没有信心的情况下, 我只好自己 Google 寻找解决方案, 当时首先想到的是, 既然 DSM 4.0 有问题, 那我就换回 DSM 3.2-1955 吧
哈, 经过一连串的资料寻找, 我确认了官方不提供降版方式, 但有其它的方法可以解决.
所以我使用了偏方试着解决我遇到的严重 DSM 4.0 Bug, 这一搞下去更惨, 我的 16TB HDD Volume 遗失, 而且无法透过 DSM Web 修复.
真是天在逼我了, 我只好拿起以前买的 Linux OS 书籍开始寻找重要的指令研读, 并且上网四处找文章参考.
最后, 我终于手动把遗失的 16TB Volume 救回, 但又花掉我一周时间.
PS: 也是在这一周过程中, 我深刻的体认, 万一资料真的需要手动救援, Synology SHR 只是增加你无限的困扰而已
16TB Volume 是救回了, 但是 DS-1812+ DSM 也被我弄的乱七八糟, 所以我打算把资料全部移出来, 然后重新安装过一遍,这时候问题又来了, 移出来要花一周, 放进去又要花一周, 我整个月都搞这机器就好了是吧
对我来说, 钱可以解决的事情还不算问题, 所以我买入了 HP 支援 802.3ad 的 24port 交换器, 用频宽合并的方式加速网路存取, 是有点效果, 但也花掉了一周多来完成
这过程中, 我想着, 既然有 eSATA Port 可以使用, 我干脆把我的 DAS 接到 eSATA 去复制资料好了, 当我把 SIL3726 DAS 接上时后, 又发现, 只有一个 HDD 被抓到 !!! 也就是说, Port Multiplier 无法使用, 经过上网资料求证, 只有 Synology 原厂的 DX 扩充盒是可以这样用的.
好吧, 钱可以解决的问题也不算太大, 就查了一下 Synology DX-510 售价, 这不查还好, 一查我更火大, 竟然是那样贵, 都可以买一台新的 NAS 了, 当下我就决定了, 当我资料全部处里完毕后, 我就解决你这问题, 也就是从这开始, 我踏上了破解 DSM 的路程
恩, 已经有很多前辈在讨论如何改 DS-106 系列的机种, 但那些都是 ARM/PPC 的, 不完全适用, 但还是有很多有用的资讯可以启发, 首先, 就是要 compiler 啰
所以我找到了 Synology GPL Source code, 然后开始试着编译, 这编译过程让我吃尽了苦头, 怎样都失败.
不得已的情况下, 我只好去看源代码, 这一看, 我非常的生气, 我虽然不是专精的程式设计师, 但基本的程式语言语法我还看的懂
对我来说, 真的太过分, 那 Synology GPL Source Code 里面, 把很多关键部份都删掉, 甚至语法还乱改, 连我这外行人都看的出来程式语法逻辑是错的
既然 DX 是天价, 而 GPL Source Code 你又防小人防到这样过火, 那真别怪我非解开不可.
于是我开始研读跟比对 Linux 源代码, 这样三个月过去了, 这中间国外 Vortex 在 QNAP 论坛发表了 DS-1511+ 的破解版让 QNAP 使用. 我更深信, DSM 限制定可被解开
经过我也不知道多少次的编译跟实验, 我终于成功的破解出第一版基于 DS-1511+ 的 DSM 3.2-1955 在 Intel Z68 上面运作, 这花掉我四个月时间了
人心总是不满足的, 我当时觉得, 完美的破解方案应该是可以在 VMware 里面用, 这样才可以完全避免我一开始遇到的悲剧, 还有那该死的 eSATA PMP 限制也要干掉
为了让 DSM 在 VM 里面跑, 又让我吃了苦头, 以当时的我来说, 没那样简单, 虽然最后还是给我搞定了, 可是也随着 DSM 4.0 版开始的防止, 让我的 DSM 3.2-1955 成果又必须转向
坦白说, 从 DSM 4.0 版开始的源代码, 一直无法让我在 VMware 成功使用 DSM, 但是也不是毫无进展, Virtual BOX 是可以的, 所以在 DSM 4.0/4.1/4.2 所有版本中, 我解开的都是基于 VBOX 来用. 其实, 也没啥不好, VBOX 经过我的测试, 效能是比 VMware 高一些的, 但这 VMware 要跑的目标还是不能放弃
来说说 eSATA 限制, 话说, 前些日子, 我买了 DX-213 来拆解, 拆了之后终于明白, 为何源代码里面一大堆 GPIO 的方式不论怎样改, 我都无法让 SIL3726 PMP 运作
原来里面确实是不一漾, DX 电路板上放了一颗 CPLD 逻辑 IC 来控制 DX, 而一般在市面上买的 eSATA Box 是没有这东西的, 重点是, 根本无从添加, 但多放了一颗 CPLD 就要多卖贵那样多钱? Synology 你慢慢等啦, 我不接受.
于是, 我开始针对 eSATA 部份的程式码做修改, 并添加了新款 SATA 控制器驱动, 例如 ASMEDIA 1061 系列
最后, 在有条件的情况下, 我让 DSM eSATA 的原厂限制解除了, 一切都大功告成?
并没有, 最恼人的 synobios.ko 这挡案可是干扰整个过程的最大问题, 造成 scemd 动不动就 shutdown 机器
好吧, 那我就再来看看代码, 嘿~~ 想的美了, 这关键挡案怎可能放出来呢, 但也不是毫无线索可循, 最后, synobios 终于给我成功的编译到内核中
这意味着, 我目前不再需要 DSM 里面的 synobios.ko 文件了. 至此, 除了 RS10613xs+ DSM 4.1-2668 开始的版本我还没有解开外, 其他的 Synology x86/64 机种早已经全面攻陷
RS10613xs+ DSM 4.1-2668 之后的版本目前没有解开, 原因是这是 SAS 控制器机种, 新的代码中又多了不少的检查, 所以没有被我列入优先处里对象, 但这系列不代表你可以一直存活下去
写到这里, 过程中的描述一共花掉我一年了, 而 RS3413xs_3211-x86-20130525 的 DSM 4.2-3211 正是为了庆祝目前的成果而发布
最后, 说明未何 DS3612+ DSM 4.2-3211 迟迟没有发放
其实, 早在 4.2-3211 原厂发布的同一天我得知后, 不到 24小时内就已经解掉, 也就是 2013/04/17 凌晨就已经搞定
没有办法在同一天 04/16 就解开的原因是, Synology 那边根本就下不了这挡案啊
对我来说, 来一版新 DSM 就解一版已经是跟吃饭喝水一样平常了, 而目前看起来最多人使用的 4.1-2668++, 这不是我释出的, 不关我的事, 我没必要看这个版本
次多人使用的 4.2-3202, 可能是我释出的, 但没有放出 DSM 4.2-3211 的原因有以下:
1. Synology 最新版的 GPL Source 相对于以前版本来说, 这次的完整度很高, 这让我占时消火
所以还没有执行我先前对自己的其许 - 来一版就破一版并且发布, 直到 Synology GPL Source Code 不再乱删乱改为止
2.
3. 事情不要做绝, 要留点饭给人家吃, 黑群辉的出现, 对于原厂来说一点好处都没有, 我不希望看到我个人的研就成果发布造成原厂运作越来越艰辛
总之, 一句话, 不为也, 非不能也
都不知是该哭还是该笑呢? 起因是原厂客服的不专业与无能, 造就了一年后的我目前可以解开绝多数的机种
最后附上 VMware Workstation 运行 DS3612+ DSM 4.2-3211 证明所言非虚 |