chroot 的一些玩法
AI-摘要
切换
Tianli GPT
AI初始化中...
介绍自己
生成本文简介
推荐相关文章
前往主页
前往tianli博客
介绍
chroot 这个玩意最早可以追溯到Unix时代,为了保障数据安全而用于隔离文件系统的“套娃”。它比虚拟机这种套娃不同的是:
- 虚拟机是完全隔离(虚拟的)硬件,而 chroot 共用 Kernel(内核)、设备及其驱动程序、进程空间
- 由于 chroot 只隔离文件系统,而VM要模拟一整个硬件系统,故chroot套娃损耗远比VM少
- chroot 不能跨大架构,就像 arm64 跨 x86_64 就得通过 Exagear/Box64/qemu-user (前两者只有arm64可用)来跨架构,且有较大的转译损耗
它需要root权限,像一些不给root权限的安卓手机就只能用proot了。
chroot有以下几种用法:
- 在Live CD(救援系统)中进入机器上已有的Linux环境
- 在上面的基础上,修复bootloader引导或恢复受损的系统
- 由于使用的是宿主机的Kernel,甚至还可以进入已受损内核的Linux环境进行“苟活”,本站曾经这样玩过一次:由于某服务商所带的Ubuntu 22.04内核不稳定(应该是没设SWAP而导致系统老被撑爆了,但是这个原因存疑),索性直接进救援系统挂载原有的分区,chroot进去后,进入“变态”面板开启N(ginx)M(ySQL)P(HP)服务进行“苟活”。同样的,服务器的救援系统也是炸(艾草到黑洞)了。
- 在安卓手机上单独跑个Linux环境
- 自己定制镜像,作者曾经定制过属于自己的Kali Linux(但由于种种原因用回原版)
- 隔离服务所在的文件系统以确保服务被渗透后无事可做
等。
进入 chroot 套娃的步骤
以下均需要root权限,若没有root权限,请以proot代替chroot。
进入原有的Linux环境
创建文件夹以容放rootfs,作者推荐使用 /target/
(Debian系安装系统时的特色)
mkdir /target/
需要先挂载好原有的文件系统和 /dev /sys /proc /run ,命令如下
mount -t ext4 -o rw [原有的Linux根分区名] /target/
mount -t proc /proc /target/proc/
mount -t sysfs /sys /target/sys/
mount -o bind /dev /target/dev/
mount -o bind /run /target/run/
还得解决 /etc/resolv.conf
rm -f /target/etc/resolv.conf
unlink /target/etc/resolv.conf
vim /target/etc/resolv.conf
加入 nameserver 8.8.8.8
保存并退出就行
准备工作就是这样,接下来就是chroot的时间了!
chroot /target/
如果无误,就会出现套娃中的Shell
root@Rescue-LuoTianyi:~#
然后你就可以打入 bt
启动面板服务,进入“变态”面板以进行“苟活” 或者 修复受损的系统
安卓手机的chroot/proot也是一样的道理,但不允许使用 /target ,推荐有root权限的丢到/data/linux,没有的那就Termux的家目录下建个文件夹,后面就是找个rootfs解压进去的事,最后把上面的步骤做一下就行。
斩事
- 一些手机可以使用chroot访问屏幕设备以开启真正的X Window,但目前大部分手机不行了。
- “变态”面板 等应用的获取的发行版信息以套娃内的信息为准
- 感谢你赐予我前进的力量
赞赏者名单
因为你们的支持让我意识到写文章的价值🙏
本文是原创文章,采用 CC BY-NC-ND 4.0 协议,完整转载请注明来自 祈杰喵
评论
隐私政策
你无需删除空行,直接评论以获取最佳展示效果