玩 Linux 的正确姿势是什么样的

2016-05-14 10:44:18 +08:00
 Mirana
目前有 3 台电脑,一台主机用来玩游戏,一台 mac air 用来写代码,一台 surface 看书或者看视频,都不想换成 linux 。

那么如果想学学 linux 内核,折腾折腾,用什么样的姿势最好。
10976 次点击
所在节点    Linux
93 条回复
zzy131250
2016-05-15 20:25:16 +08:00
可以考虑 vagrant
lanyusea
2016-05-15 20:28:11 +08:00
@but0n 可以去搜北大的操作系统课,和 MIT 用的是几乎一样的课件。

或者你可以直接搜 jos/xv6 相关的内容,这是 mit 那门课用到的教学用 linux 内核。比如
https://github.com/ranxian/xv6-chinese
tempdban
2016-05-15 22:46:53 +08:00
坐着玩啊,难道你还想躺着?
dongxiaozhuo
2016-05-16 09:34:27 +08:00
虚拟机里装个 Linux 系统,启动之后: ctrl + alt + F2 开始
mko0okmko0
2016-05-16 09:37:59 +08:00
1.先学增减功能吧.弄个虚拟机,
virtualbox 免费,已经支持 hyper-v 据说更快一些了.
vmware workstation 要钱但更稳更快.有神秘档案可用(自己找)
然后选个常用的 linux 套装版本,装上 GCC.
推荐 gentoo,预设就有 GCC 并且整个系统预设就是要编译.
gentoo 中文安装说明 https://wiki.gentoo.org/wiki/Handbook:AMD64/zh-cn
当然 gentoo 安装过程有第一次点痛,之后就很爽了(感觉怪怪的)
重点在核心配置的手动配置章节"make menuconfig"
genkernel 也可以,使用"genkernel --menuconfig all",会侦测现有环境设备后帮你选上必须的驱动项目,减少难度.

gentoo 还可以学怎帮核心加上别人的 patch,例如 gentoo 有名的 CK,BK.用过你就回不去标准和新版本了.
注:genkernel 会产生一个 initramfs 引导档案.

当你能够增减核心的功能和驱动之后"能正常开机使用",基本上核心处理就入门了.
因为会很花时间在 menuconfig 和编译阶段,
尤其 menuconfig 的每一行几乎都要上网查说明,(就算有英文说明也是要翻译).
还有编好之后会花很多时间确认编出来的核心是否稳定.
所以建议用虚拟机.可以建立快照状态,编译失败直接还原到编译核心前的那一刻重新开始.

快照是你的好朋友.虚拟机万岁!!

2.移植到 arm 体系.当桌面环境的核心都很熟很稳定的跑了,再学 ARM 环境的核心编译,差别是
桌面核心可以很自由的选择功能然后用成模组的形式,没什么容量限制.
ARM 核心因为嵌入式的环境需求,要求编出结果的档案大小有严格限制,例如不能编出含模组总容量大于 4/8/16MB,开发机通常有 32MB 可用,但真实上机环境例如网路设备通常是 4/8/16MB,
所以嵌入式核心编译的原则是"先都不选,依需求优先度加入功能,按剩余空间作模组".

3.修改核心原始码.这部分我也不熟,基本上 1 的部分很熟,linux 就可以跑得比别人的预设核心快很多很多很多了.
Mirana
2016-05-16 10:45:24 +08:00
感谢楼上老司机们耐心的解答
wo528245715
2016-05-18 10:05:04 +08:00
@huangjxh 你的樱花多少钱买的?
huangjxh
2016-05-18 10:33:15 +08:00
@wo528245715 淘宝 75 一个月
wo528245715
2016-05-18 10:51:14 +08:00
@huangjxh 是有点贵了哈,速度如何?
huangjxh
2016-05-18 11:00:08 +08:00
@wo528245715 Google Play 下载速度最高 5m/s , YouTube 锐速全天 1080P ,白天开 FS 可以看 4K ,晚上 2K 。
wo528245715
2016-05-18 11:04:43 +08:00
@huangjxh 考虑合租不?如考虑合租,发来联系方式
huangjxh
2016-05-18 12:18:10 +08:00
@wo528245715 huangjxh@gmail.com
newhua
2016-05-31 12:40:07 +08:00
虚拟机+arm 开发板,交叉编译和移植,你会发现系统什么特性都可以自己定制,从无到有做出一个自己想要的系统

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/278572

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX