【Linux】mnt命名空间-操作

先来认识一个命令行工具 unshare。unshare 是 util-linux 工具包中的一个工具,CentOS 7 系统默认已经集成了该工具,使用 unshare 命令可以实现创建并访问不同类型的 Namespace。

查看所有命名空间,type是命名空间类型

Mnt命名空间

创建一个mnt命名空间

#新建一个 Mount Namespace

root@docker-demo ~]# unshare --mount --fork /bin/bash

这个就创建另一个新进程bash 并且是在一个新的命名空间中,然后继续在这个命令行中执行 mnt操作都是在新的命名空间中操作的。在这个新的命名空间挂载了目录之后 新创建文件,在原主机上看不到。

通过查看当前进程的所有命名空间,看到新进程中 mnt类型的命名空间为: xxx2594

然后打开另外一个bash 空间查看,

可以看到两个命名空间是不一样的。

然后回到新的命名空间bash 中。执行命令

mkdir /tmp/tmpfs 创建一个目录

mount -t tmpfs -o size=20m tmpfs /tmp/tmpfs 把此目录挂载到一个内存文件系统中,临时的,退出这个进程之后 这个文件系统挂载点也就没有了

进入tmpfs 目录创建一个文件

touch ee.txt,然后目录下有个文件 ee.txt 然后查看 主机上是否有这个文件

原来主机上的看看,

原主机上创建一个文件 在新的命名空间进程挂载目录下也看不到

新进程命名空间中:

没有,说明文件目录进行了隔离。 其他类型的命名空间介绍看: CSDN

整理的命名空间的一些指令

使用 lsns 命令 查看所有命名空间

ls -l /proc/<PID>/ns 查看特定进程的命名空间

看到两个命名空间是不一样的

相关推荐
呉師傅16 分钟前
得力P2500、M2500系列打印机硒鼓加粉及清零方法【纯享版】
运维·网络·windows·电脑
Sayai21 分钟前
Elasticsearch 日志检索 DSL 实战:时间范围查询、字段去重、分钟级统计与最新日志获取
大数据·运维·elasticsearch·搜索引擎·日志分析
qetfw28 分钟前
Debian Chrony 时间同步、RAID5 与 LUKS 磁盘加密配置
linux·debian
fb_123452 小时前
MySQL运维实战:备份恢复+主从复制+读写分离+MHA高可用(超详细手把手教程)
运维·mysql·oracle
东城居士3 小时前
Linux驱动阻塞与非阻塞访问的理解
linux·嵌入式系统
..Dauntless..3 小时前
【Linux】进程地址空间初步理解
linux·运维·服务器
Julien20043 小时前
Docker 网络(一)
linux·运维·服务器·ssh·学习方法
字节跳动的猫4 小时前
LikeShop 积分体系全链路改造:获取规则、订单抵扣与积分商品兑换二开
运维·数据结构
杨云龙UP4 小时前
一次数据库查询缓慢故障复盘:大表数据增长、SQL全表扫描导致系统响应异常
linux·运维·服务器·数据库·sql·mysql
PellyKoo4 小时前
【linux运维】ubuntu+samba 用户组独占目录权限配置踩坑记
linux·运维·ubuntu