看了一下记录,9 月 28 日我把 ThinkPad X250 给格了,安装了 Linux。
之前 8 月份我去青州参加内训师讲课培训比赛,当中需要制作课件。我带去的 MacBook Pro 上装有 Office 360,里面有最新的 PowerPoint,我觉得这样完全没问题,结果实际还是遇到了一些兼容性的问题,比如我在 Mac 上做好的课件,到了比赛机器上播放时,字体就变了。这些问题倒不是不能克服,我遇到最大的问题是,在 Mac 上运行 Excel 对表格进行一些分类汇总之类的操作,运行速度立马降低到难以忍受。我的 Mac 配置比工作用机要好多了,但 Excel 在上面就是跑不过 Windows 上原生的。于是,我在培训的后期,就产生了要在原生 Windows 上使用 Office 软件的念头,在回来后就写了这篇文章。
我对市面上的 Windows 笔记本电脑进行调查,同时还在咸鱼上卖掉了我的 MacBook Pro。我的目标从一开始的 Surface Pro 变成了 HP Spectre X360。我想用支持手写笔的电脑,在上面用 OneNote。Spectre X360 到最后抓住了我的眼球,外观实在是漂亮,但国内竟然没有 16G 内存的版本,让我很不解。我的 MacBook Pro 就是 8G 内存,虽说网上说 8G 内存绰绰有余,甚至 4G 就能跑 Windows 10,但我觉得再买一台内存一样的电脑,有些不甘心。还有价格,我能出的起这个钱,但是是不是我会很开心的用这台电脑,让我对下单有些犹豫,一旦买了之后就后悔了,这钱不是小数目。而且网上对 HP 笔记本的散热问题也有微词,另外 Intel 8代 CPU 也要出了,我想要不然还是等等。
所以我一狠心,就把我当时 ThinkPad X250 上的 Gentoo 系统给删掉了,从网上下载了 Windows 10 的镜像,然后用电脑的序列号顺利激活了 Windows 10 的 Home 版。之后安装 Office 什么的都挺顺利,要紧的是我为了日常数据分析写的一些 Ruby 小程序,只要它们能正常运行了,我的问题就解决了大半。我按照网上的说明,打开了 Bash on Windows 的功能,在里面能运行一些 UNIX 程序,不错,让我一下子挺激动。但当我测试我的程序的时候,sqlite 的 gem 无法正常安装,最终失败了。然后我从 Ruby 官网上下载了 Windows 下的安装程序,在 Windows 环境下安装,然后下载 gem 模块,最终成功运行。我还安装了微软的 SyncToy 程序,在我公司的电脑上和笔记本上同步一个文件夹,里面包含了我 2017 年的全部文档,有时候我直接在自己的电脑上编辑,然后同步到办公电脑上,没有任何兼容性问题,感觉非常不错。
是什么让我最终又换回 Linux 的呢?我在这几天依然没有习惯在 Windows 环境下写程序。我要写个程序来处理新的任务,结果字符编码等一系列问题一致困扰着我,一直到最后我放弃还是没有解决,这和我在 Linux 下打开编辑器开始编码简直有天壤之别。现在微软的 Visual Studio 开发工具免费了,我一度想学,结果在 C# 里访问 Excel 表格这个操作让我找了半天资料,也没有找到能用的代码实例,最终还是放弃了。
然后我回忆了一下,我之所以一开始安装 Windows,是因为我在当时的环境下,特别需要一个稳定的 Office 办公环境,才作出的决定。而我日常办公中,需要在自己的电脑上用 Office 的机会很少,所以几天后我就厌烦了。我对 Windows 的需求,目前来说仅仅是 Office 系列软件的需求,我觉得还是找找看,有没有一台物美价廉,还便携的笔记本电脑,比如联想的 YogaBook 似乎就不错,买一台专门用来处理 Office 文档。
之前我用的 Gentoo 系统,一直不错,就是安装有些软件耗时太长。这次我想还是安装 Arch Linux 吧,我的 Gentoo 无论如何启动速度也赶不上 Arch Linux,而且着还是我成功在 X250 上安装的第一个 Linux 发行版,自己也用过几个月,使用起来基本上没啥问题。
本来我很有信心的安装,结果没想到给了我一个下马威。我一开始配置了 Awesome 环境,其实都还挺顺利,但在 28 日中午之前突然启动 Awesome 报错,是电池组件的问题。我检查了一下,大概是电源方面的硬件出了问题,我的电脑上有两块电池,现在就识别出了一块。而且我在一次重启时,出现了我从来没见过的画面,一串英文提示我说一定要用联想认证的电池,你用第三方的野鸡电池出了问题联想概不负责。我看着是硬件的问题了吧,心想中午去万达的联想专卖店去维修看看,我的电脑还在保修期内。不过那几天实在太忙,根本没有时间去做这些事情,于是一直到国庆节放假,我也没有解决这个问题,只是把显示电量的组件先 disable 了。
国庆节假期的前几天,我因为这个事情,没碰电脑。到了前天,我重新开机,把电源组件恢复了,似乎也没有了问题。我于是决定先把这个问题放一放,看看将来是否还会发生。
接着还有其他问题,我的电脑从休眠恢复时,有比较小的机率会发生屏幕横向快速位移、纵向慢速位移的情况。有的时候我切换一下桌面就好了,多数情况下不能恢复。这种情况倒不影响键盘鼠标,我就通过盲打操作,重启电脑,就恢复。但这个事情毕竟常会发生,是我心里的一根刺,非常难受。之前我装过几次 Linux,从来没有发生过这样的问题,非常奇怪。我从网上找资料,最终找到了这个网页,说是在引导命令里加上“intel_iommu=off”这个参数。我加上了之后,还是没用。
到了前天晚上,我在 #archlinux-cn 群组里发文,有人回复我说删除 xf86-video-intel 驱动,用 modesetting 驱动试试。我查了一下,现在 Xorg 的驱动可以支持 Intel 的显卡,不需要 Intel 的驱动也能比较好的运行,有些发行版就是这么做的。我于是也这么操作,之前的问题果然没有再发生。我心想之前给内核胡乱加参数也没解决问题,就把参数又给删掉了。结果重启后 startx 后就卡死了。
这实在是太蹊跷了,我怎么弄也不行,最终在又重新安装了一遍 Arch Linux,又发生了更大的问题,X 服务器拒绝连接,简直奇怪死了,我都不知道怎么会出这种事情。从昨天一直到今天,反复重装了几次,一直不行。
到了今天我抱着试试的想法,安装了 GNOME,结果 GDM 可以引导,我一看有戏。顺便说一句,现在 Arch Linux 上的 GNOME 已经用到了 3.26 版本了,设置窗口大变样了。可是我不想用 GNOME。于是我尝试安装 LightDM,结果直接开不了机,到了 DM 该上的时候,就卡死了。经我测试,只有 GDM 能行。
然后我从 GNOME 里启动 Firefox,找回了之前的那个页面,给内核引导加上这个参数,再 startx,竟然成功了,没想到竟然真的是这个参数的问题。我上网搜了一下这个参数的作用,从这篇文章里看,这个参数和 Intel VT-d 有关,之前就看过不少 Linux 下 VT 问提,我想也许和它有些关系吧。
现在用Windows 10。不想折腾。终端用cmder,设置chcp 65001使默认编码为utf-8