补充一些linux进程相关的东西

本文介绍了守护进程的概念及其启动方式,并详细讲解了at命令和cron服务用于执行定时任务的方法。此外还概述了ps、top等命令的功能及使用场景。


守护进程Daemon,在后台运行而又没有终端或登录shell 与之接合在一起的进程。
启动方式:
1引导系统时启动:系统启动script执行期间启动,这些script一般放在/etc/rc.d中
2手工从shell提示符启动
3由crond启动
4at命令启动

进程挂起 Ctrl+Z
后台执行 bg
前台执行 fg

常用命令
一、名称 : at
使用权限 : 所有使用者
使用方式 : at -V [-q queue] [-f file] [-mldbv] TIME
说明 : at 可以让使用者指定在 TIME 这个特定时刻执行某个程序或指令,TIME 的格式是 HH:MM其中的 HH 为小时,MM 为分钟,甚至你也可以指定 am, pm, midnight, noon, teatime(就是下午 4 点锺)等口语词。
如果想要指定超过一天内的时间,则可以用 MMDDYY 或者 MM/DD/YY 的格式,其中 MM 是分钟,DD 是第几日,YY 是指年份。另外,使用者甚至也可以使用像是 now + 时间间隔来弹性指定时间,其中的时间间隔可以是 minutes, hours, days, weeks。
另外,使用者也可指定 today 或 tomorrow 来表示今天或明天。当指定了时间并按下 enter 之后,at 会进入交谈模式并要求输入指令或程序,当你输入完后按下 ctrl+D 即可完成所有动作,至于执行的结果将会寄回你的帐号中。
参数 :
-V : 印出版本编号
-q : 使用指定的伫列(Queue)来储存,at 的资料是存放在所谓的 queue 中,使用者可以同时使用多个 queue,而 queue 的编号为 a, b, c... z 以及 A, B, ... Z 共 52 个
-m : 即使程序/指令执行完成后没有输出结果, 也要寄封信给使用者
-f file : 读入预先写好的命令档。使用者不一定要使用交谈模式来输入,可以先将所有的指定先写入档案后再一次读入
-l : 列出所有的指定 (使用者也可以直接使用 atq 而不用 at -l)
-d : 删除指定 (使用者也可以直接使用 atrm 而不用 at -d)
-v : 列出所有已经完成但尚未删除的指定
例子 :
三天后的下午 5 点锺执行 /bin/ls :
at 5pm + 3 days /bin/ls
三个星期后的下午 5 点锺执行 /bin/ls :
at 5pm + 2 weeks /bin/ls
明天的 17:20 执行 /bin/date :
at 17:20 tomorrow /bin/date
1999 年的最后一天的最后一分钟印出 the end of world !
at 23:59 12/31/1999 echo the end of world


下面一部分 引自 http://blog.youkuaiyun.com/hondrif82q/archive/2006/12/23/1456841.aspx

当使用at命令提交脚本时,形式 如下
at [-f script] [-m -l -r] [time] [date]
例一:提示符方式
代码:

# su sam
$ at 10:40
warning: commands will be executed using (in order) a) $SHELL b) login shell c) /bin/sh
at> find /etc -name "passwd" -print
at> <EOT>
job 1 at 2004-11-02 10:40


其中, < E O T >就是< C T R L - D >。在10:40系统将执行一个简单的f i n d命令。提交的作业被分配了一个唯一标识job 1。该命令在完成以后会将全部结果以邮件的形式发送给我。
例二:命令行方式
如果希望向a t命令提交一个s h e l l脚本,使用其命令行方式即可。在提交脚本时使用- f选项。
如:
代码:

$ touch db_table.sh
$ at 3:00pm tomorrow -f db_table.sh
warning: commands will be executed using (in order) a) $SHELL b) login shell c) /bin/sh
job 3 at 2004-11-02 15:00


在上面的例子中,一个叫做d b _ t a b l e . s h的脚本将在2004-11-02 15:00运行。
touch的作用如下──
  1.创建空文件  
  2.更新访问修改时间戳)

与at很相似的一个命令,batch在资源空闲时执行




二、cron
建立crontab的步骤
1建立文件: vi  job(新文件名,假设/root/job,用户是tian)
2安装文件: crontab job
这时,/var/spool/cron目录下就会 多了一个tian文件

三、ps
-e 显示所有进程信息
-f 显示进程所有信息

-aux 显示 所有终端所有用户的信息

四、top 和ps很像,但它是个动态显示过程
top  -d  30(间隔秒数)
     -n  10 更新次数


五、sleep命令 暂停 进程
sleep 100 ; ls


六、ICMP报文

1
ping查询  /usr/bin/

原理是用类型码为0的ICMP发请求,收到请求的主机则用类型码为8的ICMP回应。ping程序来计算间隔时间,并计算有多少个包被送达。用户就可以判断网络大致的情况。

2 traceroute  /usr/sbin/

它收到目的主机的IP后,首先给目的主机发送一个TTL=1(还记得TTL是什么吗?)的UDP(后面就 知道UDP是什么了)数据包,而经过的第一个路由器收到这个数据包以后,就自动把TTL减1,而TTL变为0以后,路由器就把这个包给抛弃了,并同时产生 一个主机不可达的ICMP数据报给主机。主机收到这个数据报以后再发一个TTL=2的UDP数据报给目的主机,然后刺激第二个路由器给主机发ICMP数据 报。如此往复直到到达目的主机。这样,traceroute就拿到了所有的路由器ip。从而避开了ip头只能记录有限路由IP的问题



一般的 防火墙 都是过滤了来自外部主机的回送请求(echo Request)报文,但为了是自己能够探测外部主机的当前状态, 防火墙 都不会过滤掉回送应答(echo Reply)数据报,而且ICMP报文可以在广域网上传送,
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值