Sun Solaris 培训教材 (八) . 软件包管理
1.pkginfo 显示软件包信息
命令格式: pkginfo -d[ device|pathname] -l pkg_name
例子:
这三个域为:
pkg_category
软件包种类,可为application,graphics 或system.
pkg_name
软件包名字,如为SUN产品则机SUNW 起 头.
Description
软件产品的简单说明.
例子:
# pkginfo -d /cdrom/solaris_2_2/s0/Solaris_2.2 |more
利用pkginfo -l 命令显示关于软件包的详细信息,包括软件包的大小(按硬盘块大小
计算).
# pkginfo -d /cdrom/solaris_2_2/s0/Solaris_2.2 -l SUNWaudio
上面输出的最后一行指示软件包的大小. 利用此信息和df -k命令来确定你是否拥有足
够硬盘空间来安装此软件包.
2. pkgadd 增加软件包
利用pkgadd 命令增加软件包,当软件包被成功地安装以后,向root发送一个邮件.
命令格式:
pkgadd -d [device | pathname] pkg_name
例子:
# pkgadd -d /cdrom/solaris_2_2/s0/Solaris_2.2 SUNWaudio
3.pkgchk 校验软件包的安装
pkgchk命令通过将软件包的属性及路径名内容与系统记录文件中的值进行对比来校验.
命令格式:
pkgchk [-p path1 [path2...]]
此命令可以检查整个软件包或通过指定-p选项对一特殊路径名进行检查,无输出则意味
着没有问题被检查出.
由于/etc/group 文件大小已被改变,所以文件内容的checksum就不对.
考察软件包信息
pkgadd命令更新文件/var/sadm/install/contents、 此文件为系统中所有已安装软件包
的记录文件.
没有简单的方法来确定某软件包具有某一特殊文件(或命令).
对于已安装的软件包,从/var/sadm/install/contents 记录文件中查找此软件包的路径
名.
4.pkgrm 删除软件包
命令格式: pkgrm pkgname1 pkgname2 …
在调用pkgrm 命令后,将向你警告有依赖关系的软件包信息,并提供放弃此操作的提示.
当软件包被成功地删除后,向root发送一个邮件.
pkgrm命令通过文件/var/sadm/install/contents 来确定软件包的地址,并且当软件包
被删除以后,更新此文件.
假如此软件包被两个或更多的包共享,则一定得将这些依赖于此包的所有软件包删除以
后才删除此软件包.
5.spooling 软 件 包
一个软件包可以由安装CD-ROM中拷贝过来存放在系统中,但并没有安装此软件包.
例如,一个服务器可以拷贝存储一个软件包,一个没有CD-ROM设备的系统可以从服务器
上挂接此软件包,用以安装.
软件包也可以利用Software Manager远程安装,暂 略.
服务器
下面两个pkgadd命令用以说明如何spool一个软件包到/var/spool/pkg目录下或到一个你指
定的目录下.pkgadd命令的-s spool选项会缺省地将软件包拷贝到/var/spool/pkg目录下.
你可以指定一个目录作为-s选项的参数.
客户
假如服务器共享了/export/pkgs目录,则客户系统可以挂接目录/export/pkgs并安装
软件包.
# mkdir /export/pkgs
# mount venus:/export/pkgs /export/pkgs
# pkgadd -d /export/pkgs SUNWaudio
删除Spooled软件包
在服务器上可以利用-s选项从spooling目录中删除一个软件包.
# pkgrm -s /export/pkgs SUNWaudio
与软件包管理有关的文件和目录
/var/sadm
包含系统记录文件和管理文件的目录
/opt/pkgname
安装未随操作系统一起提供的、名为pkgname的软件包的推荐目录.
/opt/pkgname/bin
/opt/bin
未随操作系统一起提供的、名为pkgname的执行文件的推荐目录.
var/opt/pkgname
/etc/opt/pkgname
未随操作系统一起提供的、名为pkgname的记录文件的推荐目录.
/var/sadm/install/contents
整个系统的软件包映象.