我可以在 FreeBSD live CD 中安裝軟體嗎?
我想在 FreeBSD live CD 中執行一些診斷腳本(這些腳本用於 FreeBSD,所以……)。但是我想在這樣做的時候監控硬碟溫度,那麼是否可以
smartctl
在 FreeBSD live cd-booted 系統中安裝任何軟體(即)?據我所知,
pkg
live CD 和所有目錄中都不存在,但/tmp
都是只讀的。我不知道從哪裡開始。
你可以這樣做。但是您是否考慮過您的任務可能有更好的選擇?
您可以下載“memstick”版本,而不是“Live CD”。因此,與其啟動 CD,不如啟動 U 盤並擁有一個可寫系統。如果系統是聯網的,我會 PXE 引導一個最小的映像。
您沒有說明但我希望您知道的是您可以下載
.tbz
軟體封包件並使用pkg_add package-name.tbz
. 因為它預設嘗試安裝到/usr/local/bin
哪個是只讀的,所以你有問題。雖然您可以玩弄,@option extract-in-place
但很容易遇到安裝後問題。您還可以將相關目錄移動到tmpfs
文件系統。但這不值得麻煩。您更合理的選擇是:
- 簡單 - 簡單的複制 =============
如果它是一個簡單的二進製文件,您可以將文件 ftp/sftp 到您的
/tmp
. 然後chmod +x
對執行檔執行 a 並從那裡執行它。
- 簡單——NFS 基礎設施 ===============
您可以在網路上設置 NFS 共享。從您的“Live CD”系統安裝它。將您的執行檔放在該共享上並從那裡執行它。
- 中級但需要努力 - 建立自己的。 ===================
正如您所注意到的,CD 是只讀的。但是您可以準備自己的圖像。然後您決定哪些文件進入系統。要建構系統,您需要在系統上安裝 FreeBSD 原始碼。然後它很簡單:
cd /usr/src make buildworld buildkernel cd release make release make install DESTDIR=/var/myrelease
完成後,您將在其中找到發布圖像
/var/myrelease
。困難的部分是了解系統以及在哪裡進行添加。您可能需要設置SRC_CONF
(參見 src.conf(5)),您可以從release(7)中學到很多東西如果您不想完全發布您可以簡單地做
make cdrom
。更新:我剛剛遇到了sysutils/packmule,這是一個可以幫助你做到這一點的工具。我自己沒有嘗試過,但它看起來很簡單。
4.中級但通用——建構mfsbsd
與其從官方的 FreeBSD Live CD 開始,不如使用mfsbsd來代替。這是一個最小的系統,但很容易使用。您可以從首頁下載現成的圖像,但也可以輕鬆建構自己的圖像。
.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 引導。或者也許在 VM 中使用 .iso 映像進行虛擬引導。但是對於你正在玩的那種工作來說,很快就值得研究 NFS(網路文件系統)和 PXE(網路引導)。根據您的技能水平,這可能還為時過早,但請查看PXE Booting Utilities With FreeBSD以獲得有關如何設置完整環境的完整描述。最後,它還描述瞭如何使用 NFS 引導完整的 FreeBSD Live 系統。這可以為您提供一些進一步探索的指導。