web-dev-qa-db-ja.com

ip netns add test後に名前空間を削除できないことをデバッグする方法

cgroup on /sys/fs/cgroup/freezer type cgroup (rw,nosuid,nodev,noexec,relatime,freezer)
cgroup on /sys/fs/cgroup/cpu,cpuacct type cgroup (rw,nosuid,nodev,noexec,relatime,cpu,cpuacct)
cgroup on /sys/fs/cgroup/pids type cgroup (rw,nosuid,nodev,noexec,relatime,pids)
systemd-1 on /proc/sys/fs/binfmt_misc type autofs (rw,relatime,fd=34,pgrp=1,timeout=0,minproto=5,maxproto=5,direct,pipe_ino=9430)
mqueue on /dev/mqueue type mqueue (rw,relatime)
debugfs on /sys/kernel/debug type debugfs (rw,relatime)
hugetlbfs on /dev/hugepages type hugetlbfs (rw,relatime)
tmpfs on /run/user/0 type tmpfs (rw,nosuid,nodev,relatime,size=401072k,mode=700)
tmpfs on /run/netns type tmpfs (rw,nosuid,noexec,relatime,size=401076k,mode=755)
nsfs on /run/netns/test type nsfs (rw)


root@localhost:~# ip netns delete test
Cannot remove namespace file "/var/run/netns/test": Device or resource busy
root@localhost:~# umount --force /run/netns/test 
umount: /run/netns/test: not mounted


netns       20            root  cwd       DIR               8,17     4096          2 /
netns       20            root  rtd       DIR               8,17     4096          2 /
netns       20            root  txt   unknown                                        /proc/20/exe


root        20  0.0  0.0      0     0 ?        S<   06:11   0:00 [netns]
root        21  0.0  0.0      0     0 ?        S    06:11   0:00 [khungtaskd]

これを修正するにはどうすればよいですか? netnsがそのマウントポイントの唯一のユーザーのように見えますか?スレッドを強制終了する必要がありますか?

2
putty

fuserで名前空間を使用しているプロセスを確認します

fuser /var/run/netns/test

そのリソースを使用しているプロセスIDを表す番号のリストを出力します。次に、各プロセスIDをpsコマンドを使用して確認できます。

ps -p 123
1
ewatt