跳过导航链接 | |
退出打印视图 | |
Oracle Solaris 管理:网络接口和网络虚拟化 Oracle Solaris 11 Information Library (简体中文) |
netcfg 命令可与 list 子命令配合使用,用于列出当前范围内或指定范围内的所有配置文件、属性值对和资源。使用 list 子命令查询系统,以获取有关所有配置文件的常规信息或检索特定配置文件的特定信息。list 子命令可在交互模式或命令行模式下使用。
如果需要获取有关配置文件和其当前状态的信息,请将 netadm 命令与 list 子命令一起使用。有关更多信息,请参见显示配置文件的当前状态。
netcfg list 命令列出系统中所有的系统定义的配置文件和用户定义的配置文件。请注意,使用 list 子命令时,如果不加任何选项,将显示系统中的所有顶层配置文件。该命令不会列出每个配置文件的状态。要显示配置文件及其状态(联机或脱机)的列表,请使用 netadm list 命令。
要列出系统中的所有顶层配置文件,请键入以下命令:
$ netcfg list NCPs: Automatic User Locations: Automatic NoNet home office ENMs: myvpn testenm WLANs: workwifi coffeeshop homewifi
在此示例中,列出了以下配置文件:
NCP
列出了两个 NCP:Automatic NCP(是一个系统定义的配置文件),用户定义的 NCP(名为 User)。
位置
列出了四个位置配置文件:两个系统定义的位置(Automatic 和 NoNet),两个用户定义的位置(home 和 office)。
ENM
列出了两个 ENM:一个 ENM 用于已安装并配置了 VPN 的应用程序,一个测试 ENM。
WLAN
列出了三个 WLAN:一个 WLAN 用于工作、一个 WLAN 用于当地的咖啡店,一个 WLAN 用于用户的家庭无线网络。
注 - 只可以创建、修改或删除用户定义的配置文件。
将 netcfg 和 list 子命令一起使用,列出指定的配置文件的所有属性值。
list 子命令的语法如下:
$ netcfg list [ object-type [ class ] object-name ]
示例 4-11 列出 NCU 的所有属性值
例如,要列出 User NCP中 IP NCU 的所有属性值,应键入以下命令:
$ netcfg "select ncp User; list ncu ip net0" NCU:net0 type interface class ip parent "User" enabled true ip-version ipv4 ipv4-addrsrc dhcp ipv6-addrsrc dhcp,autoconf
示例 4-12 列出 ENM 的所有属性值
在以下示例中,列出了名为 myenm 的ENM 的所有属性。
$ list enm myenm ENM:myenm activation-mode manual enabled true start "/usr/local/bin/myenm start" stop "/bin/alt_stop"
在此示例中,list 子命令的输出显示以下信息:
此 ENM 的“activation-mode”属性设置为 manual。
启用了此 ENM。
指定了 start 和 stop 方法属性,而不是使用 FMRI。
可将 netcfg 命令与 get 子命令一起使用来获取指定属性的特定值。此子命令可在交互模式或命令行模式下使用。
get 子命令的语法如下所示:
netcfg get [ -V ] prop-name
要获取名为 myncu 的 NCU(属于 User NCP)的 ip-version 属性的值,应键入以下命令。例如:
$ netcfg "select ncp User; select ncu ip myncu; get -V ip-version" ipv4
如果 get 子命令使用 -V 选项,则只显示属性值,如下所示:
netcfg:ncp:User:ncu:net0> get -V activation-mode manual
否则,属性及其值都会显示。例如:
netcfg:ncp:User:ncu:net0> get activation-mode activation-mode manual
此过程介绍如何在 netcfg 交互模式中使用 netcfg get 命令获取单个属性值。在此特定过程中,将给出一些示例,展示如何获取 User NCP 中某个 NCU 的单个属性值。这些示例只用于演示目的。使用此命令时,您提供的信息会有所不同,具体取决于配置文件和您尝试检索的属性值。
如果要查看配置文件的所有属性值,您也可以使用 walkprop 子命令。此子命令将引导您遍历给定配置文件的所有属性,一次一个,使您能够修改一个或所有的配置文件属性。有关更多信息,请参见使用 walkprop 子命令以交互方式查看和更改属性值 。
$ netcfg netcfg>
netcfg> select object-type [ class ] object-name
注 - class 参数仅在选择的是 NCU 时适用。此外,如果 phys 类和 ip 类 NCU 共享同一个名称,必须指定 class 参数。但是,如果 NCU 名称是唯一的,就不需要使用 class 参数。
例如,要选择 User NCP,应键入:
netcfg> select User NCP
在此示例中,选择 User NCP 会将交互式会话移到所选对象的范围内。
netcfg:ncp:User> list NCUs: phys net0 ip net0
在以下示例中,选择了 User NCP 中的链路 (phys) NCU net0:
netcfg:ncp:User> select ncu phys net0
选择 NCU net0 会将交互式会话移到该对象的范围内,并从内存中加载 NCU 的当前属性。
netcfg:ncp:User:ncu:net0> get property-value
例如,要获取 activation-mode 属性的值,应键入:
netcfg:ncp:User:ncu:net0> get activation-mode activation-mode manual
接下来的步骤
此时,您可以用 set 子命令为该属性设置新值,也可以退出交互式会话而不做任何更改。请注意,如果在交互模式下修改属性值,必须使用 commit 或 exit 子命令保存更改。有关在 netcfg 交互模式下设置属性值的信息,请参见设置和更改配置文件的属性值。
walkprop 子命令可用于以交互方式查看配置文件的属性。此子命令带您遍历一个配置文件,一次查看一个属性,并显示每个属性的名称与当前值。交互式命令提示符也会显示,您可以使用交互式命令提示符更改指定属性的当前值。多值属性的分隔符是逗号 (,)。如果给定属性的某个值包含逗号,逗号前面必须加反斜杠 (\)。包含在只有一个值的属性内的逗号不解释为分隔符,也不需要在逗号前面加反斜杠。
注 - walkprop 子命令只在交互模式下使用时有意义。
示例 4-13 查看和更改特定配置文件的属性值
在以下示例中,使用 walkprop 子命令查看了位置 foo 的 activation-mode 属性,然后对其做了更改。请注意,使用 walkprop 子命令时,不需要使用 set 子命令设置属性值。
$ netcfg netcfg> select loc foo netcfg:loc:foo> list loc:foo activation-mode manual enabled false nameservices dns nameservices-config-file "/etc/nsswitch.dns" dns-nameservice-configsrc dhcp nfsv4-domain "Central.oracle.com" netcfg:loc:foo> walkprop activation-mode (manual) [manual|conditional-any|conditional-all]> conditional-all conditions> advertised-domain is oracle.com nameservices (dns) [dns|files|nis|ldap]> nameservices-config-file ("/etc/nsswitch.dns")> dns-nameservice-configsrc (dhcp) [manual|dhcp]> nfsv4-domain ("Central.oracle.com")> ipfilter-config-file> ipfilter-v6-config-file> ipnat-config-file> ippool-config-file> ike-config-file> ipsecpolicy-config-file> netcfg:loc:foo> list loc:foo activation-mode conditional-all conditions "advertised-domain is oracle.com" enabled false nameservices dns nameservices-config-file "/etc/nsswitch.dns" dns-nameservice-configsrc dhcp nfsv4-domain "Central.oracle.com" netcfg:loc:foo> commit Committed changes netcfg:loc:foo> end netcfg> exit $
注 - 只遍历相关属性。例如,如果 ipv4-addrsrc 属性设置为 static,遍历中就会包括 ipv4-addr 属性。然而,如果 ipv4-addrsrc 设置为 dhcp,就不会遍历 ipv4-addr 属性。