在华擎 Asrock Z87 Pro3 主板上安装 Linux

运气好,我在华擎 Asrock Z87 Pro3 主板上成功安装 Debian Linux testing(Jessie) 和 Fedora 19。I7-4770 Haswell CPU,单条 Kingston DDR3 1600 8GB 内存,两块West Digital WD10EZEX 1T 硬盘组成 Linux 软阵列。此文作为我的一个备忘录并与大家分享。

购买之前:
如我们所知,Linux 在桌面硬件公司的支持较少(甚至这块 Z87 主板的官方支持操作系统是 Windows 7/8)。所以,购买一件新的桌面电脑硬件在 Linux 上有时可能面临兼容性问题。买之前我做了一些功课。它的板载网卡是 “Giga PHY Intel® I217V”,板载声卡是 “Realtek ALC892”,二者在它们的官方网站都有 Linux 驱动。6个 intel sata3 接口支持 intel fake-raid(intel Rapid Storage Technology),我想 intel 的产品 Linux 应该支持的。于是,我买下了这块板子。因为我不玩大游戏,我想 Intel i7-4770 的集成显卡 hd4600 应该满足需要。

安装 Linux 操作系统:
我在这台电脑上试过安装 Debian 7.2, Debian Testing(Jessie), Fedora 19。

原版的 Debian 7.2 对于这台电脑来说太旧了,它不能识别 intel i217v 网卡,不能使用 CPU 的集成显卡启动 gnome-shell,所以我没有在这台电脑上使用它。

Fedora 19 Live CD 在这台机器上工作良好,并且,在它的 Live CD 桌面环境里易于安装到这台机器上。

因为我熟悉 Debian,我在这台机器上安装了 Debian Testing(Jessie)。它也工作得很好。

下面我记录一些我安装 Linux 的要点:

1, 板载 Fake-Raid(这里是 intel Rapid Storage Technology) 与 Linux 软阵列

购买这块 Asrock Z87 Pro3 主板的主要原因是我想尝试它的板载阵列功能。我买了两块硬盘。对于intel Rapid Storage Technology,这款 Fake-Raid 可以设置成两个独立的阵列,这可以通过在启动时按 Ctrl+i 进入 intel 阵列设置界面完成。比如,一个 raid0 用于快速访问磁盘,另一个 raid1 用于安全存储数据。Fedora 19 Live CD 可以识别这两个阵列并安装到阵列上面没有任何问题。但是安装 Debian Jessie 需要一些技巧,查看 Debian wiki: DebianInstaller SataRaid: https://wiki.debian.org/DebianInstaller/SataRaid

经过几天的战斗,我在这台机器上选择了 Linux 软阵列。三个主要原因:

1), 板载 Fake Raid 和 Linux software Raid 都使用 CPU 进行一些阵列计算,性能相当。

2), Linux Software Raid 更灵活。组合阵列和 LVM,我可以容易调整阵列,比如,减小 raid0 上的逻辑卷,扩展 raid1 上的逻辑卷。

3), 正如上面 Debian wiki 所说 "只有当你在相同 Serial ATA RAID 安装其它操作系统和 Debian 组成双启动系统"。比如,你需要其它操作系统访问你的 Linux 数据(这里我没有测试)。我的情况是不需要其它操作系统访问 Linux 数据,如果我需要安装其它操作系统,我仍然可以容易的调整 LVM 空出一些 raid 分区来。我的 Linux 可以访问在这些操作系统里的数据,如果这些操作系统能够识别 Linux software raid 和 LVM,它们也可以访问在 Linux 里的数据。

另请参见: Intel Matrix Storage Manager vs Linux Software RAID: http://superuser.com/questions/461506/intel-matrix-storage-manager-vs-linux-software-raid

关于 fake raid 和 software raid 也有3点:

1), 在 BIOS raid 设置里删除 Intel fake raid 并没有真正的删除硬盘数据,你仍然可以重建相同类型和大小的阵列,然后恢复你的 fake raid;

2), 当使用 Linux software raid,必须禁止磁盘 NCQ。我的情况,禁止 NCQ raid0 hdparm 读取测试的数据从约 250 MB/sec 提高到 340 MB/sec(单块磁盘的2倍)。关闭 NCQ 的命令例子: "echo 1 > /sys/block/sda/device/queue_depth"。另请参见:Raid Performance: https://raid.wiki.kernel.org/index.php/Performance ;

