当前位置: 首页 > news >正文

第四篇:docker底层原理

chroot技术(容器底层使用了chroot技术)

chroot是一种通过改变进程的根目录来创建隔离文件系统环境的技术

ldd命令用于显示二进制可执行文件或共享库所依赖的所有动态链接库# 1.创建工作目录
[root@docker02 ~]# mkdir -p /root/yuanxiaojiang
# 2.拷贝bash程序
[root@docker02 ~]# mkdir -p /root/yuanxiaojiang/bin
[root@docker02 ~]# cp /bin/bash /root/yuanxiaojiang/bin/
# 3.拷贝bash程序的依赖环境
[root@docker02 ~]# ldd /bin/bashlinux-vdso.so.1 =>  (0x00007ffc655cf000)libtinfo.so.5 => /lib64/libtinfo.so.5 (0x00007f99feae0000)libdl.so.2 => /lib64/libdl.so.2 (0x00007f99fe8dc000)libc.so.6 => /lib64/libc.so.6 (0x00007f99fe50e000)/lib64/ld-linux-x86-64.so.2 (0x00007f99fed0a000)
[root@docker02 ~]# mkdir -p /root/yuanxiaojiang/lib64
cp /lib64/libtinfo.so.5 /root/yuanxiaojiang/lib64/
cp /lib64/libdl.so.2 /root/yuanxiaojiang/lib64/
cp /lib64/libc.so.6 /root/yuanxiaojiang/lib64/
cp /lib64/ld-linux-x86-64.so.2 /root/yuanxiaojiang/lib64/
# 4.拷贝ls程序及其依赖环境
[root@docker02 ~]# which ls
/usr/bin/ls
[root@docker02 ~]# cp /usr/bin/ls /root/yuanxiaojiang/bin/
[root@docker02 ~]# ldd /root/yuanxiaojiang/bin/ls 
cp /lib64/libselinux.so.1 /root/yuanxiaojiang/lib64/
cp /lib64/libcap.so.2 /root/yuanxiaojiang/lib64/
cp /lib64/libacl.so.1 /root/yuanxiaojiang/lib64/
cp /lib64/libc.so.6 /root/yuanxiaojiang/lib64/
cp /lib64/libpcre.so.1 /root/yuanxiaojiang/lib64/
cp /lib64/libdl.so.2 /root/yuanxiaojiang/lib64/
cp /lib64/ld-linux-x86-64.so.2 /root/yuanxiaojiang/lib64/
cp /lib64/libattr.so.1 /root/yuanxiaojiang/lib64/
cp /lib64/libpthread.so.0 /root/yuanxiaojiang/lib64/# 5.改变根目录
[root@docker02 ~]# chroot /root/yuanxiaojiang/
bash-4.2# export PATH=/bin:/usr/bin
bash-4.2# ls -l# 6.启动一个新的容器
[root@docker02 ~]# cp  -r /root/yuanxiaojiang /root/yuanxiaojun
# 启动一个新容器(终端一)
[root@docker02 ~]# chroot /root/yuanxiaojiang/
bash-4.2# echo "xixi" >/xixi.log
bash-4.2# ls -l
-rw-r--r-- 1 0 0   5 Oct 27 13:37 xixi.log
# 启动一个新容器(终端二)
[root@docker02 ~]# chroot /root/yuanxiaojun/
bash-4.2# echo "haha" >/haha.log
bash-4.2# ls -l
-rw-r--r-- 1 0 0   5 Oct 27 13:40 haha.log# 两个容器数据存放位置(宿主机位置)
[root@docker02 ~]# ls /root/yuanxiaojiang/
bin  lib  lib64  xixi.log
[root@docker02 ~]# ls /root/yuanxiaojun/
bin  haha.log  lib  lib64

 

http://www.gsyq.cn/news/32150.html

相关文章:

  • 【中份薯条】雷柏MT760上手改装
  • PyPDF无限循环漏洞CVE-2025-62707技术分析
  • 题解:luogu P4948 数列求和
  • 详细介绍:论文阅读 (1) :Control Flow Management in Modern GPUs
  • 公众号排版2025年权威推荐:揭秘有一云AI编辑器为何高效?
  • 10 27
  • 同余最短路学习报告
  • 详细介绍:Redis多租户资源隔离方案:基于ACL的权限控制与管理
  • 二分查找边界
  • 学习笔记:重链剖分
  • FRP 后端无法获取请求者IP解决方案
  • 软件工程学习日志2025.10.27
  • 深入解析:TCP/IP 四层模型协作流程详解
  • Windows全版本激活教程(仅供测试)
  • 20251027周一日记
  • 10月27日
  • CSP-S 40(爆零记)
  • TCP/IP协议概述
  • 【CI130x 离在线】如何运行 curl 脚本
  • 一场比赛
  • 常见问题处理 --- Invalid default value for created time
  • 20232405 2025-2026-1 《网络与系统攻防技术》实验三实验报告
  • Pandas 缺失值最佳实践:用 pd.NA 解决缺失值的老大难问题
  • RT-Thread之事件集使用示例
  • 常见问题处理 --- phpstudy启动mysql失败
  • 20232422 2025-2026-1 《网络与系统攻防技术》实验三实验报告
  • P14309 【MX-S8-T2】配对题解
  • 魔改sunpinyin
  • 线段树;区间求和优化
  • 实用指南:2.CSS3.(2).html