Linux 利用命名空间创建一个自己的“容器“

Linux 利用命名空间创建一个自己的"容器"

前置条件

  • 创建一个目录存放容器mkdir /myapp
  • 准备静态编译busybox,操作系统自带的往往是依赖动态库的(本文使用的debian apt install busybox-static)

开始

  1. 使用unshare起一个独立命名空间.
    # 进入后/myapp目录在新命名空间内是不存在的
    unshare --mount-proc=/myapp -n -p -u -f /usr/bin/zsh
    # 挂载/myapp目录,挂载成功后,myapp目录是一个空目
    #和宿主机的myapp目录完全独立
    mount -t tmpfs tmpfs /myapp
    
  2. 初始化根目录到/myapp目录中(mount-proc=/myapp后,/myapp目录实现了隔离,但宿主机其它目录还是可以在命名空间内正常访问,还没有实现完全隔离)
    # 拷贝宿主机的busybox拷到/myapp目录中
    mkdir /myapp/bin && cp /usr/bin/busybox /myapp/bin/
    # /bin/busybox这个地址是基于/myapp作为/根目录地址得来的,
    #执行过后你当前命名空间就无法访问/myapp以外的宿主机目录了
    chroot /myapp /bin/busybox sh
    

效果展示

进来过后是很纯粹的linux,哈哈哈哈。你需要什么资源在chroot之前考到/myapp目录下都可,如果你不想隔离某个命名空间,列入你不想隔离网络,不想隔离pid,在unshare的时候都可以不加对应参数,具体参数意义可以使用unshare --help查看
请添加图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://xiahunao.cn/news/3223604.html

如若内容造成侵权/违法违规/事实不符,请联系瞎胡闹网进行投诉反馈,一经查实,立即删除!

相关文章

【Linux】System V信号量详解以及semget()、semctl()和semop()函数讲解

💐 🌸 🌷 🍀 🌹 🌻 🌺 🍁 🍃 🍂 🌿 🍄🍝 🍛 🍤 📃个人主页 :阿然成长日记 …

【电路笔记】-C类放大器

C类放大器 文章目录 C类放大器1、概述2、C类放大介绍3、C类放大器的功能4、C 类放大器的效率5、C类放大器的应用:倍频器6、总结1、概述 尽管存在差异,但我们在之前有关 A 类、B 类和 AB 类放大器的文章中已经看到,这三类放大器是线性或部分线性的,因为它们在放大过程中再现…

证件照片换背景底色 免费 证件照片制作软件免费下载 证件照换衣服软件免费有哪些好用

证件照是我们身份认证的重要凭证,其质量和专业性都很重要。然而,很多时候,由于各种原因,我们可能无法在拍摄证件照时穿上合适的服装,这就给证件照的质量和形象带来了一定的影响。幸运的是,现在市面上出现了…

ER模型理论和三范式

ER模型理论和三范式 各种关系多对一一对一一对多多对多 三范式理论函数依赖完全函数依赖部分函数依赖传递(间接)函数依赖 第一范式:属性(表字段)不可切割第二范式:不能存在 部分函数依赖(都存在完全函数依赖…

Git本地仓库的搭建与使用

目录 一、前言 二、Linux下搭建 git 仓库 三、Windows下搭建 git 仓库 一、前言 做项目时,我们常常需要将自己的代码进行托管,但有时候 Github 的速度属实叫人流泪。有的人会选择 Gitee 等进行托管代码,这当然是可以的。那如果没有其他代码…

【PyTorch][chapter 26][李宏毅深度学习][attention-1]

前言: attention 在自然语言处理,声音处理里面是一个很重要的技巧. attention 要解决的是输入的向量长度不定. 根据输入输出的不同,分为三种场景: 输入N个向量,输出N个向量,这是本章的重点 输入N个向量,输出向量不定 输…

【漏洞复现】29网课交单平台 SQL注入

声明:本文档或演示材料仅用于教育和教学目的。如果任何个人或组织利用本文档中的信息进行非法活动,将与本文档的作者或发布者无关。 一、漏洞描述 29网课交单平台是一个在线学习平台,用于帮助学生完成网络课程的学习任务。这个平台提供了包括…

【开源】基于RMBG的一键抠图与证件照制作系统【含一键启动包】

