1、添加一块硬盘
2、分区新添加的磁盘
# 查看刚添加的磁盘
[[email protected] ~]# ls /dev/sd*
/dev/sda /dev/sda1 /dev/sda2 /dev/sda3 /dev/sdb
# 指定分区的设备
[[email protected] ~]# fdisk /dev/sdb
欢迎使用 fdisk (util-linux 2.23.2)。
更改将停留在内存中,直到您决定将更改写入磁盘。
使用写入命令前请三思。
Device does not contain a recognized partition table
使用磁盘标识符 0xfba17fbe 创建新的 DOS 磁盘标签。
命令(输入 m 获取帮助):n #创建一个新的分区
Partition type:
p primary (0 primary, 0 extended, 4 free)
e extended
Select (default p): p #创建一个主分区
分区号 (1-4,默认 1):
起始 扇区 (2048-41943039,默认为 2048):
将使用默认值 2048
Last 扇区, +扇区 or +size{K,M,G} (2048-41943039,默认为 41943039):
将使用默认值 41943039
分区 1 已设置为 Linux 类型,大小设为 20 GiB
命令(输入 m 获取帮助):p #打印分区表
磁盘 /dev/sdb:21.5 GB, 21474836480 字节,41943040 个扇区
Units = 扇区 of 1 * 512 = 512 bytes
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节
磁盘标签类型:dos
磁盘标识符:0xfba17fbe
设备 Boot Start End Blocks Id System
/dev/sdb1 2048 41943039 20970496 83 Linux
命令(输入 m 获取帮助):w #保存
The partition table has been altered!
Calling ioctl() to re-read partition table.
正在同步磁盘。
[[email protected] ~]# ls /dev/sd*
/dev/sda /dev/sda1 /dev/sda2 /dev/sda3 /dev/sdb /dev/sdb1
3、使用新的分区,格式化分区,并进行挂载
# 格式化设备
[[email protected] ~]# mkfs.xfs /dev/sdb1
# 创建挂载点
[[email protected] ~]# mkdir sdb1
# 将新磁盘挂载到sdb1目录
[[email protected] ~]# mount /dev/sdb1 sdb1
4、准备备份测试文件
[[email protected] ~]# cd /sdb1/
[[email protected] sdb1]# cp /etc/passwd ./
[[email protected] sdb1]# mkdir test
[[email protected] sdb1]# touch test/a
[[email protected] sdb1]# tree /sdb1/
[[email protected] sdb1]# tree -a
.
├── passwd
└── test
└── a
1 directory, 2 files
5、备份
1、备份整个分区。 (这个功能就像是虚拟机的快照,服务器被黑后,进行快速恢复)
[[email protected] sdb1]# xfsdump -f /opt/dump_sdb1 /dev/sdb1
fsdump: using file dump (drive_simple) strategy
xfsdump: version 3.1.7 (dump format 3.0) - type ^C for status and control
============================= dump label dialog ==============================
please enter label for this dump session (timeout in 300 sec)
-> dump_sdb1 指定备份会话标签
session label entered: "dump_sdb1"
--------------------------------- end dialog ---------------------------------
xfsdump: level 0 dump of fengjunhong:/root/sdb1
xfsdump: dump date: Mon Mar 25 20:31:36 2019
xfsdump: session id: 554cfd91-0717-49f9-95dd-cd8825f7ed58
xfsdump: session label: "dump_sdb1"
xfsdump: ino map phase 1: constructing initial dump list
xfsdump: ino map phase 2: skipping (no pruning necessary)
xfsdump: ino map phase 3: skipping (only one dump stream)
xfsdump: ino map construction complete
xfsdump: estimated dump size: 25856 bytes
xfsdump: /var/lib/xfsdump/inventory created
============================= media label dialog =============================
please enter label for media in drive 0 (timeout in 300 sec)
-> sdb1 指定设备标签,就是对要备份的设备做一个描述
media label entered: "sdb1"
--------------------------------- end dialog ---------------------------------
xfsdump: creating dump session media file 0 (media 0, file 0)
xfsdump: dumping ino map
xfsdump: dumping directories
xfsdump: dumping non-directory files
xfsdump: ending media file
xfsdump: media file size 25552 bytes
xfsdump: dump size (non-dir files) : 2592 bytes
xfsdump: dump complete: 41 seconds elapsed
xfsdump: Dump Summary:
xfsdump: stream 0 /opt/dump_sdb1 OK (success)
xfsdump: Dump Status: SUCCESS
2、指定备份时免交互操作,方便后期做定时备份
[[email protected] sdb1]# xfsdump -f /opt/dump_passwd /dev/sdb1 -L dump_passwd -M sdb1
-L :xfsdump 纪录每次备份的 session 标头,这里可以填写针对此文件系统的简易说明
-M :xfsdump 可以纪录储存媒体的标头,这里可以填写此媒体的简易说明
3、测试恢复:先删除之前创建的内容
# 查看sdb1下的文件
[[email protected] sdb1]# ls
passwd test
# 显示当前工作目录
[[email protected] sdb1]# pwd
/root/sdb1
# 删除sdb1下所有文件
[[email protected] sdb1]# rm -rf ./*
4、指定只备份分区中某个目录
参数:-s 文件路径 只对指定的文件进行备份,-s指定时,路径写的是相对路径(-s可以是文件或目录)
[[email protected] sdb1]# xfsdump -f /opt/dump_grub2 -s grub2/grub.cfg /boot -L dump_grub2 -M boot_sda1
5、查看备份信息与内容
[[email protected] sdb1]# ls /var/lib/xfsdump/inventory/
5632fc5b-0fb3-4003-8b70-5db858fb13a9.InvIndex
b14bb143-e108-40f6-96a3-ec414e09cb8e.StObj
fstab
6cfacb7e-361b-4119-8946-ed3e4484550e.StObj
dfb3e61f-9bdb-45f9-a70a-7096c086a382.InvIndex
[[email protected] sdb1]# xfsdump -I # 字母大写"I",查看备份信息
6、恢复
1、文件系统恢复
语法:xfsrestore -f 指定恢复文件的位置 指定存放恢复后的文件的路径
[[email protected] ~]# xfsrestore -f /opt/dump_sdb1 sdb1
# 查看恢复情况
[[email protected] ~]# ls sdb1
2、恢复单个文件