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

怎么实现pid隔离

在进行pid隔离之前我们要有一块可以存储文件的磁盘,我们怎么来得到这块磁盘呢,其实很简单.我们将一个文件进行挂载,不就相当于一个磁盘了吗.

下面我会一步一进行操作
第一步:

首先就是创建一个文件,这和我们平时用touch创建文件不同.我们用dd命令来创建文件
命令如下:

dd if=dev/zero of=text.img bs=8k count=1024.

这样就创建好了一个8mb的文件,里面被空字节填充.

第二步:

将创建好的文件进行格式化,因为未格式化的文件系统是不能存储文件的.
 命令如下:

mkfs -t ext4 ./test.img.

这样就将文件给格式化了 

第三步

就是将这个文件进行挂载,挂载之后就相当于磁盘了.挂载的意思就是可以理解为,我们的电脑插了一个U盘.这就是挂载.

在此之前,要先创建好挂载的目录命令如下

mkdir -p /data/testmymount

挂载的命令如下

mount ./test.img  /data/testmymount

这样就将文件挂载上去了,我们可以使用一个命令

 df命令,这个命令可以查看文件系统磁盘使用情况.

df -h

当输完这个命令回车后,就可以查看到一个路径:/data/testmymount还会有内存使用情况.

当准备好这些后就可以进行进程pid隔离了,即不共享pid(进程)空间.

第四步:

还要注意一点就是:当我们进行隔离的时候,是感受不到父进程的,也就是说我们要创建一个进程来分配这个挂载的文件系统的资源.既然要实现进程的隔离,我们还要将/proc这个文件目录里面的东西先挂载出去,就有了下面的命令.

unshare --fork --pid --mount-proc /bin/bash

然后执行ps -ef查看如下图

 发现确实实现了隔离,但是这里要注意的是这里使用的/bin/bash如果退出xshell则隔离性会失效

http://www.xdnf.cn/news/9346.html

相关文章:

  • 海信IP810N-72UB0贵州联通原机分区备份包
  • mysql 合集
  • TLE9893-2QKW62S新建Keil MDK工程
  • cursor使用mcp
  • 智能门禁的项目
  • 用 Python 打造你的专属虚拟试衣间!——AI+AR 如何改变时尚体验
  • 关于CSDN和Github的操作
  • vtk管线
  • 递归:JavaScript中的强大工具
  • Java 继承(上)
  • 使用Auto-Coder对js文件进行审计并修复漏洞 1.5版本
  • leetcode 53. 最大子数组和
  • How API Gateways handle raw TCP packets
  • Python解压多种格式压缩包
  • 【git】 pull + rebase 或 pull + merge什么区别?
  • Java 继承(下)
  • LVS负载均衡群集技术深度解析
  • 三天掌握PyTorch精髓:从感知机到ResNet的快速进阶方法论
  • 《计算机组成原理》第 2 章 - 计算机的发展及应用​
  • 【Seata分布式事务源码分析】
  • 用python制作一个五子棋游戏
  • 【大模型微调】魔搭社区GPU进行LLaMA-Factory微调大模型自我认知
  • COMSOL三维梯度多孔结构流体流动模拟
  • eda学习前传又名电赛Day01
  • 2025年渗透测试面试题总结-匿名[实习]安全技术研究员(题目+回答)
  • Cesium 透明渐变墙 解决方案
  • 【C/C++】环形缓冲区:高效数据流转核心
  • JavaScript面试题之箭头函数详解
  • Elasticsearch索引机制与Lucene段合并策略深度解析
  • 纺织品应该做OEKO还是GRS呢