|
|
※阅读文章※ |
Unix编程/应用问答中文版 ---11. package相关问题作者:不祥 [文章出自: www.fanqiang.com] 11. package相关问题 11.1 Solaris下如何将二进制软件包安装到指定目标路径下 11.2 Solaris下如何自己定制二进制安装包 11.3 如何恢复/usr/bin/su的缺省安装属性 11.4 如何获知指定包与其他包之间的依赖关系 11.5 Linux中如何知道ifconfig属于哪个包 11.6 Solaris下如何知道某包中有哪些文件 -------------------------------------------------------------------------- 11. package相关问题 11.1 Solaris下如何将二进制软件包安装到指定目标路径下 Q: pkgadd无法指定目标路径,而我不想使用缺省安装路径/usr/local A: lisuit@水木清华 2002-01-19 14:49 pkgadd -R <basedir> ... 11.2 Solaris下如何自己定制二进制安装包 A: deepin <deepin@nsfocus.com> & scz <scz@nsfocus.com> [root@ /tmp/tools]> mkdir srcroot [root@ /tmp/tools]> cp -p /usr/ccs/bin/as srcroot <-- 复制那些数据源到该目录下 [root@ /tmp/tools]> cp -p /usr/ccs/bin/make srcroot [root@ /tmp/tools]> cp -p /usr/ccs/lib/cpp srcroot [root@ /tmp/tools]> ls -lR srcroot -rwxr-xr-x 1 bin bin 342072 1999 1月 12 as* -rwxr-xr-x 1 bin bin 91344 1998 4月 27 cpp* -rwxr-xr-x 1 bin bin 273196 1998 4月 23 make* [root@ /tmp/tools]> cd srcroot [root@ /tmp/tools/srcroot]> find . -print | pkgproto > ../prototype [root@ /tmp/tools/srcroot]> cd .. [root@ /tmp/tools]> more prototype f none cpp 0755 bin bin f none as 0755 bin bin f none make 0755 bin bin [root@ /tmp/tools]> vi prototype <-- 在头部增加如下行 i pkginfo=./pkginfo [root@ /tmp/tools]> vi pkginfo PKG="Scz" NAME="Scz Package Cool Tools" VERSION="2000-01-09 14:53" CATEGORY="application" PSTAMP="小四" CLASSES="none" ARCH="Solaris 2.7 For SPARC" VENDOR="NSFocus" BASEDIR="/tmp/tools/opt/" EMAIL="scz@nsfocus.com" [root@ /tmp/tools]> pkgmk -o -f ./prototype -b /tmp/tools/srcroot [root@ /tmp/tools]> pkgtrans -s /var/spool/pkg /tmp/tools/SczPkg Scz [root@ /tmp/tools]> rm -rf /var/spool/pkg/Scz [root@ /tmp/tools]> pkgadd -d SczPkg [root@ /tmp/tools]> ls -lR opt -rwxr-xr-x 1 bin bin 342072 1999 1月 12 as* -rwxr-xr-x 1 bin bin 91344 1998 4月 27 cpp* -rwxr-xr-x 1 bin bin 273196 1998 4月 23 make* [root@ /tmp/tools]> pkginfo -l Scz [root@ /tmp/tools]> pkgrm Scz [root@ /tmp/tools]> rm SczPkg 11.3 如何恢复/usr/bin/su的缺省安装属性 Q: 我怀疑/usr/bin/su被修改过了,如何证实呢 A: John D Groenveld <groenvel@cse.psu.edu> $ pkgchk -l -p /usr/bin/su 11.4 如何获知指定包与其他包之间的依赖关系 A: Vitaly Filatov <vitaly@royint.com> 详细信息查看 /var/sadm/pkg/<package>/install/depend 文件,这里指明了该包的 三个特性 P 安装前必须已经存在的包 I 与自己不兼容的包 R 依赖自己的其他包 11.5 Linux中如何知道ifconfig属于哪个包 A: # rpm -qif /sbin/ifconfig <-- 直接查找src.rpm 11.6 Solaris下如何知道某包中有哪些文件 A: 小四 <scz@nsfocus.com> 2001-12-10 21:39 1) 已经安装了的包,对/var/sadm/install/contents文件做grep操作 # grep SUNWcsd /var/sadm/install/contents ~~~~~~~ 包名 2) 尚未安装的包,先伪安装,然后检查pkgmap文件 # pkgadd -s /var/spool/pkg -d less-340-sol7-sparc-local # cd /var/spool/pkg/GNUless # grep BASEDIR pkginfo <-- 确认BASEDIR目录,比如/usr/local # vi pkgmap <-- 注意第四列 # rm -rf /var/spool/pkg/GNUless 可以写个脚本完成这些工作。 文章加入时间: 2004-11-17 14:53:11 责任编辑: w9 (2329 人次查阅) |