来源:
一. tar
1.压缩一组文件为tar.gz后缀。# tar cvf backup.tar /etc#gzip -q backup.tar或# tar cvfz backup.tar.gz /etc/2.释放一个后缀为tar.gz的文件。#gunzip backup.tar.gz#tar xvf backup.tar或# tar xvfz backup.tar.gz3.用一个命令完成压缩#tar cvf - /etc/ | gzip -qc > backup.tar.gz4.用一个命令完成释放# gunzip -c backup.tar.gz | tar xvf -5.如何解开tar.Z的文件?# tar xvfz backup.tar.Z或# uncompress backup.tar.Z#tar xvf backup.tar6.如何解开.tgz文件?#gunzip backup.tgz7.如何压缩和解压缩.bz2的包?#bzip2 /etc/smb.conf这将压缩文件smb.conf成smb.conf.bz2#bunzip2 /etc/smb.conf.bz2这将在当前目录下还原smb.conf.bz2为smb.conf注: .bz2压缩格式不是很常用,你可以man bzip2二. rpmRPM命令常用参数
RPM的常规使用方法为rpm-?package.rpm,其中-?为操作参数(更多信息,请查阅帮助$manrpm):
q---->query
i---->installp---->packagea---->alll---->listi---->informatione---->ease--->very easy uninstallv---->verboseh---->proces hash-q在系统中查询软件或查询指定rpm包的内容信息
-i在系统中安装软件-U在系统中升级软件-e在系统中卸载软件-h用#(hash)符显示rpm安装过程-v详述安装过程-p表明对RPM包进行查询,通常和其它参数同时使用,如:-qlp查询某个RPM包中的所有文件列表-qip查询某个RPM包的内容信息RPM命令参数使用方法以上参数有些需要组合使用,比如说rpm-hpackage.rpm是没有意义的,但rpm-ihpackage.rpm即表示安装package并用#符显示安装进度。
安装RPM包
#rpm-ivh package.rpm升级RPM包命令
#rpm-Uvh package.rpm卸载RPM包命令
#rpm-ev package查询RPM包中包含的文件列表命令
#rpm-qlp package查询RPM包中包含的文件列表命令
#rpm-qlp package查询RPM包中包含的内容信息命令
#rpm-qip package查询系统中所有已安装RPM包
#rpm-qa 1.安装一个包# rpm -ivh2.升级一个包# rpm -Uvh3.移走一个包# rpm -e4.安装参数--force 即使覆盖属于其它包的文件也强迫安装--nodeps 如果该RPM包的安装依赖其它包,即使其它包没装,也强迫安装。5.查询一个包是否被安装# rpm -q < rpm package name>6.得到被安装的包的信息# rpm -qi < rpm package name>7.列出该包中有哪些文件# rpm -ql < rpm package name>8.列出服务器上的一个文件属于哪一个RPM包#rpm -qf9.可综合好几个参数一起用# rpm -qil < rpm package name>10.列出所有被安装的rpm package# rpm -qa11.列出一个未被安装进系统的RPM包文件中包含有哪些文件?# rpm -qilp < rpm package name>tar 格式: tar 选项 文件目录列表 功能: 对文件目录进行打包备份 选项:-c 建立新的归档文件-r 向归档文件末尾追加文件-x 从归档文件中解出文件-O 将文件解开到标准输出-v 处理过程中输出相关信息-f 对普通文件操作-z 调用gzip来压缩归档文件,与-x联用时调用gzip完成解压缩-Z 调用compress来压缩归档文件,与-x联用时调用compress完成解压缩 实例1: 目的:用tar打包一个目录下的文件命令:#tar -cvf /mnt/lgx/a1.doc结果:产生一个以.tar为扩展名的打包文件 实例2: 目的:用tar解开打包文件命令:#tar -xvf /mnt/lgx/a1.doc.tar附加说明:在通常情况下,tar打包与gzip(压缩)经常联合使用,效果更好。方法是:首先用tar打包,如:#tar -cvf /mnt/lgx/a1.doc (产生a1.doc.tar文件)然后用gzip压缩a1.doc.tar文件,如:#gzip /mnt/lgx/a1.doc.tar (产生a1.doc.tar.gz文件) 实例3: 目的:解压a1.doc.tar.gz文件方法1:#gzip -dc /mnt/lgx/a1.doc.tar.gz (产生a1.doc.tar文件)#tar -xvf /mnt/lgx/a1.doc.tar (产生a1.doc文件)这两次命令也可使用管道功能,把两个命令合二为一:#gzip -dc /mnt/lgx/a1.doc.tar.gz | tar -xvf方法2:使用tar提供的自动调用gzip解压缩功能#tar -xzvf /mnt/lgx/a1.doc.tar.gz经过tar打包后,也可用compress命令压缩(注:gzip比compress压缩更加有效),产生一个以.tar.Z的文件,在解包时,可先用“uncompress 文件名”格式解压,然后用“tar -xvf 文件名”解包。也可直接调用“tar -Zxvf 文件名”解包。====================================================tar命令详解(很好的中文说明) 怎样使用tar命令打包(备份)文件?A:The syntax of tar is:tar [options][files]The options used most often with tar are as follows:c Creates a new backup,overwriting any files already on the backup destination.x Extracts files from backup media.t Lists the contents of backup media.v Displays the name of each file being processed.f Creates backups on a specified device.u Adds files to the backup if they are not already there,or if they have been modified since they were last written on the backup. 步骤:1)估算打包文件的大小,确定使用档案媒体(archive media)的空间,用命令du -s例如:$ lfa.out* fork.c mbox time.catoi.c int.c memcpy.c vi$ du -s296 .$该例显示的296代表the total number of 512-byte blocks,计算:512*296/1024=148kilobytes.2)制作备份,用命令tar cvf /dev/fd0135ds18 .(将该目录下的所有内容备份到1.44英寸软盘中 where c causes a new backup to be created,v causes each file to be displayed as the backing up takes place,and f causes the subsequent argument--/dev/fd0135ds18 to be the destination of the backup.)注:平时硬盘上的备份,我们一般用命令tar cvf filename.tar .例如:$ tar cvf wuyd.tar .a ./.profile 2 tape blocksa ./.lastlogin 0 tape blocksa ./mbox 10 tape blocksa ./fork.c 2 tape blocksa ./memcpy.c 1 tape blocksa ./.sh_history 3 tape blocksa ./a.out 91 tape blocksa ./time.c 1 tape blocksa ./vi 169 tape blocksa ./int.c 1 tape blocksa ./atoi.c 1 tape blockstar: same as archive file: ./wuyd.tara ./.scoadmin.pref 1 tape blocks$ lfa.out* fork.c mbox time.c wuyd.taratoi.c int.c memcpy.c vi我们还可以用命令tar cvf /dev/fd0135ds18 ./filename将该目录下的名为filename的文件备份到archive media中怎样列出tar文档的内容?A:tar tvf /dev/fd0135ds18tar tvf filename.tar例如:$ tar tvf wuyd.tartar: blocksize = 20rw-------203/50 896 Sep 17 15:07 2003 ./.profiler--------203/21 0 Sep 24 19:49 2003 ./.lastloginrw-------203/50 4720 Sep 21 11:17 2003 ./mboxrw-r--r--203/50 583 Sep 17 15:27 2003 ./fork.crw-r--r--203/50 218 Sep 17 20:22 2003 ./memcpy.crw-------203/50 1474 Sep 24 20:26 2003 ./.sh_historyrwxr-xr-x203/50 46224 Sep 22 21:00 2003 ./a.outrw-r--r--203/50 341 Sep 19 09:02 2003 ./time.crw-r--r--203/50 86283 Sep 21 09:14 2003 ./virw-r--r--203/50 93 Sep 21 10:53 2003 ./int.crw-r--r--203/50 144 Sep 22 21:00 2003 ./atoi.crw-r--r-- 0/3 41 Sep 23 20:34 2003 ./.scoadmin.pref$怎样从tar文档中导出文件?A:tar xvf /dev/fd0135ds18tar xvf filename.tar例如:$ mkdir uu;cp wuyd.tar ./uu$ lfa.out* fork.c mbox time.c viatoi.c int.c memcpy.c uu/ wuyd.tar$ cd uu$ tar xvf wuyd.tartar: blocksize = 20x ./.profile, 896 bytes, 2 tape blocksx ./.lastlogin, 0 bytes, 0 tape blocksx ./mbox, 4720 bytes, 10 tape blocksx ./fork.c, 583 bytes, 2 tape blocksx ./memcpy.c, 218 bytes, 1 tape blocksx ./.sh_history, 1474 bytes, 3 tape blocksx ./a.out, 46224 bytes, 91 tape blocksx ./time.c, 341 bytes, 1 tape blocksx ./vi, 86283 bytes, 169 tape blocksx ./int.c, 93 bytes, 1 tape blocksx ./atoi.c, 144 bytes, 1 tape blocksx ./.scoadmin.pref, 41 bytes, 1 tape blocks$我们可用命令tar xvf /dev/fd0135ds18 ./filename导出archive media中的单个文件例如:$ lfwuyd.tar$ tar xvf wuyd.tar ./time.ctar: blocksize = 20x ./time.c, 341 bytes, 1 tape blocks$ lftime.c wuyd.tar$怎样使用tar命令提供的简写形式?A:$ more /etc/default/tar# @(#) def135.src 25.2 94/07/25## Copyright © 1987-1994 The Santa Cruz Operation, Inc.# All Rights Reserved.# The information in this file is provided for the exclusive use of# the licensees of The Santa Cruz Operation, Inc. Such users have the# right to use, modify, and incorporate this code into other products# for purposes authorized by the license agreement provided they include# this notice and the associated copyright notice with any such product.# The information in this file is provided "AS IS" without warranty.## default/tar - archive devices: tar©## device block size tape#archive0=/dev/rfd048ds9 18 360 narchive1=/dev/rfd148ds9 18 360 narchive2=/dev/rfd096ds15 10 1200 narchive3=/dev/rfd196ds15 10 1200 n# archive4=/dev/rfd096ds9 18 720 narchive4=/dev/rfd0135ds9 18 720 narchive5=/dev/rfd1135ds9 18 720 n# archive5=/dev/rfd196ds9 18 720 narchive6=/dev/rfd0135ds18 18 1440 narchive7=/dev/rfd1135ds18 18 1440 narchive8=/dev/rct0 20 0 yarchive9=/dev/rctmini 20 0 yarchive10=/dev/rdsk/fp03d 18 720 narchive11=/dev/rdsk/fp03h 18 1440 narchive12=/dev/rdsk/fp03v21 10 20330 n## The default device in the absence of a numeric or "-f device" argumentarchive=/dev/rfd0135ds18 18 1440 n$从上面可以看出4代表/dev/rfd0135ds9设备,而默认的设备是/dev/rfd0135ds18,所以 tar xvf /dev/rfd0135ds9 ./filename可以简写为tar xv4 ./filename,而 tar cvf /dev/fd0135ds18 .可以简写为tar cv .