天天看点

Linux全攻略--软件包管理

1.RPM包管理

1)RPM软件包查询命令参数集合

格式:rpm {-q|--query}[select-option][query-options]

-p<file>:查询软件包的文件.

-f<file>:查询<FILE>属于哪个软件包

-g<group>:查询属于<GROUP>组的软件包.

<null>:显示软件包的全部标识.

-i:显示软件包的概要信息

-l:显示软件包中的文件列表.

-c:显示配置文件列表

-d:显示文档文件列表.

-s:显示软件包中文件列表和其状态

--queryformat(--qf):以用户指定的方式显示查询信息.

--dump:显示每个文件的所有的已校验信息

--provides:显示软件包提供的功能

--requires(-R):显示软件包所需的功能

下面看例子:

查询文件所属软件包.

查询软件包所包含的文件列表

查询软件包概要信息

查询所有已经安装的软件包

RPM软件包的安装

软件包查询完成后,就可以进行软件的实际安装了.使用还参数-i的RPM命令可以实现安装.

rpm -i (or --install) options file1.rpm..fileN.rpm

参数:

-h:安装时输出hash记号("#")

--test:只对安装进行测试,并不实际安装.

--percent:以百分比的形式输出安装的进度

--excludedocs:不安装软件包中的文档文件

--includedocs:安装文档

--replacekgs:强制重新安装已经安装的软件包.

--replacefiles:替换属于其它软件包的文件.

--force:忽略软件包和文件的冲突

--ignoreos:不检查软件包运行的操作系统

--nodeps:不检查依赖关系

下面看例子

这个是强制安装

安装当前目录下的软件包,显示安装过程的详细信息,采用一般的安装参数ivh,表示显示附加信息和安装进度的#符号的安装方式.

RPM软件包的卸载

#rpm -e tools.rpm

RPM软件包的升级

应使用带-U参数命令完成

格式:#rpm -U options file1.rpm ...fileN.rpm

如下面:#rpm -Uvh tools.rpm

RPM软件包的验证

验证软件包是通过比较已经安装的文件和软件包的原始文件信息来进行的,验证主要是比较文件的尺寸,MD5校验码,文件权限,类型,属主和用户组等.RPM采用带参数-V的命令来验证的.

如果不同便会显示missing ...

这是验证单个软件包

这是/bin/vi文件的正确性

验证所有已安装的软件包.

TAR包管理

TAR命令是在LINUX下最常用的文件打包工具,可以将若干个文件或苦干个目录下打包成一个文件,既有得于文件管理,也方便压缩和文件的网络传输.

使用语法:tar [主选项+辅选项]文件或目录

参数

