centos7文件备份

合集下载

centos7服务器搭建7日杀(7daystodie)服务器,配置,存档,迁移方法(踩坑总结)

centos7服务器搭建7日杀(7daystodie)服务器,配置,存档,迁移方法(踩坑总结)

centos7服务器搭建7⽇杀(7daystodie)服务器,配置,存档,迁移⽅法(踩坑总结)最近搞了软路由, 不搞点事情不舒服. 正好周末和朋友玩7⽇杀, 搭个服务器玩玩.⽹络环境准备.1. 公⽹ip的机器or2. ⾃家⽹络, 找电信要了公⽹ip && 光猫使⽤桥接由路由拨号 && 路由器需要⽀持ddns && 路由器⽀持端⼝映射机器⼀个⼰喜欢的linux发⾏版(本记录使⽤centos7为例)安装过程:1. 安装steamlink所需要的lib包yum install glibc.i686 libstdc++.i686 -y2. 选⼀个steamlink的安装⽬录, 这⾥我装到 /home/ ,下载并解压cd /home/ && wget https:///client/installer/steamcmd_linux.tar.gztar xf steamcmd_linux.tar.gzcd steamcmd/3. 登录steamlink./steamcmd.sh登录账号前先设置7⽇杀安装⽬录, 这⾥我直接装在当前⽬录的 7d2d 新⽬录(/home/steamcmd/7d2d)force_install_dir ./7d2dlogin 你的steam账号输⼊密码和令牌登录成功4. 下载游戏app_update 2944205. 编辑服务器信息进⼊7⽇杀程序⽬录 cd 7d2d编辑服务器配置vim serverconfig.xml这⾥重点关注⼏个字段:ServerName 你服务器在公⽹显⽰的名字ServerPassword 连接密码ServerPort 服务器端⼝, 注意这个端⼝填的是tcp端⼝,假设是默认的26900. 但七⽇杀同时还需要⽤到这个端⼝号+3范围内的udp端⼝(我这udp监听的是26902), 配置⽂件这⾥只填tcp的端⼝号就好ServerVisibility 服务器可见性 2公开, 1朋友可见(但服务器没有朋友,所以和0效果⼀样), 0不列出TelnetEnabled telnet开关,强烈建议开着⽅便调试连通性GameWorld 这⾥填的值注意如果是随机地图就填 RWG , 如果不是随机地图⽽是系统预设好的,则使⽤系统预设地图名 ,名字就是7⽇杀安装⽬录/Data/Worlds ⾥的地图名WorldGenSeed 地图⽣成种⼦注意这⾥有坑如果是从外部迁移存档并且使⽤的是随机⽣成的地图, 这个种⼦必须和创建时⼀致. 因为他是通过这个种⼦和地图⼤⼩来计算出地图名的, 计算出的地图名的结果需要和你迁移过来的⽣成地图⼀致WorldGenSize 地图⼤⼩ 2048的倍数, 最⼤在16384以内,对应到游戏创建时的4km-14km 注意如果是从外部迁移存档并且使⽤的是随机⽣成的地图, 这个种⼦必须和创建时⼀致,原因同上(关于迁移, 下⾯会说)GameName 游戏名, 如果是迁移的, 也必须⼀致(关于迁移, 下⾯会说)其他配置根据⾃⼰喜好参考官⽅⽂档修改 https:///wiki/7_Days_to_Die_Dedicated_Server6. 启动服务器启动服务器, 因为 startserver.sh 会阻塞当前ssh窗⼝, 建议使⽤ nohup 和&结合, 新建⼀个脚本 startup.sh专门⽤来启动服务器,把⽇志输出到⽂件⾥.这样就可以随意关闭控制台了vim startup.sh#!/bin/shnohup ./startserver.sh -configfile=serverconfig.xml > stdout.log &保存退出, 设置运⾏权限chmod 777 startup.sh 启动服务器./startup.shtop ⼀下看看7DaysToDieServe 进程有没有开始在努⼒跑, 如果是那就正确了.tailf stdout.log 可以观察服务器⽇志输出.关闭服务器进程可执⾏pkill 7Days看服务器是否正确的监听了tcp和udp端⼝netstat -anop | grep 7Day如果端⼝没改过是默认的26900, 那么启动好后执⾏这个命令可以看到tcp端⼝监听,同时还会看到监听 26902 udp端⼝测试tcp端⼝连通性telnet 127.0.0.1 26900如果通,会看到下⾯消息Trying 127.0.0.1...Connected to 127.0.0.1.Escape character is '^]'.GameType:7DTD;GameMode:Survival;GameName:哎呀哟;ServerDescription:XXXXX 专⽤;ServerWebsiteURL:;IP:XXXXXXX;LevelName:Mahude Valley;GameHost.........测试udp端⼝连通性nc -vuz 127.0.0.1 26902如果通,会看到下⾯消息Ncat: Version 7.50 ( https:///ncat )Ncat: Connected to 127.0.0.1:26902.Ncat: UDP packet sent successfullyNcat: 1 bytes sent, 1 bytes received in 2.03 seconds.7. 外⽹处理如果是在外⽹ip的机器上, 直接设置防⽕墙和iptables开放26900-26903端⼝即可如果是⾃家⽹络, 需要在路由器上设置ddns, 路由器上设置端⼝映射外⽹的 tcp 26900, udp 26901-26903 映射到7⽇杀所在服上的相同端⼝, 这部分不同路由器操作不⼀样, 不记录步骤了. ⾃家⽹络不建议设置DMZ主机! 整台机全部端⼝暴露到公⽹会有安全风险.连通性测试, 和第6步后⾯⼀样, 只是把127.0.0.1 换成公⽹ip或是你设置的ddns域名8. 存档和⽬录结构win存档位置 C:\Users\⽤户名\AppData\Roaming\7DaysToDie\Saves\[GameWrold]\[GameName]win随机⽣成地图位置 C:\Users\⽤户名\AppData\Roaming\7DaysToDie\GeneratedWorlds\[GameWrold]linux存档位置 /root/.local/share/7DaysToDie/Saves/[GameWrold]/[GameName]linux随机⽣成地图位置 /root/.local/share/7DaysToDie/GeneratedWorlds/[GameWrold]注意 GameWrold 如果是预设地图, 则是游戏⽬录⾥Data/Worlds 对应的名字⽐如PREGEN02,PREGEN6k , 如果是随机⽣成地图则是⽣成的地图名字, ⽐如Voluya Territory, Mahude Valley 这种名字9. 迁移:如果是预设地图, 直接迁移 save\[GameWrold]\[GameName] 到服务器的 save\[GameWrold]\[GameName] , 然后编辑服务器serverconfig.xml的 GameWorld和GameName和⽬录对应即可,如果是随机⽣成地图, 需要迁移GeneratedWorlds\[GameWrold] 和 save\[GameWrold]\[GameName] 到服务器对应⽬录, 然后编辑服务器serverconfig.xml的 GameWorld 改为RWG, GameName填⽬录对应的GameName, WorldGenSeed和WorldGenSize需要和创建时⼀致. 改完后启动时注意观察⽇志输出, 如果看到 GamePref.GameWorld 这⾏和你迁移的GameWorld名字⼀样说明就对了, 说明服务器计算出的地图名和你迁移的GameWorld名称⼀致,就会使⽤你已经创建好的随机⽣成地图和存档, 这⾥有点坑不知道为什么这么设计..。

数据备份操作指南

数据备份操作指南

数据备份操作指南数据备份是一项重要且必需的任务,它可以保证数据的安全性,并在意外情况下恢复数据。

本文将向您介绍数据备份的操作指南,帮助您有效地完成备份任务。

