Shell's Home

Aug 31, 2012 - 1 minute read - Comments

家庭电脑的虚拟化

家庭电脑,谁都会用。会来看我blog的人更应当是家里有一台,我知道有些还有不止一台的——别人家我不知道,我家里就算老妈和丈母娘一起来打游戏,我还能保证我和老婆人手一台的水平。

一堆机器,有好处也有坏处。好处是,基本坏掉哪台都不怕,备用的比较多,随便来一台就能跑。坏处是,这些机器的配置不同,习惯不同,性能也不同。我们家里更特殊的情况是——连系统还不一样。我自己用的是linux,老婆是win7,老妈是XP。

为了解决文件共享的问题,我采用了NAS,而且是自己组装的小型服务器。对于小型家庭网络,NAS是个很不错的主意。然而电脑不仅仅有文件而已,还有配置呢。老婆的win7是直接连接到电视上的,所以我经常需要和她抢电脑。然而chromium的绑定gmail只能有一个——用我的还是她的就是一个问题,这是两个人用一台电脑的配置共享问题。同时,我的小上网本则是另一个极端。我希望上网本上和主机能共享同一个配置,虽然chromium的同步能力很强,但是很多东西不是chromium能同步的掉的。包括emacs配置,bookmark,打开文件。ssh密钥,系统环境。这是另一个问题,一个人用两台电脑的共享配置。当然,说到这里同时还有一个问题,我不希望用自己的小上网本,毕竟atom的速度和主机没法比,io速度也慢,内存也少。

所以,我最终的解决方案就是——虚拟化。在win7中装一台虚拟机,里面跑一个linux,再通过上网本远程控制这台linux,这样至少解决了我自己的问题。在小上网本上,可以高速的使用浏览器,和主机同一个配置。在主机上,和老婆分开配置。在老婆使用电脑的时候,和她分离的,不受干扰的使用电脑。

实际上,要解决这个问题,最好的方案是基于linux的multiseat系统。由于是multiseat,所以我和老婆同时使用。由于linux是用户分离的系统,所以可以互不干扰。唯一的遗憾是,同一个用户不能同时登录两个X,Xauthority文件会互相覆盖,因此在用户登录的情况下不能使用vnc。

当然,为什么不能用multiseat,你们懂。。。不懂的可以看我上一篇文章。