网易首页 > 网易号 > 正文 申请入驻

如何构建用户态 Linux | Linux 中国

0
分享至

导读:“用户态 Linux” 是什么?它是一种可以在用户态运行的 Linux 内核。

本文字数:3032,阅读时长大约: 3分钟

https://github.com/LCTT/Articles/pull/8
作者:Calvinlin

“用户态 Linux” 是什么?它是一种可以在用户态运行的 Linux 内核。(用户态是什么,这里就不解释了)

它有什么用?它用于内核隔离、替代 QEMU/Bochs 来调试 Linux 内核,也可以在低性能设备上代替 KVM 进行虚拟化。

但它也存在一些缺陷,比如不支持 ARM 架构以及多核系统。

编译 Linux 内核

首先通过 下载 Linux 内核源代码:

  1. git clone --depth 1 https://mirrors.tuna.tsinghua.edu.cn/git/linux.git

(这里使用了清华大学的镜像站, kernel.org 也是可以的。)

然后采用如下步骤编译它:

  1. $ cd linux

  2. $ export ARCH=um # 非常重要 设置架构为用户态

  3. $ make defcongig

  4. $ make -j8

  5. LD .tmp_vmlinux.kallsyms1

  6. KSYMS .tmp_vmlinux.kallsyms1.S

  7. AS .tmp_vmlinux.kallsyms1.S

  8. LD .tmp_vmlinux.kallsyms2

  9. KSYMS .tmp_vmlinux.kallsyms2.S

  10. AS .tmp_vmlinux.kallsyms2.S

  11. LD vmlinux

  12. SYSMAP System.map

  13. LINK linux

  14. MODPOST modules-only.symvers

  15. GEN Module.symvers

经过漫长的编译之后,你获得了一个vmlinux文件。它和正常的 Linux 内核的区别是,这个vmlinux可以在用户态运行。

准备根文件系统

先别着急启动,先来准备内核所使用的根文件系统。

以下内容以 Debian Linux 为例。

首先安装 软件包:

  1. sudo apt install debootstrap

以下命令皆需要 root 权限,先切换到 root 用户:

  1. $ sudo su

