linux制作chroot环境,Linux构造chroot环境
关于chroot的简介,可以参考IBM开发者网站上的这篇理解chroot,本文演示了如何构造一个最简单的chroot环境,本文实验环境为CentOS 6.4 64bit。 [root@os ~]# dd if=/dev/zero of=123.img count=512K bs=20480[root@os ~]# /sbin/mkfs.ext3 123.img #格式化为
关于chroot的简介,可以参考IBM开发者网站上的这篇理解chroot,本文演示了如何构造一个最简单的chroot环境,本文实验环境为CentOS 6.4 64bit。
[root@os ~]# dd if=/dev/zero of=123.img count=512K bs=20480
[root@os ~]# /sbin/mkfs.ext3 123.img
#格式化为ext3时可能会提示123.img is not a block special device.不用管它,直接按y继续
[root@os ~]# mkdir /mnt/123
[root@os ~]# mount -o loop 123.img /mnt/123
[root@os ~]# chroot /mnt/123
chroot: failed to run command `/bin/bash': No such file or directory
发生了错误,看来chroot环境不存在/bin/bash(事实也的确不存在),那我们从真实系统里拷贝一个过去吧:)
[root@os ~]# mkdir /mnt/123/bin
[root@os ~]# cp -av /bin/bash /mnt/123/bin/bash
[root@os ~]# chroot /mnt/123
chroot: failed to run command `/bin/bash': No such file or directory
错误依旧,原因是因为/bin/bash需要调用相关的库,因新环境不存在相关的库文件,因此bash不能运行,从而报上述错误,解决方法是利用ldd /bin/bash查找到其所需要的运行库
[root@os ~]# for i in `ldd /bin/bash`;do echo $i;done |grep -v = |grep -v 0x |grep /|xargs ls -l
lrwxrwxrwx. 1 root root 10 Oct 23 18:25 /lib64/ld-linux-x86-64.so.2 -> ld-2.12.so
lrwxrwxrwx. 1 root root 12 Oct 23 18:25 /lib64/libc.so.6 -> libc-2.12.so
lrwxrwxrwx. 1 root root 13 Oct 23 18:25 /lib64/libdl.so.2 -> libdl-2.12.so
lrwxrwxrwx. 1 root root 15 Oct 22 22:44 /lib64/libtinfo.so.5 -> libtinfo.so.5.7
把如上这些库文件和软链接全部都拷入新环境
[root@os ~]# mkdir /mnt/123/lib64/
[root@os ~]# cp -av /lib64/ld-linux-x86-64.so.2 /lib64/ld-2.12.so \
> /lib64/libc.so.6 /lib64/libc-2.12.so /lib64/libdl.so.2 \
> /lib64/libdl-2.12.so /lib64/libtinfo.so.5 \
> /lib64/libtinfo.so.5.7 /mnt/123/lib64 \
> /mnt/123/lib64
……
然后再试一次
[root@os ~]# chroot /mnt/123
bash-4.1# 切换成功!
bash-4.1# ls 切换过来任何命令都无法使用!
bash: ls: command not found
bash-4.1# exit 也可按Ctrl + D键退出环境
exit
[root@os ~]#
参考资料:http://g.51cto.com/mike/45296
linux制作chroot环境,Linux构造chroot环境相关推荐
- linux制作大容量磁盘,Linux对超大容量磁盘进行分区
最近在Linux上挂载磁盘阵列,需要对一个7T的盘阵进行分区并使用.这个磁盘阵列划分了一个分区(对于Linux来说找到一个/dev/sda设备,空间大小为7T),我想将它分为N个分区,挂载到系统的N个 ...
- linux制作一键恢复,Linux/Centos Mondo 一键部署、镜像恢复,快速部署
1.环境准备 image.png 2.安装mondo curl -o /etc/yum.repos.d/mondorescue.repo ftp://ftp.mondorescue.org/rhel/ ...
- 制作u盘linux课程报告,制作U盘linux.doc
制作U盘linux 制作U盘linux 科技进步到今天,软驱开始慢慢退出市场,取而代之的是优盘.优盘和软盘相比,不但在容量上要大很多,而且在速度上也快了许多.以往建在软盘上的Linux 由于受限于1. ...
- linux制作chroot环境,/chroot环境搭建 - 定制的小型文件系统
服务器为RedHat5.5 root用户操作: 1.部署目录环境 创建一个目录,目录结构与实际的/目录结构类似 创建用户 useradd ppp passwd ppp 将chroot目录设置在/chr ...
- arm linux chroot,准备Kali Linux ARM chroot | Kali Linux
虽然你能从下载区下载Kali ARM镜象但是有人更热衷于定制他们的Kali rootfs.如下展示一个制作Kali armhf rootfs的例子. 安装需要的软件和依赖 apt-get instal ...
- oracle linux 5.8安装oracle 11g rac环境之grid安装
安装环境: 操作系统:oracle linux 5.8 64位 集群软件:linux.x64_11gR2_grid.zip 数据库:linux.x64_11gR2_database_1of1.zip, ...
- 通过chroot运行linux,通过chroot构建Linux操作系统
通过chroot构建Linux操作系统 发布时间:2006-04-14 12:41:48来源:红联作者:翔翔 转贴:出处:天极网 在已有的Linux操作系统中,安装另一个开源操作系统,我们一般是先构建 ...
- Linux 之八 完整嵌入式 Linux 环境、(交叉)编译工具链、CPU 体系架构、嵌入式系统构建工具
最近,工作重心要从裸机开发转移到嵌入式 Linux 系统开发,由于之前对嵌入式 Linux 环境并不是很了解,因此,第一步就是需要了解如何搭建一个完整的嵌入式 Linux 环境.现在将学习心得记录 ...
- 记:关于W806的Linux下基本教程(一)——环境建立与第一次烧写
0x00 前言 本文主要在Linux下实现了对于联盛德的W806芯片的SDK相关的操作,包括但不限于指定烧写.擦除.编译. 技能 熟练度 Linux 熟悉 make 熟悉 C语言 熟悉 0x10 准备 ...
最新文章
- 5天玩转C#并行和多线程编程 —— 第四天 Task进阶
- linux使用nginx负载udp
- DPM2012保护sharepoint场
- php类使用自己的静态方法吗,php在类中使用静态方法有几种方式
- Became Jane(成为简.奥斯丁)
- mysql的压缩包安装_mysql 5.7.24 压缩包安装配置方法图文教程
- VUE-用到的样式左右(transform,translate,padding)
- spring Boot 学习(一、Spring Boot与缓存)
- simotion基本功能手册_深入浅出西门子运动控制器——SIMOTION实用手册(1CD)
- 全国省市区县json数据
- 纯CSS3代码制作六边形图形教程
- 数据库备份的方式有哪些
- Pixelmator for Mac(全能图像编辑软件)
- 对比安卓!鸿蒙OS 2.0流畅度实测:差距到底多大?
- 安卓编程用什么软件_如何用手机进行编程?有哪些值得推荐的软件?
- 证件照背景色怎么换白色?这两个小技巧要掌握
- 使用opencv和python实现图像的智能处理pdf_机器学习:基于OpenCV和Python的智能图像处理...
- raid中条带概念问题
- 一张学习规划图学透自动化测试
- python中如何求水仙花数_python如何求水仙花数?