本章主要介绍了备份的相关操作:
从文件到目录到操作系统的备份方法。

文件的备份(压缩操作)

对文件进行压缩操作的原理

  • 在1个字节中如果只存储1,则有7位填充0,可以利用特殊方法去除其中的0.
  • 将连续多个1,用数量和1表示。

文件压缩指令: gzip,bzip2,xz (指令的压缩能力逐渐提升,但压缩时间也会增长)这三种指令只能对文件进行压缩,如果用到目录上则会将目录内所有的文件单独压缩。
三者的参数十分相似:

gzip
-v 返回文件的压缩信息
-d 解压缩
-t 检查压缩文件是否有问题
-c 输出文件压缩后的数据到屏幕上(stdout)。
此时有可能会导致屏幕出现乱码,nano重新编辑一个文件然后退出就会恢复(**原因未知**)
**该方法不会将源文件删除**
-# #代表数字,表示压缩等级
保存源文件并得到压缩文件的方法:(将压缩后的信息重定向到text.gz当中发送)
gzip -c text > text.gz
bzip2
-k 保留源文件,如果不加压缩会将源文件删除
-v 返回文件的压缩信息
-d 解压缩
-c 将压缩后的数据输出到屏幕上
-# #代表数字,表示压缩等级
xz
-k -c -t -d 意义同上
增加了-l,显示压缩前后的文件大小,校验方式(check).占用的区块大小

目录的压缩操作

tar是打包操作,主要是将多个文件和目录打包成一个文件。
使用不同的压缩得到不同的名字:.tar 只打包不压缩,这种文件成为tarfile
.tar.gz,.tar.bz2,.tar.xz对应不同的压缩方式,通常成为tarball文件

tar打包的文件都是用相对路径存储。
tar [-z|-j|-J] [cv] -f 压缩后的文件名 要压缩的文件名
tar [-z|-j|-J] [tv] -f 压缩后的文件名
tar [-z|-j|-J] [xv] -f 压缩后的文件名 要压缩的文件名 -C 解压的目录
其中c对应压缩,t是查看压缩,x是解压缩
-P(大写) 使用绝对路径存储,慎用
-p(小写) 将属性和权限进行复制

tar可以实现的操作:

  1. 将信息存储到磁盘当中
  2. 进行文件复制到当前文件夹 tar -cvf - /etc | tar -xvf -

SElinux权限问题:(没有讲到)这里在进行压缩/etc之后解压恢复的时候可能导致部分文件无法使用。

文件系统操作

xfsdump备份:

  • 只能是xfs文件系统
  • 必须是root权限
  • 必须挂载
  • 使用xfsrestore解析
  • 使用uuid来识别文件

xfsdump备份后的文件可以自行设置存储位置,但是还有另一些文件会在/var/lib/xfsdump/inventory中生成,这些文件是用来保证xfsdump的增量备份使用的信息。可以利用xfsdump -I (i的大写)查看。
xfsdump使用的是增量备份:增量备份就是第一次是完整的备份,之后的备份在第一次的基础上修改了哪些文件就备份哪些文件。

xfsdump
-l 显示等级从0-9
-L 设置备份的简介
-M 设置存储空间的简介
-f 得到的备份的名字,通常是.dump,增量的备份.dump1或者.dump.1
-I 返回信息

完整的备份使用0级,增量备份可以使用1级。
只有进行过完整备份才能使用1-9级。

解析操作xfsrestore
对于文件系统恢复,只会覆盖相同名字的文件,新名字的文件不会更改。

xfsrestore
-L session label name在sfsrestore -I中能看到
-i 进入交互模式
-s 解析特定的文件,必须知道文件名,不知道时使用-i操作
-I 和xfsdump的操作相同
-f 接备份文件
-r 进行累计恢复,在一个磁盘中有多个文件系统备份的时候

恢复应该从level0按顺序恢复。

将文件写入到光盘当中:

  • 创建镜像文件
  • 刻录到cd中

mkisofs产生镜像文件:镜像文件可以是iso结尾,也可能是img结尾

mkisofs
-o 产生的镜像文件
-J 兼容windows的文件名,文件名64个unicode字符。
-r 使用Rock Ridge产生unix/linux的文件,存储更多的信息。
-v 展示产生的过程
-V 产生CD卷标
-m 排除特定的文件
-graft-point 产生目录
  1. 要使用-r才能记录完整的文件信息。
  2. 所有文件默认在镜像的根目录下:所以使用-graft-point创建目录-graft-point 镜像中目录=真实目录
  3. 镜像的挂载通常挂载到/mnt上

刻录操作:wodim

  1. 找到刻录设备
  2. 将刻录设备清空
  3. 对刻录进行格式化
  4. 进行刻录
wodim --devices dev=/dev/sr0
wodim -v dev=/dev/sr0 blank=[fast|all]  fast速度更快,all更完整
wodim -v dev=/dev/sr0 -format 格式化
wodim -v dev=/dev/sr0 [可选功能]  文件.iso

dd 操作从扇区的上进行完全赋值,可以进行磁盘和磁盘分区复制

  • 磁盘复制的时候需要修改uuid和log值,然后才能进行挂载
  • uuid使用uuidgen生成
  • log重置使用xfs_repair -L 重置
dd if= of= bs= count=
if输入文件
of输出文件
bs区块大小,越大速度越快
count区块数量

cpio操作必须和通道以及搜索指令一起使用比如find

