当前位置:首页 » 操作系统 » linuxtar备份

linuxtar备份

发布时间: 2023-03-21 08:58:48

linux命令:tar

原单词 tar命令最初的设计目的是将文件备份到磁带上(tape archive),因而得名tar
实物长这样

tar 命令是linux系统中常用的 压缩文件 和 解压缩文件命令

tar 命令的参数 异常之多,咱们只学习满足 压缩文件 和 解压缩文件 命令的参数就可以了
<mark style="box-sizing: border-box; background-color: rgb(255, 255, 0); color: rgb(0, 0, 0);">工作中应用于安装软件,搭建应用,部署环境</mark>

举例: 将root目录下的 adir目录和a.txt文件 压缩为 test.tar.gz

注意是大写C
如果 不使用-C参数 则默认解压至当前工作目录
举例: 将 test.tar.gz 压缩文件解压到/root目录

-c 建立新的备份文件。
-x 从备份文件中还原文件。
-v 显示指令执行过程。
-f 指定备份文件。
-z 通过gzip指令处理备份文件。(如果解压文件后缀是.tar,没有.gz则不需要使用-z参数)
-C 指定解压到的目录

使用xshell连接linux
在root 目录下 新建 tarTest目录
进入tarTest目录

压缩 /root/lnTest文件夹 和 /root/Centos-7.repo 文件 到 /root/tarTest目录下,压缩文件名为 test.tar.gz

进入/root/tarTest目录
解压test.tar.gz到当前目录(/root/tarTest)

解压test.tar.gz到/root/rmTest目录

❷ linux下备份一个目录下所有文件及目录,应该用什么命令

1、bzip2 filename

//文件即会被压缩,并被保存为 filename.bz2。

2、gzip filename

//文件即会被压缩,并被保存为 filename.gz

3、tar 这个命令把大量的文件和目录打包成一个文件

-c 创建一个新归档

-f 当与-c 选项一起使用时,创建的tar 文件使用该选项指定的文件名;当与-x选项一起使用时,则解除该选项指定的归档

-t 显示包括在tar 文件中的文件列表

-v 显示文件的归档进度

-x 从归档中抽取文件

-z 使用gzip压缩tar 文件

-j锋乎 使用bzip2压缩tar 文件

(2)linuxtar备份扩展阅读:

要创建一个使用tar和bzip2来归档压缩的文件,使用-j选项: tar -cjvf filename.tbz file

如果使用bunzip2 命令解压filename.tbz文件,则filename.tbz会被删肢正除,以filename.tar代替。

要历基悔扩展并解除归档bzip.tar文件,输入命令: tar -xjvf filename.tbz

要创建一个用tar 和gzip归档并压缩的文件,使用-z选项: tar -czvf filename.tgz file

如果使用gunzip 命令解压filename.tgz文件,则filename.tgz会被删除,以filename.tar代替。

❸ linux中,用cp和tar备份一个目录的时候,有什么区别吗

区别肯定有的。cp 是相对于windows的命令,不会对文件进行压缩。tar会把文件打包为一个文件,好像也可以同时压缩文件吧,记不清了。

❹ 如何将linux系统的多个目录及文件备份并压缩到一个文件

使用tar命令就可以,只需要将要备份的目录路径和文件位置依次在后边写上就可以了。

举个例子,我要备份目录 /etc /root 和你当前目录下的test.sh 文件 和test目录。


tarczvftest.tar.gz/etc/roottest.shtest


tar:打包备份命令

-c :建立一个压缩文件的参数指令(create 的意思)

-z :是否同时具有 gzip 的属性?亦即是否需要用 gzip 压缩

-v :压缩的过程中显示文件!这个常用,但不建议用在背景执行过程!

-f :使用档名,请留意,在 f 之后要立即接档名喔!不要再加参数!

❺ Linux怎么备份与还原

