我目前尋找一些例子來理解在linux CLONE_NEWNS,所以我做了以下實驗:CLONE_NEWNS和掛載傳播
在抽殼:
$ mkdir mnt
$ sudo unshare -m /bin/bash
# mount /dev/sda5 mnt/
# ls mnt
lost+found
,其中在shell2:
我期待shell2中的輸出應該是空的,因爲CLONE_NEWNS會像文檔所說的那樣創建一個新的掛載名稱空間。
首先,我以爲孩子的名字空間mount會傳播給父母的,所以我在父母身上掛載,而孩子也是看到掛載!
然後,我從同一個父項創建兩個獨立的子名稱空間,在一個子項中掛載也會影響其他。
我很困惑。
ps。在抽殼我的第一個實驗 :
# readlink /proc/$$/ns/mnt
mnt:[4026532353]
在shell2
:
$ readlink /proc/$$/ns/mnt
mnt:[4026531840]
顯然,它們在不同的坐騎命名空間。