0%

Windows下最常见的压缩文件只有两种,.zip和.rar。可是Linux就不同了,有.Z、bz2、.gz、.tar、.tar.gz等众多的压 缩文件名,它们分别对应了各种压缩打包命令。要了解这些压缩打包命令的使用,首先要弄清两个概念:打包和压缩。打包是指将一大堆文件或目录什么的变成一个 总的文件,压缩则是将一个大的文件通过一些压缩算法变成一个小文件。Linux中的很多压缩命令只能针对一个文件进行压缩,当要压缩一大堆文件时,就得先 借助打包命令将这一大堆文件先打成一个包,然后再用压缩命令进行压缩。因此打包命令在Linux的应用中具有很重要的作用。Linux下最常用的打包命令就是tar,使用tar命令打包后,就可以用其它的命令来进行压缩了。tar命令的使用方法如下:

tar [-cxtzjvfpPN] 文件与目录
参数说明:
-c :建立一个打包文件;
-x :解开一个打包文件;
-t :查看 tar包里面的文件;
(特别注意,在选择参数时,c/x/t仅能存在一个,不可同时存在,因为不可能同时压缩与解压缩。)
-z :打包后用gzip压缩,生成.tar.gz文件;
-j :打包后用zip2压缩,生成.tar.bz2文件;
-v :压缩的过程中显示文件;
-f :使用文件名,请留意,在f之后要立即接文件名,不要再加其它参数;
-p :保持原文件的属性;
-P :使用绝对路径来压缩;
-N :设定日期(yyyy/mm/dd),比后面接的日期还要新的文件才会被打包进新建的文件中;
–exclude FILE:在打包的过程中,不要将FILE打包。

举几个例子:

例一:将整个/etc目录下的文件全部打包成为/tmp/etc.tar

1
2
3
tar -cvf /tmp/etc.tar /etc  #仅打包,不压缩  
tar -zcvf /tmp/etc.tar.gz /etc #打包后,以gzip压缩
tar -jcvf /tmp/etc.tar.bz2 /etc #打包后,以bzip2压缩

例二:查阅上述/tmp/etc.tar.gz文件内有哪些文件

1
tar -ztvf /tmp/etc.tar.gz

例三:将/tmp/etc.tar.gz文件解压缩到/usr/local/src下

1
2
cd /usr/local/src   #先将工作目录变换到/usr/local/src下  
tar -zxvf /tmp/etc.tar.gz

例四:只将/tmp/etc.tar.gz内的etc/passwd解压到/tmp下

1
2
cd /tmp  
tar -zxvf /tmp/etc.tar.gz etc/passwd

例五:将/etc内的所有文件备份下来,并且保存其权限!

1
tar -zxvpf /tmp/etc.tar.gz /etc

例六:在/home当中,比2005/06/01新的文件才备份

1
tar -N ’2005/06/01′ -zcvf home.tar.gz /home

例七:备份/home、/etc,但不要/home/dmtsai