本人每次对操作系统更新后都做一次系统备份,我的做法是:
1、在保存备份文件的目录 xxx 下建立一个文件 backup.sh,其内容是:
tar -zcf bin.tar.gz /bin
tar -zcf boot.tar.gz /boot
tar -zcf dev.tar.gz /dev
tar -zcf etc.tar.gz /etc
tar -zcf lib32.tar.gz /lib32
tar -zcf lib64.tar.gz /lib64
tar -zcf lib.tar.gz /lib
tar -zcf opt.tar.gz /opt
tar -zcf sbin.tar.gz /sbin
tar -zcf selinux.tar.gz /selinux
tar -zcf srv.tar.gz /srv
tar -zcf var.tar.gz /var
tar -zcf usr.tar.gz /usr
2、在需要备份的时候进入到保存备份内容的目录执行一次命令: sh backup.sh
3、在保存备份文件的目录 xxx 下建立一个叫 restore.sh 的文件,其内容如下:
tar -zxf /mnt/xxx/bin.tar.gz
tar -zxf /mnt/xxx/boot.tar.gz
tar -zxf /mnt/xxx/dev.tar.gz
tar -zxf /mnt/xxx/etc.tar.gz
tar -zxf /mnt/xxx/lib32.tar.gz
tar -zxf /mnt/xxx/lib64.tar.gz
tar -zxf /mnt/xxx/lib.tar.gz
tar -zxf /mnt/xxx/opt.tar.gz
tar -zxf /mnt/xxx/sbin.tar.gz
tar -zxf /mnt/xxx/selinux.tar.gz
tar -zxf /mnt/xxx/srv.tar.gz
tar -zxf /mnt/xxx/var.tar.gz
tar -zxf /mnt/xxx/usr.tar.gz
4、如果需要系统恢复,我就用光盘启动,mount 原来的根目录为 yyy,接着 mount 保存备份文件的目录为 xxx,接着进入到 /mnt/yyy,并在此下达命令: sh /mnt/xxx/restore.sh
说明:
(1)、备份和恢复需要1个多小时,这个时间根据你电脑的CPU速度和硬盘转速会有所不同。
(2)、上面备份与恢复没有顾及 /home 目录和 /root 目录,因为我的系统主要是给学生做练习用的,那两个目录的内容没有意义。在实际工作中,可能这两个目录才是最重要的,你可以模仿着别的目录添加到 backup.sh 和 restore.sh 文件中去,甚至别的目录都不备份(以便节约备份时间)就备份这两个目录。

❻ 如何备份 linux系统 求tar等命令

用tar会有各种各样难避免的问题,建议直接用启动盘启动系统后利用DD命令来整盘复制。
比如,举个最简单的例子,你只有两分区(以及各自挂载点) /dev/hda1(/) 和/dev/hda2(swap),而且你linux是在/dev/hda1(/)中,于是,你可以另接一硬盘(假设/dev/hdb1)用启动盘重启后,执行命令:
mount /dev/hdb1 /闹巧mnt/hdb1 -t ext2 #挂载到目录,没目录自已建,不用多解释了
dd if=/dev/hda1 of=/mnt/hdb1/sysimage.bak
dd if=/dev/hda of=/mnt/hdb1/mbr.bak bs=1 count=512 #备份MBR和分区表,若分区表不备份就把512改446

等吧。。分区越大时间越久,dd没有ghost这些软件聪明。哪怕你的linux只有1M但你的分区有1G,那备份时间就是复制1G的文件的饥弯哪时间

到另一台机子后,以同样的方法,恢复。假设光盘无坏道且是空的。
dd if=<mbr.bak的路径> of=/dev/hda count=512 bs=1 #跟之前的硬盘的分区一样
dd if=<sysimage.bak的路径> of=/dev/hda1 #恢复系统

差不多就是这样。自已用虚拟机多练习下吧。毕竟具烂码体问题要具体分析和使用。

❼ Linux常用备份方法

用于备份的Tar

