1. Easy——简单复制

1. Easy——简单复制

我想在 FreeBSD live CD 中运行一些诊断脚本(这些脚本适用于 FreeBSD,所以......)。但我想在执行此操作时监视 HDD 温度,那么是否可以smartctl在 FreeBSD live cd 启动系统中安装任何软件(即 )?

据我所知,pkgLive CD 中不存在,所有目录都是/tmp只读的。我不知道从哪里开始。

答案1

你可以这么做。但您是否考虑过您可能有更好的选择来完成您的任务?

您可以下载“memstick”版本,而不是“Live CD”。因此,您可以启动 USB 记忆棒并拥有一个可写系统,而不是启动 CD。如果系统已联网,我将通过 PXE 启动最小映像。

您没有说明,但我希望您知道的是,您可以下载.tbz软件包的文件并使用 进行安装pkg_add package-name.tbz。由于默认情况下它会尝试安装到/usr/local/bin只读文件夹中,因此您会遇到问题。虽然您可以尝试一下,但@option extract-in-place很容易遇到安装后问题。您还可以将相关目录移动到tmpfs文件系统。但这不值得这么麻烦。

您更合理的选择是:

1. Easy——简单复制

如果它是一个简单的二进制文件,您只需将文件 ftp/sftp 到您的/tmp.然后chmod +x对可执行文件执行 a 并从那里运行它。

2. Easy——NFS基础设施

您可以在网络上设置 NFS 共享。从“Live CD”系统安装它。将可执行文件放在该共享上并从那里运行它。

3. 中等但需要努力 - 构建您自己的。

正如您所注意到的,CD 是只读的。但您可以准备自己的图像。然后您决定哪些文件进入系统。要构建系统,您的系统上需要有 FreeBSD 源代码。那么就很简单了:

cd /usr/src
make buildworld buildkernel
cd release
make release
make install DESTDIR=/var/myrelease

/var/myrelease完成后您将找到发布图像。困难的部分是理解系统以及在哪里进行添加。您可能需要设置SRC_CONF(请参阅 src.conf(5))你可以从中学到很多东西发布(7)

如果您不想发布完整版本,您可以简单地这样做make cdrom

更新: 我刚好路过sysutils/packmule这是一个可以帮助您做到这一点的工具。我自己没有尝试过,但看起来很简单。

4. 中级但常见 - 构建 mfsbsd

它不是从官方 FreeBSD Live CD 开始,而是很常见MFBSD反而。这是一个最小的系统,但非常容易使用。您可以从主页下载现成的图像,但您可以轻松地建造你自己。

.tbz通过将应自动安装的文件复制到目录中,可以轻松添加软件包packages/

mkdir ~/src
git clone https://github.com/mmatuska/mfsbsd.git ~/src/mfsbsd
cd ~/src/mfsbsd
mkdir packages

现在将*.tbz文件复制到~/src/mfsbsd/packages/- 然后...

make iso BASE=/cdrom/usr/freebsd-dist
make iso BASE=/cdrom/12.2-RELEASE
make iso CUSTOM=1 BUILDWORLD=1 BUILDKERNEL=1

这将是我的首选方法。

替代方案:PXE

您没有说明您是否确实从 CD 启动。或者可以在虚拟机中使用 .iso 映像进行虚拟启动。但对于您正在使用的那种工作,NFS(网络文件系统)和 PXE(网络启动)很快就值得研究。根据您的技能水平,可能还为时过早,但请看一下使用 FreeBSD 进行 PXE 引导实用程序有关如何设置完整环境的完整描述。最后还描述了如何使用 NFS 引导完整的 FreeBSD Live 系统。这可以为您进一步探索提供一些指导。

相关内容