Linux学习日记14-Linux例行性命令的建立
时间:2007-04-04 来源:junzero
1、 什么是例行性命令
2、 Linux系统的例行性命令有哪些
3、 仅执行一次的工作排程
4、 循环执行的例行性命令
5、 系统的crontab设置
6、 安全的防护
一、什么是例行性命令
所谓的例行性命令是指定期要做的命令,显的有些呆板。
在计算机运行的过程中除了有规律的周期性的要做的动作之外,还有一些只做一次的突发性动作,那么怎样去完成这些动作?主要有下面两个好东西:
• at : 这个工作仅执行一次就从 Linux 系统中的排程中取消;
• crontab : 这个工作将持续例行性的作下去!
二、Linux系统的例行性命令有哪些
通常Linux系统运行的时候会有下面一些例行性命令:
• 进行数据轮替 ( log rotate ):
• rpm 数据库的建立:
• 建立 locate 的数据库
• 进行程序的分析:
• 登录档视察
三、仅执行一次的工作排程
可以用at来做这样的动作,但是并不是所有的使用者都可以使用这个指令的,因为系统中会有相应的配置文件来规定哪些用户可以这样做,哪些用户不可以这样做。那这样的文件是什么?
配置这个权限的文件是:/etc/hosts.allow(deny)。
限制使用者的原理:
当使用者执行 at 时,系统会
1. 先找寻 /etc/at.allow 这个档案,写在这个档案中的使用者才能使用at ,没有在这个档案中的使用者则不能使用 at ( 即使没有写在at.deny 当中 );
2. 如果没有 /etc/at.allow 就寻找 /etc/at.deny 这个档案,若写在这个at.deny 的使用者则不能使用 at ,而没有在这个 at.deny 档案中的使用者,就可以使用 at 咯;
3. 如果两个档案都不存在,那么只有 root 可以使用 at 这个指令。
• Linux 预设情况下,只有 /etc/at.deny 这个档案,且这个档案的内容为空白
的,由于内容没有任何使用者,所以当然『所有人都可以使用 at 』
• 如果不想要某个使用者使用 at 时,那么将该使用者账号写到 /etc/at.deny
这个档案中即可。
at的使用:
四、循环执行的例行性命令
循环执行的功能由cron这个服务提供。可以同crontab指令将要做的动作记录到/var/log/corn这个文档中。
crontab的语法:
这边的5个数字代表的意思是:
五、系统的crontab设置
除了手动之下crontab -e来编辑要循环做的动作之外,还可以手动修改/etc/crontab文件,在该文件中按照之前的格式添加要做的动作,不过在这5个数字之后要添加一个用户名,作为执行者,然后保存就可以了。当然:
六、安全的防护
资源分配不均:如果在同一时间启动很多任务的话,肯定会影响到系统的性能,所以在crontab事务中尽量要隔开一段时间,以保证系统顺畅的运行。
取消不要的输出项目:在有些循环运行的任务中,他们的结果是提供很多错误信息,但是这些信息并不重要的时候,就可以通过命令重定向的方式将这些输出信息丢到/dev/null这样的垃圾桶中。
安全的检查:用来查看是否有木马或者病毒植入到/var/log/cron文件中,用来定时运行。