备份工具Tar是以前备份文件的可靠方法,几乎可以工作于任何环境中,Linux老用户一般都信赖它。 Linux中以.tar结尾的文件都是用tar创建的。它的使用超出了单纯的备份,可用来把许多不同文件放到一起组成一个易于分开的文件。tar是从Tape ARchiver备份工具起步的。包含在Linux中的GNU tar工具简便易用,包含了一个用来压缩的选项,且支持不断增加的备份。tar是一个命令行的工具,没有图形界面。使用Konsole或Kvt打开一个终端窗口,接下来是一个简单的备份命令: $tar cvf - /home > /temp/backup.tar

这个命令在/tmp目录中创建一个backup.tar的文件,/home目录中所有内容都包含在其中。接下来可以把tar文件拷贝到备份磁盘中。使用简单备份时,如果要使用压缩功能,改为下面命令: $tar czvf - /home > /tmp/backup.tgz

上面扩展名. tgz指出这是一个压缩文件。下一个例子可以用来直接备份到一个安装好的Jaz驱动器中,但这样做要确定有足够的空间: $tar czvf /mnt/jaz/backup.tgz - /home

对于一个磁带驱动器,使用设备名称: $tar czvf /dev/st0/backup.tgz - /home

如果有一个备份非常大,可以使用多卷选项。但是,这样做就不能使用压缩。当第一个磁盘或磁带填满后,tar将提示插入另一张: $tar cvMf /dev/st0/5mar2000.tar -home

要恢复备份使用下面的命令,以Jaz磁盘为例: $tar xzvf /mnt/jaz/5mar2000.tgz /home

表1列出了tar主要功能参数。此外还有很多可选参数,本文不再详述。

表1备份工具tar可以用crontab工具设置成基于时间的有规律地运行。例如,每晚2点把/home目录备份到SCSI磁带驱动器中,只要将下面语句添加到root的crontab中即可: 00 02 * * * tar cvf /dev/st0/homefiles.tar - /home

用于备份的Cpio

GNU cpio工具像tar一样从命令提示行启动程序。与tar相比cpio更复杂,但是也更为可靠。因为如果一个tar文件中某处有一个坏块,就不能对备份文件的其它部分进行访问,而使用cpio,只有坏块不能被访问。cpio创建一个称为-out mode的备份,备份存档中包含了文件和所有者、时间及访问许可等信息。cpio需要一个假定要备份的文件列表。创建列表的一个最方便的方法就是使用ls命令。例如,要把/home目录备份到SCSI磁带设备中,输入下面的命令: $ls /home | cpio -o > /dev/st0

也可以使用find命令。它包括许多选项可以用来消减被存档文件的数量。例如,下面的命令对所有在上一个2 4小时内修改过的文件进行存档: $find /home -mtime 1 -type f -print | cpio -o > /dev/st0

- in模式把文件从备份存档中解出来。下面的命令会恢复前两个备份例子中的所有文件: $cpio -i < /dev/st0

你也可以对cpio的备份进行计划,用crontab工具设置成基于任何时间的有规律地运行。例如,要在每晚2点把/ home目录备份到SCSI磁带驱动器中,把下面的语句添加到root的crontab文件中即可: 00 02 * * * ls /home | cpio -o > /dev/st0