一、备份前的准备工作在进行数据备份之前,需要进行以下准备工作:1. 确定备份目标:确定您要备份的数据类型和范围,包括文件、文件夹、数据库等。

2. 选择备份设备:选择合适的备份设备,例如外部硬盘、网络存储设备或云存储服务。

3. 创建备份计划:根据备份需求,制定备份计划,包括备份时间、备份频率和保存周期等。

二、选择备份方法数据备份可采用多种方法,常见的有以下几种:1. 手动备份:手动备份是最简单的备份方法,通过将文件复制到备份设备实现。

适用于少量文件备份或定期备份全盘。

2. 定时备份:利用操作系统或备份软件提供的定时任务功能,定期自动备份指定文件或文件夹,确保数据实时备份。

3. 增量备份:在首次全量备份的基础上,只备份最新修改的文件,减少备份时间和存储空间。

三、进行数据备份以下是数据备份的具体操作步骤:1. 连接备份设备:将备份设备与计算机连接,确保设备可用并识别。

2. 选择备份源:通过文件浏览器或备份软件,选择您要备份的文件、文件夹或数据库。

3. 设置备份目标:指定备份目标位置,可以选择本地硬盘、网络存储设备或云存储服务。

4. 开始备份:点击“开始备份”按钮或执行相应命令,启动数据备份过程。

5. 等待备份完成:备份过程可能需要较长时间,取决于数据量和备份速度,请耐心等待备份完成。

6. 验证备份数据:备份完成后,验证备份数据的完整性和可用性,确保备份成功。

四、数据备份注意事项在进行数据备份时,请注意以下事项:1. 多地备份:将备份数据存储在不同的物理位置,以防因天灾人祸等原因造成数据损失。

2. 定期更新备份:及时更新备份数据,确保备份的是最新的数据。

3. 密码保护:加密备份数据,确保数据的机密性和安全性。

4. 数据压缩:采用数据压缩技术,减少备份数据的存储空间占用。

Linux命令行中的系统备份和恢复技巧与实用工具推荐

Linux命令行中的系统备份和恢复技巧与实用工具推荐

Linux命令行中的系统备份和恢复技巧与实用工具推荐在Linux命令行中,系统备份和恢复是一项重要的技能。

无论是为了预防系统故障还是进行系统迁移,备份和恢复都是必不可少的任务。

本文将介绍Linux命令行中的系统备份和恢复技巧,并推荐一些实用的工具。

一、系统备份技巧1. 使用tar命令进行文件备份:tar命令可以将文件或目录打包成一个压缩文件,并可选地进行压缩。

以下是一些常用的tar命令示例:- 备份文件夹:tar -cvf backup.tar /path/to/folder- 压缩备份文件:tar -czvf backup.tar.gz /path/to/folder- 备份多个文件和文件夹:tar -cvf backup.tar file1 folder1 file22. 使用rsync命令进行增量备份:rsync命令可以在不同的主机之间同步文件,并且只传输修改的部分,从而实现增量备份。

以下是一些常用的rsync命令示例: - 本地备份:rsync -av /path/to/source /path/to/destination- 通过SSH进行备份:rsync -avz -e ssh /path/to/sourceuser@remote:/path/to/destination- 增量备份:rsync -av --backup --suffix=.bak /path/to/source/path/to/destination3. 使用dd命令进行磁盘备份:dd命令可以直接复制硬盘或分区的内容,并创建一个镜像文件。

以下是一些常用的dd命令示例:- 备份整个磁盘:dd if=/dev/sda of=/path/to/backup.img- 备份分区:dd if=/dev/sda1 of=/path/to/backup.img- 恢复备份:dd if=/path/to/backup.img of=/dev/sda二、系统恢复技巧1. 使用tar命令进行文件恢复:如果使用tar命令进行备份,可以使用相应的命令进行恢复。

CentOS7备份和还原

CentOS7备份和还原

Linux备份和还原实验目的备份linux系统下一个目录/boot和一个分区,其挂载点是/home。

实验步骤步骤一:添加备份盘添加之前查看当前文件系统使用情况,查看备份目录下文件占用情况。

#df –h------查看文件系统使用率#lsblk------查看分区挂载情况#du –s /home------查看目录下所有文件大小#du –s /boot步骤二:加载备份盘根据以上查询,添加一块1GB硬盘即可用于备份。

#cat /proc/scsi/scsi----查看当前磁盘控制器编号,和磁盘ID#echo “scsi add-single-device 0 0 1 0” >>/proc/scsi/scsi#lsblk步骤三:对备份盘进行分区根据需求,分两个区,/dev/sdb1 200MB空间,用来备份/boot。

/dev/sdb2 使用余下800MB空间,用来备份/home分区。

#fdisk /dev/sdb步骤四:安装dump包#mount /dev/sr0 /mnt #cd /etc/yum.repos.d #mkdir backup#mv C* backup/#vim cdrom.repo [aix]name=aix26soft baseurl=file:///mntenabled=1gpgcheck=0保存,退出。

#yum–y install dump步骤五:备份#dump 0f /dev/sdb1 /boot#restore –tf /dev/sdb1#dump 0uf /dev/sdb2 /dev/sda5 #restore –tf /dev/sdb2步骤六:还原为了到达测试效果,先删除/boot 和/home#rm –rf /boot #rm –rf /home #ls / #ls /home#restore –rf /dev/sdb1 /boot/boot还原成功。

#restore –rf /dev/sdb2 /home(注意还原分区时,先进入/home)#restore –rf /dev/sdb2 /dev/sda5(如果不想进入分区,注意书写磁盘分区名称)。

centos7基本操作

centos7基本操作

centos7基本操作CentOS 7是一款基于Red Hat Enterprise Linux 7的免费的企业级操作系统,它在Linux操作系统中广受欢迎。

在这篇文章中,我们将为您介绍CentOS 7基本操作,帮助您更好地使用这个操作系统。

第一步:安装CentOS 7操作系统CentOS 7的安装非常简单,首先需要下载CentOS 7的ISO镜像文件,并根据镜像创建一个启动盘。

然后在计算机上插入启动盘并启动计算机,进入安装界面。

在安装界面上,按照指南一步步完成操作系统的安装即可。

第二步:基本配置安装完成后,您需要进行一些基本的配置:1. 更改root用户密码:CentOS 7默认的root用户密码为“root”,第一次登陆需要修改密码。

2. 更新系统:使用以下命令更新系统:sudo yum update。

3. 安装必要的软件:使用以下命令来安装一些必要的软件:sudo yum install net-tools wget openssh-server openssh-clients。

4. 防火墙配置: CentOS 7自带的firewalld 火墙,必须进行开启规则,允许访问网络链接,也可以关闭防火墙,使用以下命令操作:systemctl start firewalld && systemctl enable firewalld。

第三步:用户和组在CentOS 7上,用户和组的授权和管理非常简单。

以下是一些基本的用户和组操作:1. 创建用户:使用以下命令在系统上创建新用户:sudo adduser username。

2. 创建组:使用以下命令在系统上创建新组:sudo groupadd groupname。

3. 添加用户到组:使用以下命令将用户添加到组中:sudo usermod -aG groupname username。

4. 更改用户密码:使用以下命令更改用户的登录密码:sudo passwd username。

centos7的常用命令

centos7的常用命令

centos7的常用命令CentOS 7是一种基于Linux的操作系统,广泛应用于服务器和个人计算机中。

在CentOS 7中,有许多常用命令可以帮助用户进行系统管理和操作。

本文将介绍一些常用的CentOS 7命令,帮助读者更好地了解和使用这些命令。

一、文件和目录操作命令1. ls命令:用于列出目录中的文件和子目录。

2. cd命令:用于切换当前工作目录。

3. mkdir命令:用于创建新目录。

