【KAWAKO】从mac上定时将腾讯云的数据备份到本地
前言
不信任一切云端平台,把数据牢牢握在自己手中才是最安全的。
需求
使用腾讯云服务器上的宝塔面板定时备份网站和数据库,然后定时将备份后的数据存到本地。
宝塔面板
备份网站

备份数据库

mac端
创建工程文件夹

rua.py
在python中使用scp将备份的网站文件和数据库文件传到本地。会将log信息放进rua.log中,若失败,则会出现持续几秒的弹窗提示。
import os
import paramiko
import unicodedata
from scp import SCPClient
import logging
import time
logging.basicConfig(filename='/path/to/bk/rua.log',level=logging.INFO)
week = ["一", "二", "三", "四", "五", "六", "日"]
t = time.localtime()
tm = "%s年%s月%s日(周%s), %s:%s:%s" % (t[0], t[1], t[2], week[t[6]-1], t[3], t[4], t[5])
logging.info(tm)
try:
client = paramiko.SSHClient()
client.load_system_host_keys()
client.set_missing_host_key_policy(paramiko.AutoAddPolicy())
client.connect('腾讯云ip', 端口数字, '用户名', '密码')
scp = SCPClient(client.get_transport())
scp.get('/path/to/database', '/path/to/bk/database', recursive=True)
scp.get('/path/to/site', '/path/to/bk/site', recursive=True)
scp.close()
client.close()
except Exception as e:
os.system('osascript -e \'display notification "%s" with title "wordpress备份失败!!!" subtitle "请前往【/path/to/bk】检查" \'' % e)
logging.error(e)
else:
logging.info("success !!!")
rua
每次从这里调用rua.py,注意python指令不能直接用python,需要用其绝对路径(可以用whereis python查看)。
time=$(date "+%Y-%m-%d %H:%M:%S")
echo "$time" >> /path/to/bk/log.txt
/path/to/python /path/to/bk/rua.py
echo "finished" >> /path/to/bk/log.txt
stdout
创建一个标准输出文件。
touch stdout
plist
在/Library/LaunchDaemons/中创建com.backupwordpress.plist。指定每天13点14分开始运行rua程序。
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<!-- Label唯一的标识 -->
<key>Label</key>
<string>com.backupwordpress</string>
<!-- 指定要运行的脚本 -->
<key>ProgramArguments</key>
<array>
<string>/path/to/bk/rua</string>
</array>
<!-- 指定运行的时间 -->
<key>StartCalendarInterval</key>
<dict>
<key>Minute</key>
<integer>14</integer>
<key>Hour</key>
<integer>13</integer>
</dict>
<!-- 时间间隔(秒) -->
<!-- <key>StartInterval</key>
<integer>3</integer> -->
<key>StandardOutPath</key>
<!-- 标准输出文件 -->
<string>/path/to/bk/stdout</string>
<!-- 标准错误输出文件,错误日志 -->
<key>StandardErrorPath</key>
<string>/path/to/bk/error.txt</string>
</dict>
</plist>
运行:launchctl load -w /Library/LaunchDaemons/com.backupwordpress.plist
停止:launchctl unload -w /Library/LaunchDaemons/com.backupwordpress.plist
错误信息会保存在error.txt中
Reference
https://blog.csdn.net/linwwwei/article/details/84682981
http://events.jianshu.io/p/4fbad2909a21
【KAWAKO】从mac上定时将腾讯云的数据备份到本地的更多相关文章
- 【POI】java服务生成List数据集合,后台服务生成xlsx临时文件,并将临时文件上传到腾讯云上
场景: java服务生成List数据集合,后台服务生成xlsx临时文件,并将临时文件上传到腾讯云上 今日份代码: 1.先是一个变量,作为文件名 private static final String ...
- Mac上定时运行脚本工具--launchctl
在Mac上可以像在Linux上一样,使用crontab来定时运行脚本,但苹果并不推荐这个方法.苹果推荐使用Launchctl来完成定时任务. 首先,我们先写一个可执行的脚本,列子为php脚本,名字为t ...
- k8s使用helm打包chart并上传到腾讯云TencentHub
本文只涉及Helm的Chart操作,不会对其他知识进行过多描述.至于安装这块,麻烦自行百度吧,一大堆呢. 在容器化的时代,我们很多应用都可以部署在docker,很方便,而再进一步,我们还有工具可以对d ...
- Centos6.8上httpd配置腾讯云SSL证书
(1)先按装mod_ssl yum -y install mod_ssl /etc/httpd/conf.d/下会有一个ssl.conf的文件,打开 a)检测本地证书配置是否正确 主要是看下证书及密钥 ...
- 腾讯云Windows2016数据中文版环境搭建
最近忙活了好几天,在腾讯云上买了台服务器,系统是Windows2016数据中文版,用于个人的学习,下面说一下整个流程吧. 遇到的问题: 一开始是按照腾讯云的指南文档去搞环境配置的,但它上面都是以Win ...
- 腾讯云点播视频存储(Web端视频上传)
官方文档 前言 所谓视频上传,是指开发者或其用户将视频文件上传到点播的视频存储中,以便进行视频处理.分发等. 一.简介 腾讯云点播支持如下几种视频上传方式: 控制台上传:在点播控制台上进行操作,将本地 ...
- 如何在腾讯云上开发一款O2O书签?
版权声明:本文由潘佳宇原创文章,转载请注明出处: 文章原文链接:https://www.qcloud.com/community/article/187 来源:腾云阁 https://www.qclo ...
- 腾讯云 安全组配置及与MySQL 远程登录失败原因浅析
前言,知道自己腾讯云服务器安全组配置并在安全组里开放了所有端口的用户可以粗略的看看下边的内容,否则就仔细看看吧. 因为有学习及业务需要,我要在腾讯云上安装了CentOS7.2版本的服务器上安装MySQ ...
- 腾讯云万象优图每个账户提供50G的图片存储(支持黄图检测)
文章由GIT博客迁移过来 程序下载地址(源码也在):点我下载 设计说明 10月20号晚上,准备写这么一个程序. 腾讯云万象优图每个账户提供50G的图片存储(支持黄图检测) 可以在截图之后,直接点击上传 ...
- 阿里云有对手了!CDN横评:腾讯云优势明显
如今,云计算产品越来越多,像国内的BAT三大巨头都提供了云主机(腾讯云CVM.阿里云ECS.百度云BCC),另外还有存储.数据库.安全等相关云服务.在这其中,CDN也是一项重要的云服务,CDN指的是内 ...
随机推荐
- js day04 综合案例秒数计算
<script> //用户输入总秒数 let second = +prompt('请输入总秒数:') //计算时分秒 fun ...
- 【实习项目介绍】XXXXX大数据平台介绍
一.技术架构 1.整体介绍及架构 (1)概述 Odeon大数据平台以全图形化Web操作的形式为用户提供一站式的大数据能力:包括数据采集.任务编排.调度及处理.数据展现(BI)等:同时提供完善的权限管理 ...
- angr_ctf——从0学习angr(三):Hook与路径爆炸
路径爆炸 之前说过,angr在处理分支时,采取统统收集的策略,因此每当遇见一个分支,angr的路径数量就会乘2,这是一种指数增长,也就是所说的路径爆炸. 以下是路径爆炸的一个例子: char buff ...
- Ubuntu20.04更换国内镜像源(阿里、网易163、清华、中科大)
更换方法 Ubuntu采用apt作为软件安装工具,其镜像源列表记录在/etc/apt/source.list文件中. 首先将source.list复制为source.list.bak备份,然后将sou ...
- 【Java】从头开始学新的编程语言
本文自用,Java入门笔记 -每个类都要在自己的单独文件中-我大为震撼 能运行的最小的Java程序要有main函数 public static void main(String[] args) (id ...
- Win10系统安装U盘,安装纯净版Win10的通用教程
安装前准备:1.准备8G或8G以上U盘(32G以内).2.制作U盘会格式化U盘,U盘内的重要文件也要事先备份好.操作步骤:1.打开微软下载WIN10网址:(如果网址无法打开,可以下载解压运行附件内的工 ...
- week_1
Andrew Ng机器学习笔记---by OrangeStar Week 1 A computer program is said to learn from experience E with re ...
- 学习.NET MAUI Blazor(一)、Blazor是个啥?
先把Blazor放一边,先来看看目前Web开发的技术栈. 注:上图只是为了说明问题,没有任何语言歧视! 这是目前最常用的前后端分离开发模式,这个开发模式需要配备前端工程师和后端工程师.当然了,全栈工程 ...
- 把ChatGPT配置到微信群里,可以对AI提问了!
作者:小傅哥 博客:https://bugstack.cn 沉淀.分享.成长,让自己和他人都能有所收获! 一.前言:用的很爽! 自从小傅哥用上 ChatGPT 连搜索引擎用的都不多了,很多问题的检索我 ...
- 一步步教你在Edge浏览器上安装网风笔记
微软于2022年6月15日正式结束对浏览器"Internet Explorer (IE)"的支持,IE已正式退出历史舞台,取而代之的是目前风头正盛的被微软称为当今最好用的Edge浏 ...