❽ linux 系统如何备份,系统日志如何备份

  1. 备份系统
    我该如何备份我的Ubuntu系统呢?很简单,就像你备份或压缩其它东西一样,使用TAR。和Windows不同,Linux不会限制root访问任何东西,你可以把分区上的所有东西都扔到一个TAR文件里去!
    首先成为root用户:
    $ sudo su
    然后进入文件系统的根目录(当然,如果你不想备份整个文件系统,你也可以进入你想要备份的目录,包括远程目录或者移动硬盘上的目录):
    # cd /
    下面是我用来备份系统的完整命令:
    # tar cvpzf backup.tgz –exclude=/proc –exclude=/lost+found –exclude=/backup.tgz –exclude=/mnt –exclude=/sys /
    让我们来简单看一下这个命令:
    “tar”当然就是我们备份系统所使用的程序了。
    “cvpfz”是tar的选项,意思是“创建档案文件”、“保持权限”(保留所有东西原来的权限)、“使用gzip来减小文件尺寸”。
    “backup.gz”是我们将要得到的档案文件的文件名。
    “/”是我们要备份的目录,在这里是整个文件系统。

    档案文件名“backup.gz”和要备份的目录名“/”之间给出了备份时必须排除在外的目录。有些目录是无用的,例如“/proc”、“
    /lost+found”、“/sys”。当然,“backup.gz”这个档案文件本身必须排除在外,否则你可能会得到一些超出常理的结果。如果不把“

    /mnt”排除在外,那么挂载在“/mnt”上的其它分区也会被备份。另外需要确认一下“/media”上没有挂载任何东西(例如光盘、移动硬盘),如果
    有挂载东西,必须把“/media”也排除在外。
    有人可能会建议你把“/dev”目录排除在外,但是我认为这样做很不妥,具体原因这里就不讨论了。
    执行备份命令之前请再确认一下你所键入的命令是不是你想要的。执行备份命令可能需要一段不短的时间。
    备份完成后,在文件系统的根目录将生成一个名为“backup.tgz”的文件,它的尺寸有可能非常大。现在你可以把它烧录到DVD上或者放到你认为安全的地方去。
    在备份命令结束时你可能会看到这样一个提示:’tar: Error exit delayed from previous errors’,多数情况下你可以忽略它。
    你还可以用Bzip2来压缩文件,Bzip2比gzip的压缩率高,但是速度慢一些。如果压缩率对你来说很重要,那么你应该使用Bzip2,用“j”代替命令中的“z”,并且给档案文件一个正确的扩展名“bz2”。完整的命令如下:
    # tar cvpjf backup.tar.bz2 –exclude=/proc –exclude=/lost+found –exclude=/backup.tar.bz2 –exclude=/mnt –exclude=/sys /



2、系统日志备份

只需要将日志文件移动到备份目录下

然后将日志压缩打包,并删除日志文件

最后重建日志文件

#!/bin/bash
#
nginx_app=/usr/local/nginx/sbin/nginx
logs_dir=/usr/local/nginx/logs
bak_dir=/tmp/logbak/
date=`date +%Y%m%d`
#
#先将日志文件移动到备份目录
cd $logs_dir
echo “moving logs”
mv *.log $bak_dir
sleep 3
#
#重建log文件
echo “rebuild logs”
echo “$nginx_app -s reopen”
$nginx_app -s reopen
#
#打包log文件,并以日期命名
echo “tar log”
cd $bak_dir
tar czf $date.tgz *.log
#
#删除备份目录的临时文件
echo “rm logs”
rm -f *.log
echo “done”

然后添加个计划任务,比如每天凌晨4点半执行,脚本位置在/root/logbak.sh

crontab -e

30 4 * * *sh /root/logbak.sh

❾ linux下备份一个目录下所有文件及目录,应该用什么命令

1、bzip2 filename

//文件即会被压缩,并被保存为 filename.bz2。

2、gzip filename

//文件即会被压缩,并被保存为 filename.gz

3、tar 这个命令把大量的文件和目录打包成一个文件

-c 创建一个新归档

-f 当与-c 选项一起使用时,创建的tar 文件使用该选项指定的文件名;当与-x选项一起使用时,则解除该选项指定的归档

-t 显示包括在tar 文件中的文件列表

-v 显示文件的归档进度

-x 从归档中抽取文件

-z 使用gzip压缩tar 文件

-j 使用bzip2压缩tar 文件

(9)linuxtar备份扩展阅读:

要创建一个使用tar和bzip2来归档压缩的文件,使用-j选项: tar -cjvf filename.tbz file

如果使用bunzip2 命令解压filename.tbz文件,则filename.tbz会被删除,以filename.tar代替。

要扩展并解除归档bzip.tar文件,输入命令: tar -xjvf filename.tbz

要创建一个用tar 和gzip归档并压缩的文件,使用-z选项: tar -czvf filename.tgz file

如果使用gunzip 命令解压filename.tgz文件,则filename.tgz会被删除,以filename.tar代替。

❿ Linux中tar的命令

tar 归档+压缩

语法:tar czvf newfile.tar.gz SOURCE

