歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Unix知識 >> 關於Unix >> Solairs中軟件包管理

Solairs中軟件包管理

日期:2017/2/28 11:12:19   编辑:關於Unix


軟件安裝包的兩種格式
1. 標准的文件系統格式:軟件包按目錄存放,軟件包名字即目錄的名字,目錄中包含多個文件和子目錄。
2. 數據流格式:軟件包以單個文件的行式出現,所有內容以數據流的格式存在文件中
查看軟件安裝包的內容
1、標准格式的軟件包用ls查看
# pwd
/cdrom/sol_10_305_x86/s2/Solaris_10/Product
# ls -l SUNWadmr
總數 16
drwxr-xr-x 2 root staff 2048 2005 1月 23 archive
drwxr-xr-x 2 root staff 2048 2005 1月 23 install
-rw-r–r– 1 root staff 508 2005 1月 10 pkginfo
-rw-r–r– 1 root staff 1424 2005 1月 10 pkgmap
drwxr-xr-x 5 root staff 2048 2005 1月 23 reloc
2、查看數據流格式的安裝包
# file top-3.6.1-sol10-x86-local
top-3.6.1-sol10-x86-local: 軟件包數據流
# head top-3.6.1-sol10-x86-local
# PaCkAgE DaTaStReAm —-這行表明是數據流格式
SMCtop 1 478 —-軟件包的名字
# end of header
NAME=top
ARCH=x86
VERSION=3.6.1
CATEGORY=application
VENDOR=LeFebvre et al
PSTAMP=Steve Christensen
包格式進行轉化
Pkgtrans命令格式:pkgtrans source destination pkg1 pkg2
1、標准的文件系統格式轉換數據流格式
# pwd
/cdrom/sol_10_305_x86/s2/Solaris_10/Product
# pkgtrans . /tmp/stream.pkg SUNWkladm SUNWkleu SUNWkleue (“.”這個別忘了噢)
Transferring package instance
Transferring package instance
Transferring package instance
# file /tmp/stream.pkg
/tmp/stream.pkg: 軟件包數據流
# head /tmp/stream.pkg
# PaCkAgE DaTaStReAm
SUNWkladm 1 93
SUNWkleu 1 5202
SUNWkleue 1 1014
# end of header
NAME=Korean localization for Locale Administrator
SUNW_PRODVERS=5.10
VERSION=1.1,REV=2004.12.27.16.30
ARCH=i386
MAXINST=1000
2、數據流到標准化
提取一個軟件包
# pkgtrans /tmp/stream.pkg /tmp SUNWkladm
Transferring package instance
# cd /tmp
# ls
SUNWkladm iconf_entries.254 speckeysd.lock stream.pkg
# pkgtrans /tmp/stream.pkg /tmp all 全部提取
查看軟件包信息
Pkginfo命令格式:pkginfo <-d pkgname> <–l specific-software>
說明:specific-software為軟件包名
查看系統安裝包的總數(兩種方法)
# ls /var/sadm/pkg |wc –l /var/sadm/pkg保留了一條已經安裝包記錄
975
# pkginfo | wc -l
975
# pkginfo -d top-3.6.1-sol10-x86-local
application SMCtop top
# pkginfo -d top-3.6.1-sol10-x86-local -l SMCtop
PKGINST: SMCtop
NAME: top
CATEGORY: application
ARCH: x86
VERSION: 3.6.1
BASEDIR: /usr/local
VENDOR: LeFebvre et al
PSTAMP: Steve Christensen
STATUS: spooled
FILES: 19 spooled pathnames
7 directories
3 executables
2 package information files
459 blocks used (approx)
安裝軟件包
在默認情況下,pkgadd命令會查看/var/spool/pkg目錄中是否有標准格式軟件包並列出。
# pkgadd
pkgadd: ERROR: no packages were found in
如果標准軟件包在其他目錄中(非/var/spool/pkg)可用-d選項
# pkgadd -d /tmp
The following packages are available:
1 SUNWkladm Korean localization for Locale Administrator
(i386) 1.1,REV=2004.12.27.16.30
2 SUNWkleu Korean Language Environment user files
(i386) 10.0,REV=2004.11.27.13.39
直接安裝流格式軟件包
# pkgadd -d top-3.6.1-sol10-x86-local
檢查已安裝的軟件包
檢查系統安裝以來,所有變動的文件
# pkgchk
ERROR: /boot/solaris/bootargs.rc
modtime <01/22/05 上午06時19分09秒> expected <02/17/08 下午12時56分00秒> actual
file size <83> expected <0> actual
file cksum <5909> expected <0> actual
<……>
查看特定軟件包的變動情況
# pkgchk SUNWbash
刪除軟件包
Pkgrm命令,具體可以man pkgrm查看使用方法
提醒:pkgadd和pkgrm在安裝和刪除軟件包時,都會更新/var/sadm/install/contents中的內容.
Copyright © Linux教程網 All Rights Reserved