Linux 6种名称空间

Linux 6种名称空间,第1张

6种名称空间

命名空间和cgroups是软件集装箱化(Docker)的大部分新趋势的主要内核技术之一。 简单来说,cgroups是一种计量和限制机制,它们控制您可以使用多少系统资源(CPU,内存)。 另一方面,命名空间限制了您可以看到的内容。 由于命名空间进程有自己的系统资源视图

UTS namespace(UNIX Timesharing System包含了运行内核的名称、版本、底层体系结构类型等信息)用于系统标识。包含了hostname 和域名domainname 。它使得一个容器拥有属于自己hostname标识,这个主机名标识独立于宿主机系统和其上的其他容器

http://www.cnblogs.com/ohgenlong/articles/8595878.html

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

从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考证


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/8488295.html

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

发表评论

登录后才能评论

评论列表(0条)

保存