《博主简介》 小伙伴们好,我是阿旭。专注于人工智能、AIGC、python、计算机视觉相关分享研究。 ✌更多学习资源,可关注公-仲-hao:【阿旭算法与机器学习】,共同学习交流~ 👍感谢小伙伴们点赞、关注! 《------往期经典推…

Transformer-LSTM预测 | Matlab实现Transformer-LSTM时间序列预测

Transformer-LSTM预测 | Matlab实现Transformer-LSTM时间序列预测 目录 Transformer-LSTM预测 | Matlab实现Transformer-LSTM时间序列预测效果一览基本介绍程序设计参考资料 效果一览 基本介绍 1.Matlab实现Transformer-LSTM时间序列预测,Transformer-LSTM&#xf…

第五次作业(多表联合查询)

新增员工表emp和部门表dept create table dept (dept1 int ,dept_name varchar(11)) charsetutf8; create table emp (sid int ,name varchar(11),age int,worktime_start date,incoming int,dept2 int) charsetutf8; insert into dept values (101,财务), (102,销售…

入门PHP就来我这(高级)18 ~ 获取结果集

有胆量你就来跟着路老师卷起来! -- 纯干货,技术知识分享 路老师给大家分享PHP语言的知识了,旨在想让大家入门PHP,并深入了解PHP语言。 1 PDO中获取结果集 在PDO中获取结果集常用3中方法:fetch()方法、fetchAll()方法和…

两位软件工程师创业,开发出一款软件质量保证自主AI代理,融资总额超3000万美元

编译整理|TesterHome社区 来源|TechCrunch 随着生成式人工智能(generative AI)的出现,人工智能应用正在改变和重塑各行各业,并改变人们的工作方式。软件开发也不例外。 总部位于旧金山和东京的初创公司Aut…

算法学习笔记(8.2)-动态规划入门进阶

目录 问题判断: 问题求解步骤: 图例: 解析: 方法一:暴力搜索 实现代码如下所示: 解析: 方法二:记忆化搜索 代码示例: 解析: 方法三:动态规划 空间…

C++进阶:继承和多态

文章目录 ❤️继承🩷继承与友元🧡继承和静态成员💛菱形继承及菱形虚拟继承💚继承和组合 ❤️多态🩷什么是多态?🧡多态的定义以及实现💛虚函数💚虚函数的重写&#x1f499…

MySQL之基本查询(上)-表的增删查改

目录 Create(创建) 案例建表 插入 单行数据 指定列插入 单行数据 全列插入 多行数据 全列插入 插入是否更新 插入时更新 替换 Retrieve(读取) 建表插入 select列 全列查询 指定列查询 查询字段为表达式 为查询结果指定别名 结果去重 where条件 比较运算符 逻辑运…

【深度学习基础】MacOS PyCharm连接远程服务器

目录 一、需求描述二、建立与服务器的远程连接1. 新版Pycharm的界面有什么不同?2. 创建远程连接3. 建立本地项目与远程服务器项目之间的路径映射4.设置保存自动上传文件 三、设置解释器总结 写在前面,本人用的是Macbook Pro, M3 MAX处理器&am…

opencv读取视频文件夹内视频的名字_时长_帧率_分辨率写入excel-cnblog

看视频的时候有的视频文件名贼长。想要翻看,在文件夹里根本显示不出来,缩短又会丢失一些信息,所以我写了一份Python代码,直接获取视频的名字,时长,帧率,还有分辨率写到excel里。 实际效果如下图…

uniapp父页面调用子页面 组件方法记录

文章目录 导文如何点击父页面,触发子页面函数先写一个子页面的基础内容父元素 如何点击父页面,修改子页面的值先写一个子页面的基础内容父元素 导文 如何点击父页面,触发子页面函数? 如何点击父页面,修改子页面的值&am…

Java基础语法--基本数据类型

Java基础语法–基本数据类型 Java是一种静态类型语言,这意味着每个变量在使用前都必须声明其数据类型。Java提供了多种基本数据类型,用于存储整数、浮点数、字符和布尔值等。以下是Java中的基本数据类型及其特点: 1. 整型(Integ…

offer题目33:判断是否是二叉搜索树的后序遍历序列

题目描述:输入一个整数数组,判断该数组是不是某二叉搜索树的后序遍历结果。如果是则返回true,否则返回false。假设输入的数组的任意两个数字都互不相同。例如,输入数组{5,7,6,9,11,10,8},则返回true,,因为这个整数是下图二叉搜索树…