4. rmdir命令:用于删除空目录。

5. cp命令:用于复制文件和目录。

6. mv命令:用于移动文件和目录,也可用于重命名文件和目录。

7. rm命令:用于删除文件和目录。

8. touch命令:用于创建空文件或修改文件的访问时间。

二、文件内容查看和编辑命令1. cat命令:用于查看文件内容。

2. less命令:用于以分页形式查看文件内容。

3. head命令:用于查看文件的前几行内容。

4. tail命令:用于查看文件的后几行内容。

5. grep命令:用于在文件中搜索指定的字符串。

6. vi命令:用于文本编辑,具有强大的编辑功能和操作能力。

7. sed命令:用于对文件进行批量编辑和替换操作。

三、系统管理命令1. ps命令:用于查看当前运行的进程。

2. top命令:用于实时监控系统的运行状态和进程信息。

3. systemctl命令:用于管理系统服务,如启动、停止、重启服务。

4. service命令:用于管理系统服务,与systemctl命令类似。

5. ifconfig命令:用于查看和配置网络接口信息。

6. ping命令:用于测试网络连接是否正常。

7. netstat命令:用于查看网络连接、路由表和网络接口信息。

8. ssh命令:用于远程登录其他计算机。

9. su命令:用于切换用户身份。

10. useradd命令:用于创建新用户账号。

11. passwd命令:用于修改用户密码。

12. chmod命令:用于修改文件和目录的权限。

LinuxCentos7重要目录详解

LinuxCentos7重要目录详解