然后构建根文件系统,存放在rootfs文件中:

  1. # dd if=/dev/zero of=rootfs seek=2G # 创建一个 2GB 大小的空 rootfs 文件

  2. 2000000000字节(2 GB,2 GB)已复制,0.137825 s,570 MB/s`

  3. # mkfs.ext4 rootfs # 将其格式化为 ext4 格式

  4. mke2fs 1.46.5 (30-Dec-2021)

  5. Discarding device blocks: done

  6. Creating filesystem with 76748 1k blocks and 19200 inodes

  7. Filesystem UUID: 9dc7f1f6-8b16-4c64-9e22-94ede327c532

  8. Superblock backups stored on blocks:

  9. 8193, 24577, 40961, 57345, 73729

  10. Allocating group tables: done

  11. Writing inode tables: done

  12. Creating journal (4096 blocks): done

  13. Writing superblocks and filesystem accounting information: done

然后挂载rootfs/mnt下:

  1. # mount rootfs /mnt

在其中创建 Debian Linux 的根文件系统(/):

  1. # cd /mnt

  2. # debootstrap sid ./ https://mirrors.tuna.tsinghua.edu.cn/debian

  3. I: Configuring python-central...

  4. I: Configuring ubuntu-minimal...

  5. I: Configuring libc-bin...

  6. I: Configuring initramfs-tools...

  7. I: Base system installed successfully.

通过 将其改变为根目录:

  1. # chroot ./

设置 root 密码:

  1. # passwd

  2. New password:

  3. Retype new password:

然后退出 chroot 环境,并卸载:

  1. # exit # 退出 chroot 环境

  2. # cd ..

  3. # umount /mnt

  4. # exit # 退出 sudo 环境

设置 rootfs 的所有权为普通用户:

  1. $ sudo chown `whoami` rootfs

这样,这个用户态 Linux 的根文件系统就准备好了。

测试用户态 Linux

然后就可以用这个内核启动了,只需要一行命令:

  1. $ screen ./vmlinux mem=1G root=/dev/root rootfstype=hostfs hostfs=./rootfs con=null con0=null,fd:2 con1=fd:0,fd:1

启动后,使用你前面设置的 root 用户/密码登录,便可以进入到用户态 Linux 容器中了。

有别于 Docker,这个容器的内核和宿主的内核是隔离的,可以使用这个容器作为一个调试内核的工具,如:

  1. echo 1 > /proc/sys/kernel/sysrq

  2. echo c > /proc/sysrq-trigger

即可手动触发一个“内核恐慌(Kernel Panic)”错误。

作者简介:

calvinlin:一个普通的深圳初中生。

via:

作者: 编辑:

本文由贡献者投稿至 ,采用 发布, 荣誉推出

欢迎遵照 CC-BY-SA 协议规定转载,

如需转载,请在文章下留言 “ 转载:公众号名称”,

我们将为您添加白名单,授权“ 转载文章时可以修改”。

特别声明:以上内容(如有图片或视频亦包括在内)为自媒体平台“网易号”用户上传并发布,本平台仅提供信息存储服务。

Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.

相关推荐
热点推荐
涉多起在菲律宾绑架杀害中国公民案件,“成功商人”施纯芳被捕遣返,其妻发声:不敢相信是认识的他

涉多起在菲律宾绑架杀害中国公民案件,“成功商人”施纯芳被捕遣返,其妻发声:不敢相信是认识的他

红星新闻
2026-01-07 18:21:34
郑州一业主因物业纠纷堵住小区车辆入口6次报警,民警强制传唤致其受伤 法院判决:超出必要限度

郑州一业主因物业纠纷堵住小区车辆入口6次报警,民警强制传唤致其受伤 法院判决:超出必要限度

红星新闻
2026-01-07 23:38:19
女大学生餐馆讹钱后续:正脸曝光很漂亮 家人轮番找店主 目的曝光

女大学生餐馆讹钱后续:正脸曝光很漂亮 家人轮番找店主 目的曝光

鋭娱之乐
2026-01-08 08:34:40
国内多条航线机票价格“大跳水” 1折机票来了

国内多条航线机票价格“大跳水” 1折机票来了

环球网资讯
2026-01-08 11:26:53
元旦表演后,商家曝光多地学生退踩脏的演出服,校方回应

元旦表演后,商家曝光多地学生退踩脏的演出服,校方回应

极目新闻
2026-01-07 12:00:17
超级网红,卖了天价

超级网红,卖了天价

中国新闻周刊
2026-01-08 07:54:07
特朗普指示美国退出“不符合该国利益”的66个国际组织

特朗普指示美国退出“不符合该国利益”的66个国际组织

环球网资讯
2026-01-08 06:29:06
大快人心!CBA解说员内涵广东队球员和球迷 抖音终止其解说资格

大快人心!CBA解说员内涵广东队球员和球迷 抖音终止其解说资格

体育哲人
2026-01-08 01:00:09
女子新房装玫红色入户门贴花壁纸,网友直呼“全网独一无二”,当事人:装修花费近100万元,老公每次来都像游客一样

女子新房装玫红色入户门贴花壁纸,网友直呼“全网独一无二”,当事人:装修花费近100万元,老公每次来都像游客一样

极目新闻
2026-01-07 13:36:53
合口味深圳地铁广告引争议!企业致歉:涉事广告已调整更换

合口味深圳地铁广告引争议!企业致歉:涉事广告已调整更换

南方都市报
2026-01-07 16:34:20
王石田朴珺婚变风波升级,女方整容前旧照被扒,曾为王石跪式服务

王石田朴珺婚变风波升级,女方整容前旧照被扒,曾为王石跪式服务

瓜汁橘长Dr
2026-01-05 16:48:07
皇帝英明神武,百姓过得挺苦

皇帝英明神武,百姓过得挺苦

我是历史其实挺有趣
2026-01-07 09:25:12
贵州小伙自杀后续!掏空家底惨遭骗婚,细节曝光,网友为女方叫屈

贵州小伙自杀后续!掏空家底惨遭骗婚,细节曝光,网友为女方叫屈

李健政观察
2026-01-07 11:17:45
昆山一外企电子大厂突发解散:300多名员工获N+1补偿金和购物卡

昆山一外企电子大厂突发解散:300多名员工获N+1补偿金和购物卡

六子吃凉粉
2026-01-08 12:34:04
英超温情一幕:7500万巨星95分钟绝杀+含泪告别球迷 今赴曼城体检

英超温情一幕:7500万巨星95分钟绝杀+含泪告别球迷 今赴曼城体检

风过乡
2026-01-08 07:53:20
穆雷22+8+17生涯新高掘金终结绿军4连胜 沃特森30分布朗33分

穆雷22+8+17生涯新高掘金终结绿军4连胜 沃特森30分布朗33分

醉卧浮生
2026-01-08 10:32:22
武汉大学女教授献血事件,它们的行为不翻车都难

武汉大学女教授献血事件,它们的行为不翻车都难

吴女士
2026-01-07 12:44:51
巧立名目地从老百姓口袋里掏钱,真是不遗余力

巧立名目地从老百姓口袋里掏钱,真是不遗余力

胖胖说他不胖
2026-01-07 10:00:09
为什么总统被绑架,委内瑞拉股票和债券反而双双暴涨?背后有一个冷酷的真相!

为什么总统被绑架,委内瑞拉股票和债券反而双双暴涨?背后有一个冷酷的真相!

识局Insight
2026-01-08 07:19:46
发现未婚妻有暧昧对象,南充一男子散布其不雅视频后坠亡,其父母向公安局索赔60万,法院:驳回所有诉求

发现未婚妻有暧昧对象,南充一男子散布其不雅视频后坠亡,其父母向公安局索赔60万,法院:驳回所有诉求

台州交通广播
2026-01-08 01:05:48
2026-01-08 12:55:00
Linux
Linux
Linux 中国开源社区
8018文章数 73115关注度
往期回顾 全部

科技要闻

雷军:现在听到营销这两个字都有点恶心

头条要闻

委内瑞拉外长:感谢中方支持

头条要闻

委内瑞拉外长:感谢中方支持

体育要闻

约基奇倒下后,一位故人邪魅一笑

娱乐要闻

2026春节档将有六部电影强势上映

财经要闻

微软CTO韦青:未来人类会花钱"戒手机"

汽车要闻

不谈颠覆与奇迹,智驾企业还能聊点什么?

态度原创

本地
时尚
数码
教育
公开课

本地新闻

“闽东利剑·惠民安商”高效执行专项行动

蓝色+灰色、红色+棕色,这4组配色怎么搭都好看!

数码要闻

CES微星携手英特尔硬核升级,第三代Ultra重塑AI PC

教育要闻

孩子的科技教育怎么跟上时代?

公开课

李玫瑾:为什么性格比能力更重要?

无障碍浏览 进入关怀版