[实践OK]FreeBSD中安装pkg,pkg_add已经改用pkg了,怎样查询一个文件属于哪个ports包,类似CentOS里面的rpm -qf file反查在哪你上rpm包里面一样的命令是pkg which /usr/local/lib/libicuio.so.58
FreeBSD下面检查某程序是不是包的形式安装的命令行:
pkg info #查看BSD系统中安装了哪些pkg包
pkg info lrzsz-0.12.20_4 #查看具体某个包信息
pkg info -l lrzsz-0.12.20_4 #查看此包有哪些文件
lrzsz-0.12.20_4:
/usr/local/bin/lrb
/usr/local/bin/lrx
/usr/local/bin/lrz
/usr/local/bin/lsb
/usr/local/bin/lsx
/usr/local/bin/lsz
/usr/local/man/man1/lrz.1.gz
/usr/local/man/man1/lsz.1.gz
/usr/local/share/licenses/lrzsz-0.12.20_4/GPLv2
/usr/local/share/licenses/lrzsz-0.12.20_4/LICENSE
/usr/local/share/licenses/lrzsz-0.12.20_4/catalog.mk
/usr/local/share/locale/de/LC_MESSAGES/lrzsz.mo
据下面的这个文件, /usr/local/share/locale/de/LC_MESSAGES/lrzsz.mo ,反查到到来自:rzsz-0.12.20_4,如下:
pkg which /usr/local/share/locale/de/LC_MESSAGES/lrzsz.mo
/usr/local/share/locale/de/LC_MESSAGES/lrzsz.mo was installed by package lrzsz-0.12.20_4
使用 pkg 包管理器来查找包含 libssl.so.9 的软件包:
pkg search libssl.so.9
删掉一些安装的软件包命令,-f强制:
sudo pkg delete -f <package_name>
好了,解决问题开始下:
pkg which /usr/lib/libssl.so.9
/usr/lib/libssl.so.9 was not found in the database
sudo pkg install openssl
sudo ldconfig -m /usr/local/lib
root@freebsd-unmp-10-10-0-237:~ # pkg_add -r wget
pkg_add: Command not found.
root@freebsd-unmp-10-10-0-237:~ # pkg install wget
The package management tool is not yet installed on your system.
Do you want to fetch and install it now? [y/N]: y
Bootstrapping pkg from pkg+http://pkg.FreeBSD.org/FreeBSD:13:amd64/quarterly, please wait...
Verifying signature with trusted certificate pkg.freebsd.org.2013102301... done
Installing pkg-1.16.3...
Extracting pkg-1.16.3: 100%
Updating FreeBSD repository catalogue...
Fetching meta.conf: 100% 163 B 0.2kB/s 00:01
Fetching packagesite.txz: 100% 6 MiB 407.3kB/s 00:16
Processing entries: 100%
FreeBSD repository update completed. 30360 packages processed.
All repositories are up to date.
Updating database digests format: 100%
The following 5 package(s) will be affected (of 0 checked):
New packages to be INSTALLED:
gettext-runtime: 0.21
indexinfo: 0.3.1
libidn2: 2.3.0_1
libunistring: 0.9.10_1
wget: 1.21
Number of packages to be installed: 5
The process will require 7 MiB more space.
1 MiB to be downloaded.
Proceed with this action? [y/N]:
摘自:http://www.ittang.com/2008/0309/4832.html
kg install pkg and let it bootstrap / upgrade itself. Then use pkg install foo, etc. pkg_add does not exist anymore, as you've found out.
man pkg
which Query the database for package(s) that installed a specific file.
pkg which /usr/local/lib/libicuio.so.58
/usr/local/lib/libicuio.so.58 was installed by package icu-58.2_2,1
#pkg which /usr/local/bin/openssl
/usr/local/bin/openssl was installed by package openssl-1.0.2l,1
来自:https://www.howtoing.com/pkg-command-examples-to-manage-packages-in-freebsd
附:从Ports存储库本地下载软件包
为了从Ports存储库本地下载软件包,而不在系统上安装软件包,请使用fetch开关运行pkg命令 。
下载的软件包二进制文件是压缩的.txz文件,可以在/ var / cache / pkg / system路径中找到。
# pkg fetch package_name
pkg info #查看BSD系统中安装了哪些pkg包
pkg info lrzsz-0.12.20_4 #查看具体某个包信息
pkg info -l lrzsz-0.12.20_4 #查看此包有哪些文件
lrzsz-0.12.20_4:
/usr/local/bin/lrb
/usr/local/bin/lrx
/usr/local/bin/lrz
/usr/local/bin/lsb
/usr/local/bin/lsx
/usr/local/bin/lsz
/usr/local/man/man1/lrz.1.gz
/usr/local/man/man1/lsz.1.gz
/usr/local/share/licenses/lrzsz-0.12.20_4/GPLv2
/usr/local/share/licenses/lrzsz-0.12.20_4/LICENSE
/usr/local/share/licenses/lrzsz-0.12.20_4/catalog.mk
/usr/local/share/locale/de/LC_MESSAGES/lrzsz.mo
据下面的这个文件, /usr/local/share/locale/de/LC_MESSAGES/lrzsz.mo ,反查到到来自:rzsz-0.12.20_4,如下:
pkg which /usr/local/share/locale/de/LC_MESSAGES/lrzsz.mo
/usr/local/share/locale/de/LC_MESSAGES/lrzsz.mo was installed by package lrzsz-0.12.20_4
使用 pkg 包管理器来查找包含 libssl.so.9 的软件包:
pkg search libssl.so.9
删掉一些安装的软件包命令,-f强制:
sudo pkg delete -f <package_name>
好了,解决问题开始下:
pkg which /usr/lib/libssl.so.9
/usr/lib/libssl.so.9 was not found in the database
sudo pkg install openssl
sudo ldconfig -m /usr/local/lib
root@freebsd-unmp-10-10-0-237:~ # pkg_add -r wget
pkg_add: Command not found.
root@freebsd-unmp-10-10-0-237:~ # pkg install wget
The package management tool is not yet installed on your system.
Do you want to fetch and install it now? [y/N]: y
Bootstrapping pkg from pkg+http://pkg.FreeBSD.org/FreeBSD:13:amd64/quarterly, please wait...
Verifying signature with trusted certificate pkg.freebsd.org.2013102301... done
Installing pkg-1.16.3...
Extracting pkg-1.16.3: 100%
Updating FreeBSD repository catalogue...
Fetching meta.conf: 100% 163 B 0.2kB/s 00:01
Fetching packagesite.txz: 100% 6 MiB 407.3kB/s 00:16
Processing entries: 100%
FreeBSD repository update completed. 30360 packages processed.
All repositories are up to date.
Updating database digests format: 100%
The following 5 package(s) will be affected (of 0 checked):
New packages to be INSTALLED:
gettext-runtime: 0.21
indexinfo: 0.3.1
libidn2: 2.3.0_1
libunistring: 0.9.10_1
wget: 1.21
Number of packages to be installed: 5
The process will require 7 MiB more space.
1 MiB to be downloaded.
Proceed with this action? [y/N]:
摘自:http://www.ittang.com/2008/0309/4832.html
kg install pkg and let it bootstrap / upgrade itself. Then use pkg install foo, etc. pkg_add does not exist anymore, as you've found out.
man pkg
which Query the database for package(s) that installed a specific file.
pkg which /usr/local/lib/libicuio.so.58
/usr/local/lib/libicuio.so.58 was installed by package icu-58.2_2,1
#pkg which /usr/local/bin/openssl
/usr/local/bin/openssl was installed by package openssl-1.0.2l,1
来自:https://www.howtoing.com/pkg-command-examples-to-manage-packages-in-freebsd
附:从Ports存储库本地下载软件包
为了从Ports存储库本地下载软件包,而不在系统上安装软件包,请使用fetch开关运行pkg命令 。
下载的软件包二进制文件是压缩的.txz文件,可以在/ var / cache / pkg / system路径中找到。
# pkg fetch package_name
作者:jackxiang@向东博客 专注WEB应用 构架之美 --- 构架之美,在于尽态极妍 | 应用之美,在于药到病除
地址:http://jackxiang.com/post/10436/
版权所有。转载时必须以链接形式注明作者和原始出处及本声明!
最后编辑: jackxiang 编辑于2024-3-12 19:23
评论列表