FreeBSD配置Jails

什么是jail

BSD-类的操作系统从 4.2BSD 开始即提供了 chroot(8)。 我们可以创建一个子系统,Jails便是这种。类似Linux中的Docker.

配置jail

使用的系统

sh 复制代码
root@freebsd_node1:~ # uname -a
FreeBSD freebsd_node1 14.3-RELEASE FreeBSD 14.3-RELEASE releng/14.3-n271432-8c9ce319fef7 GENERIC amd64

配置jail目录

根据我们的系统版本下载base系统,我们可以到ustc镜像站下载, mirrors.ustc.edu.cn/freebsd/rel...

下载完成后加压到/usr/myjail目录,这个目录可以自己指定。

sh 复制代码
root@freebsd_node1:~ # mkdir /usr/myjail
root@freebsd_node1:~ # tar -xvf base.txz -C /usr/myjail/

系统启用jail

jail_ebable="YES" 写入/etc/rc.conf中。

sh 复制代码
sysrc jail_ebable="YES"

创建jail配置

/etc/jail.conf中写入如下内容

sh 复制代码
www {
host.hostname =www.example.org;         # 主机名
ip4.addr = 192.168.0.99;                # IP 地址
path ="/usr/myjail";                      # jail 位置
devfs_ruleset = "4";          # devfs ruleset
mount.devfs;                            # 挂载 devfs 文件系统到 jail
exec.start = "/bin/sh /etc/rc";         # 启动命令
exec.stop = "/bin/sh /etc/rc.shutdown"; # 关闭命令
}

启动jail

启动名称为www的jail,该名称为我们在配置文件设置的名称

sh 复制代码
service jail start www

查看运行的jail

使用jls命令可以查看到我们的jail正常运行了。

sh 复制代码
root@freebsd_node1:~ # jls
   JID  IP Address      Hostname                      Path
     1  192.168.0.99    www.example.org               /usr/myjail

登陆jail

使用id登陆

sh 复制代码
root@freebsd_node1:~ # jexec 1
root@www:/ # 
root@www:/ #

使用名称登陆

sh 复制代码
root@freebsd_node1:~ # jexec www
root@www:/ # 
root@www:/ # 
root@www:/ # 

停止jail

sh 复制代码
root@freebsd_node1:~ # service jail stop www
Stopping jails: www.

参考文档

相关推荐
码luffyliu2 分钟前
Go 中的深浅拷贝:从城市缓存场景讲透指针与内存操作
后端·go·指针·浅拷贝·深拷贝
老华带你飞3 分钟前
个人网盘管理|基于springboot + vue个人网盘管理系统(源码+数据库+文档)
java·数据库·vue.js·spring boot·后端
JaguarJack15 分钟前
PHP 之高级面向对象编程 深入理解设计模式、原则与性能优化
后端·php
章豪Mrrey nical8 小时前
前后端分离工作详解Detailed Explanation of Frontend-Backend Separation Work
后端·前端框架·状态模式
派大鑫wink9 小时前
【JAVA学习日志】SpringBoot 参数配置:从基础到实战,解锁灵活配置新姿势
java·spring boot·后端
程序员爱钓鱼9 小时前
Node.js 编程实战:文件读写操作
前端·后端·node.js
xUxIAOrUIII9 小时前
【Spring Boot】控制器Controller方法
java·spring boot·后端
Dolphin_Home9 小时前
从理论到实战:图结构在仓库关联业务中的落地(小白→中级,附完整代码)
java·spring boot·后端·spring cloud·database·广度优先·图搜索算法
zfj3219 小时前
go为什么设计成源码依赖,而不是二进制依赖
开发语言·后端·golang
weixin_4624462310 小时前
使用 Go 实现 SSE 流式推送 + 打字机效果(模拟 Coze Chat)
开发语言·后端·golang