压缩工具和整盘备份工具dd
一、使用gzip压缩文件
gzip是GNU zip的缩写。
【命令格式】
gzip [option] filename
【常用选项】
c:压缩后将结果输出到标准输出,并保留原始文件。
d:解压缩文件。
l:显示压缩文件的详细信息。
r:递归地处理目录下的所有文件及子目录,或递归地解压缩文件内的目录和子目录。
v:显示命令的执行过程。
t:测试压缩文件。
num:num为数字1-9,代表压缩时使用的压缩率。1表示压缩速度最快、压缩率最小,9代表压缩速度最慢、压缩率最大。如果不使用此选项,则默认使用压缩率6.
二、使用bzip2压缩文件
与gzip等大多数压缩工具相比,bzip2的压缩率更高,但速度相对较慢。
【命令格式】
bzip2 [option] filename
【常用选项】
k:压缩、解压缩完成之后,保留原始文件。
d:执行解压缩任务。
t:测试压缩文件的完整性。
num:num为数字1-9,表示压缩率级别。其中1表示压缩率最低、速度最快,9表示压缩率最高、速度最慢。
v:执行时显示执行的详细信息。
三、整盘备份命令dd
dd是一个非常特殊的命令,其作用是从标准输入或文件中读取数据,并按指定的格式转换数据,然后输出。dd命令非常像Windows系统中的分区、磁盘备份工具Ghost。使用这个命令可以备份整个分区、磁盘,并且备份时可以不必关闭系统、卸载文件系统。
【命令格式】
dd <option>
dd命令不需要参数,所有参数都通过选项指定。
【常用选项】
if:指定要读取的文件,默认为标准输入。
of:指定要输出的文件,默认为标准输出。
ibs:指定读取数据时的块大小,默认为512字节。
obs:指定输出数据时的块大小,默认为512字节。
bs:将读取、输出时的块大小一起指定。
count:指定读取的区块数。
【用法示例】
管理员在许多时候都要使用到这个命令,其目的可能是需要备份一个分区、硬盘和软盘等存储设备中的内容,也可能是需要验证某个设置,需要产生一个指定大小的文件等。
(1)有时候管理员需要一个类似于Ghost的工具,备份一个分区甚至是一个磁盘,这时可以使用dd命令来完成。
例如要备份磁盘sda:
[root@localhost test]# dd if=/dev/sda of=/mnt/backup/backup_sda.dd
上面的示例中,dd命令从设备/dev/sda中读取数据,并存放到文件/backup_sda.dd中。
这样磁盘sda中的所有数据都被保存到backup_sda.dd文件内,这些数据包括了磁盘分区表及所有分区和数据等内容。由于磁盘存储的数据可能会有很多,因此命令可能会需要很长时间。
提示:将磁盘备份到文件中时,建议文件名以.dd结尾,以便于文件使用者识别。
(2)恢复磁盘时,只需要将读取和写入的文件进行调换即可。例如要将从/dev/sda中备份的数据恢复到一个新的设备/dev/sdb中:
[root@localhost ~]# dd if=/mnt/backup/backup_sda.dd of=/dev/sdb
dd命令从文件/mnt/backup/backup_sda.dd中读取数据,并将这些数据写入磁盘sdb中。命令执行完成之后设备sda和sdb中的数据将完全相同。
(3)许多时候可能希望能够在备份磁盘分区的同时,压缩备份数据以节省空间,这是可以与gzip等压缩命令一起使用。
例如备份磁盘sda并使用gzip压缩备份数据:
[root@localhost ~]# dd if=/dev/sda | gzip >/mnt/backup/backup_sda.dd.gz
上面示例命令中,命令dd首先从磁盘sda中读取数据,并将这些数据通过管道交给第2个命令gzip。gzip将这些数据压缩之后,通过重定向的方式写入文件backup_sda.dd.gz中。
(4)如果要将使用gzip压缩后的数据恢复到磁盘sdb中,可以反向使用以上命令:
[root@localhost ~]# gzip -dc /mnt/backup/backup_sda.dd.gz | dd of=/dev/sdb
(5)如果两块磁盘都连接到系统,可以直接将一个磁盘中的内容整盘拷贝到另一个磁盘中,将选项if和of的参数换成需要使用的参数即可。
例如要将磁盘sda中的所有数据拷贝到磁盘sdb中:
[root@localhost ~]# dd if=/dev/sda of=/dev/sdb
(6)利用dd命令能直接读写块设备,还可以制作光盘镜像。例如为当前光驱中的光盘制作光盘镜像,并将 光盘镜像命名为linux.iso:
[root@localhost ~]# dd if=/dev/cdrom of=/mnt/backup/linux.iso
(7)许多时候管理员需要产生一个指定大小的文件,其目的可能是验证一些配置(例如磁盘配额),也可能是测试磁盘、阵列的读写速度等。这是可以使用dd命令的bs和count选项,指定块大小和块数量。
例如产生一个5GB的文件放置在当前目录下,并将其命名为test.5G:
[root@localhost ~]# dd if=/dev/zero of=test.5G bs=1M count=5120
注意:在上面的命令中用到了一个设备文件/dev/zero,这是一个非常特殊的设备文件,zero设备的功能是无限制地提供数据0.
(8)许多时候,磁盘上存放了相当机密的数据,当磁盘报废或者做其他用途时,删除数据和格式化磁盘都无法保证这些数据不被泄露。此时可以使用随机数据填充磁盘的方式销毁磁盘上的数据。
例如要销毁磁盘sdc上的数据:
[root@localhost ~]# dd if=/dev/urandom of=/dev/sdc
(9)在Linux系统中,要备份磁盘的分区表,可以不用其他工具,使用dd命令就可以轻松完成这个工作:
[root@localhost ~]# dd if=/dev/sda of=image count=1 bs=512
上面这个命令,会备份磁盘/dev/sda的前512个字节(分区表保存在磁盘的前512字节中),保存到当前目录下并命名为image。
(10)要从已经备份的文件image中恢复分区表:
[root@localhost ~]# dd if=image of=/dev/sda
注意:虽然dd命令备份数据时允许硬盘正在使用,但通常应该停止使用磁盘或以只读方式挂载磁盘,以免出现文件不一致的情况。
压缩工具和整盘备份工具dd的更多相关文章
- Linux其他常见压缩备份工具 - dd,cpio
dd dd 可以读取磁碟装置的内容(几乎是直接读取磁区"sector"),然后将整个装置备份成一个文件呢!真的是相当的好用啊- dd 的用途有很多啦-但是我们仅讲一些比较重要的选项 ...
- linux dd命令参数及用法详解---用指定大小的块拷贝一个文件(也可整盘备份)
linux dd命令参数及用法详解---用指定大小的块拷贝一个文件 日期:2010-06-14 点击:3830 来源: 未知 分享至: linux dd命令使用详解 dd 的主要 ...
- dump、cpio、tar、dd四种备份工具比较
原文 http://blog.csdn.net/ether_lai/article/details/12656219 dump dump可执行文件系统增量备份的存储操作 ,dump 可将目录或整个文 ...
- [转]Linux/Unix系统镜像/备份/恢复 (dd 命令使用)
ref: http://blog.chinaunix.net/xmlrpc.php?r=blog/article&uid=22561912&id=156879 开源系统默认安装了一个d ...
- Linux 备份工具
Linux 备份工具 GNU 的传统备份工具 GNU tar — http://www.gnu.org/software/tar/ GNU cpio — http://www.gnu.org/so ...
- 磁盘备份工具dcfldd
磁盘备份工具dcfldd dcfldd是Kali Linux自带的一款磁盘备份工具.该工具是dd工具的增强版,更适合渗透测试和安全领域.dcfldd提供实时哈希校验功能,确保数据的安全.同时,它还 ...
- Linux下压缩工具gzip和归档工具tar及其实战shell应用
Linux下压缩工具gzip和归档工具tar及其实战shell应用 第一章:gzip的使用技巧 gzip [option]... file... -d: 解压缩,相当于gunzip; -# ...
- SQLSERVER自动定时(手动)备份工具
最近项目需要,写了一个小工具软件: 1.实时显示监控 2.可多选择备份数据库 3.按每天定时备份 4.备份文件自动压缩 5.删除之前备份文件 直接上图 1.备份监控界面: 2.数据库设置: 附工具下载 ...
- MySQL 5.7 mysqlpump 备份工具说明
背景: MySQL5.7之后多了一个备份工具:mysqlpump.它是mysqldump的一个衍生,mysqldump就不多说明了,现在看看mysqlpump到底有了哪些提升,可以查看官方文档,这里针 ...
随机推荐
- arp spoofing
Today our tutorial will talk about Kali Linux Man in the Middle Attack. How to perform man in the mi ...
- 【脚本语言对比】BASH,PERL以及PYTHON
据说: BASH能调用linux的应用程序,这是其最大的优点,也是其最大的缺点. PERL那复杂的语法确实看得让人想吐. python很优美,但是据说对正则的支持不够,没有perl强大. 总结一下学习 ...
- Jersey Rest服务类型
在Rest服务中,资源类是接收Rest请求并完成响应的核心类,而资源类由Rest服务的“提供者”来调度的,这一定义类似于自定义Servlet类,该类会奖请求分派给指定的Controller/Actio ...
- phonegap 新窗口 WebView
自定义WebView窗口打开 import com.ap.work.QuickWeb public class QuickPlugin extends CordovaPlugin { /** * 新开 ...
- 【360开源】thinkjs:基于Promise的Node.js MVC框架 (转)
thinkjs是360奇舞团开源的一款Node.js MVC框架,该框架底层基于Promise来实现,很好的解决了Node.js里异步回调的问题.360奇舞团(奇虎75Team),是奇虎360公司We ...
- 第三百四十八天 how can I 坚持
回来的倒不晚,算了不想抱怨了. 晚上回来吃过饭,又看了遍<活着>,把一切悲剧都放在一个人身上了,很朴实,好感人. 一天就写了一个借口,也是醉了. 我的天气预报,我的struts.sprin ...
- QueryInterface
QueryInterface IUnknown *p2; hr = pInnerUnknown->QueryInterface(vGUID2, (void**)&p2); IUnknow ...
- 在VS2013中使用水晶报表
又遇到了在B/S系统中打印,打印格式要求比较高,打印出的效果要求高大上.用VS2013中微软自带的报表,实在难以实现应用的效果,主要问题表现在: 1.不能插入用Word做好的打印模板,自己按照模板来做 ...
- Unity3D Persistent Storage
[Unity3D Persistent Storage] 1.PlayerPrefs类以键值对的形式来提供PersistentStorage能力.提供小额存储能力.(做成sst可以提供大规模数据存储) ...
- inputs
inputs.bind({ keyup:function(){$(this).val($(this).val().replace(/\D/g,''));}, focus:function(){if($ ...