-A或--catenate   新增温暖件到已存在的备份文件。

  -b<区块数目>或--blocking-factor=<区块数目>   设置每笔记录的区块数目,每个区块大小为12Bytes。

  -B或--read-full-records   读取数据时重设区块大小。

  -c或--create   建立新的备份文件。

  -C<目的目录>或--directory=<目的目录>   切换到指定的目录。

  -d或--diff或--compare   对比备份文件内和文件系统上的文件的差异。

  -f<备份文件>或--file=<备份文件>   指定备份文件。

  -F<Script文件>或--info-script=<Script文件>   每次更换磁带时,就执行指定的Script文件。

  -g或--listed-incremental   处理GNU格式的大量备份。

  -G或--incremental   处理旧的GNU格式的大量备份。

  -h或--dereference   不建立符号连接,直接复制该连接所指向的原始文件。

  -i或--ignore-zeros   忽略备份文件中的0 Byte区块,也就是EOF。

  -k或--keep-old-files   解开备份文件时,不覆盖已有的文件。

  -K<文件>或--starting-file=<文件>   从指定的文件开始还原。

  -l或--one-file-system   复制的文件或目录存放的文件系统,必须与tar指令执行时所处的文件系统相同,否则不予复制。

  -L<媒体容量>或-tape-length=<媒体容量>   设置存放每体的容量,单位以1024 Bytes计算。

  -m或--modification-time   还原文件时,不变更文件的更改时间。

  -M或--multi-volume   在建立,还原备份文件或列出其中的内容时,采用多卷册模式。

  -N<日期格式>或--newer=<日期时间>   只将较指定日期更新的文件保存到备份文件里。

  -o或--old-archive或--portability   将资料写入备份文件时使用V7格式。

  -O或--stdout   把从备份文件里还原的文件输出到标准输出设备。

  -p或--same-permissions   用原来的文件权限还原文件。

  -P或--absolute-names   文件名使用绝对名称,不移除文件名称前的"/"号。

  -r或--append   新增文件到已存在的备份文件的结尾部分。

  -R或--block-number   列出每个信息在备份文件中的区块编号。

  -s或--same-order   还原文件的顺序和备份文件内的存放顺序相同。

  -S或--sparse   倘若一个文件内含大量的连续0字节,则将此文件存成稀疏文件。

  -t或--list   列出备份文件的内容。

  -T<范本文件>或--files-from=<范本文件>   指定范本文件,其内含有一个或多个范本样式,让tar解开或建立符合设置条件的文件。

  -u或--update   仅置换较备份文件内的文件更新的文件。

  -U或--unlink-first   解开压缩文件还原文件之前,先解除文件的连接。

  -v或--verbose   显示指令执行过程。

  -V<卷册名称>或--label=<卷册名称>   建立使用指定的卷册名称的备份文件。

  -w或--interactive   遭遇问题时先询问用户。

  -W或--verify   写入备份文件后,确认文件正确无误。

  -x或--extract或--get  从备份文件中还原文件。

  -X<范本文件>或--exclude-from=<范本文件>  指定范本文件,其内含有一个或多个范本样式,让ar排除符合设置条件的文件。

  -z或--gzip或--ungzip   通过gzip指令处理备份文件。

  -Z或--compress或--uncompress   通过compress指令处理备份文件。

  -<设备编号><存储密度>   设置备份用的外围设备编号及存放数据的密度。

  --after-date=<日期时间>   此参数的效果和指定"-N"参数相同。

  --atime-preserve   不变更文件的存取时间。

  --backup=<备份方式>或--backup   移除文件前先进行备份。

  --checkpoint   读取备份文件时列出目录名称。

  --concatenate   此参数的效果和指定"-A"参数相同。

  --confirmation   此参数的效果和指定"-w"参数相同。

  --delete   从备份文件中删除指定的文件。

  --exclude=<范本样式>   排除符合范本样式的问家。

  --group=<群组名称>   把加入设备文件中的文件的所属群组设成指定的群组。

  --help   在线帮助。

  --ignore-failed-read   忽略数据读取错误,不中断程序的执行。

  --new-volume-script=<Script文件>   此参数的效果和指定"-F"参数相同。

  --newer-mtime   只保存更改过的文件。

  --no-recursion   不做递归处理,也就是指定目录下的所有文件及子目录不予处理。

  --null   从null设备读取文件名称。

  --numeric-owner   以用户识别码及群组识别码取代用户名称和群组名称。

  --owner=<用户名称>   把加入备份文件中的文件的拥有者设成指定的用户。

  --posix   将数据写入备份文件时使用POSIX格式。

  --preserve      此参数的效果和指定"-ps"参数相同。

  --preserve-order      此参数的效果和指定"-A"参数相同。

  --preserve-permissions      此参数的效果和指定"-p"参数相同。

  --record-size=<区块数目>      此参数的效果和指定"-b"参数相同。

  --recursive-unlink   解开压缩文件还原目录之前,先解除整个目录下所有文件的连接。

  --remove-files   文件加入备份文件后,就将其删除。

  --rsh-command=<执行指令>   设置要在远端主机上执行的指令,以取代rsh指令。

  --same-owner   尝试以相同的文件拥有者还原问家你。

  --suffix=<备份字尾字符串>   移除文件前先行备份。

  --totals   备份文件建立后,列出文件大小。

  --use-compress-program=<执行指令>   通过指定的指令处理备份文件。

  --version   显示版本信息。

  --volno-file=<编号文件>   使用指定文件内的编号取代预设的卷册编号。

创建tar文件

主参数选项是C,并指明创建tar文件名.

显示当前目录下的文件信息.

将该目录下的两个文件打包成gong.tar.

可看见结果.

这是将目录下的所有文件打包

显示tar文件内容

用带t参数的命令

从tar文件中取出文件

用带-x的命令.

对当前目录下的文件解包

LINUX下常用的压缩工具

LINUX下的压缩工具有很多,下面列出常用的压缩工具和其产生文件的后缀

