你想要从Windows转换到Linux上去吗?
你想要从Windows转换到Linux上去吗? 好的。 就像其他已经走过这一步的用户和企业一样,你可能也是出于Linux的稳定性和开源标准的可靠性而转换系统。 现在你所要做的一切就是仔细地准备好这次转换。
在这里,仔细准备不仅仅意味着在你的系统上装上Linux-不管是你现有的还是一台全新的电脑-它也包括了你的文件、书签、参数和系统设置等。并且在某些情况下需要去找到一款和你以前所使用的Windows应用所相当的开源应用。
Linux安装过程的本身会因发行版本的不同而各有差异,因此你如果事先没有掌握一定的知识,那就先放下这篇文章,先去熟悉一下安装流程再说。 尽管现在的安装流程要比以前简便很多,但尽可能的去熟悉它对你总会有所帮助。 这个方法能够让你就如何移植你的数据和用户设置做出最佳计划,并且防止意外情况的发生。
数据移植的三种方法
有三种基本方法可以将你的用户设置和数据从Windows移植到Linux中:
让Ubuntu Linux替你去做。Ubuntu是目前市面上最为流行的一个Linux发行套件,也是在安装过程中唯一带有内建移植工具的发行套件。
使用第三方应用。
自己动手。
很明显,第三种方法对专业知识的要求是三个方法中最高的,但是它也可以提供给你最大程度上的灵活性,因为你是在自行建立和定制你的系统。
说到灵活性最大化,相比在你现有的电脑上改换操作系统,在一台已装有Linux的新电脑上进行移植将会来的更容易些。 在有一台新电脑的情况下,你可以将那些不确定的东西原封不动的留在旧电脑的系统里。 如果你不得不在你目前装有Windows的电脑上安装运行Linux,那么切记要在移植前备份好你所有的数据。
首先,做备份
不管你采用的是哪一种方法,在移植之前最最首要的事情就是将你无法恢复的所有数据做一个完整的备份。 如果你选择将文件移植成新的格式,那么你要保留好原来的那些文件-如果有某个文件在目前无法被正确转换,你始终有原文件在手里。
尽可能将你的备份做成一个与平台无关的格式,并且将它拷贝到一个在任何平台上都可以读取的设备中。 这样一来,不管你今后是否要在Windows还是Linux中恢复一些数据,你不会碰到任何的意外情况。
最简单的方法就是将所有的文件拷贝到另外一个可以在Linux下读取的磁碟中。 大部分的Linux发行套件本身都可以读取FAT32和NTFS格式的磁碟,所以你可以将你的文件拷贝到另外一个格式化成上述两种Windows格式的硬盘中,这样的话你就可以在Linux下方便的读取那些数据了。 由于FAT32不支持大于4GB的个人文件,因此我推荐你使用NTFS的分区格式。
方法之一是将原始数据压缩成.tgz或.zip格式,大部分普通的压缩软件都可以做到这一点。 在Windows系统上,7-zip压缩软件暂时是我的最佳选择,因为它既是开源软件,又是免费软件。 如果你也想使用这款软件,那么在压缩时选择.zip或.gzip/.tar文件格式,而不是它默认的.7z压缩格式。 该软件在Linux下的格式为p7zip,不过既然市面上的每一个Linux发行套件都通用.zip和.gzip的格式,那么就用它们吧。
顺便说一下,你从一个平台迁移到另一个平台上的东西越多,你就越需要去重新考虑如何安排和分配储存。 如果你想要将文件移植到一个全新的操作系统中的话,那么你最好现在就重新规划一下你的储存结构。 现在的硬盘已经很便宜了,因此将数据存储到第二个硬盘上不再是一个奢侈的空谈,而且从长远来看它能为你省下很多的工作。 (以我自己来说,我就把我的个人文件存放在第二个硬盘上,和操作系统所在的硬盘分隔开来,而第三个硬盘上全是我的音乐图书馆。)
让UBUNTU替你去做
Ubuntu Linux能尽可能的将移植到Linux上的工作做到简单化,它能够让你从现有的Windows系统上将用户文件甚至一些系统定制的用户设置自动移植到Linux中。
目前,Ubuntu似乎是市面上唯一的一个在安装流程中带有此类工具的主流Linux发行套件,尽管这种情况会随着Linux的成长和普及而改变。 如果你现在就想转换到Linux上,并且你希望你的发行套件可以在移植过程中助你一臂之力,那么Ubuntu是目前最好的选择。
当你开始安装Ubuntu时,它会扫描现有系统里的硬件并查看是否装有Windows系统。 如果它找到一个,它就会列出该Windows系统中的所有用户来让你选择移植哪个用户以及拷贝哪种类型的数据到Ubuntu上。 这些选项并不是十分细节化和具体化的-你无法精确的选择到某个具体的文件,而是文件的大致类别-但这个功能却很实用。 比方说,你可以选择你的Internet Explorer收藏夹,或者你目前正在使用的壁纸,你的头像,以及我的文件,我的音乐和我的图片夹中的内容。
Ubuntu升级器的另一个好处是: 它可以不管数据的来源和目的地。 如果在你的某个分区或者硬盘中装有Windows,而你现在想要在Windows所在的位置之外安装Ubuntu,那么升级器就会替你拷贝它所发现到的任何Windows设置和文件(并且/或者让它搬移你所指定的文件)。
这样一来,升级就完全没有破坏性了-这意味着原始文件将纹丝不动。 Ubuntu目前还不支持在Windows界面下转换到Ubuntu-也就是在常规的启动并进入Windows后,插入一张Ubuntu CD然后开始系统转换。目前要转换成Ubuntu系统就必须用Ubuntu的CD来直接启动。
如果你觉得好奇,你可以在Ubuntu发行套件的wiki上阅读一下关于将来Ubuntu移植特性的指南。 举个例子,比方说Mozilla Thunderbird就是其中一个Ubuntu的开发员想要在未来从中移植设置和数据的第三方程序。 在它的规划蓝图上也包括了在Windows界面下转换成Ubuntu的功能。
使用第三方应用
如果你所使用的Linux发行套件并没有自带移植工具,并且你不喜欢自己动手来移植所有东西,那么有不少第三方的工具可以帮你减轻负担。 不管如何,在这里要预先提醒一下,这些工具原本是为企业用户而不是个人用户开发的-它们最适合帮助系统管理员来进行大批量的移植。
MoveOver 4就是一款可以移植所有重要东西-文件、诸如壁纸和字体之类的观感设置、类似浏览器书签和cookie的用户参数等等的商业应用。 这可以减轻手动移植这些东西,特别是诸如网络驱动和打印机定位之类所带来的繁杂工作。 #p#分页标题#e#
MoveOver最大的缺点是它所支持的Linux发行套件相对较少。 该程序的4.0版仅支持Novell Linux Desktop 9和Linspire Five-O;3.0版仅支持Sun Java Desktop System和 Fedora Core 2。
不过该产品有一个名为OpenMoveOver开源分支,它是由Linux组件的社区版本组成的。 开发员可以通过这些组件创建出适用于其它发行套件的移植工具,因此在未来MoveOver将支持更多的发行套件是完全有可能的。
另外一个产品是Alacos公司的Desktop Migration Agent,它能够从Windows系统中移植出文件和广泛的设置。 同样,该产品也是主要为企业用户而非个人用户而开发的,但是它所能支持的Linux发行套件的范围较广,它们有: Red Hat Enterprise Linux, SUSE, Novell Linux Desktop和Fedora Core。
自己动手DIY
将Windows中的所有数据与设置通过手动的方式转移到Linux中是完全可行的。
如果你是在现有的电脑上添加一个Linux系统,那么你处理数据的方式将会随着你采用的移植流程的不同而不同。 比如说,如果你打算覆盖掉你现有的Windows分区,那么你就要找一个地方将所有的资料备份起来(可以是一个外接设备,或者是在移植过程中不会受到影响的其它分区);如果你准备保留Windows分区,那么就可以简单的通过直接复制的方法来处理。
大部分的Linux发行套件都带有一些如何将文件和应用设置手动移植到Linux中的指南。 比方说Ubuntu,它就涵盖了它自身文件系统的大部分要点,包括指导如何将Outlook和Outlook Express中的邮件导入到Thunderbird的邮件格式中(Linux中所使用的格式)。
大多数的Linux发行套件将用户文件-文件、邮件、以及任何应用所产生的东西-置放在一个名为/home/的目录内。 而该目录下的子目录层级则由用户自行定义。 比方说,你可以手动创建名为电影、文件、或数据库的子目录,并且在这些子目录中储存相关的文件。
有些应用也会在你的/home目录下创建它们自己的隐藏目录来储存用户定义的数据-比如Firefox就会创建一个名为/.mozilla/firefox的目录。 但是也有可能你所创建的目录名会与其它的目录名产生冲突(如果发生这种情况,你会得到系统提示)。
如果你所处理的大部分数据不是与Windows系统紧密连系在一起的话,通过手动方式来搬移数据则不会那么的困难。 比方说,如果你将所有的用户数据保留在另一个设备或是另一个非应用目录,而不是Windows的Documents and Settings的目录下的话,那么这些文件就可以依旧留在那里并随时访问。
如果你的数据是保留在Documents and Settings的目录结构下,而你是完整的将它拷贝或压缩起来的,那么你可以通过简单的复制Documents and Settings中的全部内容来将此目录结构保存下来,然后解压缩到Linux中的home目录下。
如果你想要谨慎一些的话,你也可以在你Linux的home目录下再创建一个目录,然后将你的文件恢复到那个目录下,这样一来你的恢复文件与系统或应用本身所创建的文件重名的可能性就会降到最低。 任何东西都可以慢慢地迁移,毋需匆忙急迫。
在Windows版本和Linux版本的应用之间搬迁应用设置则是另外一码事,它的流程随着应用的不同而各异。 有时候此应用的设置是储存在一个独立的文件内,你可以简单的将其搬移到该程序所对应的Linux版本中去。 但不管怎样,这种情况不会一直都有,因此你需要谨慎地处理这个步骤。
举个例子: 在Linux和Windows(还有其它的一些操作系统)上都能运行的Mozilla’s Firefox浏览器是将用户书签存放在一个名为bookmarks.html的文件里的。在Windows下,这个文件是被默认存放在%AppData %MozillaFirefoxProfiles.default目录下,这是一个随即生成的字符串用以区别你的Firefox用户配置。 而在Linux中,bookmarks.html是储存在 /home//.mozilla/firefox/.default.目录下的。
其它Mozilla应用的基本原理也大同小异: 在Linux中,Thunderbird邮件客户端将其用户参数存放同类目录下-/home//.mozilla-thunderbird/.default,在Windows中这个目录则是%AppData%ThunderbirdProfiles.default。
单单将一个系统中配置文件夹里的内容复制到另一个系统中是可行的;Mozilla的网站上就有如何搬移Firefox 和 Thunderbird配置文件的说明。 不管如何,你也可以有选择性的进行复制。 如果你不想重新手动创建Firefox的书签而想将它从Windows搬迁到Linux中,你就必须将bookmarks.html文件复制到Linux中的相应位置。
复制Firefox设置的方法和过程也是一样,它是在同一目录下的一个名为prefs.js的文件。 Thunderbird的设置同样也以prefs.js为文件名存放在它自己的配置文件目录中,其通讯录也是同一目录下的一个名为abook.mab的文件。(通讯录也能以LDIF-格式的文本文件在Thunderbird中导入与导出。)
如果你想在不弄乱这些文件情况下尽可能的使流程自动化,那么在所有的Firefox平台上都有一个名为FEBE的插件可以备份并恢复扩展文件、主题、参数、cookies和书签。 要注意的是当你将其搬迁到Linux中时,你必须手动解压缩FEBE所创建的配置文件;在FEBE FAQ的条目里有一条向你解释了如何做到这一点。
从现有的Windows客户端中将邮件移植到Linux下可能有一点繁杂,这要视你所采用的应用而定。 如果你所使用的邮件应用在Linux中也有,比如Thunderbird,那么流程就不会那么复杂-它通常只是比从旧的Thunderbird邮件目录拷贝到新的Thunderbird邮件目录要繁琐一点点。
如果你使用的是微软的Outlook或Outlook Express,那么流程就相对复杂一点了。 没有一个直接的方法可以简单的将Outlook的邮件储存文件,或.PST文件直接导入到Linux的邮件客户端中。 Thunderbird不会让你这样做,Evolution或Ximian也不会(至少现在不会)。 其原因主要有两个: Outlook的邮件夹格式所有权,以及Outlook本身不带有将邮件导入到标准的Unix邮件夹格式中的方法。
不管如何,这些问题都有解决的方法。 以Thunderbird为例,你可以在运行Outlook的Windows系统中也安装一个Thunderbird,将Outlook中的电子邮件导入到Thunderbird中,然后将Thunderbird的邮件夹复制到Linux中。 #p#分页标题#e#
我通常都通过Windows上Thunderbird的PortableApps版本来做到这一点,它可以在一个可移动设备上运行Thunderbird而毋须在Windows电脑上安装任何东西。 (注意其它应用的跨平台版本,比如OpenOffice.org也有PortableApps版本,因此这个方法不只适用于Thunderbird-你只需知道在两个平台中该应用的设置文件存放在哪里就行。)
一些其它的程序也可以帮助用户将Outlook中的数据移植出来。 其中之一是Outport,它能够将Outlook数据导出成各种属性的格式,但是这个应用已经很久没有更新了,看上去该应用的出现只是因为其开发者的一时好奇想图个新鲜。 另一个经常更新的选择是readpst,它也可以将Outlook的邮件导出成标准的Unix邮件夹格式,并且被Kmail之类的Linux邮件程序所应用。
最后我想指出的是,以上这些范例都是针对相应的程序的。 每一个Linux程序(或有相应Windows版本的Linux程序)设置文件的储存都有一些不同,所以移植流程会因应用的不同而有一点差别。
应用软件的情况
在转换到Linux的过程中有相当大一部分的工作量可以通过相应的应用解决。 如果你早已开始使用开源应用来处理你大部分的工作,那么最困难的部分已经不存在了: 你将如同在Windows环境下一样的去使用Linux下相同的应用。
比方说,如果你早已在Windows上使用OpenOffice.org来进行文字处理,那么OO.o文件在该程序的Linux版本下也能被打开。
不管怎样,如果你使用的都是Windows独有的应用,那么你将需要找到相应的程序-那些用相同的文件类型完成相同的任务或工作的应用。
有一个可以着手去搜寻相对应的应用的地方就是Linuxsp.ru网站上一个经常更新的页面,它分类显示了各种Windows和Linux的应用并以并列的方式将它们对比出来。 各类别下还有产品的子类-比如“MS Outlook类型的电子邮件客户端”就是一个实用的子类。 该站点上还有一些关于Windows和Linux之间功能相同软件的讨论。
如果你手里有一些某种格式的文件,但你无法确定你心里所选择的那个替代程序是否能够很好的对它们进行操作(而你又必须要确定这一点),那么你可以在采取任何行动之前先尝试一下这个方法。 去准备一张含有你所想要的替代程序的Linux免安装发行套件CD。 复制一份有疑问的文件,将其存入一个单独的驱动器(比如可移动式U盘),然后启动这张免安装CD,看看它能否读取那些文件。
比方说,如果你准备用Gimp来替代Photoshop,那么你或许想知道你所要处理的图片能否在Gimp上以你想要的方式被打开和编辑。 在Linux中去做这类尝试很重要,这样你就可以知道现在这个程序的Linux版本是否能满足你的需要;不同平台上同一程序的功能会有些许的差异。
我的建议是在移植过程中处理文件时最好为该文件保留至少三个备份。
1. 原始文件,与你开始移植流程前的保持一致。 如果你保留了原来的Windows分区,则这个原始文件可以作为其中一部分保留下来。
2. 对第1条做一个离线备份;那就是将其备份在另外一个驱动器或媒介上以策万全,可以是你用来执行移植的驱动器。
3. 用来进行移植的复件,也就是你要用来转换成新格式的那个文件。
如果你要移植的文件类型是带有所有权的-比如将“经典”的微软Word格式(Word 97-2003)转换到OpenOffice.org的OpenDoc-那么最好将该文件放到新的平台上,在开始编辑该文件之前将其另存为新的格式,然后将它同原来的原始文件做出比较,看看它是否在转换过程中出现错误。
大部分的Word文件可以无差错的转换,但是对于那些含有复杂格式的文件要多留一个心眼-比如含有数学公式的Word文件就已被证实在某些用户的转换过程中会出现问题。
你随时都可能碰到在Linux和开源中无法找到替代应用的情况。 这种情况下,你有两个选择。 一是继续使用Windows,不管是双重启动配置还是使用虚拟机(比如Linux下的Vmware或VirtualBox),直到你发现了替代应用为止。 二是尝试直接在Linux下使用Wine来运行这个Windows应用。
Wine是一款免费的开源软件,它能够让绝大多数的Windows应用在Linux下运行,但是它无法预测某个Windows应用在Linux下的运行情况会如何。 在新闻组comp.emulators.ms-windows.wine上(这个名字很有讽刺意义,因为严格来说Wine不是一个竞争者)或许会有其它用户关于你所想要运行的那个应用的备注。
将储存在注册表里的Windows应用设置移植到Wine下所运行的应用中的方法也同样可行。 首先你要知道你所想移植的设置是储存在注册表的哪个键值里。
然后你就可以通过Windows的REGEDIT命令来导出相应的键值数据,并将导出的数据复制到Linux中,接着使用Wine自带的regedit应用重新导入这个数据。 (使用Wine的regedit来导入数据的语法很简单: wine regedit regfile.reg,这里regfile.reg就是从Windows中所导出的那个注册表数据。)
另一件需要考虑到的事情就是找到系统级别功能的替代软件-比如音乐播放器、桌面搜索等等-那些与Windows捆绑在一起的软件。 常规的Linux发行套件通常都会带有一些替代Windows系统功能的软件。
以Ubuntu为例,在它的软件仓库里就自带了一款桌面搜索工具(基于Beagle搜索系统的),不过如果你在Windows上用惯了Google Desktop Search的话,你也可以在Linux上安装该工具。
总结
尽管许多从Windows移植到Linux的人都通过这么做来保留一些东西,但是时刻牢记如何进行转换还是十分重要的。 如果你备份了所有的原始文件和用户设置-不管是在你原来的Windows系统上还是以其它形势储存在其它地方-你都将会在Linux这个新家中安顿下来之外留有退路,当然,希望它不要这么快被用到。