17.6.管理 jail
17.6.1. 列出正在运行的 Jail
要列出主机系统上正在运行的 jail,可以使用 jls(8) 命令:
输出应该类似于以下内容:
jls(8) 支持参数 --libxo
,能通过 libxo(3) 库以其他格式显示输出,例如 JSON
、HTML
等。
例如,执行以下命令以获取 JSON
输出:
输出应该类似于如下内容:
17.6.2. 启动、重启和停止 Jail
service(8) 用于在主机上启动、重启或停止一个 jail。
例如,要启动一个 jail,运行以下命令:
将 start
参数更改为 restart
或 stop
可以执行其他操作,如重启或停止 jail。
17.6.3. 销毁 Jail
销毁一个 jail 不是像使用 service(8) 停止 jail 并删除 jail 目录和 /etc/jail.conf 条目那么简单。
FreeBSD 非常重视系统安全。因此,某些文件即使是 root 用户也不能删除。这种功能称为文件标志(File Flags)。
第一步是停止所需的 jail,执行以下命令:
第二步是使用 chflags(1) 移除这些标志,执行以下命令,其中 classic
是要删除的 jail 名称:
第三步是删除包含 jail 的目录:
最后,需要删除 /etc/jail.conf 或 jail.conf.d 中的 jail 条目。
17.6.4. 在 Jail 中处理软件包
pkg(8) 工具支持 -j
参数,用于处理安装在 jail 中的软件包。
例如,要在 jail 中安装 nginx-lite,可以从主机执行以下命令:
有关在 FreeBSD 中使用软件包的更多信息,请参见 安装应用程序:软件包和 Ports。
17.6.5. 访问 Jail
虽然前面提到最好从主机系统管理 jails,但可以使用 jexec(8) 进入一个 jail。
可以从主机系统执行 jexec(8) 命令来进入 jail:
当进入 jail 时,系统将显示在 motd(5) 中配置的消息。
17.6.6. 在 Jail 中执行命令
要从主机系统在 jail 中执行命令,可以使用 jexec(8)。
例如,要停止在 jail 中运行的服务,可以执行以下命令:
最后更新于
这有帮助吗?