shell脚本(命令)放后台
sleep 300& 放到后台运行,脚本或命令要全路径
nohup:用户推出系统进程继续工作
【功能说明】
nohup 命令可以将程序以忽略挂起信号的方式运行起来,被运行程序的输出信息将不会显示到终端
如果当前目录的nohup.out文件不可写,输出重定向到$HOME/nohup.out文件中
企业应用:
nohup 路径/shell脚本 &
方法:screen
总结:让程序进入后台运行方法
1.ctrl+z,jobs,fg,bg前台的程序,进入后台,后台运行 ##临时用
2.使用screen (推荐) ##管理员常用,下班了想回家,xshell有没有执行完的任务。
3.使用&符号 ##后台运行脚本常用
screen命令
作用:保持操作过的窗口连接状态。
[root@calms ~]# yum install screen -y
2.开启一个screen窗口,指定名称
[root@calms ~]# screen -S sleep
3.在screen窗口中执行任务即可
while true;do echo wulin>>/tmp/wulin.log;sleep 1;done
#每隔一秒向/tmp/wulin.log追加wulin
4.平滑的退出screen,但不会终止screen中的任务。
ctrl+a+d
注意: 如果使用exit 才算真的关闭screen窗口
5.关闭xshell模拟下班回家,
第二天重开xshell连接。
查看当前正在运行的screen有哪些
[root@wulin ~]# screen -list
6.此时需要进入昨晚的会话,进入正在运行的screen
[root@calms ~]# screen -r sleep
[root@calms ~]# screen -r 2259
常用screen参数 screen -S yourname #新建一个叫yourname的session screen -ls
#列出当前所有的session screen -r yourname #回到yourname这个session screen -d yourname #远程detach某个session screen -d -r yourname
#结束当前session并回到yourname这个session
重点总结:
#1.创建screen 创建
screen 或 screnn -S 窗口名称
#2.退出窗口
ctrl+a+d
#3.显示当前所有screen窗口
screen -ls
#4.恢复,重新进入
screnn -r id
什么是进程优先级?
进程执行时候是排队执行的,需要插队,要调整。
进程重要性高,需要优先多分配CPU。调整优先级。
#记住用途
nice: 调整【程序运行时】的优先级 renice:调整【运行中的进程】的优先级
区别:
nice命令常用于修改未运行的程序再运行时的优先级,
但是对于正在运行的进程,若想要修改优先级,就需要用到renice命令。
strace:跟踪进程的系统调用
系统调用:系统为应用程序提供的连接接口
进程执行:调用很多接口。。
为什么要跟踪进程的系统调用?
查找进程执行异常的原因:
PHP进程,JAVA进程,cpu%100,怎么排查?
进程执行:调用很多接口,接口如果异常,进程就会不正常
strace是Linux环境下的一款程序调试工具,用来检查一个应用程序所使用的系统调用及它所接收的系统信息。strace会追踪程序运行时的整个生命周期,
输出每一个系统调用的名字、参数、返回值和执行消耗的时间等, 是高级运维和开发人员的排查问题的杀手锏。
-p pid 指定要跟踪的进程pid, 要同时跟踪多个pid, 重复多次-p选项即可※
-f 跟踪目标进程,以及目标进程创建的所有子进程※
-tt 在输出中的每一行前加上时间信息,精确到微秒。例子:11:18:59.759546※
只跟踪和文件操作有关的系统调用。
命令结果输出太多了,很容易看花眼,因此可以使用过滤器,过滤掉无关信息,比如只查看文件操作