如何看已安裝套件? - BBS

Hamiltion avatar
By Hamiltion
at 2013-08-28T22:00

Table of Contents

※ 引述《Kuster (克斯特)》之銘言:
: 看了兩位前輩的說法,我想請教一下這樣的解讀是不是正確的:
: FreeBSD的初始安裝直接包含了kernel與userspace所需的所有檔案
: 這些檔案均與package管理系統無關,也不被管控
: ports與pkg_*最終在安裝的時候會將紀錄留在同一個管理系統,即/var/db/pkg
: 這兩的差異只在於最終使用的binary來源,一個是自己產生,一個是別人產生的
: 不知道我這樣的解讀是不是正確的?

原則上是這樣,實際上你也可以自製 pkg 然後再安裝,
因為別人也是用 ports 幫你做好 pkg 的。

: 我很好奇那我要怎麼更新這些不被管控的檔案?

把整個系統(kernel + world)更新即可,用 ports 安裝的東西幾乎都會被丟在
/usr/local 下面,其他 /usr /bin /lib 的都算是系統本身。

: 因為我個人之前習慣使用ubuntu
: 從kernel必備到userspace裡面的檔案似乎都是打包成package之後再安裝
: 個人感覺分割得比較細

Linux 和 FreeBSD 有一個最根本的差異就是 Linux 只有 kernel
所以目前看到所有 linux distro 都是拿 linux kernel
然後再搭配 userland 的東西組出來的

FreeBSD 的話是整套 OS,也就是 userland 加上 kernel 是一整組,
所以觀念上比較像是一套 OS 加上一堆套裝軟體,類似 windows 跟 os x
這些作業系統的情況。

系統的部份如果沒有要最新版,可以用 freebsd-update 來更新

要追最新的變動的話,那就要把 /usr/src 更新到最新,然後把整個系統重編
(大版號跳動 8.x -> 9.x 要比較注意,同版本更新通常問題不大)
大致上的步驟是

cd /usr/src
make buildworld
make buildkernel
make installworld
make installkernel
mergemaster

有興趣的話使用手冊可以翻一下
http://www.freebsd.org/doc/handbook/updating-upgrading.html

: 至於kernel module的部分,我有在/boot/kernel找到*.ko
: 但我有點疑惑的是,雖然我有找到各個.ko的檔案
: 但是透過kldstat就只會看到一個名為kernel的module
: 要加上參數,即kldstat -v,才會看到內含的module
: 這樣我要怎麼移除(unload)這些內含的module呢?
: 謝謝!!

重編一個 kernel,但是要自訂,編出來的kernel 如果有 installkernel
的話會把原先的蓋掉,不過本來的 /boot/kernel/kernel 會放到
/boot/kernel.old/kernel,所以如果編出來的 kernel 不能正常運作
也不用擔心,開機的時候指定舊 kernel 即可

可以參考使用手冊這段
http://www.freebsd.org/doc/handbook/kernelconfig-building.html

--
Do you hear the people sing? Singing a song of Angry Birds.

--
Tags: BBS

All Comments

如何看已安裝套件?

Callum avatar
By Callum
at 2013-08-28T18:43
※ 引述《Kuster (克斯特)》之銘言: : 看了兩位前輩的說法,我想請教一下這樣的解讀是不是正確的: : FreeBSD的初始安裝直接包含了kernel與userspace所需的所有檔案 : 這些檔案均與package管理系統無關,也不被管控 : ports與pkg_*最終在安裝的時候會將紀錄留在同一個 ...

如何看已安裝套件?

Jessica avatar
By Jessica
at 2013-08-28T17:59
看了兩位前輩的說法,我想請教一下這樣的解讀是不是正確的: FreeBSD的初始安裝直接包含了kernel與userspace所需的所有檔案 這些檔案均與package管理系統無關,也不被管控 ports與pkg_*最終在安裝的時候會將紀錄留在同一個管理系統,即/var/db/pkg 這兩的差異只在於最終使 ...

如何看已安裝套件?

Damian avatar
By Damian
at 2013-08-28T12:01
※ 引述《Kuster (克斯特)》之銘言: : ※ 引述《pig (歡迎加入豬頭黨)》之銘言: : : ports 跟 pkg_* 安裝資訊都是丟到 /var/db/pkg 下面, : : 直接 ls 就可以看到裝過了什麼,你用 pkg_info 一樣可以看到, : : 基本上 pkg 的那些套件也是用 p ...

如何看已安裝套件?

Selena avatar
By Selena
at 2013-08-28T11:41
※ 引述《Kuster (克斯特)》之銘言: : ※ 引述《pig (歡迎加入豬頭黨)》之銘言: : : ports 跟 pkg_* 安裝資訊都是丟到 /var/db/pkg 下面, : : 直接 ls 就可以看到裝過了什麼,你用 pkg_info 一樣可以看到, : : 基本上 pkg 的那些套件也是用 p ...

如何看已安裝套件?

Lily avatar
By Lily
at 2013-08-28T11:09
※ 引述《pig (歡迎加入豬頭黨)》之銘言: : ports 跟 pkg_* 安裝資訊都是丟到 /var/db/pkg 下面, : 直接 ls 就可以看到裝過了什麼,你用 pkg_info 一樣可以看到, : 基本上 pkg 的那些套件也是用 ports 做出來的 : 補充說明一下,如果是新的 pkgng ...