语法:tar czvf 压缩后的文件名(tar.gz tar.bz2)需要压缩的文件或目录

常用参数:

-z, --gzip 以gzip方式压缩 扩展名: tar.gz

-j : 以bz2方式压缩的 扩展名:tar.bz2

-J: 以xz 方式压缩 扩展名:tar.xz

例1:创建.tar.gz 包

[root@xuegod63 ~]# tar cvf /root/etc.tar /etc

[root@localhost test]# tar zcvf /root/etc.tar.gz /etc#归档,注意备份的名字后缀

[root@localhost test]# tar zxvf /root/etc.tar.gz #解压缩

[root@localhost test]# tar xvf /root/etc.tar.gz #解压缩

例2:创建.tar.bz2包

语法: #tar jcvf newfile.tar.bz2SOURCE

[root@xuegod63 ~]# tar -jcvf ~/etc.tar.bz2 /etc

[root@xuegod63 ~]# tar -jxvf ~/etc.tar.bz2 #解压缩

[root@xuegod63 ~]# tar -xvf ~/etc.tar.bz2 #解压缩

[root@xuegod63 ~]# tar jxvf ~/etc.tar.bz2 -C /opt #解压到opt目录下

例3:创建.tar.xz包

[root@xuegod63 ~]# tar -Jcvf ~/etc.tar.xz /etc

[root@xuegod63 ~]# tar -Jxvf ~/etc.tar.xz #tar.xz 这类包,解压缩

[root@xuegod63 ~]# tar -xvf ~/etc.tar.xz

对比三种压缩方式后压缩比例:

[root@xuegod63 ~]# time tar zcf /root/etc.tar.gz /etc

[root@xuegod63 ~]# time tar jcf /root/etc.tar.bz2 /etc

[root@xuegod63 ~]# time tar Jcf /root/etc.tar.xz /etc

[root@xuegod63 ~]# ll -h etc.tar* (*为通配符,代表任意字符任意次)

-rw-r--r-- 1 0 root 28M5月 10 12:10 etc.tar

-rw-r--r-- 1 0 root 8.7M5月 10 12:14 etc.tar.bz2 #常用

-rw-r--r-- 1 0 root 9.8M5月 10 12:11 etc.tar.gz #常用

-rw-r--r-- 1 0 root 7.0M5月 10 12:16 etc.tar.xz #这个压缩比例最高,压缩的时间是最长

查看源文件大小

[root@xuegod63 ~]# -sh /etc

31M /etc

etc.tar包为28M ,实际几乎没怎么压缩。xz格式化为7.0M,传输的时候效率提高很多。

扩展:

解压指定文件到指定目录

[root@xuegod62 ~]# tar -C /opt -xvf boot.tar.gz boot/grub2/grub.cfg

解压某一类型文件到指定目录

--wildccards文件名匹配,使用通配符

[root@xuegod62 ~]# tar -tvf boot.tar.gz

[root@xuegod62 ~]# tar -C /opt -xvf boot.tar.gz --wildcards *.mo

排除指定文件并解压

[root@xuegod62 ~]# rm -rf /opt/boot

[root@xuegod62 ~]# tar -C /opt -xvf boot.tar.gz boot/grub2 --exclude=boot/grub2/i386-pc

热点内容
编程器的原理 发布:2025-08-28 09:02:29 浏览:527
python如何批量注释 发布:2025-08-28 08:51:29 浏览:650
邮政的医保统一密码是多少 发布:2025-08-28 08:46:31 浏览:581
protel不能编译 发布:2025-08-28 08:45:36 浏览:929
云服务器更换ip后网站打不开 发布:2025-08-28 08:37:28 浏览:861
河北dns的服务器地址 发布:2025-08-28 08:29:19 浏览:638
xp拒绝访问文件夹 发布:2025-08-28 08:24:57 浏览:529
sql2000导出sql数据 发布:2025-08-28 08:18:34 浏览:795
汽车租赁源码 发布:2025-08-28 08:18:27 浏览:6
怎么配置好枪 发布:2025-08-28 07:56:52 浏览:863