※ 引述《Kuster (克斯特)》之銘言:
: 看了兩位前輩的說法,我想請教一下這樣的解讀是不是正確的:
: FreeBSD的初始安裝直接包含了kernel與userspace所需的所有檔案
: 這些檔案均與package管理系統無關,也不被管控
: ports與pkg_*最終在安裝的時候會將紀錄留在同一個管理系統,即/var/db/pkg
: 這兩的差異只在於最終使用的binary來源,一個是自己產生,一個是別人產生的
: 不知道我這樣的解讀是不是正確的?
: 我很好奇那我要怎麼更新這些不被管控的檔案?
freebsd-update 會同時更新 binary 和 source,可以用來更新到 RELEASE 和 RC。
至於 STABLE (有時候是 PRERELEASE) 或 CURRENT 這類的開發中的版本,沒辦法使用
freebsd-update 來更新。 (其實沒有特殊需求也不會去用這些不穩定版)
/usr/src 如果當初沒有安裝,我認為事後要裝的話直接用 svn checkout 就好了。
雖然說系統本身沒有分套件,但是 source 和 binary 之前是有清楚的對應關係的
通常
/usr/src/bin -> /bin
/usr/src/lib -> /lib
/usr/src/usr.bin -> /usr/bin
大概像是這樣,找不到的話用 whereis 找也很方便
比較特別的是 /usr/src/sys 是放 kernel 的地方,/usr/src/sys/modules 是 ko
核心設定檔會放在 /usr/src/sys/<arch>/conf,打 uname -v 可以看到目前執行的
kernel 使用的設定檔名稱
: 因為我個人之前習慣使用ubuntu
: 從kernel必備到userspace裡面的檔案似乎都是打包成package之後再安裝
: 個人感覺分割得比較細
: 至於kernel module的部分,我有在/boot/kernel找到*.ko
: 但我有點疑惑的是,雖然我有找到各個.ko的檔案
: 但是透過kldstat就只會看到一個名為kernel的module
: 要加上參數,即kldstat -v,才會看到內含的module
: 這樣我要怎麼移除(unload)這些內含的module呢?
: 謝謝!!