我之前用的是Fedora 19,现在已经升级到Fedora 21。机器是13年底买的。
apple没有使用标准的SMBus,它自己定制了一个smc模块。由于不知道它具体是怎么工作的,所以Linux对applesmc的支持极差。
风扇控制模块是坏的,所以CPU经常过热。表现在经常收到mce事件
CPU7: Core temperature above threshold, cpu clock throttled (total events = 3)
mce: [Hardware Error]: Machine check events logged
用sensors命令可以看到CPU温度经常在90度以上。实际上应该在87度以下。
bugzilla上相关链接:
https://bugzilla.redhat.com/show_bug.cgi?id=924570
https://bugzilla.kernel.org/show_bug.cgi?id=14514
workaround:安装这个针对mbp的fan control 软件 https://github.com/dgraziotin/Fan-Control-Daemon
并且手动把最低风速调到3000
echo 3000 > /sys/devices/platform/applesmc.768/fan1_min
echo 3000 > /sys/devices/platform/applesmc.768/fan2_min
smc经常会报错,发送命令失败:
kernel: applesmc: send_byte(0xe0, 0x0300) fail: 0x40
kernel: applesmc: F1Tg: write data fail
反正不管怎样,cpu过热的消息都会经常出现
我这个是视网膜屏,分辨率是2880x1800,大多数程序不是为这么高的分辨率设计的。于是Fedora19下显示效果就特别差,字小的看不清。windows下可以调整DPI,其中win 8.1对这个的支持就比较好,win 7就很差。
升级到Fedora 20后,这个问题有很大改善。升级到Fedora 21后有更大的改善。
但是chrome不是DPI aware的,暂时的做法就是把chrome的zoom level调大。不要试图调大chrome的默认字体,否则连google都无法正常使用了。
这个笔记本是双显卡,一个内置的Intel显卡,一个GeForce GT 650M。内置的Intel显卡所使用的是内核的i915模块。这个模块在启动的时候经常崩溃,导致还没到登录界面,就卡死了。而且这个问题似乎只出现在使用EFI引导的时候。
我的解决办法是:禁用这个模块!
很奇怪,如果我使用外接U盘引导,按照传统BIOS的方式启动GRUB,那么chrome可以部分的使用GPU加速,但是如果是采用EFI启动,则chrome完全不能使用gpu。
提示说:“GPU process was unable to boot: Features are disabled upon full but not preliminary GPU info.”
再或者提示说:“Older Drivers are unreliable for Optimus on Linux"
不过,反正国内这环境,也没机会在浏览器内看1080p的视频。
然后是背光模块似乎与nvidia的官方驱动冲突。用top看,kworker的某个进程始终CPU 100%。
我用perf研究了一下,发现大部分cpu都耗费在了gmux模块上。
Samples: 44K of event 'cycles', Event count (approx.): 36241300831
48.37% kworker/0:3 [kernel.kallsyms] [k] native_read_tsc
native_read_tsc
__const_udelay
+ gmux_index_wait_ready.isra.7
+ 35.03% __const_udelay
37.76% kworker/0:3 [kernel.kallsyms] [k] delay_tsc
7.83% kworker/0:3 [apple_gmux] [k] gmux_index_wait_ready.isra.7
我查了一下,这个符号来自apple_gmux模块,把这个模块禁用后就好了。我这个模块的版本号是3.2.19
不过很奇怪的是我把kernel升级到3.16.3后,这个问题就消失了。apple_gmux似乎并未做什么更新。
键盘布局可以通过修改hid_apple的参数来实现。把这下面这两个加入到/etc/default/grub中
hid_apple.fnmode=2 hid_apple.swap_opt_cmd=1
换vmware吧。附带说,vmware在mac下也不支持usb,可能是因为我用的vmware fusion的版本太老。
屏幕亮度调节默认是失效的,除非你每次开机后执行
/usr/sbin/setpci -v -H1 -s 00:01.00 BRIDGE_CONTROL=0
1
jamesxu 2015-02-19 18:47:10 +08:00
直接 Ubuntu 不行吗?要不虚拟机,这样太折腾了
|
2
snnn OP @jamesxu Ubuntu也解决不了驱动问题啊,它们的内核都一样的。另外,Linux对高分屏支持差是通病,无论换什么发行版,什么硬件,都是这样。只能期待它一点点的改善。
|
3
snnn OP @jamesxu 还有,无论什么发行版,只要是Linux,就没办法用chrome的gpu加速。更差的是,经常连webgl都用不了。
|
4
Agromania 2015-02-19 19:19:25 +08:00
我之前也是在mbp上各种折腾装上了Ubuntu,针对各种坑还写了笔记,
最后我还是换了MacOSX + Vagrant,感觉之前一切努力都是瞎搞。 |
5
Neo 2015-02-19 19:55:40 +08:00
so,no zuo no die
|
6
xieyudi1990 2015-02-19 20:41:00 +08:00 via iPhone
rmbp mid14, 没有碰到任何问题.
applesmc有人通过把Windows下的驱动逆向后开源了, 通过读写300h~31fh的io地址来控制. 如果你觉得内核带的那个applesmc.c不好, 可以尝试自己写一个. 不过自带的那个也还行, 一般50多度吧. hidpi和发行版有毛关系? 早期efi的确会有驱动问题, 但是你还可以从legacy启动嘛. 反正我从efi启动linux无任何问题, 反倒是从efi启动windows会造成个带SecureROM的游戏会死机 (gta4).... |
7
snnn OP |
8
xuhaoyangx 2015-02-19 21:31:20 +08:00
= =其实很好奇vm性能上普遍比vb好不少,但是为啥这么多人喜欢用vb
|
9
14 2015-02-19 21:34:39 +08:00 via Android
@xuhaoyangx 开源免费
|
10
maemual 2015-02-19 21:34:45 +08:00
@xuhaoyangx 因为不要钱╮(╯_╰)╭
|
11
snnn OP @xuhaoyangx 比如vagrant,对virtualbox的支持免费,对vmware的支持要收79$。于是我就只好继续用virtualbox。
|
12
xuhaoyangx 2015-02-19 21:54:35 +08:00
|
13
chuhades 2015-02-19 23:10:12 +08:00
本来一直纠结装回 debian,看了下,放弃了。。
|
14
xieyudi1990 2015-02-20 06:45:22 +08:00 via iPhone
|
15
snnn OP @xieyudi1990 这就是linux mainline的代码啊。光靠它是不行的,cpu经常过热。
|
16
windirt 2015-02-20 10:51:35 +08:00 via iPhone
virtualbox 要安装extpack才能支持usb
|
17
Dandy 2015-02-20 11:29:33 +08:00
一个Parallels足矣
|
18
sean419 2015-02-20 20:54:56 +08:00
直接在Parallels Desktop里装一下解决。只要内存够足。
|
19
andyhenry 2015-02-25 00:00:50 +08:00
@xieyudi1990 我现在感觉每个在mac上安装linux的人上辈子都是折翼的xx。就我个人而言,作为玩家而非工作使用mac真是一点意思都没有,远不如linux。
其实现在gnome和firefox对hidpi支持良好 |
20
andyhenry 2015-02-25 00:03:25 +08:00
linux和osx体验完全不同吧,怎么可能用虚拟机体验呢。就我个人而言,开始用osx之后*nix的知识一点没长进,反而是回到了win到处找破解软解的阶段。
|
21
onlyice 2015-02-25 21:29:34 +08:00 via Android
@andyhenry 为何觉得 OSX 在非工作使用时比 Linux 没意思呢?没用过 OSX ,想听听你的看法
|
22
andyhenry 2015-02-26 00:24:28 +08:00 1
@onlyice (排名不分前后)
+ linux命令和bsd命令不完全一样,造成一点困扰。如md5和md5sum,bs=1m和bs=1M + 界面不能变,看多了审美疲劳。linux随便换,一周一小换,不太折腾也有新鲜感。(尤其是osx1010之后,扁平图标和老图标混在一起,太恶心了) + 安装开源工具费劲。我记得安装wget时,编译安装不上,用port先得装好多别的(依赖吧)。 + 软件获得途径类似win而非linux,port及其他包管理器的软件根本不全。 + 以上一条导致安装软件时,体验类似win:到处找盗版破解,软件适用性由 够用就行 变为 贪大求全。我周围人家用kindle的电子书从都不买正版,而且我付费专业软件毫无意义。 + 不明原因,同亮度下linux渲染好于mac,有可能是linux直接用独显。(rmbp) + 我不写代码不搞设计,osx的玩具性大于工具性,用office时还要去win(mac的office就算了,用另一台电脑)。我唯一“维护”的代码(github上)是我的私人博客。。。 + osx确实很少遇到问题,但是遇到想配置个东西,基本就无解。linux就随意了。 + 就我个人而言,linux+win双系统的实用性远远超过单奔osx。当初真不应该买rmbp的,w540还有小键盘,真心认为v站和zhihu的某些价值观都是非常相对的。 + 其实我个人最理想的是(貌似这辈子都没戏):ibm大主机+linux(arch或opensuse滚动版 或 debian测试)+雇佣一个团队解决我折腾中遇到的各种问题 顺便教我 顺便对开源做点贡献(我大学学文科类) |
23
woyaojizhu8 2016-09-11 23:25:03 +08:00
@andyhenry 很多人都是从 linux 转 os x ,第一次见到从 os x 转 linux 的。。。
|