gzip/guzip:后缀名为.gz

compress/uncompress:后缀名为.Z

zip/unzip:后缀名为.zip

bzip2/bunzip2:后缀名为.bz2

lha:后缀名为.lzh

常用字的包括gzip.zip和bzip2三种.

gzip压缩工具

对文件进行压缩的目的有两个:一是可以减少存储空间,二是通过网络传输文件时,可以减少传输的网络开销.gzip是LINUX最常用的软件压缩工具,

gzip[选项]压缩或解压缩的文件名

-a或--ascii  使用ASCII文字模式。 

-c或--stdout或--to-stdout  把压缩后的文件输出到标准输出设备,不去更动原始文件。 

-d或--decompress或----uncompress  解开压缩文件。 

-f或--force  强行压缩文件。不理会文件名称或硬连接是否存在以及该文件是否为符号连接。 

-h或--help  在线帮助。 

-l或--list  列出压缩文件的相关信息。 

-L或--license  显示版本与版权信息。 

-n或--no-name  压缩文件时,不保存原来的文件名称及时间戳记。 

-N或--name  压缩文件时,保存原来的文件名称及时间戳记。 

-q或--quiet  不显示警告信息。 

-r或--recursive  递归处理,将指定目录下的所有文件及子目录一并处理。 

-S<压缩字尾字符串>或----suffix<压缩字尾字符串>  更改压缩字尾字符串。 

-t或--test  测试压缩文件是否正确无误。 

-v或--verbose  显示指令执行过程。 

-V或--version  显示版本信息。 

-<压缩效率>  压缩效率是一个介于1-9的数值,预设值为"6",指定愈大的数值,压缩效率就会愈高。 

--best  此参数的效果和指定"-9"参数相同。 

--fast  此参数的效果和指定"-1"参数相同。

压缩当前目录下的所有文件,并且显示压缩比,显示已经替代原来的文件.

可看到压缩了的文件

对当前目录下所有压缩的文件解压,并列出详细的信息.

显示压缩文件的内容信息,可以带-l参数的命令显示gz文件的内容.只是显示文件内容,并不实际解压缩文件.

在这个处理过程中系统先将苦干文件或文件夹打包成.tar,然后将生成的文件压缩成.tar.gz文件.

可看下压缩的结果

zip/unzip命令

zip程序位于/usr/bin目录中,可将文件压缩成.zip文件以节省硬盘空间.

zip[选项]压缩后文件名 待压缩文件或文件夹

参  数:

  -A   调整可执行的自动解压缩文件。

  -b<工作目录>   指定暂时存放文件的目录。

  -c   替每个被压缩的文件加上注释。

  -d   从压缩文件内删除指定的文件。

  -D   压缩文件内不建立目录名称。

  -f   此参数的效果和指定"-u"参数类似,但不仅更新既有文件,如果某些文件原本不存在于压缩文件内,使用本参数会一并将其加入压缩文件中。

  -F   尝试修复已损坏的压缩文件。

  -g   将文件压缩后附加在既有的压缩文件之后,而非另行建立新的压缩文件。

  -h   在线帮助。

  -i<范本样式>   只压缩符合条件的文件。

  -j   只保存文件名称及其内容,而不存放任何目录名称。

  -J   删除压缩文件前面不必要的数据。

  -k   使用MS-DOS兼容格式的文件名称。

  -l   压缩文件时,把LF字符置换成LF+CR字符。

  -ll   压缩文件时,把LF+CR字符置换成LF字符。

  -L   显示版权信息。

  -m   将文件压缩并加入压缩文件后,删除原始文件,即把文件移到压缩文件中。

  -n<字尾字符串>   不压缩具有特定字尾字符串的文件。

  -o   以压缩文件内拥有最新更改时间的文件为准,将压缩文件的更改时间设成和该文件相同。

  -q   不显示指令执行过程。

  -r   递归处理,将指定目录下的所有文件和子目录一并处理。

  -S   包含系统和隐藏文件。

  -t<日期时间>   把压缩文件的日期设成指定的日期。

  -T   检查备份文件内的每个文件是否正确无误。

  -u   更换较新的文件到压缩文件内。

  -v   显示指令执行过程或显示版本信息。

  -V   保存VMS操作系统的文件属性。

  -w   在文件名称里假如版本编号,本参数仅在VMS操作系统下有效。

  -x<范本样式>   压缩时排除符合条件的文件。

  -X   不保存额外的文件属性。

  -y   直接保存符号连接,而非该连接所指向的文件,本参数仅在UNIX之类的系统下有效。

  -z   替压缩文件加上注释。

  -$   保存第一个被压缩文件所在磁盘的卷册名称。

  -<压缩效率>   压缩效率是一个介于1-9的数值。