3), 可以把 /root 安装在建立在 Linux software raid 的 LVM 上,不必要单独的 /boot 分区。我在虚拟机里的 Debian 7.2 测试了它,LVM 建立在 raid0 上面和 LVM 建立在 raid1 上面都可以,请见: DebianInstaller SoftwareRaidRoot: https://wiki.debian.org/DebianInstaller/SoftwareRaidRoot .

最后,我的硬盘概览现在是:
两块硬盘,每块分21个分区,两块硬盘的前20个分区组成20个raid0,最后的分区组成1个raid1。然后,第1个raid0用作 /boot 分区(实际上,单独的 /boot 分区没有必要),后面的 19个 raid0 组成一个卷组用于快速存取,1个 raid1 组成一个卷组用于数据安全存储。然后,创建逻辑卷用于交换分区,用于挂载 /, /home 等分区。Raid1 卷组也创建了一个逻辑卷。

我想,使用这个 "lvm 建立在 raid 上,raid 建立在多分区上"的方案容易调整数据存储布局。比如,缩减快速存取卷组和扩展数据安全存储卷组。

主要安装问题解决了。安装 Debian Jessie 的其它步骤与原来类似。

2, 在互联网上使用网络唤醒功能

可以在在互联网上使用网络唤醒功能。请见: Wake On LAN: https://wiki.debian.org/WakeOnLan 。按照文中步骤设置 WOL。在 Asrock Z87 Pro3 UEFI 设置里面,必须启用 "Advanced->ACPI Configuration->PCI Devices On"。我在机器里的"/etc/network/interfaces"设置了一个静态的本地 IP,在这个配置文件的最后加上 "ethernet-wol g"。然后,在路由器里做一个 UDP 协议的端口映射,比如,端口 12345,绑定板载 intel i217v 网卡的 MAC 地址和IP。我在使用 Debian 的关机菜单项关掉机器后,可以通过互联网唤醒机器,在 Linux 里,使用命令行 "wakeonlan -i -p 12345 " 唤醒它。在 windows 下,使用 "WakeOnLanGui": http://www.depicus.com/wake-on-lan/wake-on-lan-gui.aspx 。 当通过互联网唤醒时 Netmask 字段应该填 "255.255.255.255"。

3, 虚拟机安装
我测试了 VMware Player 6.0.1, VirtualBox 4.3.2, QEMU emulator version 1.1.2 (qemu-kvm-1.1.2+dfsg-6, Debian), 它们在这台机器上都工作良好。Gnome-shell 在 Linux 客户操作系统中有效,例如,Fedora 19 LiveCD。另,在 VMware Player 的配置文件中要添加 mks.gl.allowBlacklistedDrivers = "TRUE" 才能启用客户机 3D 加速。不过不添加使用 Linux 客户机的 Gnome-shell 也没问题,不过是启动时会有相关警告信息。

4, VNC Viewer 里面的中文输入法

在这台机器里启动 vnc4server, Wheezy 里的 Fcitx 在 VNC Viewer 里面会延迟大概20秒启动。Testing、Unstable 里的 Fcitx 在 VNC Viewer 里纯粹不工作。Ibus 在 VNC Viewer 工作得好。但是 Jessie 里的 Ibus 已经改变了它的使能键,按 "Alt + Shift" 会在有效的输入法之间循环切换,"Shift" 可以在中英文间转换。我如下修改 /usr/share/im-config/xinputrc.common 来启动 ibus:

if [ -n "$SSH_TTY" ]; then
if [ "$DISPLAY" != ":0" ]; then
IM_CONFIG_XINPUTRC_USR=$HOME/.xinputrc.vnc
echo "`date`: I'm in a ssh client: $SSH_TTY and in a display isn't :0" >> $HOME/xinput.log
fi
fi

默认输入法配置文件 ~/.xinputrc 里填的是 "run_im fcitx", "~/xinputrc.vnc" 是 "run_im ibus"。

结论:
所有话语汇成一句,Asrock Z87 Pro3 与现在的 Linux 搭配工作基本良好。

发表评论

电子邮件地址不会被公开。 必填项已用*标注