论坛风格切换切换到宽版
  • 2129阅读
  • 8回复

[问题求助][CentOS] 各位大哥,MM,大侠们帮帮我!如何定期备份文件,备份成zip的压缩包! [复制链接]

上一主题 下一主题
 
发帖
1986
C币
-605149
威望
377
贡献值
4
银元
-2
铜钱
4410
人人网人气币
0
只看楼主 倒序阅读 使用道具 楼主  发表于: 2009-05-01
如何在服务器上定期.备份文件,备份成zip的压缩包的格式!大家帮帮我!希望能.把完整的命令告诉我!真的很急!<性病>

评价一下你浏览此帖子的感受

精彩

感动

搞笑

开心

愤怒

无聊

灌水
离线qlylny.
发帖
2011
C币
-60576
威望
375
贡献值
1
银元
-3
铜钱
4516
人人网人气币
0
只看该作者 沙发  发表于: 2010-04-14
Re:[CentOS]
不告诉你具体步骤,给你两个提示:
1、定期备份文件,请使用计划任务,搜cron 或 crond 或 crontab
2、至于zip的压缩指令,请搜"Linux zip 详解"
3、估计还要用到date命令,要不,覆盖覆盖再覆盖?

离线sfcq.
发帖
1976
C币
-199261
威望
356
贡献值
1
银元
-2
铜钱
4517
人人网人气币
0
只看该作者 板凳  发表于: 2010-04-14
Re:[CentOS]


QUOTE:原帖由 yankun627 于 2009-4-22 10:27 发表
如何在服务器上定期备份文件,备份成zip的压缩包的格式!大家帮帮我!希望能把完整的命令告诉我!真的很急!

定时执行利用crontab命令,备份要看你具体的内容和形式采用不同的方式,备份完了用zip压缩就可以生成压缩包
至于你需要的完整命令,请去查看man手册

离线zhangyuhao.
发帖
1995
C币
4783
威望
341
贡献值
0
银元
-3
铜钱
4398
人人网人气币
0
只看该作者 地板  发表于: 2010-04-14
Re:[CentOS]
date +%Y%m%d

离线qixiaodong.
发帖
2017
C币
-193422
威望
402
贡献值
1
银元
-3
铜钱
4610
人人网人气币
0
只看该作者 4楼 发表于: 2010-04-14
Re:[CentOS]
不给我具体步骤,我真不会啊,我是菜鸟,公司给的任务!去网上找了很多不太明白啊!

离线on99.
发帖
2137
C币
-60177
威望
414
贡献值
1
银元
-3
铜钱
4822
人人网人气币
0
只看该作者 5楼 发表于: 2010-04-14
Re:[CentOS]
不给我具体步骤,我真不会啊,我是菜鸟,公司给的任务!去网上找了很多不太明白啊!

发帖
2068
C币
-604970
威望
364
贡献值
4
银元
-2
铜钱
4677
人人网人气币
0
只看该作者 6楼 发表于: 2010-04-14
Re:[CentOS]
1.# vi /home/backup.sh

# create by athlandly 2007/12/10

# shell content

rm -fr /opt/backup/test //先强行删除test目录

cp -R /home/test /opt/backup //把/home/test拷贝到/opt/backup

2.# chmod 700 backup.sh

3.# crontab –e

30 2 * * * /home/scripts/backup.sh //每天2:30分执行backup.sh

4.设置完了之后不要忘了,启动定时服务

# service crond stop
# service crond start

备注:crontab 文件中的行由 6 个字段组成,不同字段间用空格或 tab 键分隔。前 5 个字段指定命令要运行的时间
分钟 (0-59)
小时 (0-23)
日期 (1-31)
月份 (1-12)
星期几(0-6,其中 0 代表星期日)
第 6 个字段是一个要在适当时间执行的字符串
crontab使用大概有两种,一种是修改全局配置文件/etc/crontab,另一种是直接运行命令crontab -e.
全局配置没有详细测试,似乎直接运行crontab -e方便一些.
1.执行命令 crontab -e,此时系统会打开一个vi编辑器.
2.输入
59 23 * * * /home/bakuplog.sh
表示每天23:59运行脚本bakuplog.sh.前面的时间格式为“M H D m d cmd”。其中,M代表分钟(0~59),H代表小时(0~23),D代表天(1~31),m代表月(1~12),d代表一星期内的天(0~6,0为星期天)。*表示任何.例如01 * * * * 表示每小时的01分执行.
3.编辑 vi /home/bakuplog.sh ,输入脚本
#!/bin/sh
mv /var/log/pix.log /var/log/back/
#移动日志
service syslog restart
#重启服务
gzip -9 /var/log/back/pix.log
#压缩
mv /var/log/back/pix.log.gz /var/log/back/log`date +$(date|cut -c 25-2%m%d`.gz
#更名
#`date +$(date|cut -c 25-2%m%d`表示系统日期 年月日 .注意其中符号`不是单引号,是Esc下面那个键。

从网上看了一个这个,大家帮我看看成不成!

