Linux
常用
管理语句
Shell命令(变量)
正则表达式
重定向
EXPECT
流程控制
函数
日志
SED
sed常用操作
sed组合命令
sed脚本
AWK
awk常用
awk流程控制
awk脚本
SSH
SSH密钥的批量分发与执行
SSH连接很慢
ACL文件访问控制
计划任务
常用语句
批量添加用户和密码
批量修改密码
临时和永久关闭Selinux
修改主机名
Linux内核参数
无人值守安装
ISO镜像(mondorescue)
软件管理
SYSTEM服务
YUM本地仓
存储管理
逻辑卷LVM
磁盘阵列RAID
备份恢复相关命令
fio磁盘性能测试
内存管理
IPTABLES防火墙
FIREWALLD防火墙
curl请求
Linux问题
漏洞修复
限制网卡带宽
CentosYUM源
rsyslog 占用内存过高
df -h 卡住解决
Linux故障问题
网络配置
升级内核
Openssl生成证书
CENTOS6升级7
本文档使用MrDoc发布
返回首页
-
+
备份恢复相关命令
2021年12月27日 14:40
admin
#dd ####用指定大小的块拷贝一个文件,并在拷贝的同时进行指定的转换 --- ####参数注释: |参数|说明 |--|-- |if=FILE|从FILE中读取数据,而不是默认的标准输入。 |of=FILE|往FILE中写入数据,而不是默认的标准输出。 |ibs=BYTES|读取数据时,一次性读出BYTES大小的块,如果不指定,默认512字节。 |obs=BYTES|写入数据时,一次性写入BYTES大小的块,如果不指定,默认512字节。 |bs=BYTES|统一ibs和obs的值(如果指定了ibs或者obs,则bs会将ibs和obs覆盖掉)。 |cbs=BYTES|没搞懂。 |skip=N|跳过N*ibs字节数再开始读取数据。 |seek=N|跳过N*obs字节数再开始写入数据。 |count=N|总共读取N*ibs字节数的数据,当然写入的数据也是这个大小。 --- #备份 ##将本地的/dev/hdb整盘备份到/dev/hdd dd if=/dev/hdb of=/dev/hdd ##将/dev/hdb全盘数据备份到指定路径的image文件 dd if=/dev/hdb of=/root/image ##备份/dev/hdb全盘数据,并利用gzip工具进行压缩,保存到指定路径 dd if=/dev/hdb | gzip > /root/image.gz --- #恢复 ##将备份文件恢复到指定盘 dd of=/root/image of=/dev/hdb ##将压缩的备份文件恢复到指定盘 gzip -dc /root/image.gz | dd of=/dev/hdb --- #创建一个100M的空文件 dd if=/dev/zero of=hello.txt bs=100M count=1 --- #增加swap分区文件大小 第一步:创建一个大小为256M的文件: dd if=/dev/zero of=/swapfile bs=1024 count=262144 第二步:把这个文件变成swap文件: mkswap /swapfile 第三步:启用这个swap文件: swapon /swapfile 第四步:编辑/etc/fstab文件,使在每次开机时自动加载swap文件: /swapfile swap swap default 0 0 --- #测试硬盘的读写速度 #写能力 dd if=/dev/zero bs=1M count=1024 of=/root/1Gb.file ![](/media//202112/2021-12-27145414808545.png) #读能力 sync && echo 3 > /proc/sys/vm/drop_caches #清除缓存 dd if=/root/1Gb.file bs=1M of=/dev/null ![](/media//202112/2021-12-27145358337212.png) #通过以上两个命令输出的命令执行时间,可以计算出硬盘的读、写速度。 --- #修复硬盘 dd if=/dev/sda of=/dev/sda 或dd if=/dev/hda of=/dev/hda #当硬盘较长时间(一年以上)放置不使用后,磁盘上会产生magnetic flux point,当磁头读到这些区域时会遇到困难,并可能导致I/O错误。当这种情况影响到硬盘的第一个扇区时,可能导致硬盘报废。上边的命令有可能使这些数 据起死回生。并且这个过程是安全、高效的。 --- #tar -c: 建立压缩档案 -x:解压 -t:查看内容 -r:向压缩归档文件末尾追加文件 -u:更新原压缩包中的文件 -z:有gzip属性的 -j:有bz2属性的 -Z:有compress属性的 -v:显示所有过程 -O:将文件解开到标准输出 -N:在指定日期之后的文件才会打包 --exclude file: 排除文件/目录 tar -cf all.tar *.jpg #这条命令是将所有 .jpg 的文件打成一个名为 all.tar 的包。-c 是表示产生新的包,-f 指定包的文件名。 tar -zcvf all.tar.gz *.jpg #这条命令是将所有 .jpg 的文件打成一个名为 all.tar.gz 的包。-c 是表示产生新的包,-f 指定包的文件名,-z表示压缩,-v显示过程。 tar -rf all.tar *.gif #这条命令是将所有 .gif 的文件增加到 all.tar 的包里面去,-r 是表示增加文件的意思。 tar -uf all.tar logo.gif #这条命令是更新原来 tar 包 all.tar 中 logo.gif 文件,-u 是表示更新文件的意思。 tar -tvf all.tar #这条命令是列出 all.tar 包中所有文件,-t 是列出文件的意思。 tar -xf all.tar #这条命令是解出 all.tar 包中所有文件,-x 是解开的意思。 tar -xvf 压缩文件 -C /指定目录 #tar解压到指定文件夹 ####注意:解压指定文档前不需要加/ --- tar -zxvf d9auto_opt.tar.gz opt/proxy_pool-2.1.0/README.md opt/proxy_pool-2.1.0/log/schedule.log #解压指定文件 tar -zxvf d9auto_opt.tar.gz opt/proxy_pool-2.1.0/log/ #解压指定文件夹 --- #zip -b<工作目录> 指定暂时存放文件的目录。 -c 替每个被压缩的文件加上注释。 -d 从压缩文件内删除指定的文件。 -f 更新现有的文件。 -q 不显示指令执行过程。 -r 递归处理,将指定目录下的所有文件和子目录一并处理。 -S 包含系统和隐藏文件。 #将 /home/html/ 这个目录下所有文件和文件夹打包为当前目录下的 html.zip: zip -q -r html.zip /home/html #如果在我们在 /home/html 目录下,可以执行以下命令: zip -q -r html.zip * #从压缩文件 cp.zip 中删除文件 a.c zip -dv cp.zip a.c #unzip -l 显示压缩文件内所包含的文件。 -t 检查压缩文件是否正确。 -L 将压缩文件中的全部文件名改为小写。 -M 将输出结果送到more程序处理。 -n 解压缩时不要覆盖原有的文件。 -o 不必先询问用户,unzip执行后覆盖原有文件。 -P<密码> 使用zip的密码选项。 -q 执行时不显示任何信息。 -s 将文件名中的空白字符转换为底线字符。 -d<目录> 指定文件解压缩后所要存储的目录。 -x<文件> 指定不要处理.zip压缩文件中的哪些文件。 #查看压缩文件中包含的文件 unzip -l abc.zip #解压文件 unzip abc.zip #解压指定文件到指定目录 unzip <Your zip file> "*mobile/要解压的文件" -d <要解压的目录> #* : 可以使用*做通配符,具体使用我就不废话了! #-d : -d 参数后面跟上你要解压文件到哪个目录;
分享到: