Linux系列 备份与分享文档

简介: Linux系列 备份与分享文档

前言

本章将会讲解Linux备份与分享文档


一.备份与分享文档


在Linux操作系统中,最简单的文件和目录备份工具就是cp(复制)命令。


但是当需要备份的文件,目录数量较多时,仅仅使用cp命令就显得“力不从心”,并且备份的文件数量及其所占用的磁盘空间都可能会对服务器产生不小的压力,因此,有必要对需要备份的数据进行归档和压缩。


9384c954bbe5443ca4c5d3a4892b97a7.png


这里所说的归档操作实际上相当于“打包”,即将许多个文件和目录合并保存为一个整体的包文件,以方便传递或携带。而压缩操作可以进一步降低打包后的归档文件所占用的磁盘空间,充分提高备份介质的利用率。


Linux操作系统中较常用的压缩命令工具包括gzip.bzip2.最常用的归档命令工具为tar,使用tar命令可以通过特定选项自动调用gzip或bzip2程序,以完成归档,压缩的整套流程,当然也可以完成解压、释放已归档文件的整套流程.

aafe695c58c94e43b6754ad13dc012ed.png



1.使用压缩和解压缩工具


gzip和bzip2是Linux操作系统中使用最多的两个压缩工具,这两个命令都可以压缩指定的文件,或者将已经压缩过的文件进行解压,两者使用的压缩算法各不相同,但命令使用格式基本类似,一般来说bzip2的压缩效率要好一些。


3e7a30aaf4804ac3b9245e55e2b7d1cc.png


(1)gzip和 gunzip命令


使用gzip制作的压缩文件默认的扩展名为“.gz”,制作压缩文件时,使用“-9”选项可以提高压缩的比率,但文件较大时会需要更多的时间,例如,以下操作将对当前目录下的rkfile文件进行压缩,生成压缩文件mkfile.gz(原始文件mkfile不再保留)压缩后的文件大小变为30KB(未压缩时为62KB).

[root@localhost -]# ls -lh mkfile*
-rwxr-xr-x.1 root root 62K May 4 01:32 mkfile
[root@localhost -]# gzip mkfile
[root@localhost -]# ls -lh mkfile*
-rwxr-xr-x. 1 root root 30K May 4 01:32 nkflle.gz

fb21e79149b1461689740b085a6951eb.png

当需要解压缩经gp压缩的文件时,只需使用带‘-d”选项的gxp命令即可,或者直接使用gunzip命令

例如,若将压缩文件mkfile.p进行解压缩,可执行以下操作。

[root@localhost ~]# gzip -d mkfile.gz

或者

[root@localhost -]# gunzip mkfile.gz


(2) bzip2和 bunzip2命令

bzip2和burxip2命令的用法与gzip,gurzip命令基本相同,使用bxzip2制作的压缩文件默认的扩展名为“bx2”。


例如,以下操作将对当前目录下的mkfile文件以较高压缩比进行压缩,生成压缩文件mkfile.bz2(原始文件mkfile不再保留),缩后的文件大小变为30KB(未压缩时为62KB).

[root@localhoat -]# ls -lh mkfile*
-rwxr-xr-x. 1 root root 62K May 4 01:32 mkfile
[root@localhost -]# bzip2 -9 mkfile
[root@localhost -]# ls -lh mkfile*
-rwxr-xr-x. 1 root root 30K May 4 01:32 mkfile.bz2


14da14d5b9554f1b9ac7d95d928ba74c.png

与gtip.gurzip命令相同,当需要解压缩经bzip2压缩的文件时,只需使用带“-d”选项的bzip2命令即可.或者直接使用buzip2命令,例如,若要将压缩文件mkfile.gx进行解压缩,可执行以下操作。

[root@localhost ~]# bzip2 -d mkfile.bz2

或者

[root@localhont -]# bunzip2 mkfile.bz2


2.使用tar归档和释放工具

tar命令主要用于对目录和文件进行归档,在实际的备份工作中,通常在归档的同时也会将包文件进行压缩(需要调用前面的g2p或bzip2命令),以节省磁盘空间。使用tar命令时,选项前的“-”号可以省略,常用的几个选项如下所述。

-c:创建(Greote).tar格式的包文件。

-C:解压时指定释放的目标文件夹。

-f:表示使用归档文件。

-j:调用bzip2程序进行压缩或解压。

-p:打包时保留文件及目录的权限。

-P:打包时保留文件及目录的绝对路径。

-t:列表查看包内的文件。

-v:输出详细信息(Vertbose)。

-x:解开,ter格式的包文件。

-2:调用g2ip程序进行压缩或解压。


(1)制作归档备份文件

制作归档及压缩包(备份)文件时,twr命令的基本格式如下:

tax [选项]....归档及压缩文件名 需要归档的源文件或目录

如果需要对制作的归档文件进行压缩:


可以通过“-z”或“-j”选项自动调用压缩工具(分别对应gp.bzip2命令程序)进行压缩。


例如,以下操作将会对/etc和/boot目录进行备份,在当前目录下生成名为sysfile.ter.g的归档压缩包,执行过程中可以看到被归档的文件列表信息,需要注意的是,在备份恢复目录或文件时,最好先将工作路径切换至目标目录或文件的所在路径,然后在执行备份命令时使用相对路径,以防输入命令时因手误而导致根目录“/”下重要文件损坏。


[root@localhost -]# cd /
[root@localhoat /]# tar zovf ayafile.tar.gz etc boot
etc/
etc/login.defa
etc/oron.hourly/
etc/fstab
//省略部分内容
[rootllocalhost /]# ls -lh sysfile.tar.gz
-rw-r--r--.1 root root 125M 4月 10 11146 syafile.tar.gz

若需要制作”ta.bz2?格式的归档压缩包,则将“-z”选项改为“-j”选项使用即可。

例如:

以下操作将会对/etc/pesswd./etc/shadow文件进行备份,在/tmp目录下生成名为usershoretar.bz2sny的旧档压缩包。


[root@localhost -]# cd /eto
(root@localhost etc)# tar jovf /tmp/usershome.tar.bz2 pasawd shadow
ete/pasavd
etc/shadow
[root@localhoat otc]# ls -lh /tmp/usershome.tar.bz2
-rw-r--r--.1 root root 2.2K 4月 1011:50/tmp/usershome.tar.bz2

(2)从归档文件中恢复数据

解压并释放(恢复)归档压缩包文件时,twr命令的基本格式如下:

tar [选项]...归档及压缩文件名 [-c目标目录]

类似地,当从“t8r.g2”格式的归档压缩包恢复数据时,需要结合“-z”选项来自动调用压缩工具.而对于”tar.bz2”格式的归档压缩包,对应的是“-j”选项,默认情况下,恢复的数据将释放到当前目录中、如果需要恢复到指定文件夹,还需要结合“-C”选项来指定目标目录。


例如,以下操作将从备份文件usershome.tar.bz2中恢复数据,释放到/etc目录下(将覆盖现有文件)。

[root@localhost -]# tar jxf /tmp/usershome.tar.bx2 -C /etc

在大部分的备份及恢复工作中,只使用ta命令就可以很好地结合gip.bzip2工具协同工作,无须再执行gip或bzip2命令。但是要注意这两个压缩工具的命令程序必须存在。



目录
相关文章
|
3月前
|
存储 安全 Linux
《Linux 简易速速上手小册》第9章: 备份与恢复策略(2024 最新版)
《Linux 简易速速上手小册》第9章: 备份与恢复策略(2024 最新版)
47 1
|
3月前
|
关系型数据库 MySQL Linux
linux下mysql定时备份
linux下mysql定时备份
54 0
|
3月前
|
Shell Linux API
【Shell 命令集合 备份压缩 】Linux 解压缩文件 unzip命令 使用指南
【Shell 命令集合 备份压缩 】Linux 解压缩文件 unzip命令 使用指南
156 0
|
3月前
|
算法 Shell Linux
【Shell 命令集合 备份压缩 】Linux 处理lha格式 lha命令 使用指南
【Shell 命令集合 备份压缩 】Linux 处理lha格式 lha命令 使用指南
62 0
|
3月前
|
Shell Linux 编译器
【Shell 命令集合 备份压缩 】Linux 提取zip压缩文件的详细信息 zipinfo命令 使用指南
【Shell 命令集合 备份压缩 】Linux 提取zip压缩文件的详细信息 zipinfo命令 使用指南
77 0
|
3月前
|
存储 算法 Shell
【Shell 命令集合 备份压缩 】⭐⭐Linux 压缩和归档工具 zip命令 使用指南
【Shell 命令集合 备份压缩 】⭐⭐Linux 压缩和归档工具 zip命令 使用指南
72 0
|
3月前
|
存储 Shell Linux
【Shell 命令集合 备份压缩 】Linux 解码uuencode编码的文件 uudecode 命令 使用指南
【Shell 命令集合 备份压缩 】Linux 解码uuencode编码的文件 uudecode 命令 使用指南
57 0
|
3月前
|
存储 Shell Linux
【Shell 命令集合 备份压缩 】Linux 恢复由dump命令创建的备份文件 restore命令 使用指南
【Shell 命令集合 备份压缩 】Linux 恢复由dump命令创建的备份文件 restore命令 使用指南
53 0
|
3月前
|
关系型数据库 MySQL Linux
Linux系统使用定时脚本备份mysql
Linux系统使用定时脚本备份mysql
|
8天前
|
关系型数据库 数据库 PostgreSQL
Linux 环境手动备份postgresql数据库
【8月更文挑战第12天】在Docker环境中使用命令行工具对PostgreSQL数据库进行备份和恢复。首先,通过dockerexec进入容器,使用pg_dump进行数据库模式的备份,然后使用dockercp将备份文件导出。接着,若需导入数据到另一数据库,先将备份文件复制到目标容器,再利用psql命令进行数据恢复。整个过程需确保目标数据库无同名模式,以防止导入失败
15 3