LinuxCentos7重要⽬录详解⼀.⽬录结构⼆.⽬录说明 1. / 根⽬录 2. /bin/ 可执⾏⼆进制⽂件的⽬录,如常⽤的命令 ls,tar,mv,cat等.  3. /boot/ 开机引导⽬录,包括Linux内核⽂件与开机所需要的⽂件. 建议单独分区,避免根分区空间不⾜⽆法启动. 4. /dev/ 设备⽬录,所有的硬件设备及周边均放置在这个⽬录中. 5. /etc/ 各种配置⽂件⽬录,⼤部分配置属性均存放在这⾥. 6. /home/ 存放每个⽤户的设置⽂件(不包含root⽤户),⽤户桌⾯⽂件夹,⽤户的数据.⼦⽬录名称默认为⽤户名. 7. /lib 系统使⽤的函数库的⽬录,库⽂件.bin及sbin指令也会调⽤对应的库⽂件.程序在执⾏过程中,需要调⽤⼀些额外的参数时需要函数库的协助,⽐较重要的⽬录为/lib/modules 8. /media 可移除设备挂载⽬录,软盘,光盘,U盘等临时挂放⽬录. 9. /mnt ⽤户临时挂载其他的⽂件系统,额外的设备可临时挂载到这⾥. 10. /opt 第三⽅软件安装⽬录,⽬前⼀般都安装在./usr/local⽬录中 11. /proc 虚拟⽂件系统,通常是内存中的映射,特别注意在误删除数据⽂件后,⽐如DB,只要系统不重启还是有很⼤⼏率能将数据找回来. 12. /root 系统管理员主⽬录,除root之外,其他的⽤户⽬录均放置在/home/* ⽬录下 13. /run 系统运⾏时所需的⽂件,以前放置在/var/run中,后来拆分成独⽴的/run⽬录.重启后会重新⽣成对应的⽬录数据. 14. /sbin 只有root才能运⾏的管理指令,跟bin类似,但只属于root管理员. 15. /srv 服务启动后需要访问的数据⽬录. 16. /sys 跟proc⼀样虚拟⽂件系统,记录核⼼系统硬件信息. 17. /tmp 存放临时⽂件⽬录,所有⽤户对该⽬录均可读写. 18. /usr 应⽤程序放置⽬录.在这个⽬录下,你可以找到那些不适合放在/bin或/etc⽬录下的额外的⼯具。

Linux终端命令与容灾备份容灾备份和恢复的关键命令介绍

Linux终端命令与容灾备份容灾备份和恢复的关键命令介绍

Linux终端命令与容灾备份容灾备份和恢复的关键命令介绍在Linux系统中,终端命令被广泛用于进行容灾备份和恢复操作。

这些命令可以帮助用户快速备份和恢复关键数据,确保在不可预见的情况下,系统能够迅速恢复正常运行。

1. cp命令cp命令是一个非常常用的命令,用于复制文件和目录。

在容灾备份和恢复中,cp命令可以用来备份关键文件和目录。

例如,要备份一个名为file.txt的文件,可以使用以下命令:cp file.txt backup/file.txt这将把file.txt文件复制到名为backup的目录中。

2. rsync命令rsync命令是用于文件同步和备份的一种强大工具。

它可以在本地系统或远程系统之间同步文件和目录,并可以增量备份,确保只复制发生更改的文件。

以下是一个使用rsync进行备份的例子:rsync -avz source/ backup/这将把source目录中的文件和目录同步到名为backup的目录中。

3. tar命令tar命令被广泛用于创建和管理归档文件。

在容灾备份和恢复中,tar 命令可以用来将多个文件和目录打包成一个文件,并可以设置密码保护。

例如,要创建一个名为backup.tar的归档文件,可以使用以下命令:tar -cvf backup.tar file1 file2 directory1这将把file1、file2和directory1打包成backup.tar文件。

4. dd命令dd命令是一个强大的块设备复制命令,在容灾备份和恢复中常常用于克隆磁盘或恢复映像文件。

例如,要克隆/dev/sda到/dev/sdb,可以使用以下命令:dd if=/dev/sda of=/dev/sdb bs=4M这将把/dev/sda的内容复制到/dev/sdb。

5. dump和restore命令dump和restore命令用于备份和恢复文件系统。

它们可以备份整个文件系统以及文件系统中的文件和目录。

centos7 系统sql server 2019 数据库日常使用指南

centos7 系统sql server 2019 数据库日常使用指南

CentOS 7系统上安装SQL Server 2019数据库后,以下是一些日常使用指南:1. 连接到SQL Server:- 使用SQL Server Management Studio(SSMS)连接到SQL Server。

打开SSMS并输入服务器名称、身份验证类型和凭据。

- 使用命令行工具sqlcmd连接到SQL Server。

打开终端并输入以下命令:`sqlcmd -S <服务器名称> -U <用户名> -P <密码>`。

2. 创建和管理数据库:- 使用T-SQL语句创建数据库。

例如,运行以下命令创建一个名为"myDatabase"的数据库:`CREATE DATABASE myDatabase;`。

- 使用T-SQL语句管理数据库。

例如,运行以下命令删除一个名为"myDatabase"的数据库:`DROP DATABASE myDatabase;`。

3. 创建和管理表:- 使用T-SQL语句创建表。

例如,运行以下命令创建一个名为"myTable"的表:`CREATE TABLE myTable (id INT, name NVARCHAR(50));`。

- 使用T-SQL语句管理表。

例如,运行以下命令插入一条数据到名为"myTable"的表中:`INSERT INTO myTable (id, name) VALUES (1, 'John');`。

4. 执行查询和更新操作:- 使用T-SQL语句执行查询操作。

例如,运行以下命令查询名为"myTable"的表中的所有数据:`SELECT * FROM myTable;`。

- 使用T-SQL语句执行更新操作。

例如,运行以下命令更新名为"myTable"的表中的数据:`UPDATE myTable SET name = 'Jane' WHERE id = 1;`。

Linux终端命令中的系统备份和恢复操作

Linux终端命令中的系统备份和恢复操作

Linux终端命令中的系统备份和恢复操作在Linux系统中,备份和恢复是非常重要的操作,它们可以帮助我们保护数据并在系统故障时快速恢复正常运行。

本文将介绍几个常用的Linux终端命令,用于系统备份和恢复操作。

一、系统备份操作1. tar命令tar命令是一个在Linux中常用的备份工具,它可以将多个文件或目录打包成一个单独的文件。

使用tar命令进行系统备份的步骤如下:(1)打开终端。

(2)使用cd命令进入要备份的目录。

(3)输入以下命令将目录打包成一个文件:tar -cvpf backup.tar 目录名注意:backup.tar为备份文件的名称,目录名为要备份的目录的名称。

(4)等待备份过程完成。

2. rsync命令rsync命令是一个用于远程备份的工具,它可以通过网络将文件从一个主机同步到另一个主机。

使用rsync命令进行系统备份的步骤如下:(1)打开终端。

(2)输入以下命令进行备份:rsync -avzh 源目录目标目录注意:源目录为要备份的目录或文件的路径,目标目录为备份文件存放的路径。

(3)等待备份过程完成。

3. dd命令dd命令是一个用于数据转换和复制的命令,它可以用于创建系统镜像备份。

使用dd命令进行系统备份的步骤如下:(1)打开终端。

(2)输入以下命令进行备份:dd if=/dev/sda of=/path/to/backup.img注意:/dev/sda为要备份的磁盘设备名称,/path/to/backup.img为备份文件的路径和名称。

(3)等待备份过程完成。

二、系统恢复操作1. tar命令使用tar命令进行系统恢复的步骤如下:(1)打开终端。

(2)输入以下命令解压备份文件:tar -xvpf backup.tar注意:backup.tar为备份文件的名称。

(3)等待解压过程完成。

2. rsync命令使用rsync命令进行系统恢复的步骤如下:(1)打开终端。

(2)输入以下命令进行还原:rsync -avzh 目标目录源目录注意:目标目录为备份文件存放的路径,源目录为要恢复到的目录或文件的路径。

服务器数据备份方法

服务器数据备份方法

服务器数据备份方法服务器数据备份是保障服务器数据安全性和可恢复性的重要措施之一。

采用合适的备份方法能够防范服务器故障、人为错误等风险,保证数据的完整性和可用性。

本文将就服务器数据备份方法进行详细介绍。

1. 定期完全备份:定期完全备份是最基础的备份方法。

它将服务器上的所有数据完全复制到备份设备中,包括操作系统、应用程序、用户数据等。

这种备份方法可以最大程度地保证数据的完整性和一致性,但备份时间较长,且占用大量存储空间。

一般建议每周或每月进行一次完全备份。

2. 增量备份:增量备份是在完全备份的基础上,只备份发生变化的数据。

具体做法是记录上一次备份之后发生变化的文件或数据块,并将其复制到备份设备中。

这种备份方法较之完全备份更节省时间和存储空间,但恢复时需要依次恢复完全备份和一系列增量备份,操作步骤较多,耗时较长。

一般建议每天进行一次增量备份。

3. 差异备份:差异备份是在完全备份的基础上,只备份自上次完全备份之后发生变化的数据。

备份时只复制这些变化数据,而不是整个增量备份。

这种备份方法可以减少存储空间的占用,并且较增量备份简化了恢复过程。

一般建议每天进行一次差异备份。

4. 快照备份:快照备份是一种虚拟化技术,它能够在瞬间创建服务器各个层级的镜像,包括操作系统、应用程序和数据。

快照备份不需要停机,且备份时间很短,因此能够提供较为实时的数据备份。

但快照备份需要消耗大量的存储资源,并且恢复时可能需要较长时间。

一般建议每小时或每天进行一次快照备份。

5. 远程备份:远程备份是将数据备份到位于远程地点的备份设备上。

远程备份可有效防范服务器物理损坏、灾难等情况导致的数据丢失。

常用的远程备份方法包括基于云存储的备份、异地备份等。

远程备份的关键是要确保数据的可靠性和安全性,防止数据在传输和存储过程中被篡改、丢失或泄漏。

6. 数据库备份:对于数据库服务器,还需要采取专门的备份方法。

数据库备份一般采用事务日志备份和全量备份相结合的方式。

centos7下自动备份mysql数据库

centos7下自动备份mysql数据库

centos7下⾃动备份mysql数据库
环境:centos7 、mysql5.7
第⼀步:创建⾃动备份脚本⽂件
mkdir backup
cd backup
touch backup.sh
第⼆步:在备份脚本⽂件中写⼊备份脚本
vim backup.sh
在⽂件中写⼊内容后保存(:wq):
/usr/bin/mysqldump -u root -proot mysql > /backup/mysql_$(date "+%Y%m%d_%H:%M:%S").sql
其中:-p后⾯的root是密码,根据实际情况进⾏修改;mysql指的是要备份的数据库名称;⼤于号后⾯的是备份⽂件存放地址,$(date "+%Y%m%d_%H:%M:%S") 解析出来是20190515_14:47:01这样的。

第三步:设置权限
chmod 777 backup.sh
# 测试⼀下
./backup.sh
# 查看结果
ls -l
-rwxrwxrwx 1 root root 89 May 15 15:12 backup.sh
-rw-r--r-- 1 root root 1205573 May 15 15:12 mysql_20190515_15:12:50.sql
第四步:设置定时任务
crontab -e
追加内容,保存退出:
59 23 * * * /backup/back.sh
提⽰:在每天的23:59分执⾏/backup/back.sh脚本。

然后重启crontab,使配置⽣效
/bin/systemctl restart crond.service
-- End --。

centos7镜像文件命名规则

centos7镜像文件命名规则

CentOS 7镜像文件命名规则1. 引言CentOS是一种基于Linux的操作系统,广泛应用于服务器和个人计算机。

CentOS7是CentOS的第七个主要版本,它带来了许多新功能和改进。

在使用CentOS 7时,我们经常需要下载和使用镜像文件。

本文将介绍CentOS 7镜像文件的命名规则,以便用户能够准确识别和选择所需的镜像文件。

2. 镜像文件命名规则CentOS 7镜像文件的命名规则由以下几个部分组成:(1) 发行版本号CentOS 7有不同的发行版本号,每个版本都包含了特定的功能和修复。

发行版本号通常以数字形式表示,例如“7”。

(2) 系统架构CentOS 7支持多种系统架构,包括32位(i386)和64位(x86_64)。

系统架构通常以简称形式表示。

(3) 镜像类型CentOS 7提供了多种不同类型的镜像文件,用于不同场景下的安装和使用。

常见的镜像类型包括:•DVD:完整安装光盘映像,包含了完整的软件包集合。

•Minimal:最小化安装映像,只包含核心组件和最基本的软件包。

•NetInstall:网络安装映像,可以通过网络下载并安装其他软件包。

(4) 版本号除了发行版本号外,CentOS 7还有具体的版本号,用于标识每个版本的更新和修复。

版本号通常以数字和字母的组合形式表示,例如“7.9.2009”。

(5) 镜像文件格式CentOS 7镜像文件可以使用多种不同的格式存储,常见的格式包括ISO、IMG和RAW等。

镜像文件格式通常以简称形式表示。

(6) 后缀名镜像文件的后缀名用于标识所使用的压缩算法或容器格式。

常见的后缀名包括.iso、.img和.raw等。

3. 示例命名规则下面是一些示例命名规则,以便更好地理解CentOS 7镜像文件命名规则:•CentOS-7-x86_64-DVD-2009.iso:CentOS 7 DVD完整安装映像,发行版本号为“7”,系统架构为64位(x86_64),镜像类型为DVD,版本号为“2009”,文件格式为ISO。

centos7ftp使用小记

centos7ftp使用小记

centos7ftp使⽤⼩记客户端 yum -y install ftpftp 192.168.3.1 输⼊名密ftp>cd 进⼊⽬录ftp>cdup 返回上级⽬录ftp>get 123.tar 下载⼀个⽂件到本地ftp>mget *.tar 下载⼀堆⽂件到本地ftp>put 456.tar 上传⼀个⽂件到远端ftp>mput *.tar 上传⼀堆⽂件到远端ftp>delete 789.tar 远端删除⼀个⽂件ftp>mdelete *.tar 远端删除⼀堆⽂件ftp>rmdir 000 删除远端的⼀个⽬录FTP>ascii: 设定以ASCII⽅式传送⽂件(缺省值)FTP>bell: 每完成⼀次⽂件传送,报警提⽰.FTP>binary: 设定以⼆进制⽅式传送⽂件.FTP>bye: 终⽌主机FTP进程,并退出FTP管理⽅式.FTP>case: 当为ON时,⽤MGET命令拷贝的⽂件名到本地机器中,全部转换为⼩写字母.FTP>cd: 同UNIX的CD命令.FTP>cdup: 返回上⼀级⽬录.FTP>chmod: 改变远端主机的⽂件权限.FTP>close: 终⽌远端的FTP进程,返回到FTP命令状态, 所有的宏定义都被删除.FTP>delete: 删除远端主机中的⽂件.FTP>dir [remote-directory] [local-file] 列出当前远端主机⽬录中的⽂件.如果有本地⽂件,就将结果写⾄本地⽂件. FTP>get [remote-file] [local-file] 从远端主机中传送⾄本地主机中.FTP>help [command] 输出命令的解释.FTP>lcd: 改变当前本地主机的⼯作⽬录,如果缺省,就转到当前⽤户的HOME⽬录.FTP>ls [remote-directory] [local-file] 同DIR.FTP>macdef: 定义宏命令.FTP>mdelete [remote-files] 删除⼀批⽂件.FTP>mget [remote-files] 从远端主机接收⼀批⽂件⾄本地主机.FTP>mkdir directory-name 在远端主机中建⽴⽬录.FTP>mput local-files 将本地主机中⼀批⽂件传送⾄远端主机.FTP>open host [port] 重新建⽴⼀个新的连接.FTP>prompt: 交互提⽰模式.FTP>put local-file [remote-file] 将本地⼀个⽂件传送⾄远端主机中.FTP>pwd: 列出当前远端主机⽬录.FTP>quit: 同BYE.FTP>recv remote-file [local-file] 同GET.FTP>rename [from] [to] 改变远端主机中的⽂件名.FTP>rmdir directory-name 删除远端主机中的⽬录.FTP>send local-file [remote-file] 同PUT.FTP>status: 显⽰当前FTP的状态.FTP>system: 显⽰远端主机系统类型.FTP>user user-name [password] [account] 重新以别的⽤户名登录远端主机.FTP>? [command]: 同HELP. [command]指定需要帮助的命令名称。

centos7文件备份

centos7文件备份

centos7文件备份Centos7系统文件备份本文件使用的两台服务器是centos7系统,并且经过测试,文件可以成功备份;如果是其他Linux系统;请部署完成先进行测试。

准备工作:两台centos7系统的服务器一.安装rsynccentos7系统默认安装了rsync(可使用命令 rsync 进行查看);如果没有安装,请使用命令安装yum -y install rsync二.配置rsync安装成功后,修改配置文件:/etc/rsyncd.conf。

使用vim命令打开(没有安装vim命令的,请先安装vim:yum -y install vim)# /etc/rsyncd: configuration file for rsync daemon mode# See rsyncd.conf man page for more options.# configuration example:# uid = nobody# gid = nobody# use chroot = yes# max connections = 4# pid file = /var/run/rsyncd.pid# exclude = lost+found/# transfer logging = yes# timeout = 900# ignore nonreadable = yes# dont compress = *.gz *.tgz *.zip *.z *.Z *.rpm *.deb *.bz2 # [ftp]# path = /home/ftp# comment = ftp export area上面这是默认的配置。

添加如下配置:uid = root# //设置运行rsync 进程的用户gid = rootuse chroot = nomax connections = 4pid file = /var/run/rsyncd.pid#//CentOS7中yum安装不需指定pid file 否则报错lock file=/var/run/rsyncd.locklog file = /var/log/rsyncd.log# //此文件定义完成后系统会自动创建#exclude = lost+found/ 需要排除的文件transfer logging = yestimeout = 900ignore nonreadable = yes# //同步时跳过没有权限的目录dont compress = *.gz *.tgz *.zip *.z *.Z *.rpm *.deb *.bz2 # //传输时不压缩的文件在两台服务器上完成上面两步的配置。

Centos7+nfs+python 实现服务器远程增量备份案例

Centos7+nfs+python 实现服务器远程增量备份案例

4、 df -h #测试,显示如下:
[root@bserver ~]# df -h
文件系统
容量 已用 可用 已用% 挂载点
/dev/mapper/centos-root 17T 6.1T 11T 38% /
devtmpfs
16G 0 16G 0% /dev
/dev/sda2
1014M 237M 778M 24% /boot
……
./apk:
total 360400
-rw-r--r-- 1 root root
774 Dec 18 13:48 apk 说明.txt
-rw-r--r-- 1 root root 31167077 Nov 28 17:46 bjtzq.apk
……
./audio:
total 4
drwxr-xr-x 3 root root 4096 Aug 25 2017 info
bdir.close()
八、备份过程如下(显示在 B 服务器上): …… 老文件名:/backup/upload/科普 e 站 老文件名:/backup/upload/党建 e 站 老文件名:/backup/upload/绿色科技
…… 老文件名:/backup/upload/apk/apk 说明.txt 老文件名:/backup/upload/apk/kjhn.apk 老文件名:/backup/upload/apk/kpez.apk 老文件名:/backup/upload/apk/pj_ynxxs.apk 老文件名:/backup/upload/apk/version.json 老文件夹: /backup/upload/back_al1_sh/ …… 新文件名:/aserver/upload/xcpbysdemo1.html->/backup/upload/ 新文件名:/aserver/upload/xydemo.html->/backup/upload/ 新文件名:/aserver/upload/YLTemp1.html->/backup/upload/ 新文件名:/aserver/upload/zybdemo.html->/backup/upload/ 新文件名:/aserver/upload/apk/bjtzq.apk->/backup/upload/apk/ 新文件名:/aserver/upload/apk/bjtzq.json->/backup/upload/apk/ 新文件名:/aserver/upload/apk/kdxf-3.0.apk->/backup/upload/apk/ 新文件名:/aserver/upload/apk/kjhn_20.apk->/backup/upload/apk/ 新文件名:/aserver/upload/apk/kpez20.apk->/backup/upload/apk/ 新文件名:/aserver/upload/apk/kpez_uuid.apk->/backup/upload/apk/ 新文件名:/aserver/upload/apk/kpzg-4.3.1.apk->/backup/upload/apk/ …… 新文件夹: /backup/upload/config/g_bj_tz_gt_0001/ 新文件夹: /backup/upload/config/g_gz_lps_pz_0009/ 新文件夹: /backup/upload/config/g_kpnft_test_0001/ 新文件夹: /backup/upload/config/g_sh_rchj_0001/ 新文件夹: /backup/upload/config/g_sx_tc_yj_0003/ 新文件夹: /backup/upload/config/g_sx_tc_yt_0010/ 新文件夹: /backup/upload/config/g_xcez_test_20190614_3days/ 新文件夹: /backup/upload/config/g_xj_bt_4S_kkdl_jkez_0001/ 新文件夹: /backup/upload/config/g_xyez_test_20190625_10day/ 新文件夹: /backup/upload/config/g_yn_km_0112/ …… 九、优化 1、可以将 A 服务器/data/upload/下的目录文件用 python 代码生成; 2、可以将目录文件代码、绝对路径目录文件代码和备份代码优化成一个脚本 autoback.py; 3、再将 python autoback.py 放到 crond 中,可以定时执行;

CentOS7下MySQL定时自动备份的实现方法

CentOS7下MySQL定时自动备份的实现方法

CentOS7下MySQL定时⾃动备份的实现⽅法⽣产环境遇到得最幸福得事情就是,某些场景没办法避免去update或者delete的时候,某个参数没有注意。

完蛋了完蛋了,数据被我搞崩了怎么办,赶紧去运营找备份呀!运营说:狗屁咱们系统从来不备份,你说:那把⽇志给我吧,运营说:狗屁每天上G的⽇志,我都没给你开,你说:怎么办,数据库被我搞崩了。

运营说:那是你的事,跟我没关系........这是某公司的⼀段写照,所以今天我们来把这个情况给杜绝今天要给客户部署⼀套系统,使⽤的MySQL5.7,那客户那边的开发⼈员我可不敢保证他们的能⼒咋样。

我只能给他们全部开机⾃启、数据库等重要⽂件⾃动备份好,⼀旦出什么⼳蛾⼦。

咱风淡云轻的⼀⾏命令给搞定,这是⼀个负责任的做法。

准备开始:我们需要实现下⾯的⼏个功能:第⼀:数据库备份第⼆:数据库通过备份恢复第三:数据库备份⾃动化第四:清理过期备份⽂件第⼀:数据库⾃动备份1.创建备份⽬录这⾥我选择了把备份⽂件放在 /data/backup/mysql下⾯,把脚本放在 /data/backup 下⾯:[root@izwz99z5o9dc90keftqhlrz /]# mkdir -p /data/backup/mysql[root@izwz99z5o9dc90keftqhlrz /]# cd /data/backup2.创建脚本⽂件创建mysql_backup.sh[root@izwz99z5o9dc90keftqhlrz backup]# vi mysql_backup.sh#!/bin/bash# db_name ⾃⼰改这⾥哦db_name='baizhan'backup_dir='/data/backup/mysql/'current_time=$(date +'%Y-%m-%d_%H%M%S')filepath=$backup_dir$current_time'.sql.gz'#此处没有使⽤ $db_password $db_user, 已经写⼊到配置⽂件中echo '开始导出数据库...'mysqldump --defaults-extra-file=/data/backup/my_f $db_name | gzip > $filepathecho '导出成功,⽂件名为: '$filepath3.新建配置⽂件就在我们的当前⽬录下即 /data/backup[root@izwz99z5o9dc90keftqhlrz backup]# vi my_f[mysqldump]max_allowed_packet = 400Mhost=127.0.0.1user=rootpassword='SgDGfsrfEi3#@%#%ugslp%z!dAP'[mysql]host=127.0.0.1user=rootpassword='SgDGfsrfEi3#@%#%ugslp%z!dAP'各位看官请把上⾯的参数改成⾃⼰的就好了,可别漏了这⼀步哦其中 mysqldump 下的参数是给导出的命令使⽤的,mysql 下的参数是导⼊的时候使⽤的4.给⽂件权限到这⾥的话导出的shell脚本就已经写好了,我们对这个脚本加⼀下可执⾏权限5.执⾏⼀下我们的命令[root@izwz99z5o9dc90keftqhlrz backup]# sh ./mysql_backup.sh# 查看⼀下结果[root@izwz99z5o9dc90keftqhlrz backup]# ll ./mysql6.扩展使⽤我们解压⼀下已经成功导出的⽂件,看看原⽂件⼤⼩和压缩后的⽂件⼤⼩对⽐[root@izwz99z5o9dc90keftqhlrz backup]# gzip -dc ./mysql/2019-12-22_180359.sql.gz > ./mysql/2019-12-22_180359.sql [root@izwz99z5o9dc90keftqhlrz backup]# ll -sh ./mysqltotal 44K36K -rw-r--r-- 1 root root 36K Dec 22 18:06 2019-12-22_180359.sql8.0K -rw-r--r-- 1 root root 5.9K Dec 22 18:03 2019-12-22_180359.sql.gz36Kb 和8Kb的对⽐,如果数据库⽐较⼤的话,更能节省空间到这⾥为⽌,我们的导出脚本已经完成了,接下来就是导⼊脚本了第⼆:数据库通过备份恢复1.创建脚本⽂件按照第⼀步的操作,此时我们应该处于 /data/backup ⽬录下,继续操作[root@izwz99z5o9dc90keftqhlrz backup]# vi mysql_restore.sh#!/bin/bashif [ -z $1 ] || [ ! -f $1 ]thenecho "请输⼊sql压缩⽂件(*.sql.gz)"exit 1fi#输⼊你⾃⼰的数据库名称db_name='jx_guides'base_dir='/data/backup/mysql/'gz_sql_file=`basename $1`file_ext=${gz_sql_file##*.}if [ $file_ext != 'gz' ]thenecho '⽂件格式不正确,请输⼊ .sql.gz ⽂件'exit 1fisql_file=${gz_sql_file%.*}echo '解压⽂件中...'gzip -dc $base_dir$gz_sql_file > $base_dir$sql_fileecho '解压完成.'echo '开始导⼊数据库...'mysql --defaults-extra-file=/data/backup/my_f $db_name < $base_dir$sql_fileif [ -f $base_dir$sql_file ]thenecho '删除临时⽂件.'rm -f $base_dir$sql_filefiecho '导⼊完成.'上⾯代码中的配置⽂件,就是我们第⼀步时创建的配置⽂件,在这⾥⼀样的使⽤2.增加⽂件可执⾏权限3.我们来执⾏通过备份⽂件恢复数据库[root@izwz99z5o9dc90keftqhlrz backup]# sh ./mysql_restore.sh ./mysql/2019-12-22_180359.sql.gz解压⽂件中...解压完成.开始导⼊数据库...删除临时⽂件.导⼊完成.在这⾥我们的第⼀个参数可以直接写备份⽂件的名字,不⽤写⽬录,但是因为加上⽬录之后,可以使⽤table进⾏⾃动补全,所以⼗分⽅便,其他的执⾏⽅式:其实懂的⼈知道都⼀样其实可以在任何⽂件夹进⾏恢复,执⾏这个可以在任意位置执⾏[root@izwz99z5o9dc90keftqhlrz backup]# sh /data/backup/mysql_restore.sh /data/backup/mysql/2019-12-22_180359.sql.gz也可以这样[root@izwz99z5o9dc90keftqhlrz mysql]# pwd/data/backup/mysql[root@izwz99z5o9dc90keftqhlrz mysql]# sh /data/backup/mysql_restore.sh 2019-12-22_180359.sql.gz第三:数据库备份⾃动化1.添加计划任务[root@izwz99z5o9dc90keftqhlrz mysql]# crontab -e# 粘贴下⾯的内容,数据库⾃动备份0 1,12 * * * /data/backup/mysql_backup.sh # 每天凌晨1点,中午12点备份⼀次数据第四:清理过期备份⽂件1.创建删除⽂件脚本[root@izwz99z5o9dc90keftqhlrz mysql]# vi remove_backup.sh#/bin/bash# 删除15天前的备份find /data/backup/mysql -type f -mtime +15 | xargs rm -f我这⾥是选择备份数据只保留最近15天的,⼤家根据需要⾃⾏修改2.添加可执⾏权限[root@izwz99z5o9dc90keftqhlrz mysql]# chmod +x ./remove_backup.sh#⼿动删除 15天前的备份[root@izwz99z5o9dc90keftqhlrz mysql]# ./remove_backup.sh3.⾃动清理[root@izwz99z5o9dc90keftqhlrz mysql]# crontab -e# 下⾯这个就是脚本内容哦,添加这⼀句0 1 * * * /data/backup/remove_backup.sh # 每天凌晨1点,⾃动删除15天[15是remove_backup.sh⾥⾯配置的]前的备份第五:定时任务配置给贴出来# 粘贴下⾯的内容,数据库⾃动备份0 1,12 * * * /data/backup/mysql_backup.sh # 每天凌晨1点,中午12点备份⼀次数据# 下⾯这个就是脚本内容哦,添加这⼀句0 1 * * * /data/backup/remove_backup.sh # 每天凌晨1点,⾃动删除15天[15是remove_backup.sh⾥⾯配置的]前的备份总结以上所述是⼩编给⼤家介绍的CentOS7下 MySQL定时⾃动备份的实现⽅法,希望对⼤家有所帮助,如果⼤家有任何疑问请给我留⾔,⼩编会及时回复⼤家的。

CenterOs7双机热备+MySQL主备+rsync主主文件同步

CenterOs7双机热备+MySQL主备+rsync主主文件同步

CenterOs7双机热备+MySQL主备+rsync主主文件同步一、实现目的(1)搭建两台web服务器中的负载均衡、文件自动同步和数据库自动同步二、准备工作三、安装keepalived负载均衡的作用是检测服务器的状态,如果有一台web 服务器宕机,或工作出现故障,Keepalived将检测到,并将有故障的服务器从系统中剔除,同时使用其他服务器代替该服务器的工作,当服务器工作正常后Keepalived自动将服务器加入到服务器群中,这些工作全部自动完成,不需要人工干涉,需要人工做的只是修复故障的服务器。

1.A服务器安装keepalived①下载相关依赖包:yum -y install gcc openssl openssl-develpcre②解压keepalived包:tar -zxvf /home/keepalived-2.1.5.tar.gz③安装:cd keepalived-2.1.5./configure && make && make install④编辑配置文件vi /usr/local/etc/keepalived/keepalived.conf调整黄色标记,其余不需要调整vrrp_script chk_http_port {script "/opt/chk_httpd.sh"interval 2weight -10fall 2rise 1}vrrp_instance VI_1 {state MASTERinterface ens33virtual_router_id 51#mcast_src_ip 192.168.56.104priority 100advert_int 1authentication {auth_type PASSauth_pass 1111}track_script {chk_http_port}virtual_ipaddress {#192.168.56.200192.168.4.15}vi /opt/chk_httpd.sh配置文件#!/bin/bashA=`ps -C httpd --no-header |wc -l`# 判断nginx是否宕机,如果宕机了,尝试重启if [ $A -eq 0 ];thensystemctl start httpd# 等待一小会再次检查nginx,如果没有启动成功,则停止keepalived,使其启动备用机#sleep 3if [ `ps -C httpd --no-header |wc -l` -eq 0 ];thenkillall keepalivedfifi⑤复制文件cp /usr/local/sbin/keepalived /usr/sbin/cp /usr/local/etc/sysconfig/keepalived /etc/sysconfig/cp -r /usr/local/etc/keepalived/ /etc/⑥添加开机启动服务systemctl enable keepalived⑦开启服务systemctl start keepalived2.B服务器安装keepalived①下载相关依赖包:yum -y install gcc openssl openssl-develpcre②解压keepalived包:tar -zxvf /home/keepalived-2.1.5.tar.gz③安装:cd keepalived-2.1.5./configure && make && make install④编辑配置文件vi /usr/local/etc/keepalived/keepalived.conf调整黄色标记,其余不需要调整vrrp_script chk_http_port {script "/opt/chk_httpd.sh"interval 2weight -10fall 2rise 1}vrrp_instance VI_1 {state BACKUPinterface ens33virtual_router_id 51#mcast_src_ip 192.168.56.104priority 90advert_int 1authentication {auth_type PASSauth_pass 1111}track_script {chk_http_port}virtual_ipaddress {#192.168.56.200192.168.4.15}vi /opt/chk_httpd.sh配置文件#!/bin/bashA=`ps -C httpd --no-header |wc -l`# 判断nginx是否宕机,如果宕机了,尝试重启if [ $A -eq 0 ];thensystemctl start httpd# 等待一小会再次检查nginx,如果没有启动成功,则停止keepalived,使其启动备用机#sleep 3if [ `ps -C httpd --no-header |wc -l` -eq 0 ];thenkillall keepalivedfifi⑤复制文件cp /usr/local/sbin/keepalived /usr/sbin/cp /usr/local/etc/sysconfig/keepalived /etc/sysconfig/cp -r /usr/local/etc/keepalived/ /etc/⑥添加开机启动服务systemctl enable keepalived⑦开启服务systemctl start keepalived3.A服务器安装mysql 主主同步(slave)(1)先安装数据库,已经安装请跳过①安装系统自带数据库,一般为mariadb:yum -y install mariadb-server mariadb-client②开启mysqlsystemctl start mariadb.service③重新设置密码mysql_secure_installation回车,根据提示输入Y输入2次密码123456,回车根据提示一路输入Y最后出现:Thanksfor using MySQL!④服务器关闭SELinux 和关闭防火墙vi /etc/selinux/config将SELINUX=enforcing 修改为SELINUX=disabledsystemctl stop firewalldsystemctl disable firewalldreboot 重启服务器⑤配置f vi /etc/f仅修改黄色标记部分# 服务器的ID,必须唯一,一般设置自己的IPserver_id=235# 复制过滤:不需要备份的数据库(MySQL库一般不同步)binlog-ignore-db=mysql# 开启二进制日志功能,名字可以随便取,最好有含义(比如项目名)log-bin=edu-mysql-bin# 为每个session 分配的内存,在事务过程中用来存储二进制日志的缓存binlog_cache_size=1M# 主从复制的格式(mixed,statement,row,默认格式是statement)binlog_format=mixed# 二进制日志自动删除/过期的天数。

CentOS7下rsync服务的基本详解和使用

CentOS7下rsync服务的基本详解和使用

CentOS7下rsync服务的基本详解和使⽤第1章 Rsync基本概述1.1 什么是Rsyncrsync是⼀款开源,快速,多功能的可实现增量的本地或远程的数据镜像同步备份的优秀⼯具。

适⽤于多个平台。

从软件名称可以看出来是远程同步的意思(remote sync)可实现全量备份与增量备份,因此⾮常适合⽤于架构集中式备份或异地备份等应⽤。

1.1.1 rsync官⽅地址1.1.2 rsync监听端⼝8731.1.3 rsync运⾏模式C/S 客户端/服务端B/S 浏览器/服务端1.1.4 rsync备份⽅式全量备份将客户端所有的数据内容全都备份到服务端增量备份将客户端数据内容(不包含已备份到服务端的内容)增量备份到服务端1.2 Rsync传输⽅式及应⽤场景1.2.1 上传(推)所有主机推送本地数据⾄Rsync备份服务器,会导致数据同步缓慢(适合少量数据备份)机器量不是很多的时候,可以使⽤推送1.2.2 下载(拉)rsync备份服务端拉取所有主机上的数据,会导致备份服务器开销⼤机器量很⼤的时候,推和拉协同使⽤1.3 Rsync传输模式Rsync⼤致使⽤三种主要的数据传输⽅式1.3.1 本地⽅式(单个主机本地之间的数据传输,类似cp命令)Local: 本地传输Local: rsync [OPTION...] SRC... [DEST]rsync ---备份命令(cp)[options] ---选项SRC... ---本地源⽂件[DEST] ---本地⽬标⽂件[root@backup ~]# rsync -avz /etc/passwd /tmp/[root@backup ~]# ls /tmp/passwd/tmp/passwd1.3.2 远程⽅式通过(ssh通道传输数据,类似scp命令)Access via remote shell: 远程传输Pull: rsync [OPTION...] [USER@]HOST:SRC... [DEST] 下载(拉)Pull ---拉取, 下载rsync ---备份命令[options] ---选项[USER@] ---⽬标主机的系统⽤户HOST ---⽬主机IP地址或域名SRC... ---⽬标主机源⽂件[DEST] ---下载⾄本地哪个位置下载pull[root@nfs ~]# pwd/root[root@nfs ~]# echo "This Nfs" > file[root@backup ~]# rsync -avz root@172.16.1.31:/root/file /opt/[root@backup ~]# cat /opt/fileThis NfsPush: rsync [OPTION...] SRC... [USER@]HOST:DEST 上传(推)Push ---推,上传rsync ---备份命令[options] ---选项SRC... ---本地源⽂件[USER@] ---⽬标主机的系统⽤户HOST ---⽬主机IP地址或域名[DEST] ---⽬标对应位置上传push(将backup的file2⽂件上传⾄NFS服务器的/mnt⽬录)[root@backup ~]# pwd/root[root@backup ~]# echo "This Rsync" > file2[root@backup ~]# rsync -avz /root/file2 root@172.16.1.31:/mnt[root@nfs ~]# cat /mnt/file2This Rsync推送⽬录(推送/root/⽬录下⾯的所有⽂件和⽬录,不会推送/root/⽬录本⾝)[root@backup ~]# rsync -avz /root/ root@172.16.1.31:/tmp /root/推送⽬录,推送⽬录本⾝以及⽬录下⾯的所有⽂件[root@backup ~]# rsync -avz /root root@172.16.1.31:/tmp /root远程⽅式存在的缺陷:1.需要使⽤系统⽤户(不安全)2.使⽤普通⽤户(权限存在问题)3.需要⾛ssh协议1.3.3 守护进程(服务,持续后台运⾏)Access via rsync daemon: 守护进程⽅式传输Pull: rsync [OPTION...] [USER@]HOST::SRC... [DEST]rsync ---命令[OPTION...] ---选项[USER@] ---远程主机⽤户(虚拟⽤户)HOST:: ---远程主机地址SRC... ---远程主机模块(不是⽬录)[DEST] ---将远程主机数据备份⾄本地什么位置拉取rsync备份服务的backup模块数据⾄本地/mnt⽬录[root@nfs01 ~]# rsync -avz rsync_backup@192.172.16.1.41::backup/ /mnt/Push: rsync [OPTION...] SRC... [USER@]HOST::DESTPush: rsync [OPTION...] SRC... [USER@]HOST::DESTrsync ---命令[OPTION...] ---选项SRC... ---远程主机模块(不是⽬录)[USER@] ---远程主机⽤户(虚拟⽤户)HOST:: ---远程主机地址[DEST] ---将远程主机模块备份⾄本地什么位置将本地/mnt⽬录推送⾄rsync备份服务器的backup模块[root@nfs01 ~]# rsync -avz /mnt/ rsync_backup@192.172.16.1.41::backup/1.4 Rsync命令选项紫⾊字符表⽰不固定,根据⾃⼰需求调整。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

Centos7系统文件备份
本文件使用的两台服务器是centos7系统,并且经过测试,文件可以成功备份;如果是其他Linux系统;请部署完成先进行测试。

准备工作:
两台centos7系统的服务器
一.安装rsync
centos7系统默认安装了rsync(可使用命令 rsync 进行查看);如果没有安装,请使用命令安装
yum -y install rsync
二.配置rsync
安装成功后,修改配置文件:/etc/rsyncd.conf。

使用vim命令打开(没有安装vim命令的,请先安装vim:yum -y install vim)
# /etc/rsyncd: configuration file for rsync daemon mode
# See rsyncd.conf man page for more options.
# configuration example:
# uid = nobody
# gid = nobody
# use chroot = yes
# max connections = 4
# pid file = /var/run/rsyncd.pid
# exclude = lost+found/
# transfer logging = yes
# timeout = 900
# ignore nonreadable = yes
# dont compress = *.gz *.tgz *.zip *.z *.Z *.rpm *.deb *.bz2
# [ftp]
# path = /home/ftp
# comment = ftp export area
上面这是默认的配置。

添加如下配置:
uid = root
# //设置运行rsync 进程的用户
gid = root
use chroot = no
max connections = 4
pid file = /var/run/rsyncd.pid
#//CentOS7中yum安装不需指定pid file 否则报错
lock file=/var/run/rsyncd.lock
log file = /var/log/rsyncd.log
# //此文件定义完成后系统会自动创建
#exclude = lost+found/ 需要排除的文件
transfer logging = yes
timeout = 900
ignore nonreadable = yes
# //同步时跳过没有权限的目录
dont compress = *.gz *.tgz *.zip *.z *.Z *.rpm *.deb *.bz2
# //传输时不压缩的文件
在两台服务器上完成上面两步的配置。

三.服务器配置:
1.在配置文件中添加如下配置:(位置:/etc/rsyncd.conf)
[test] //此名字即备份服务器端使用rsync来同步的模块名
path=/usr/local/test //实际需要同步的路径
comment=test //规则描述
ignore errors
read only=no //表示可以pull
write only=no //表示可以push
list=no
auth users=rsyncuser
//备份服务器端获取文件的身份此用户并不是本机中确实存在的用户
secrets file=/etc/rsyncd.password
//用来认证客户端的秘钥文件格式 username:password,此文件权限一定需要改为600,且属主必须与运行rsync的用户一致。

hosts allow=* //允许所有主机访问
完成上述配置,并保存。

2.创建密码文件
echo 'rsyncuser:123456'>/etc/rsyncd.password
//文件用户名和路径为上面定义,别写错,密码自己定
chmod 600 /etc/rsyncd.passwd //修改权限
3.重启服务
systemctl restart rsyncd.service
四.备份服务器
1.创建密码文件
echo '123456' >>/etc/rsyncd.password
//注意这里只需要服务器rsyncd.password 中的密码
chmod 600 /etc/rsyncd.password
2.重启服务
systemctl restart rsyncd.service
3.编写文件同步的脚本
执行vim /root/test.sh命令
#!/bin/bash
rsync -auv --password-file=/etc/rsyncd.password rsyncuser@192.168.101.22::test
/root/test/
说明:password-file:备份服务器上密码文件
rsyncuser:服务器上配置的用户
192.168.101.22:服务器地址
test:服务器上配置的模块名
/root/test:备份文件的地址
4.执行定时任务
输入命令crontab -e
输入执行时间:*/5**** sh /root/test.sh(每5分钟执行一次)
五.其他操作
1.两台服务器是需要开启873端口的
firewall-cmd --add-port=873/tcp --permanent //添加端口到默认区域
firewall-cmd --reload //重启
2.关于SELinux
临时关闭SELinux
setenforce 0
查看状态
getenforce
开机关闭selinux(永久关闭)
编辑/etc/selinux/config文件,将SELINUX的值设置为disabled。

下次开机SELinux就不会启动了
3.rayncd服务开机自启
systemctl enable rsyncd.service
检查是否成功启动
netstat -lnp|grep 873
4.定时任务相关
查询任务
命令:crontab -l
开启服务
systemctl start crond
关闭服务
systemctl stop crond
重启服务
systemctl restart crond
重新加载配置
systemctl reload crond
要把cron设为在开机的时候自动启动,在/etc/rc.d/rc.local脚本中加入/sbin/service crond start即可。

相关文档
最新文档