0°

Linux常用工具命令之软件安装

15.1 列出已安装过的软件包


$ rpm -qa	//列出已安装过的软件包(RH,SuSE,基于RPM的)
$ dpkg -l	//Debian,Ubuntu
$ pkg_info	//列出所有已安装过的软件包(FreeBSD)
$ pkg_info -W smbd	//查看smbd安装了那些软件包(FreeBSD)
$ pkginfo	//Solaris

15.2 添加/删除软件

前端界面: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一个二进制软件包

15.3 库路径

由于复杂的依赖关系和运行时链接,程序难于分发或拷贝到其他系统.不过对于较少依赖关系的小程序,缺失的库可被拷贝过去.运行时库(即缺失的库)可用ldd和ldconfig来检查和管理.


$ ldd /usr/bin/rsync	//列出所有所需的运行时库
$ ldconfig -n /path/to/libs/	//添加一个路径到共享库目录
$ ldconfig -m /path/to/libs/	//FreeBSD
$ LD_LIBRARY_PATH	//设置连接库路径的环境变量
「点点赞赏,手留余香」

    还没有人赞赏,快来当第一个赞赏的人吧!
0 条回复 A 作者 M 管理员
    所有的伟大,都源于一个勇敢的开始!
欢迎您,新朋友,感谢参与互动!欢迎您 {{author}},您在本站有{{commentsCount}}条评论