1.
在HP-UX系统上软件用Hewlett-Packand软件包发布器管理(通常叫做SD-UX)。
它不是一套命令和工具集,而是定义了如何对软件打包、捆绑、拷贝、安装和删除的系统。
SD-UX是基于IEEE软件发布标准的,它提供了很多用于安装、删除、列表和确认软件的命令。
SD=UX用于管理和发布操作系统、应用程序和HP-UX补丁。
在一个网络中,SD-UX可以用于建立一个集中的软件服务器。
SD-UX的主要功能:
- 安装软件
- 删除软件
- 列出已安装软件
- 确认已安装软件
- 拷贝和打包软件
- 配置软件
2.
SD-UX既可以用在GUI也可以用在TUI,通过命令行参数也可以不使用任何接口。
3.
软件包结构:
在SD-UX中软件被组织成一个部件或对象的层次结构。
这些部件是文件集、子产品、产品和包。
这些部件的存储位置叫做软件仓库。
- 文件集:一个文件集是文件和一些控制脚本的集合,是软件包层次结构中基本的条目。一个文件集只能属于一个产品但是它可以包含在很多子产品和包中。
- 子产品:如果一个产品包含多个文件集,最好把逻辑相关的文件集组合到一个子产品中。一个文件集可以是多个子产品的成员。
- 产品:产品是文件集和(或)子产品的超集。缺省时,SD-UX用于处理产品。
- 包:包一般由HP-UX打包用于软件的发布。包包含属于不同产品的文件集。一个产品不必再一个包中,因为包可以有不同产品的部分。与软件维护相关的操作可以在包上作为一个条目来完成。
- 软件仓库:软件仓库是文件集、产品和包的存放位置。一个软件仓库可以是用于发布软件的磁盘上的目录,如一个CD-ROM或磁带。缺省的软件仓库目录是/var/spool/sw。可以使用任何一个目录作为软件仓库,同一个服务器上为不同的应用程序提供多个软件仓库是可能的。
4.
列出已安装的软件:
swlist用于列出软件。
- swlist -l bundel 只列出包
- swlist -l products 只列出产品
- swlist -l fileset 列出文件集
- swlist -d @ /var/spool/sw 列出软件仓库.var/spool/sw中的软件
- swlist -l file X11 列出所有X11产品中的文件
- swlist -d @ hp1:/mydepot 列出主机hp1上名为mydepot的软件仓库中的软件
swlist也可以用于列出大小,修订本和开发商信息等属性。
5.
安装新软件:
swinstall用于软件安装。
根据你的终端类型,这个命令在文本或者图形接口中启动。
如果你想从一个特定的软件仓库安装,可以在命令行借助-s开关声明软件源。
例如,为了从一个磁带驱动器安装软件:swinstall -s /dev/rmt/0m
swinstall命令的所有动作都被记录在/var/adm/sw/swinstall.log文件中。
日志文件中包括一些标志:
- ======== 表示一个任务的开始和或结束
- ERROR 表示了一个导致不可能安装的严重错误
- WARNING 表示虽然安装完成,但可能有一些错误
- NOTE 所有信息都放在这个标志下。大多数时候可以忽略这些消息
软件安装过程被swagentd守护进程控制。
如果这个守护进程没有运行,就不能开始软件的安装过程。
SD-UX守护进程在运行级2启动,如果你在一个单用户模式,就不能安装软件。
但可以使用命令启动守护进程:/sbin/init.d/swagentd start
HP-UX维护一个所有已安装软件的数据库(IPD)。
在分析阶段,swinstall使用这个数据库赖检查已安装的软件,swlist列出已安装软件。
swremove命令删除时,这个数据库升级来反映被删除的软件。
SD-UX命令负责维护这个保存在/var/adm/sw/products目录结构中的数据库。
6.
删除软件:
swremove命令用于从HP-UX系统删除软件。
它有着和swinstall相同的界面。
一旦软件删除开始,SD-UX检查相关的软件并删除所有在被选择的软件中且没有被其他任何产品和包使用的文件。
它通过删除软件来更新PID。
只通过删除软件所在目录并不能删除该软件,事实上,手工地删除这个目录可能导致问题。因为软件条目始终保持在PID中,尽管你已经删除了这个文件,但是系统认为它们仍然存在。当SD-UX检查相关软件时可能影响其它软件安装或删除过程。
软件的删除过程记录在/var/adm/sw/swremove.log文件中。
freedisk命令用于列出并删除已经很长时间没有使用的软件。在分析了文件集之后,该命令激活swremove命令来交互地删除包。
7.
确认以安装的软件:
swverify命令用于确认一个安装在系统中或软件仓库中的软件。
它检查文件的存在性和完整性及在一个软件包中的附属文件。包括执行软件的脚本。
当使用-d时,它操作一个软件仓库而非一个已安装软件。
如果软件确认成功它返回一个等于0的代码。
这个命令的日志记录在/var/adm/sw/swverify/log,它可以检查任何错误消息。
8.
管理软件仓库:
大型网络通过建立软件仓库避免在每台机器上使用安装安装介质。
软件仓库可以在磁盘上任何目录中创建。缺省软件仓库的位置是:/var/spool/sw。
磁带软件仓库可以使用swpackage命令创建。每次只能有一个命令可以访问磁带软件仓库。
swcopy -s /dev/rmt/0m @ /var/spool/sw 从一个磁带驱动器拷贝所有的产品到缺省软件仓库
swremove -d * @ /var/spool/sw 从缺省的软件仓库中删除所有软件
swlist -d @ /dev/rmt/0m 列出本地磁带中的内容
9.
HP-UX补丁:
- 给HP-UX操作系统或产品添加新的功能
- 添加对新硬件的支持
- 修补操作系统和应用程序的漏洞
补丁文件由PH开头,后面两个字符表示补丁类型:
- 命令补丁:其类型字段为CO
- 内核补丁:其类型字段为KL
- 网络补丁:其类型字段为NE
- 子系统补丁:其类型字段为SS(包括其他类型的补丁)
例如:PHCO_16423
10.
列出补丁:
- swlist -l product PH* #HP-UX 10.x
- swlist -l patch '*.*,c=patch' 或 swlist -l patch #HP-UX 11.00
安装和删除补丁:
- 获取补丁:HTTP或FTP下载等
- unshare补丁:sh PHCO_15220
- 生成补丁仓库:swcopy -s PHCO_15520.depot PHCO_15520 @ /var/spool/sw
- 安装补丁:swinstall -s /var/spool/sw显示一个列表选择安装
- 删除补丁:同软件一样是借助swremove来完成的
11.
SD-UX命令总结:
swinstall 安装软件
swremove 删除已安装软件;从仓库中删除软件
swlist 列出所有已安装或在仓库中的软件
swcopy 拷贝软件部件到软件仓库
swpackage 打包仓库中的软件
swreg 使软件仓库对于网络上的其他系统可见
swverify 确认已安装软件的完整性
swagentd SD-UX守护进程
swagent SD-UX代理
swacl 控制对软件的访问
swconfig 配置已安装的软件