感谢支持
我们一直在努力

crontab使用详解和Linux的进程管理以及网络状态监控

一、crontab使用详解

  •  概述:任务调度:是指系统在某个时间执行的特定的命令或程序。

任务调度分类:

      (1)系统工作:有些重要的工作必须周而 复始地执行。

      (2)个别用户工作:个别用户可能希望执 行某些程序。

使用场景:数据库的备份问题,要么手动备份,而且不能白天备份。一般备份数据库的时候往往需要把数据库关闭,因为一遍备份,一遍写的时候很容易造成数据库的备份,热备份MySQL也支持,但一般使用冷备份。这时就需要使用任务调度。

  在不使用crontab时,我想把当前的时间存储到一个文件中该如何做?

   

  是不是很简单,好了,在讲解如何使用crontab时,我们先来看看张图(感谢这位前辈的图示),因为这张图可以搞定一切:

  

  

 

  如果想深入了解的话,可以参考

crontab中添加定时脚本不生效的原因 http://www.linuxidc.com/Linux/2017-02/140237.htm

Linux中利用crontab创建计划任务 http://www.linuxidc.com//Linux/2013-06/86401.htm

Linux定时任务Crontab命令详解  http://www.linuxidc.com/Linux/2015-10/124478.htm

Linux crontab不执行问题排查 http://www.linuxidc.com//Linux/2013-06/85432.htm

Ubuntu使用crontab定时任务 http://www.linuxidc.com//Linux/2013-05/84770.htm

Linux计划任务(at batch crontab anacron) http://www.linuxidc.com//Linux/2013-03/81584.htm

备份crontab的实用脚本 http://www.linuxidc.com/Linux/2017-02/140447.htm

Linux任务计划 (at,crontab) http://www.linuxidc.com/Linux/2015-09/122970.htm

  • 如何使用crontab(调度一个任务)

    (1)设置任务:crontab -e

    

    

    遇到这个问题不要慌,这个问题我找了很多解决方案都不行,最后还是老外的一篇文章解救了我。首先执行下面的命令:

    

    选择好crontab的编辑器(这里我选3)回车即可。再输入一下命令:

    

    如果出现这个界面上面已经成功了!

    

    操作和vi编辑器一样,输入下面的命令:每分钟记录下当前时间,并写入到mydate2文件中。

    

    写完之后输入:wq即可保存,如果出现下面的信息,上面调度任务已经起作用了:

    

    如果想查看root用户有哪些调度任务,可以使用:crontab -u root -l进行查看。

    

 

    (2)每隔一定时间(每分钟)去执行 date > /home/gz/mydate   (这个命令前面已经讲过了,如果忘了回去复习一下)

    

     

     好了,大家可以尝试一下,如果遇到问题,可以在评论区提出来,我帮你看看。

     注意:crontab中是没办法精确到秒的,只能精确到分钟。

  • 调度多个任务

    1)在crontab -e 中直接写.(不推荐)

    大家可以试试,我在这里就不试了。

    2)可以把所有的任务,写入到一个可执行文件(shell编程)(推荐)

     首先编写:mytask.sh(注意:shell编程的文件后缀为 .sh)

    

    大家发现没有:这个文件是没有可执行的权限的,忘了到前面复习一下,所以接下来我们要改变该文件的权限。

    

    然后编写:crontab

    

    

    保存并退出:

    

 

    意思是:每分钟都会执行该shell脚本里面的命令。

    检测:是否mydate3在root目录下面。

    

    

 

    

  •  如何终止任务

    命令:conrtab –r:终止任务调度。(建议小心使用,最好是注释掉)

    好了,crontab讲到这里就完了,希望对你有帮助,进入下一个主题的讲解。

    

二、Linux的进程管理

   (1)概述:

      进程:进程就是正在执行的程序

      线程:(1)轻量级的进程。(2)进程有独立的地址空间,线程没有。(3)线程不能独立存在,它是由进程创建.(fork) Thread。(4)相对讲,线程耗费的cpu,和内存小于进程。

  (2)在LINUX中,每个执行的程序都称为一个进程。每一个 进程都分配一个ID号;每个进程都可能以两种方式存在的。前台与后台,所 谓前台进程就是用户目前的屏幕上可以进行操作的。 后台进程则是实际在操作,但由于屏幕上无法看到的进程, 通常使用后台方式执行;一般系统的服务都是以后台进程的方式存在,而且都会 常驻在系统中。直到关机才才结束。

  如何查看目前系统中,有哪些正在执行,以及它 们执行的状况?

  命令:ps -aux | more

  

  解释:user:进程的名字;PID:进程的ID; %CPU:进程占用的CPU;%MEM:进程占用的内存;VSZ:虚拟内存;

  RSS:物理内存;中PID为1的是所有进程的父进程。

  如何终止进程:若是某个进程执行一半需要停止时,或是已消了很大的系 统资源时,此时可以考虑停止该进程。使用kill命令来完 成此项任务。

  命令:kill 3051(这个命令有点温柔,不一定能杀死该进程(bash))

  如果要强制杀死,可以用:kill -9 3051   (尝试一下是不是有点被踢出群的感觉(#^.^#))

  补充:

  kill -9 3051   :因为有些进程会捕捉某 些信号,如果直接不能结束进程可以用“-9” 传送信息。

  killall:会杀掉该进程下面的所有的子进程。

更多详情见请继续阅读下一页的精彩内容: http://www.linuxidc.com/Linux/2017-10/147459p2.htm

三、Linux的进程状态监控

概述:top与ps命令很相似。它们都用来显示正在执行的进程。 Top与ps最大的不同之处,在于top在执行一段时间可以 更新正在运行的的进程。

命令:top

如果想退出来:按下:q 或者ctrl+c

命令:top -d 10:指定系统更新进程的时间为10秒 

命令:指定监控某一些用户

top:输入此命令,按回车键,查看执行的进程。再输入小u:然后输入“u”回车,再输入用户名,即可。

意思是:我要监控gz用户。

命令:终止对应的进程

top:输入此命令,按回车键,查看执行的进程。 k:然后输入“k”回车,再输入要结束的进程ID号。

 

四、Linux监控网络状态

概述:可以通过这个命令可以监控那些IP链接到Linux上,如果是非法用户的话,就可以把这些IP封杀掉。

使用:显示网络统计信息的命令netstat,此命令用来显示整个系统目前的网络情况。例如目前 的连接、数据包传递数据、或是路由表内容。此命令直 接输入即可使用。

命令:netstat -an | more

命令:netstat -anp | more  显示对应的进程ID

 

 

 显示数据包经过历程命令:route

命令:traceroute

先安装一下:sudo apt-get traceroute

 

Windows中可以使用:tracert www.baidu.com

 

五、设置系统时间

(1)显示系统时间

命令:date

(2)设置时间

命令:date MMDDHHMMCCYY.SS:意思是指:月月日日时时分分年 年年年.秒秒。

我就不演示了。

(3)查看月历

本文永久更新链接地址:http://www.linuxidc.com/Linux/2017-10/147459.htm

赞(0) 打赏
转载请注明出处:服务器评测 » crontab使用详解和Linux的进程管理以及网络状态监控
分享到: 更多 (0)

听说打赏我的人,都进福布斯排行榜啦!

支付宝扫一扫打赏

微信扫一扫打赏