离线ppkart.
发帖
2118
C币
-131893
威望
410
贡献值
1
银元
-1
铜钱
4693
人人网人气币
0
只看该作者 7楼 发表于: 2010-04-14
Re:[CentOS]
用 cron 和 at 调度作业
经常去这里看看:
http://www.ibm.com/developerworks/cn/linux/l-job-scheduling.html

Linux? 和 UNIX? 系统允许调度任务在以后执行一次,或者重复运行。本文是从 developerWorks 教程 “LPI 102 考试准备:管理任务” 摘录的,讲解如何调度作业定期运行,或在指定的时间运行一次。

在 Linux 系统上,许多管理任务必须频繁地定期执行。这些任务包括轮转日志文件以避免装满文件系统、备份数据和连接时间服务器来执行系统时间同步。上面提到的教程更详细地介绍了这些管理任务。在本文中,学习 Linux 中提供的调度机制,包括 cron 和 anacron 设施以及 crontab 和 at 命令。即使系统常常关机,anacron 也可以帮助调度作业。

以一定的时间间隔运行作业

以一定的时间间隔运行作业需要使用 cron 设施进行管理,它由 crond 守护进程和一组表(描述执行哪些操作和采用什么样的频率)组成。这个守护进程每分钟唤醒一次,并通过检查 crontab 判断需要做什么。用户使用 crontab 命令管理 crontab。crond 守护进程常常是在系统启动时由 init 进程启动的。

为了简单,假设希望定期运行清单 1 所示的命令。这个命令实际上只报告日期和时间,其他什么事都不做,但是它可以说明如何使用 crontab 设置 cron 作业,而且还可以通过输出看到作业运行的时间。设置 crontab 条目需要一个包含转义的 shell 元字符的字符串,所以适合于简单的命令和参数。在这个示例中,将从脚本 /home/ian/mycrontab.sh 运行 echo 命令,这个脚本不需要参数。 这可以减少处理转义字符的工作。

清单 1. 一个简单的命令示例

                
[ian@lyrebird ~]$ cat mycrontest.sh
#!/bin/bash
echo "It is now $(date +%T) on $(date +%A)"
[ian@lyrebird ~]$ ./mycrontest.sh
It is now 18:37:42 on Friday


创建 crontab

使用 crontab 命令和 -e(表示 “edit”)选项创建 crontab。这会打开 vi 编辑器,除非在 EDITOR 或 VISUAL 环境变量中指定了另一种编辑器。

每个 crontab 条目包含六个字段:

   1. 分钟
   2. 小时
   3. 日
   4. 月
   5. 星期
   6. 由 sh 执行的字符串

分钟和小时的范围分别是 0-59 和 0-12,日和月的范围分别是 1-31 和 1-12。星期的范围是 0-6,0 表示星期日。星期也可以指定为 sun、mon、tue 等等。第 6 个字段包含前 5 个字段之后的所有内容,它是要传递给 sh 的字符串。百分号(%)将转换为空行,所以如果要使用 % 或其他任何特殊字符,就要在前面加上反斜线(\)。第一个 % 之前的一行传递给 shell,这个 % 之后的所有行都作为标准输入传递。

各个与时间相关的字段可以指定一个单独的值、值的范围(比如 0-10 或 sun-wed)或者以逗号分隔的单独值和范围列表。清单 2 给出一个 crontab 条目示例。

清单 2. 一个简单的 crontab 示例

                
0,20,40 22-23 * 7 fri-sat /home/ian/mycrontest.sh


在这个示例中,我们的命令在 7 月的每个星期五和星期六晚上 10 点到午夜之间的第 0、20、40 分钟(每 20 分钟)执行。关于指定时间的其他方式的细节,参见 crontab(5) 的手册页。

输出

您可能想知道对来自命令的输出会如何处理。为使用 cron 而设计的大多数命令会使用 syslog 在日志中记录输出(参见教程 “LPI 102 考试准备:管理任务” 中的讨论)。但是,定向到 stdout 的输出会通过电子邮件发送给用户。清单 3 给出我们的命令示例可能产生的输出。

清单 3. 通过电子邮件发送的 cron 输出

                
From ian@lyrebird.raleigh.ibm.com  Fri Jul  6 23:00:02 2007
Date: Fri, 6 Jul 2007 23:00:01 -0400
From: root@lyrebird.raleigh.ibm.com (Cron Daemon)
To: ian@lyrebird.raleigh.ibm.com
Subject: Cron <ian@lyrebird> /home/ian/mycrontest.sh
Content-Type: text/plain; charset=UTF-8
Auto-Submitted: auto-generated
X-Cron-Env: <SHELL=/bin/sh>
X-Cron-Env: <HOME=/home/ian>
X-Cron-Env: <PATH=/usr/bin:/bin>
X-Cron-Env: <LOGNAME=ian>
X-Cron-Env: <USER=ian>

It is now 23:00:01 on Friday

离线qscefb.
发帖
2089
C币
-60468
威望
366
贡献值
1
银元
-1
铜钱
4573
人人网人气币
0
只看该作者 8楼 发表于: 2010-04-14
Re:[CentOS]
还是备份成linux下的gz或者bz2吧?
快速回复
限100 字节
批量上传需要先选择文件,再选择上传
 
上一个 下一个