这几天为了尝试中文EPG,刷了很多次机器,也逛了很多论坛,看到很多朋友都在反复的问两种刷机方式的区别,自己也有一些体会,和大家分享。
注意:本文中的观点和结论纯为在实践过程中自己的体会,不保证完全正确。如果有错误,请指正。
串口刷机
使用DM的RS232串口来更新DM的固件。刷机软件为DreamUP,固件文件为IMG文件(即文件后缀为.img)。具体使用方法,请查询本论坛或其它论坛。
网络刷机
使用DM的LAN网口来更新DM的固件。刷机软件为FlashWizardPRO,固件文件可以为前述的IMG文件,也可以为FW2文件(即文件后缀为.fw2)。具体使用方法,请查询本论坛或其它论坛。
FW2文件
FW2文件其实是一个打包文件,该文件可以使用WinRAR软件打开。文件内包含两个文件:cimg和jimg。
cimg
cimg文件其实就是串口刷机中使用的IMG文件,它是DM闪存中cramfs文件系统的备份,存放的是DM的根文件系统。在DM启动时,该文件系统使用“只读”(ro,read only)方式加载,仅能读取,不能修改,从而保证了DM的基本系统不会被无意修改或损坏。
jimg
jimg文件仅在网络刷机中才会用到(包含在FW2文件中)。它是闪存中jffs2文件系统的备份,存放的是用户的配置数据和安装的附件等。在DM启动时,该文件系统使用“读写”(rw,read write)方式加载,可以修改,这样用户就可以修改配置和安装各种插件了。
两种刷机方法的异同
其实通过上面的说明,两种刷机方法的异同大概就出来了。
串口刷机,升级的仅是cramfs文件系统,jffs2文件系统并不会更新。如果在刷机时选择了“清除闪存”,会将jffs2文件系统的内容全部清除,从而将系统恢复到原始状态(没有任何用户配置,也没有安装任何插件)。如果不选择“清除闪存”,则可能保留用户配置和安装的插件,但由于兼容性问题,可能导致各种奇怪问题出现。包括我看到有朋友问:“我和朋友用同一固件刷机,结果他的机器使用的是CCcam_2_0_11,而我是CCcam_2_0_9,很不爽”,就是这个原因,而不是大家经常回答的:“可能是你刷机不全”。
网络刷机,如果使用的是IMG文件,和串口刷机没有区别。如果使用的是FW2文件,将对cramfs和jffs2文件系统同时升级。这样不但升级了系统软件,也同时将用户配置和安装的插件同时升级了。这种方式, 可以认为是“完整”的方式。所以,如果希望使用某个成熟的固件,包括它的配置和安装的插件,网络刷机是必要的选择(使用FW2文件)。
最后说明,刷机是有风险的。如果不确认自己能够正确刷机,或者还没有学习足够知识了解刷机中出现各种问题的处置方法,建议不要轻易刷机。当然,如果非常了解“出现各种问题的处置方法”,网络刷机和串口刷机同样安全。