软件安装
列出已安装过的软件包
# rpm -qa # 列出已安装过的软件包(RH, SuSE, 基于 RPM 的) # dpkg -l # Debian, Ubuntu # pkg_info # 列出所有已安装过的软件包(FreeBSD) # pkg_info -W smbd # 查看 smbd 安装了那些软件包(FreeBSD) # pkginfo # Solaris
添加/删除软件
前端界面:SuSE 为 yast2/yast,Red Hat 为 redhat-config-packages。
# rpm -i pkgname.rpm # 安装软件包(RH, SuSE, 基于 RPM 的) # rpm -e pkgname # 删除软件包
Debian
# apt-get update # 更新源列表 # apt-get install emacs # 安装 emacs 软件包 # dpkg --remove emacs # 删除 emacs 软件包 # dpkg -S file # 查找拥有该 file 的软件包
Gentoo
Gentoo 使用 emerge 作为 “Portage” 软件包管理系统的核心。
# emerge --sync # 同步更新本地 protage 树 # emerge -u packagename # 安装或更新一个软件包 # emerge -C packagename # 删除软件包 # revdep-rebuild # 修复依赖关系的缺失
Solaris
/cdrom/cdrom0
.
# pkgadd -d/Solaris_9/Product SUNWgtar # pkgadd -d SUNWgtar # 添加下载的软件包(先要 bunzip2) # pkgrm SUNWgtar # 删除软件包
FreeBSD
# pkg_add -r rsync # 获取并安装 rsync # pkg_delete /var/db/pkg/rsync-xx # 删除 rsync 软件包
可使用 PACKAGESITE
环境变量来设置哪里可以获取软件包。举个例子:
# export PACKAGESITE=ftp://ftp.freebsd.org/pub/FreeBSD/ports/i386/packages/Latest/ # or ftp://ftp.freebsd.org/pub/FreeBSD/ports/i386/packages-6-stable/Latest/
FreeBSD ports
Port 树 /usr/ports/
是一个准备编译和安装的软件集。可用 portsnap
工具来跟新 port。
# portsnap fetch extract # 当第一次运行这个命令,会创建 port 树 # portsnap fetch update # 跟新 port 树 # cd /usr/ports/net/rsync/ # 选择软件安装目录 # make install distclean # 安装并清理(也可看 man ports) # make package # Make 一个二进制软件包
库路径
由于复杂的依赖关系和运行时链接,程序难于分发或拷贝到其他系统。不过对于较少依赖关系的小程序,缺失的库可被拷贝过去。运行时库(即缺失的库)可用 ldd
和 ldconfig
来检查和管理。
# ldd /usr/bin/rsync # 列出所有所需的运行时库 # ldconfig -n /path/to/libs/ # 添加一个路径到共享库目录Add a path to the shared libraries directories # ldconfig -m /path/to/libs/ # FreeBSD # LD_LIBRARY_PATH # 设置连接库路径的环境变量
原创文章,作者:ItWorker,如若转载,请注明出处:https://blog.ytso.com/59171.html