1
tar –exclude /home/dmtsai -zcvf myfile.tar.gz /home/* /etc

例八:将/etc打包后直接解开在/tmp底下,而不产生文件!

1
2
cd /tmp  
tar -cvf - /etc | tar -xvf -

现在有一个需求,不知道该如何才能实现
压缩:

1
2
3
tar czvf /data/backup/test.tar.gz /data/a/b/directory
```
解压:

cd /data/test
tar xzvf /data/backup/test.tar.gz

1
2
3
4
5
6
7
8
9

问题是,解压后的文件,在/data/test/data/a/b/directory里面
能否压缩时只保留directory以下的所有目录,以directory作为/,而不是/data/a/b/directory?

问题已经解决,找到了GNU tar的官方资料

http://www.delorie.com/gnu/docs/tar/tar_98.html

这样写就可以解决了

tar czvf /data/backup/test.tar.gz /data/a/b/directory

1
改成

tar czvf /data/backup/test.tar.gz -C /data/a/b(空格)directory

-C是临时切换工作目录,-P是绝对路径,在这里只用到-C参数就行了

定制安装的linux可能没有把rzsz包安装到系统,这对用securecrt这样的windows工具传输文件特别不方便。为了使用这个方便的法门,可以手动安装之。

  1. 下载软件 rzsz-3.48.tar.gz。登录linux,用命令下载。
    1
    wget http://freeware.sgi.com/source/rzsz/rzsz-3.48.tar.gz
  2. 解压 tar zxvf rzsz-3.48.tar.gz
  3. 安装 cd rzsz-3.48 ; make posix 。注意:这个软件安装与常规的GNU软件不同—没有configure(配置)及make install (安装过程)。先执行命令make,将给出下面的提示:
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    [root@web1 rzsz]# make
    Please study the #ifdef's in crctab.c, rbsb.c, rz.c and sz.c,
    make any necessary hacks for oddball or merged SYSV/BSD systems,
    then type 'make SYSTEM' where SYSTEM is one of:
    posix POSIX compliant systems
    linux LINUX systems
    odt SCO Open Desktop
    icc SCO Open Desktop, Intel compiler
    sysvr4 SYSTEM 5.4 Unix, SCO Open Desktop
    sysvr3 SYSTEM 5.3 Unix with mkdir(2), COHERENT 4.2
    sysv SYSTEM 3/5 Unix
    xenix Xenix
    x386 386 Xenix
    bsd Berkeley 4.x BSD, Ultrix, V7
    tandy Tandy 6000 Xenix
    dnix DIAB Dnix 5.2
    dnix5r3 DIAB Dnix 5.3
    amiga 3000UX running SVR4
    POSIX POSIX compliant systems (SCO Open Desktop, strict)
    doc Format the man pages with nroff
    根据自己的系统选择make的位置参数,一般情况下,选posix或linux就可以了。执行命令make posix,我们从输出部分可以很清楚的看见这个步骤所进行的工作:
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    [root@web1 rzsz]# make posix
    gcc -m486 -O2 -DLINUX -DHVM -DREGISTERED -s -DPOSIX -DMD=2 rz.c -o rz
    size rz
    text data bss dec hex filename
    24847 636 10400 35883 8c2b rz
    rm -f rb rx rc
    ln rz rb
    ln rz rx
    ln rz rc
    gcc -m486 -O2 -DLINUX -DHVM -DREGISTERED -s -DPOSIX sz.c -o sz
    size sz
    text data bss dec hex filename
    29030 696 10208 39934 9bfe sz
    rm -f sb sx zcommand zcommandi
    ln sz sb
    ln sz sx
    ln sz zcommand
    ln sz zcommandi
    修改Makefile第四行OFLAG= -O 为 OFLAG= -O -DREGISTERED

否则,编译后,在上传下载完成都会提示:

1
2
**** UNREGISTERED COPY *****
Please read the License Agreement in rz.doc
  1. 为了方便使用这个工具,把相关文件复制到目录/usr/bin下面。这里只需要拷贝2个文件rz及sz,命令为:cp rz sz /usr/bin .

  2. 设置环境变量 export RZSZLINE=/dev/modem。如果不设置这个环境变量,执行命令rz的时候,总是会提示你”Warning: Missing environment variable ‘RZSZLINE’ (Linux) rz ready. Type “sz file …” to your modem program“。

  3. 上传文件测试rzsz。在windows下通过securecrt连接远程linux服务器,然后执行命令rz。

    回车后将弹出发送文件选择窗口:

    点“添加”按钮,再选“确定”按钮就可把windows主机上的文件通过ssh协议上传到linux主机。通过“Shifs”或“Ctrl”键可以实现多个文件的传输。把linux文件下载到windows用命令sz ,就很容易的把文件下载了;不过有一个地方得弄清楚:这些文件下载到什么位置了(windows),通过对securecrt的简单设置即可把文件下载到我们指定的目录。设置操作如下图所示:

    点下载右侧那个按钮(只有3个点)即可进行下一步设置。
    怎么把windows下的目录上传到linux呢?一个办法是在windows下把目录打包压缩成一个文件在上传,另外一个是使用另外一个工具ssh secure shell(可以在操作界面直接拖拽文件或目录)。

选项说明

-v, –verbose 详细模式输出
-q, –quiet 精简输出模式
-c, –checksum 打开校验开关,强制对文件传输进行校验
-a, –archive 归档模式,表示以递归方式传输文件,并保持所有文件属性,等于-rlptgoD
-r, –recursive 对子目录以递归模式处理
-R, –relative 使用相对路径信息

1
rsync foo/bar/foo.c remote:/tmp/

则在/tmp目录下创建foo.c文件,而如果使用-R参数:

1
rsync -R foo/bar/foo.c remote:/tmp/

则会创建文件/tmp/foo/bar/foo.c,也就是会保持完全路径信息。

-b, –backup 创建备份,也就是对于目的已经存在有同样的文件名时,将老的文件重新命名为filename。可以使用–suffix选项来指定不同的备份文件前缀。
–backup-dir 将备份文件(如
filename)存放在在目录下。
-suffix=SUFFIX 定义备份文件前缀
-u, –update 仅仅进行更新,也就是跳过所有已经存在于DST,并且文件时间晚于要备份的文件。(不覆盖更新的文件)
-l, –links 保留软链结
-L, –copy-links 想对待常规文件一样处理软链结
–copy-unsafe-links 仅仅拷贝指向SRC路径目录树以外的链结
–safe-links 忽略指向SRC路径目录树以外的链结
-H, –hard-links 保留硬链结
-p, –perms 保持文件权限
-o, –owner 保持文件属主信息
-g, –group 保持文件属组信息
-D, –devices 保持设备文件信息
-t, –times 保持文件时间信息
-S, –sparse 对稀疏文件进行特殊处理以节省DST的空间
-n, –dry-run现实哪些文件将被传输
-W, –whole-file 拷贝文件,不进行增量检测
-x, –one-file-system 不要跨越文件系统边界
-B, –block-size=SIZE 检验算法使用的块尺寸,默认是700字节
-e, –rsh=COMMAND 指定替代rsh的shell程序
–rsync-path=PATH 指定远程服务器上的rsync命令所在路径信息
-C, –cvs-exclude 使用和CVS一样的方法自动忽略文件,用来排除那些不希望传输的文件
–existing 仅仅更新那些已经存在于DST的文件,而不备份那些新创建的文件
–delete 删除那些DST中SRC没有的文件
–delete-excluded 同样删除接收端那些被该选项指定排除的文件
–delete-after 传输结束以后再删除
–ignore-errors 及时出现IO错误也进行删除
–max-delete=NUM 最多删除NUM个文件
–partial 保留那些因故没有完全传输的文件,以是加快随后的再次传输
–force 强制删除目录,即使不为空
–numeric-ids 不将数字的用户和组ID匹配为用户名和组名
–timeout=TIME IP超时时间,单位为秒
-I, –ignore-times 不跳过那些有同样的时间和长度的文件
–size-only 当决定是否要备份文件时,仅仅察看文件大小而不考虑文件时间
–modify-window=NUM 决定文件是否时间相同时使用的时间戳窗口,默认为0
-T –temp-dir=DIR 在DIR中创建临时文件
–compare-dest=DIR 同样比较DIR中的文件来决定是否需要备份
-P 等同于 –partial
–progress 显示备份过程
-z, –compress 对备份的文件在传输时进行压缩处理
–exclude=PATTERN 指定排除不需要传输的文件模式
–include=PATTERN 指定不排除而需要传输的文件模式
–exclude-from=FILE 排除FILE中指定模式的文件
–include-from=FILE 不排除FILE指定模式匹配的文件
–version 打印版本信息
–address 绑定到特定的地址
–config=FILE 指定其他的配置文件,不使用默认的rsyncd.conf文件
–port=PORT 指定其他的rsync服务端口
–blocking-io 对远程shell使用阻塞IO
-stats 给出某些文件的传输状态
–progress 在传输时现实传输过程
–log-format=FORMAT 指定日志文件格式
–password-file=FILE 从FILE中得到密码
–bwlimit=KBPS 限制I/O带宽,KBytes per second
-h, –help 显示帮助信息

用rsync对网站进行镜像备份

by inburst <inburst@263.net>
http://xfocus.org

对系统管理员来说,平时的工作重心应该集中在维护系统正常运转,能够正常提供服务上,这里往往牵涉到一个数据备份的问题,在我所了解的情况中,有80%的系统管理员不是太关心自己服务器的安全性,但往往对备分镜像的技术相当感兴趣,但由于商业产品的软硬件价格都相当高昂,因此往往会选择自由软件。这里准备介绍的rsync就是这样的软件,它可以满足绝大多数要求不是特别高的备份需求。

一、特性简介

rsync是类unix系统下的数据镜像备份工具,从软件的命名上就可以看出来了——remote sync。它的特性如下:

  1. 可以镜像保存整个目录树和文件系统。
  2. 可以很容易做到保持原来文件的权限、时间、软硬链接等等。
  3. 无须特殊权限即可安装。
  4. 优化的流程,文件传输效率高。
  5. 可以使用rcp、ssh等方式来传输文件,当然也可以通过直接的socket连接。
  6. 支持匿名传输。
Read more »

眼球烧饼 最最基本的烧饼,属性是最基本的但是可以戴头盔来补足属性
材料:物品合成等级之和=2
兔耳烧饼 最小伤害+3/最大伤害+3/震晕+30%/免疫震晕
材料:物品合成等级之和=3
蟹黄烧饼 最小伤害+5/最大伤害+5/速度*0.8/暴击+10%/抗暴击+20% /抗震晕+20%/免疫点燃
材料:物品合成等级之和=4
昆虫烧饼 HP+100/抗普通+12%/抗弓箭+50%/抗标枪+50%/抗长矛+12%
材料:物品合成等级之和=5
刺猬烧饼 HP+50/速度*0.5/暴击+80%
材料:物品合成等级之和=6
牛角烧饼 HP+80/最小伤害+30/最大伤害+50/速度*1.3/抗普通+6%/抗弓箭+10%/抗标枪+10%/抗长矛+6%/暴击+20%/击退+50%/震晕+50%/抗暴击+20%/抗击退+20%/抗震晕+20%
材料:物品合成等级之和=7
天使烧饼 HP+150/最小伤害+10/最大伤害+15/速度*0.8/暴击+50%
材料:物品合成等级之和=8

最近刚刚把自己的firefox1.5升级到了2.0,界面美观了不少,速度也变的比较快了,很多地方都优化的很细致。但有一些习惯性的东西却被改变 了,比如经常上discuz系统的论坛的朋友使用alt+s快捷回复的时候会出现历史标签,虽然回复也post出去了,但每次都出现那个历史的确是非常的 碍眼啊。经过多方搜索和实践,终于让我找到了解决方法,现在就给广大的firefox2.0用户分享一下心得。

第一种方法是修改config设置,这个方法我试验过但没有成功,不过还是拿出来,如果有人成功的话请留言回复下好么?
首先打开一个空白页面,然后在地址栏输入about:config,回车就会出现firefox的系统设置页面,跟windows的注册表类似一样,修改缓存什么的都在这里进行修改。
然后我们在筛选器里面输入Ui.key.contentAccess,就会筛选出我们要修改的值了,双击这个值把内含值5修改成4确定后就可以重启firefox了。重启后就alt+s快捷回复的时候就不会出现历史项了,不过我没有成功。

第二种方法是修改基础文件的,这个方法我实验通过了,目前我就是使用这种方法可以快捷回复的。
首先找到firefox2.0的安装目录,找到chromezh-CN.jar文件。
用winrar直接打开,不要全部解压缩,如果全部解压缩修改的话会出现问题的。
在里面找到localebrowserbrowser.dtd这个文件,对着它点右键解压出来。
使用记事本打开browser.dtd文件,然后ctrl+f找到historyMenu.accesskey,将”s”修改成任何一个字母。关闭保 存,然后直接用鼠标把修改后的文件拖回winrar直接打开的zh-CH.jar文件localebrowser目录下面,会问你要不要覆盖,直接 确定就可以了。
然后使用alt+s快捷回复的时候就不会再出现历史了,如果觉得这个方法比较不安全,可以在修改之前备份一下zh-CN.jar文件。不过目前我一直使用着没有发现任何问题,推荐大家使用这个方法修改。

虽然我们可以修改firefox2.0的设置达到这个目的,但还是希望在下个版本中能够软件自己修改好这个算是bug的小瑕疵吧。但瑕不掩玉,虽然有些小瑕疵,但firefox浏览器还是目前世界上最好用最迅速的浏览器。

DISCUZ5.0数据库数据字典
默认库共68个数据表,(以下表数据量注释均为默认)

cdb_access (用户权限表)
uid 用户id
fid 论坛id
allowview 允许浏览
allowpost 允许发新帖
allowreply 允许回复
allowgetattach 允许下载附件
allowpostattach 允许上传附件
———————————————————
cdb_activities
tid 帖子ID
uid 发布人ID
cost 每人花销
starttimefrom 时间范围始
starttimeto 时间范围止
place 活动地点
class 活动类别
gender 性别
number 需要人数
expiration 截止日期

Read more »

Technology makes life so much more fashionable and trendy. This law holds everywhere ranging from technology in software to technology in hardware.

Today what we are about to witness is what I call innovation in hardware technology. Previously I have introduced different types of new and trendy computer mouse and keyboards to my readers but today I am going to show you 25 Computer mouse you have never seen before shared by Using Mac.

  1. LG Finger Mouse

  1. Slim Mouse

  1. Mogo Mouse

  1. Ring Mouse

  1. G9 Laser Mouse

  1. Skype Phone Mouse

  1. Logitech Air Mouse

  1. EzKey Keypad Mouse

  1. Sidewinder Gaming Mouse

  1. 3D Navigational Mouse

  1. N30 Game Mouse

  1. Gun Mouse

  1. NES Gamepad Mouse

  1. Belkin Hybrid Mouse

  1. Fanatec Headshot Uber Mouse

  1. Anti-Bacterial Mouse

  1. Tablet Mouse

  1. Acryclic Mouse

  1. MUS2 Mouse

  1. Heart Mouse

  1. Natural Laser Mouse

  1. Powerball Mouse

  1. Horror Mouse

  1. Boob Mouse

  1. Real USB Mouse