cpio -ovcB > [file|device]   备份
cpio -ivcdu > [file|device]  还原
cpio -ivct > [file|device]   查看
-c 新的存储方式
-v 将文件名进行显示-B 增加block大小到5120Byte
-o 输出操作-i 输入操作
-d 建立目录
-u 自动将新的文件覆盖旧的文件-t 意味着查看备份的操作:
find boot | cpio -ocvB > /tmp/boot.cpio  利用find来提供备份用的文件

rsync -a 进行目录复制。

鸟哥的linux私房菜 第八章相关推荐

  1. 鸟哥的linux私房菜-基础学习篇 读书笔记

    从事linux工作一年多,算是能够熟练运用linux服务器,但仍觉得自己对Linux的原理,理论缺乏空洞,潜下心来认真阅读尘封的鸟哥经典,知识点很全,收获颇多,实践与知识结合,知行合一,对linux开 ...

  2. 鸟哥的linux私房菜-文件压缩于打包-2

    dump 备份命令: -S  :仅列出后面的待备份数据需要多少磁碟空间才能够备份完毕: -u  :将这次dump 的时间记录到/etc/dumpdates 文件中: -v  :将dump 的文件过程显 ...

  3. 拒绝从入门到放弃_《鸟哥的 Linux 私房菜 — 基础学习篇(第三版)》必读目录

    目录 目录 前言 关于这本书 必看知识点 最后 前言 相信部分刚进入这个行业的新同学会对一个问题感到疑惑,为什么从培训学校出来的学员不被欢迎? 这里记录下一些我个人的看法(博主也曾有面试新员工的经历) ...

  4. 鸟哥的Linux私房菜(基础学习,服务器架设)

    纪念下吧:2014年大连的第一场雪,12月1号,早上出门就看见漫天飘着雪花,其实,还是很漂亮的! 自学过Linux的同学应该对<鸟哥的Linux私房菜>不会陌生,鸟哥分成两个部分来写,第一 ...

  5. 开发日记-20190612 关键词 读书笔记《鸟哥的Linux私房菜-基础学习篇》

    Preface 今天效率真的感觉还不错呢= =,读书进度一口气推进了两章半,说真的,感觉现在看的东西大多数都是讲怎么用的,写这些其实意义不是很大,而且一般写下来后我后续也不会特地来回顾.所以我决定了, ...

  6. 开发日记-20190608 关键词 读书笔记《鸟哥的Linux私房菜-基础学习篇》

    Preface 玩物丧志,玩物丧志. 一个端午的假期,还真的是让我休闲到了极点,呐,很多时候我真的在想,是不是一个人日常生活中存在太多诱惑,所以才在脑子里塞满了杂七杂八的东西,最后导致自己不能很好地思 ...

  7. 开发日记-20190522 关键词 读书笔记《鸟哥的Linux私房菜-基础学习篇》

    前言 世界上最最愚蠢的事情就是重复,世界上最唯美的事情就是简单.把东西变得简单才是本事,这是我一直信奉的教条. 其实我一直想好好学学Linux,可是很多时候真的很无奈,尽管我挺喜欢买书而且在一定程度上 ...

  8. 学习鸟哥的Linux私房菜笔记(1)——Linux系统入门

    转载自: 专栏:鸟哥的Linux私房菜笔记 - 博客频道 - CSDN.NET http://blog.csdn.net/column/details/dawanganban-linux-n.html ...

  9. 鸟哥的Linux私房菜(基础篇)-第二章、 Linux 如何学习(二.3. 有心朝Linux作业系统学习者的学习态度)

    第二章. Linux 如何学习 最近更新日期:2009/08/06 3. 有心朝Linux作业系统学习者的学习态度 3.1 从头学习Linux基础 3.2 选择一本易读的工具书 3.3 实作再实作 3 ...

最新文章

  1. 木桶排序算法_【生信常识】二代测序的比对算法浅析
  2. 深度丨2018年AI依然要面临解决的的5大技术难题
  3. 《Python数据分析》2nd
  4. webpack初探——js打包
  5. C# Activator
  6. 数据结构与算法 Big O 备忘录与现实
  7. 逆序数问题,用归并排序而非树状数组求解
  8. G20杭州峰会上云 实现0安全事件
  9. 为什么Spring需要三级缓存解决循环依赖,而不是二级缓存?
  10. vijos 1057 盖房子 dp 最大子正方形
  11. Tomcat和myeclipse的相关操作以及myeclipse的激活方法
  12. 计算机系统的优化项目,计算机系统项目集成管理问题与对策
  13. 并发 不同的隔离等级存在的问题
  14. 关于【缓存穿透、缓存击穿、缓存雪崩、热点数据失效】解决方案
  15. python解释器错误
  16. 数字化营销服务-如何进行数字化营销?
  17. Mac OS X新手入门
  18. 整合HikariCP
  19. Linux下添加开机启动,Linux设置程序开机自启动
  20. 单方差分析MATLAB,MATLAB单因素方差分析.PDF

热门文章

  1. sd和sem啥区别_SD与SEM区别
  2. 文献阅读笔记LUCC
  3. 11微服务认证与授权
  4. rt1052 usb速率_如何才能赋予RT1052超级视频编解码能力?
  5. 百度网盘的探险:云存储如何逃离“德鲁克”困境
  6. 重建古老计算机Pong
  7. Fabric2.2 error 总结:WARN 0cf access denied: channel expected MSP ID Org1MSP, received Org3MSP channel
  8. OKI Pro 9542 打印机驱动
  9. javascript常用语句,如表单禁止复制,剪切等
  10. (转)音频输出PCM与LPCM有什么不同