显示压缩过程中每个文件的压缩比,-r表示递归压缩子目录下所有文件

看下结果.

用带-v参数选项可以查看zip文件的内容

用带-d的参数选项删除某个文件.

用unzip命令解压缩文件

unzip[参数选项]压缩文件名.zip

  -c   将解压缩的结果显示到屏幕上,并对字符做适当的转换。

  -f   更新现有的文件。

  -l   显示压缩文件内所包含的文件。

  -p   与-c参数类似,会将解压缩的结果显示到屏幕上,但不会执行任何的转换。

  -t   检查压缩文件是否正确。

  -u   与-f参数类似,但是除了更新现有的文件外,也会将压缩文件中的其他文件解压缩到目录中。

  -v   执行是时显示详细的信息。

  -z   仅显示压缩文件的备注文字。

  -a   对文本文件进行必要的字符转换。

  -b   不要对文本文件进行字符转换。 

  -C   压缩文件中的文件名称区分大小写。

  -j   不处理压缩文件中原有的目录路径。

  -L   将压缩文件中的全部文件名改为小写。

  -M   将输出结果送到more程序处理。

  -n   解压缩时不要覆盖原有的文件。

  -o   不必先询问用户,unzip执行后覆盖原有文件。

  -P<密码>   使用zip的密码选项。

  -q   执行时不显示任何信息。

  -s   将文件名中的空白字符转换为底线字符。

  -V   保留VMS的文件版本信息。

  -X   解压缩时同时回存文件原来的UID/GID。

  [.zip文件]   指定.zip压缩文件。

  [文件]   指定要处理.zip压缩文件中的哪些文件。

  -d<目录>   指定文件解压缩后所要存储的目录。

  -x<文件>   指定不要处理.zip压缩文件中的哪些文件。

  -Z   unzip -Z等于执行zipinfo指令。

解压缩当前文件.

解压当前目录下文件,指明不覆盖原来的文件,并将解压到/tmp目录下.

显示当前目录下的压缩文件内容

bzip2命令

bzip2是一个无损压缩软件,具有高质量的数据压缩能力,它能将文件压缩到原来的10%到15%,而且压缩速度和解压缩速度都非常高.因此广泛使用.

看下参数

 -c或--stdout  将压缩与解压缩的结果送到标准输出。 

-d或--decompress  执行解压缩。 

-f或--force  bzip2在压缩或解压缩时,若输出文件与现有文件同名,预设不会覆盖现有文件。若要覆盖,请使用此参数。 

-h或--help  显示帮助。 

-k或--keep  bzip2在压缩或解压缩后,会删除原始的文件。若要保留原始文件,请使用此参数。 

-s或--small  降低程序执行时内存的使用量。 

-t或--test  测试.bz2压缩文件的完整性。 

-v或--verbose  压缩或解压缩文件时,显示详细的信息。 

-z或--compress  强制执行压缩。 

-L,--license,

--repetitive-best  若文件中有重复出现的资料时,可利用此参数提高压缩效果。 

--repetitive-fast  若文件中有重复出现的资料时,可利用此参数加快执行速度。 

-压缩等级  压缩时的区块大小。

看例子

压缩当前目录下的所有文件.

看下压缩结果

用bunzip2命令解压缩文件

 -f或--force  解压缩时,若输出的文件与现有文件同名时,预设不会覆盖现有的文件。若要覆盖,请使用此参数。 

-k或--keep  在解压缩后,预设会删除原来的压缩文件。若要保留压缩文件,请使用此参数。 

-s或--small  降低程序执行时,内存的使用量。 

-v或--verbose  解压缩文件时,显示详细的信息。 

-l,--license,-V或--version  显示版本信息。

解压当前目录下的所有文件.

     本文转自yangming1052 51CTO博客,原文链接:http://blog.51cto.com/ming228/106604,如需转载请自行联系原作者

继续阅读