Python自动化备份系统及网站

news/2024/5/10 15:43:31/文章来源:https://blog.csdn.net/weixin_33705053/article/details/85087244

随着目前IT迅猛的发展,自动化运维对于Linux运维人员也越来越重要,传统的运维方式靠大量的人力,现在也逐渐转向自动化运维,我们常见的跟自动化有关的软件有哪些呢。

今天我们来简单列举一下:kickistart、puppet、cobbler、chef、func、shell命令自动化等等各种自动化工具,今天我们来研究一下使用Python来编写自动化脚本,那python设计的目标是什么呢?

Python的设计哲学是“优雅”、“明确”、“简单”。因此,Perl语言中“总是有多种方法来做同一件事”的理念在Python开发者中通常是难以忍受的。Python开发者的哲学是“用一种方法,最好是只有一种方法来做一件事”。

Python的设计目标之一是让代码具备高度的可阅读性。它设计时尽量使用其它语言经常使用的标点符号和英文单字,让代码看起来整洁美观。它不像其他的静态语言如C、Pascal那样需要重复书写声明语句,也不像它们的语法那样经常有特殊情况和惊喜。

下面直接上脚本如下:(我也参考的网上的文章,自己根据实际情况修改,希望大家一起来交流)

#!/usr/bin/python
#Filename: Auto Backup root DIR and file
#write wugk 2013-11-07
import  os
import  time
#Define SOURCE and TARGET DIR
SOURCE = ['/root','/var/www/html','/etc']
TARGET_DIR = '/data/backup/'
NAME_FILE = 'System_bak'
today = TARGET_DIR + time.strftime('%Y%m%d')
TARGET = TARGET_DIR + time.strftime('%Y%m%d') + "/" + NAME_FILE + '.zip'
zip_command = "zip -qr '%s' %s " % (TARGET, ' '.join(SOURCE))
#Scripts Exec process Start
print '-------------------------------------------------'
print "The Scripts Backup Starting,Please waiting ......"
print
#Judge today DIR
if not os.path.exists(today):os.mkdir(today) # make DIRectoryprint 'Successfully created Directory', today
#Exec Zip Command to Dir or file
if os.system(zip_command) == 0:print 'Successful backup to', TARGET
else:print 'Backup Failed !'
#print Backup end info
print
os.system('sleep 2')
print '--------------- The scripts Exec Done ------------------'

此脚本后期会优化,后期不断的更新,欢迎大家拍砖!上面的脚本用的打包命令是zip,如果觉得效率不高,还可以用tar命令,把zip_command那一段后面改成如下:

zip_command = "tar -czvf '%s' %s " % (TARGET, ' '.join(SOURCE)) 这样也OK!。

最新修改脚本内容如下:

#!/usr/bin/env python
#auto backup system files
#by wugk 2014-06-24
import os,sys,time
date = time.strftime('%Y%m%d')
source = ['/boot','/etc','/var/log/']
dir = '/data/backup/'
r_dir = dir + date + '/'
f_name = 'system_bak.tar.gz'
r_name = r_dir + f_nameprint '''
\033[32m+++++++++++Welcome to use python backup scripts for Linux ++++++++++
++++++++++++Now Time is bei jing date %s +++++++++++++++++++++
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
\033[0m''' % datetime.sleep(2)def all_bak():if os.path.exists(r_dir) == False:        os.makedirs(r_dir)else:print 'This DIR %s is exists!' % r_dirtar_cmd = 'tar -czvf %s %s ' % (r_name,' '.join(source))if os.system(tar_cmd) == 0:print 'This Backup System Files %s success !' % r_nameelse:print "This Backup system Files %s Failed  !" %  r_nametry:if sys.argv[1] == 'all_bak':print 'Please waiting executing Command ......'all_bak()
except IndexError:print '\033[31m-------------------------------------------------\033[0m'print "\033[31mUsage: {%s all_bak|help}\033[0m" %  sys.argv[0]
##Define add backup try:if sys.argv[1] == 'help':print '\033[31m-------------------------------------------------\033[0m'print "\033[31mUsage: {%s all_bak|help}\033[0m" %  sys.argv[0]
except IndexError:passtry:if len(sys.argv[1]) == 0:print '\033[31m-------------------------------------------------\033[0m'print "\033[31mUsage: {%s all_bak|help}\033[0m" %  sys.argv[0]
except IndexError:pass

