摘要:Linux作为网络操作系统在稳定性、安全性、网络性能等方面的优越性,使得其在服务器方面的应用越来越广泛。 |
使用crontab命令创建crontab文件的方式有两种:
(1)首先用文本编辑器建立―个新文件,向其中写入需要运行的命令和执行的时间,然后用crontah命令来安装这个文件,使之成为该用户的crontab文件。格式如下:
3、Shell编程简介
利用vi等文本编辑器编写Shell脚本的格式是固定的,如下:
#!/bin/sh
#comments
Yourcommandsgohere
首行中的符号#!告诉系统其后路径所指定的程序即是解释此脚本文件的Shell程序。如果首行没有这句话,在执行脚本文件的时候,将会出现错误。后续的部分就是主程序,Shell脚本像高级语言一样,也有变量赋值,也有控制语句。除第一行外,以撑开头的行就是注释行,直到此行的结束。如果一行未完成,可以在行尾加上”,这个符号表明下一行与此行会合并为同一行。
编辑完毕,将脚本存盘为filename.sh,文件名后缀sh表明这是―个Bash脚本文件。执行脚本的时候,要先将脚本文件的属性改为可执行的,其方法为:chmod+xfilename.sh执行脚本的方法是:./filename.sh。
4、自动异地保存的方法
对服务器备份出来的文件进行异地保存,可以利用FTP命令将主服务器所备份的数据通过Shell脚本自动上传到异地的FTP服务器,下面简单介绍下所用到得ftp命令。
方法实现
1、获得权限
Linux系统中的用户要使用erontab命令,必须拥有使用权限。用户获得权限的方法是:以超级用户(root)身份登录,在/etc目录下查看文件cron.allow和cron.deny是否存在。若cron.allow文件存在,cron.deny文件不存在,则查看用户userone用户名是否在该文件中,如没有,应添加到cron.allow文件中去(1个用户名占1行);若cron.allow文件不存在,cron.deny文件存在,则查看cron.deny文件中是否有userone用户名,如有应予以删除,这样useroner用户就有权使用crontab命令了;若cron.allow和cron.deny文件都不存在,则除超级用户以外的其他用户都不能运行crontab命令。
2、编写Shell脚本
用vi编辑器编辑如下脚本文件并命名为backup.sh,将脚本文件的属性设置为可执行,存放在/data/目录下。该脚本可以实现本地备份30天的数据,并且通过FTP存放数据到异地FTP服务器中。
3、设置crontab文件
考虑到数据的安全性,故采用每天凌晨1:30执行备份一次的策略。设置crontab文件的步骤如下:
在打开的终端输入crontabe进入编辑模式,输入如下内容:
300***/data/backup.sh
(1)经笔者测试对于Mysql数据库数据可以在不停止Mysql服务的情况下,把它当做文件数据通过上面的方法来备份。当然,为了确保数据库安全也可在使用tar命令打包数据前,先使用#/etc/init.d/mysqlstop命令停止Mysql服务,待备份结束后立即通过#/ete/init.d/mysqlstart命令开启。
(2)文中例子是每天凌晨1:30执行备份,也可根据实际情况灵活确定数据库自动备份的时间点,每天或每月备份。
(3)如有其他需定时执行的作业,只需通过crontabe命令,添加相应条目即可。
结束语
让系统定期自动备份数据,并对备份出来的文件自动异地保存,不仅很好地保障了数据的安全性,而且大大减轻了信息维护人员的负担。本文介绍的方法简单易行,在很大程度上实现了数据的异地容错,确保了数据安全。