。。。。。。。。。。
。。。。。。。。。。。
。。。。。你你你。你。
1
系统的crontab设置
因为使用crontab -e 设定定时任务是绑定用户的。如果换个用户就没法操作定时任务了。
所以为了所有人都可以使用。
用:/etc/crontab这个配置文件,可以指定用户身份来制定和编辑定时任务
crontab循环定时任务
常用、用途广泛
一、服务管理与访问控制
注意:当前用户创建任务,需要注意用户权限,进行用户更改后再行创建
系统定时任务:
一:at一次性定时任务
1、安装at服务
2、at的访问控制
3、at的命令
用法:at [选项] 时间
系统资源查看:
一:vmstat命令监控系统资源
命令:vmstat [刷新延时 刷新次数] 例如:vmstat 1 3
二:dmesg内核监测信息
用法 dmesg | grep CPU
三:free命令查看内存使用状态
用法:free -m
四:查看CPU信息
命令:cat /proc/cpuinfo
/proc/ 是保存内存中的信息
五:uptime显示系统的启动时间和平均负载
top命令第一行。
w命令也可以看到此数据
六:uname 查看系统与内核相关信息
用法:uname [选项]
判断系统的位数。file /bin/ls
查看系统的发型版本 lsb_release -a
七:列出进程打开或使用的文件信息
命令:lsof [选项]
vmstat 命令 dmesg命令
如何脱离操作用户、终端、远程,把程序放入后台运行
推荐第一种、规范第三种
nohup 【命令】 &
脱离终端,将程序放入后台运行。
工作管理的方法:
一:把进程放入后台
二:查看后台的工作
三:将后台暂停的工作恢复到前台执行
工作管理:
1、jobs命令,查看系统后台运行的程序。
因为程序不放置在后台运行,会影响接下来的操作,系统会在前台持续运行。
而且持续时间内不能关闭终端界面或者远程登录。
2、命令格式为 命令后面加 & 例如:ls &
修改进程优先级:
一:什么是进程的优先级
每个cpu在同一个时钟周期内只能运算一个指令。相当于每个时钟周期内每个人只能处理一个人交代的工作。
假设只有一个人处理工作,当工作过多的时候,就需要进行排队进行工作。
优先级就是插队处理。
二:了解优先级
PRI不能主动修改,但是可以修改NI
一般不需要更改,了解就可以了。因为进程的优先级用户根本感觉不到
三:修改优先级
nice命令,用于修改优先级
renice命令,用于修改已经修改过的优先级
杀死进程:
1、kill -l 命令 杀死单一进程
(1、平滑重启。用法:kill -SUP 「进程id」如果更改了某个程序的配置文件,可以使用信号1,这样不会影响终端用户的操作影响。类似于在线更新一类。
kill后面一定跟信号代码或者信号名称 不能直接用于进程id
例:kill -1 2235 #重启进程。kill -9 3455 #强制杀死进程
2、killall [选项] [信号] 进程名
3、pkill 和killall效果一致
多一个功能。可以加-t选项 踢掉登录的用户。
用法:使用w命令判断用户 随后使用pkill -9 -t 用户tty
必须使用超级用户才可以执行提出用户操作。
4、w命令 查看当前登录的用户
TOP命令 用作判断系统健康的重要命令
高负载服务器 遵循一周重启一次,(游戏、电影类服务器)
低负载服务器 遵循一月重启一次
cached 缓存 加速读取。 buffers缓冲 加速写入 减少对硬盘的写入操作。
主要看
1、cpu负载均衡率 load average
2、cpu空闲率
3、内存空闲率
4、硬盘空闲率
TOP命令比较耗费资源。最好不要给太快的刷新频率。默认3秒就可以。
刷新一次并且输出重定向至 /root/top.log文件。
进程的查看。ps和pstree命令
ps命令
注意:ps -aux 效果一样,但是有报错。
ps aux输出注释:
系统靠PID识别进程。/sbin/init进程永远是第一个。父进程。
TTY 类型为 ? 的 代表都是由内核直接启动的进程。
大部分属于休眠状态。所以资源耗费低
START 进程运行的时间
TIME 当前进程耗费的cpu运算资源,时间越长,耗费资源越多。
两者本质不同。
最后,关于进程名,不理解可以百度查询
logout 正确退出命令。养成良好习惯,正确退出
进程:正在运行的程序
命令也属于进程
2、进程管理的作用
(1、判断服务器健康状态
(2、查看系统中所有进程
(3、杀死进程
注意:不允许把杀死进程当作常规关闭进程操作。需要判断程序是否需要强制杀死进程操作。
后台命令脱离终端执行
背景:把命令放入后台执行,只能在当前登录的终端执行,一旦用户退出当前终端
后台程序就会停止
相当于:后台执行的命令和当前终端绑定了
当用户logout时,会向该用户终端下所有 进程发送SIGHUP信号
(守护进程damon进程开机运行,某一个用户退出终端不影响该程序的运行)
后台命令脱离登陆终端执行的方法(不随登陆终端的退出而终止)
・第一种方法:把需要后台执行的命令加入 /etc/rc.local文件(开机自动执行)
・第二种方法:使用系统定时任务,让系统在指定的时间执行某个后台命令
・第三种方法:使用nohup命令 ,脱离终端,进程也不会消失
nohup 命令 &
示例
nohup /root/for.sh & #用绝对路径22:03 2017/05/07
把进程放入后台方式:
命令后加 & ,放入后台会持续运行状态
top 按下ctrl+z ,放入后台是暂停状态
jobs -l 显示工作的pid
+号代表最后一个放入后台的
-号代表倒数第二个
恢复到前台执行: fg %工作号
恢复到后台执行:bg %工作号 ;bg 不跟工作号,代表恢复最后一个工作
可放入后台的例子:
复制一个大的文件可以放入后台
搜索文件
压缩解压缩文件
top 每3秒刷新一次,判断系统是否健康的指标命令,window 的进程是1秒刷新
默认是按cpu 占有率来排序显示的
追求的是服务器的无故障率,不是服务器的持续时间,应该适当重启,已保持服务器的正常运行
服务器维护基本原则:高负载的服务器,应该一周重启一次,低压力服务器应该一个月重启一次
僵尸进程,如果不是0 ,需要手工检查一下僵尸进城 zombie
系统空闲进程不能低于20% cpu %id
buffers 缓冲:加速了数据的使用
cached 缓存:加速了数据的读取
swap 交换分区
ps aux 不用加 - ,会报语法错误
ps aux、ps -le 列出系统所有进程信息
ps aux 输出内容:
user: 用户
pid: 进程号 /sbin/init 进程号为1 ,最开始进程,原始进程
%cpu: CPU百分比
%MEM: 内存百分比
pstree 显示进程树
window 登录进程比linux 要少,记得要注销登录
top 命令
ps aux ,查看系统中所有进程,
ps -le ,查看系统中所有进程,
pstree -pu
00
0000
000
jobs
shu
111
vmstat (查看主要系统健康相关信息)
dmesg (系统硬件相关信息)
free (内存相关信息)
cat /proc/cpuinfo
uptime (top 第一行)
uname (当前系统内核相关信息)
lsof (进程与文件调用情况)
#要先停止进程 service httpd stop nice -n -5 service httpd start
#重启进程 kill -HUP id kill -1 id #杀死进程 kill -9 id #批量杀死 killall -9 httpd #交互式 killall -i -9 httpd
#按照终端号杀死进程 pkill -9 -t pts/1