附一张图:

114235475.png

Tar备份脚本如下:

wKioL1MW3TTz4hd1AAJ7y4M14iA203.jpg

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.luyixian.cn/news_show_783587.aspx

如若内容造成侵权/违法违规/事实不符,请联系dt猫网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

SEO从业五年,软文编写经验总结

从事SEO工作五年,对于很多SEO的技术也有一些自己的经验和想法,在这里想和大家交流一下关于SEO中的主要一块——软文编写的经验和总结。一、最关键:蜘蛛喜欢收录并且有排名蜘蛛喜欢的,用户不一定喜欢;用户喜欢的,蜘蛛一…

php远程获取网站的关键字信息(并附:php判断字符串编码)

php远程获取网站的关键字信息&#xff08;并附&#xff1a;php判断字符串编码&#xff09; 很明显&#xff0c;php100是gbk编码的网站。现在获取它的关键字&#xff0c;并无乱码的显示出来&#xff0c;然后好保存到数据库。 123456789101112131415161718192021<meta http-eq…

百度seo排名点击器app_seo如何快速排名百度首页

seo排名首页是多个要素共同作用的结果&#xff0c;达成seo快速排名首页结果同样需要多个优化要素共同作用&#xff0c;一般而言seo不能快速起效。如果仅仅以快速而言&#xff0c;推荐的方法包括但不限于301永久重定向&#xff0c;快照劫持&#xff0c;模拟用户行为以及短时间增…

网站速度与性能优化要抓主要矛盾解决—瓶颈法

本文主要是思维性的总结&#xff0c;是总结优化的方法学,对方面上面的错误进行总结。不会涉及到前端具体的技术&#xff0c;比如对js和css进行压缩、合并&#xff0c;减少http请求,缓存头控制等等。这些那本《高性能建站指南》都有现成的。 基于本人在多家公司分别遇到的网站速…

搭建简易Web GIS网站:使用GeoServer+PostgreSQL+PostGIS+OpenLayers3

搭建简易Web GIS网站&#xff1a;使用GeoServerPostgreSQLPostGISOpenLayers3 1 服务器搭建 使用Tomcat需要先安装Java。从Oracle官方网站下载Java最新版本&#xff1a; http://www.oracle.com/technetwork/java/javase/downloads/index.html 安装完成Java后&#xff0…

对象网站中全局信息的抽象(Web.Config)

几个常用的全局常量 调用Web.config节点的方法 本文转自博客园张占岭&#xff08;仓储大叔&#xff09;的博客&#xff0c;原文链接&#xff1a;对象网站中全局信息的抽象&#xff08;Web.Config&#xff09;&#xff0c;如需转载请自行联系原博主。

seo如何优化文章-知识交流_SEO优化文章如何发布可以实现快速排名

很多人做SEO优化的时候&#xff0c;不知道如何发文章&#xff0c;大家的感觉就是SEO优化很难写&#xff0c;今天知啦娱乐网小编手把手教大家如何发文章&#xff0c;而且是发有用的文章&#xff0c;可以实现搜索引擎快速排名。如果想了解&#xff0c;请继续往下看&#xff1a;SE…

SeaJS 前端模块化开发探索与网站性能优化实践

2019独角兽企业重金招聘Python工程师标准>>> PDF链接&#xff1a;http://pan.baidu.com/s/1CCz4C 转载于:https://my.oschina.net/shawnSongxiaoqiang/blog/361020

网站域名可访问但经过搜索引擎访问不了的解决办法

今天接了个这样的活&#xff0c;这个自己也头一次遇到&#xff0c;把经验分享给大家。网上下载的免费的asp源码&#xff0c;底部写着九牧科技这个公司源码&#xff0c;网站做好了&#xff0c;被百度收录发现不能访问&#xff0c;看着地址也没有错的&#xff0c;有的浏览器提示重…

ASP.NET的SEO: 服务器控件背后——SEO友好的Html和JavaScript

本系列目录 假设你需要从一个页面转向其他页面&#xff0c;下面有很多种方式&#xff0c;你是如何选择的呢&#xff1f;你能清晰的说明理由么&#xff1f; <%--链接的表现形式--%><asp:HyperLink ID"HyperLink1"runat"server"NavigateUrl"…

