• 高清:创意十足!杭州萌娃毕业照留下成长足迹 2019-04-08
  • 上交所:存托凭证上市首日不实行价格涨跌幅限制 2019-04-08
  • 谁拆迁都是一样一片狼藉,拆迁时欢天喜地,回迁时垂头丧气。拆迁者得到好处,被拆者哭天喊地。 2019-04-07
  • 网上支付出现异常如何解决? 2019-04-07
  • [微笑]咱建议进一步提高挂号费标准,最起码也得200元起步…… 2019-03-30
  • 一语惊坛(5月30日):磋商,不等于反复折腾。 2019-03-16
  • 南粤风采36选7开奖查询:使用 partclone 备份磁盘分区

    在linux中,最常用的?block level?备份工具应该非?dd?莫属了。 然而用?dd?做磁盘备份有一个不好的地方就是太费空间,磁盘多大,生成的备份文件就有多大。

    partclone 跟?dd?类似,也是一款?block level?的备份工具,因此使用它你无需担心会破坏磁盘中?acls?或?selinux labels?这一类特殊的文件权限。

    但是跟?dd?相比,?partclone?能够识别大多数常见的文件类型,只备份磁盘中用到的那些block,从而大大减少备份所耗的空间。

    目前?partclone?支持的文件系统格式包括ext2, ext3, ext4, hfs+, reiserfs, xfs, jfs, ntfs, fat(12/16/32), exfat。

    对每种文件系统?partclone?都提供了对应的?partclone.<fs>?对应。比如备份?ext4?文件系统则使用?parclone.ext4?进行备份。 对于不支持的文件系统,?partclone?也提供了?partclone.dd?来备份。

    安装partclone

    archlinux上可以直接使用pacman来安装:

    sudo pacman -S partclone --noconfirm

    备份磁盘分区

    在备份磁盘分区之前,请先确保被备份的分区需要先卸载。不过如果你是用的?lvm?,那么可以创建一个逻辑卷的 live snapshot,因此可以不受此限制。

    下面这个例子,我把安装好的orangepilite做个备份。

    将orangepilite断电后,推出TF卡,然后插入读卡器中,插入电脑的USB接口。然后执行

    sudo partclone.ext4 -c -s /dev/sdb1 -o /mnt/orangepilite.pcl

    其中:

    -c
    表示clone一个备份
    -s
    指定clone的源
    -o
    指定保存的镜像文件

    你会发现,虽然TF卡是8G,但是产生的orangepilite.pcl只有1.3G

    [[email protected] lujun9972]$ ls -lh /mnt/orangepilite.pcl 
    -rw------- 1 root root 1.3G 3月   8 21:23 /mnt/orangepilite.pcl

    不过更多的时候,我们会对镜像文件压缩存储,我们可以让?partclone?与?gzip?连用实现这一点

    sudo bash -c "partclone.ext4 -c -s /dev/sdb1 |gzip -c -9 >/mnt/orangepilite.pcl.gz"

    最后产生的备份文件只有454M

    [[email protected] lujun9972]$ ls -lh /mnt/orangepilite.pcl.gz 
    -rw-r--r-- 1 root root 454M 3月   8 21:34 /mnt/orangepilite.pcl.gz

    相比之下,用?dd?备份后压缩的大小为5.4G!

    [[email protected] mnt]$ sudo bash -c "dd if=/dev/sdb1 | gzip -c -9 >/mnt/orangepilite.dd.gz"
    记录了15205152+0 的读入
    记录了15205152+0 的写出
    7785037824 bytes (7.8 GB, 7.3 GiB) copied, 601.261 s, 12.9 MB/s
    [[email protected] mnt]$ ls -l /mnt/orangepilite.dd.gz 
    -rw-r--r-- 1 root root 5791589654 3月   8 21:49 /mnt/orangepilite.dd.gz
    [[email protected] mnt]$ ls -lh /mnt/orangepilite.dd.gz 
    -rw-r--r-- 1 root root 5.4G 3月   8 21:49 /mnt/orangepilite.dd.gz

    从备份还原

    从备份还原很简单

    sudo partclone.ext4 -r -s /mnt/orangepilite.pcl -o /dev/sdb1

    这里?-r?表示还原(restore),然后把上面备份的?-s?和?-o?参数值反过来就是了。

    若备份的是压缩过的文件,则只需要运行

    sudo bash -c "gzip -c -d /mnt/orangepilite.pcl.gz | partclone.ext4 -r -o /dev/sdb1"


    相关文章

    发表评论

    Comment form

    (*) 表示必填项

    还没有评论。

    广东好彩36开奖结果
    返回顶部
  • 高清:创意十足!杭州萌娃毕业照留下成长足迹 2019-04-08
  • 上交所:存托凭证上市首日不实行价格涨跌幅限制 2019-04-08
  • 谁拆迁都是一样一片狼藉,拆迁时欢天喜地,回迁时垂头丧气。拆迁者得到好处,被拆者哭天喊地。 2019-04-07
  • 网上支付出现异常如何解决? 2019-04-07
  • [微笑]咱建议进一步提高挂号费标准,最起码也得200元起步…… 2019-03-30
  • 一语惊坛(5月30日):磋商,不等于反复折腾。 2019-03-16