首页 > 代码库 > 文件归档

文件归档

一个公司最重要的是什么?当然是公司的数据。数据的安全性就无比重要了,作为管理员数据就是那一个个文件。价值千万的东西在我们手中,我们怎么保护好这些文件,合理划分文件尤为重要。维护这些数据我们的手段都有哪些?linux中内嵌了哪些文档管理工具。

文件查找

       这一节是说归档啊,为什么要先学文件查找。归档前我们要先确定,我们要归档和管理的文件,使用文件查找命令可以快速的帮我们把所需要的文档找出来,方便我们后续的管理。

  1. 一个基于数据库的文件查找工具locat

我们主要使用它来查找系统文件。

既然locat是基于数据库查找的命令,他一定具有一个特点,特别快。同时它支持正则表达式,借用正则表达式的特点,我们可以非常灵活的查找到我们需要的文件。

同时它有一个缺点,它的查找不是实时查找,也是因为它是基于数据库,真是成也数据库败也数据库。构建数据库的命令是updatedb

  1. 实时查找的命令find

他的速度虽然别locat慢,但是它可以实时查找。我们更多的会去选择使用它,因为我们既然要查找文件,那么我们都文件的特性了解的一定不是很清楚,但是了解文件的一部分特性。find就是基于文件一部分特性需找类似文件的工具,生是为我们打造的。

find的格式:
find [option] dirname
option的选项
-type (f|d|l|c|b|s|p)    指定要查找的文件类型
-size #[k,m,g,t]         指定文件的大小不指定默认为k。这里举一个例子:
-size [+|-]6m

技术分享

      

-atime  [+|-]       指定访问时间
-mtime[+|-]        指定修改时间
-ctime[+|-]        指定改变时间,它们三个的格式和-size的格式类似
-perm[/|-]         指定权限。/只要有一位权限匹配,该文件就被匹配。-需全部匹配文件才算被匹配。
-userusername        匹配文件用户名
-nouser
-uid                        匹配文件uid
-gid            匹配文件gid

文件压缩

       文件在磁盘里一定是不安全的,因为磁盘会坏,那我们怎么最大程度的保护数据,数据备份。一个硬盘坏了,我们可以多复制几分放在不同的磁盘内。备份数据时,我们一般不会一个个文件的复制,都是把所有要备份的数据保存到一个目录下,然后整体复制走。这就有一个问题了,如果数据量特别大每次备份的压力多大啊。

       嗯,我们有两种备份方式:增量备份和全部备份。

       全部备份,有一个硬伤,数据特别多的时候很难备份。但是比如数据库文件,这个没法采用增量备份,我们只好采用全部备份,但是数据那么多,我们怎么减少数据备份的数量,减少数据的大小压缩文件。

  1. 压缩

Linux中内置了四种压缩方式,每种压缩方式的压缩后的文件后缀名不一样,压缩文件是采用不同的后缀名区分哪些文件是否可以解压。

compress 压缩后的文件的后缀名为.X。压缩后删除文件。
       -d          解压后删除压缩包
       -c          输出到屏幕


gzip压缩后的文件的后缀名是.gz

bzip2压缩后的文件的后缀名是.bz2

xz压缩后的文件的后缀名是.xz
       这三个命令的使用格式一致
       -d          解压
       -k          保留原文件
       -#          指定压缩比,默认6
       这四个命令的使用格式是类似的,例如
       Commandname.gz sourcename

文件打包

系统复制零碎文件的速度和复制视频文件的速度,大家都深有体会吧!我们怎么让复制零碎文件具有复制单个文件的速度呢!把文件打包成一个大文件后复制保存。

Linux中的打包命令tarTar的格式

Tar <option> name.tar sourcename
Option的选项
-c                 创建包
-f                  递归
-x                 解包
-g                 创建包的同时,以gzip压缩包
-j                  创建包的同时,以bz2压缩包
-J                  创建包的同时,以xz压缩包
Tar命令的简单用法
Tar xf name.tar.[gz|bz2|xz]           直接解压解包


总结

       归档工具很少但是特别强大,归档前寻找数据采用适当的工具,可以快速的定位我们需要的文件,压缩工具已经内嵌到了tar内。

 

遗忘的find的用法

-name 
-amin
-name "文件名称":支持使用glob
*, ?, [], [^]
-iname "文件名称":不区分字母大小写
-inum n 按inode号查找
-samefile name 相同inode号的文件
-links n 链接数为n的文件
-regex "PATTERN":以PATTERN匹配整个文件路径字符串,而不仅仅是文件名称
-ls:类似于对查找到的文件执行“ ls-l”命令
-delete:删除查找到的文件;
-fls file:查找到的所有文件的长格式信息保存至指定文件中
-ok COMMAND {} \; 对查找到的每个文件执行由
COMMAND指定的命令;
对于每个文件执行命令之前,都会交互式要求用户确认
-exec COMMAND {}\; 对查找到的每个文件执行由COMMAND指定的命令
{}: 用于引用查找到的文件名称自身
find传递查找到的文件至后面指定的命令时,查找到所有符合条件的文件一次性传递给后面的命令
find | xargsCOMMAND


本文出自 “老王linux旅程” 博客,请务必保留此出处http://oldking.blog.51cto.com/10402759/1876705

文件归档