有什么网站是python做的_自学python有什么网站

Python是未来人工智能最好的编程语言&#xff0c;很多程序员在有其她编程基础的情况选择学习python是比较容易的&#xff0c;当然现在很多想进入编程界的新手选择python开始接触学习编程&#xff0c;但是由于经费有限&#xff0c;只能选择最便宜的学习方式就是自学成才&#xf…

关键词组合工具_网站关键词的定位和布局

每个SEO人员都会有自己的核心关键字定义。百度的核心关键词一直是人们讨论的话题。我们知道&#xff0c;这是一个流量拥挤和匮乏的时代。核心关键字的选择决定了我们对流量的选择以及基于品牌搜索流量的网站定位。那么关键词怎么选呢&#xff1f;选择关键词有七种方法&#xff…

访问量超过100万的电子商务网站技术架构=LVS

本连载首篇介绍到电子商务网站高性能、高可用解决方案。从架构图上的方案&#xff0c;应用的是LVSkeepalived负载均衡。实现高性能、高可用解决方案 (服务器组成集群&#xff0c;达到负载均衡&#xff0c;高性能、高可用、高可伸缩性的服务器集群)互联网->LVS负载均衡(前端四…

中head函数_wordpress插件,怎样向网站添加数据?试试wp_head()函数

有时候&#xff0c;我们会碰到这样一种情况&#xff1a;我们的wordpress网站主题模板已经定型了&#xff0c;但是&#xff0c;我们后期又想向wordpress网站添加一些新功能&#xff0c;这时候&#xff0c;我们该怎么办&#xff1f;是继续修改wordpress网站主题模板吗&#xff1f…

网站建设就要像2018世界杯的俄罗斯队大杀四方[图]

2019独角兽企业重金招聘Python工程师标准>>> 今天心情不错&#xff0c;因为昨天晚上观看了世界杯比赛&#xff0c;尤其是对俄罗斯队的大杀四方感到十分霸气侧漏啊&#xff0c;因此我联想到了自己的博客网站&#xff0c;我的博客是去年年底上线的&#xff0c;一直想建…

CSS实现onMouseOver、onMouseOut效果和层套菜单

在IE中 <a> 标签的。而实际上 WEB 标准里面&#xff0c; 应该对所有元素都支持。如果使用 Mozilla 或者 Opera, 那么可以看到不需要这个 htc 都可以正常运行的。 因为 htc 是 IE 特有的&#xff0c;别的浏览器不能理解&#xff0c;会忽略掉&#xff0c;不影响结果的显示。…

使用Apache搭建Web网站服务器

学习一个服务的过程&#xff1a; 此服务器的概述&#xff1a;名字&#xff0c;功能&#xff0c;特点&#xff0c;端口号安装配置文件的位置服务启动关闭脚本&#xff0c;查看端口此服务的使用方法 修改配置文件&#xff0c;实战举例排错&#xff08;从下到上&#xff0c;从内到…

【建站知识】360安全检测出轻微 X-Frame-Options头未设置,iis、apache、nginx使用X-Frame-Options防止网页被Frame的解决方法...

当然也是因为被360检测到了示&#xff02;X-Frame-Options头未设置&#xff02;&#xff0c;根据360的提示与百度了一些网上的一些资料整理了下&#xff0c;完美解决问题。 首先看下360给出的方案&#xff0c;但么有针对服务器的具体设置&#xff0c;不是每个人对服务器都很懂啊…

《从零开始学Swift》学习笔记(Day 2)——使用Web网站编写Swift代码

原创文章&#xff0c;欢迎转载。转载请注明&#xff1a;关东升的博客Swift程序不能在Windows其他平台编译和运行&#xff0c;有人提供了一个网站swiftstub.com&#xff0c;左栏是代码编辑窗口&#xff0c;右栏是运行结果窗口。可以在任何平台下编译和运行Swift程序。欢迎关注关…

VS2019新建网站并发布到IIS

发布网站特别注意事项整理 参考&#xff1a; https://blog.csdn.net/qingkaqingka/article/details/87011330 1、控制面板-程序-启动和关闭windows功能 特别注意以下选项要选中&#xff0c;默认是不选中的。 2、vs2019新建项目 3、发布 勾选 在发布期间预编译 这样就不会包含任…