zoukankan      html  css  js  c++  java
  • liunx mnt命名空间

    Mount namespace的作用是隔离mount point,每个mnt namespace内的文件结构可以单独修改,互不影响。

    当前进程所在的mnt namespace的所有挂载点信息记录在以下三个文件中

    为接下来的操作准备两个目录,每个目录下一个文件

    启一个终端

    [root@k8s-nginx1 ~]# ll /proc/$$/mount*
    -r--r--r-- 1 root root 0 Nov 26 13:45 /proc/4433/mountinfo
    -r--r--r-- 1 root root 0 Nov 26 13:45 /proc/4433/mounts
    -r-------- 1 root root 0 Nov 26 13:45 /proc/4433/mountstats

    创建新的mount namespace和uts namespace并运行bash ###

    [root@k8s-nginx1 ~]# unshare --mount --uts bash
    ### 设置hostname以便于观察 ### [root@k8s
    -nginx1 ~]# hostname namespace-01 && exec bash
    ### 查看对应namespace的inode number ### [root@namespace
    -01 ~]# readlink /proc/$$/ns/{uts,mnt} uts:[4026532431] mnt:[4026532430]
    ### 将上面创建的namespace01目录挂在到/mnt ###
    [root@namespace-01 ~]# mount --bind namespace01/ /mnt/

    1

    ### 查看/mnt目录下的文件 ###
    [root@namespace-01 ~]# ll /mnt/
    total 0
    -rw-r--r-- 1 root root 0 Nov 26 13:46 namespace01.txt

    另启动一个终端

    创建新的mount namespace和uts namespace,执行bash ###

    [root@k8s-nginx1 ~]# unshare --mount --uts bash
    [root@k8s-nginx1 ~]# hostname namespace-02 && exec bash
    [root@namespace-02 ~]# readlink /proc/$$/ns/{uts,mnt}
    uts:[4026532433]
    mnt:[4026532432]
    [root@namespace-02 ~]# ll /mnt/
    total 0
    drwxr-xr-x. 2 root root 6 Nov  6 13:52 cdrom
    [root@namespace-02 ~]# mount --bind namespace02/ /mnt/
    [root@namespace-02 ~]# ll /mnt/
    total 0
    -rw-r--r-- 1 root root 0 Nov 26 13:46 namespace02.txt

    当新的mount namespace创建时,会从创建进程所在的namespace复制挂载点信息,所以namespace01和namespace02都可以看到相同的文件视图

    [root@namespace-01 ~]# unshare --mount --uts bash
    [root@namespace-01 ~]# hostname namespace-03 && exec bash
    [root@namespace-03 ~]# readlink /proc/$$/ns/{uts,mnt}
    uts:[4026532435]
    mnt:[4026532434]
    [root@namespace-03 ~]# ll /mnt/
    total 0
    -rw-r--r-- 1 root root 0 Nov 26 13:46 namespace01.txt
  • 相关阅读:
    嵌入式开发之davinci--- spi 中的时钟极性CPOL和相位CPHA
    Setting up a Single Node Cluster Hadoop on Ubuntu/Debian
    Install Java JDK JRE on Ubuntu/Debian with Apt-Get
    使用WICleanup清理Windows Installer 冗余文件
    WinSxS文件夹瘦身
    Linux时间同步+国内常用的NTP服务器地址
    How to fix Mysql table crashes
    Monitorix:一款面向Linux的轻型系统和网络监测工具
    How To Secure Apache with Let's Encrypt on Ubuntu (Free SSL)
    Latex表格太宽处理方法 (How to shorten Latex table length)
  • 原文地址:https://www.cnblogs.com/caonw/p/11935104.html
Copyright © 2011-2022 走看看