linux的命名空间到底是什么,一直搞不懂

linux的命名空间到底是什么,一直搞不懂,第1张

抽象的概念。看了一下别人的解析,写一下:

从Linux 2.6.24版的内核开始,Linux 就支持6种不同类型的命名空间。(具体也没记住)

命名空间是一种轻量级的虚拟化手段;

传统的虚拟化软件,是虚拟化多个不同的操作系统,对共享资源的限制很大;

通过提供命名空间,可以让进程与进程之间,用户与用户之间彼此看不到对方。

命名空间,相当于容器。

命名空间,本质上建立了系统的不同视图。

在Linux中,引入“命名空间”的概念是为了在不同的进程组之间隔离系统资源。作为六种不同类型的Linux命名空间之一,网络命名空间在逻辑上隔离与不同进程组之间的网络(例如,网络设备,IP地址,路由表)相关联的系统资源,从而为每个进程组提供主机网络堆栈的不同视图。此功能通常用于操作系统级虚拟化。 可以通过ip命令创建和删除Linux网络命名空间,

如下所示。

                     $ sudo ip netns add

                    ’ $ sudo ip netns del

假设您要清理Linux系统上的所有现有命名空间。当然你可以用上面的ip命令逐个删除每个命名空间,但这可能很麻烦。以下是从命令行中删除所有网络命名空间的方法

方法一

该IP命令来自iproute2的包。最新的iproute2包允许ip命令为所有对象执行指定的操作(例如,对于所有现有的命名空间)。为此,它提供“-all”选项

例如,在Ubuntu 15.10或Fedora

23上,ip命令可以使用“-all”选项一次删除所有名称空间。

$ sudo ip -all netns delete

但是,如果您的Linux系统没有安装兼容的iproute2软件包,您将遇到以下错误。

选项“-all”未知,请尝试“ip-help”

方法二

对于那些没有安装最新iproute2软件包的人,可以使用xargs和ip的组合删除所有网络名称空间,如下所示。

$ ip netns | xargs -I {} sudo ip netns delete{}

基本上,您将多行命名空间列表传递给xargs,然后xargs将为每个命名空间运行ip命令。

转自 嘉为教育-rhce认证_rhce培训_linux培训_linux认证_linux考证


欢迎分享,转载请注明来源:夏雨云

原文地址:https://www.xiayuyun.com/zonghe/50555.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-02-25
下一篇2023-02-25

发表评论

登录后才能评论

评论列表(0条)

    保存