linux系统管理

xiaoxiao2021-02-28  128

一、进程管理 进程查看 ps

ps aux 查看系统所有进程 使用BSD操作系统格式 USER 该进程是由哪个用户产生的 PID 进程的ID号 %CPU 该进程占用CPU资源的百分比,占用越高,进程越耗费资源 %MEM 该进程占用的物理内存的百分比,占用越高,进程越耗费资源 VSZ 该进程占用虚拟内存的大小,单位KB RSS 该进程占用的实际物理内存大小,单位KB TTY 该进程是在哪个终端中运行的(tty1-tty7代表本地控制台终端,pts/0-255代表虚拟终端) STAT 进程状态,常见状态: R 运行 S 休眠 T 停止 s 包含子进程 + 位于后台 START 该进程的启动时间 TIME 该进程占用CPU的运算时间(非系统时间) COMMAND 产生此进程的命令 ps -le 查看系统所有进程 使用linux标准命令格式 选项: -a 显示一个终端的所有进程,除了会话引线 -u 显示进程的归属用户及内存的使用情况 -x 显示没有控制终端的进程 -l 长格式显示,显示更加详细的信息 -e 显示所有进程,和-a作用一致 pstree 显示进程树 选项: -p 显示进程id号 -u 显示进程所属用户 top 查看系统状态 top - 10:58:17 up 117 days, 18:12, 2 users, load average: 0.08, 0.05, 0.07 系统时间 运行天数(117天18小时12分) 当前登录用户(2) 系统在 1分钟 5分钟 15分钟的平均负载(cpu核心数2,则不应该大于2) Tasks: 107 total, 3 running, 104 sleeping, 0 stopped, 0 zombie 系统总进程数 正在运行进程数 休眠进程数 正在停止的进程数 僵尸进程 %Cpu(s): 0.3 us, 1.0 sy, 0.0 ni, 98.0 id, 0.7 wa, 0.0 hi, 0.0 si, 0.0 st CPU状态 us用户模式占用比 sy系统模式占用比 ni改变过优先级的用户进程占用比 id空闲占用比 wa等待输入/输出的进程的占用比 hi硬中断请求服务占用比 si软中断请求服务占用比 st虚拟时间百分比 KiB Mem : 1016904 total, 73724 free, 406624 used, 536556 buff/cache 内存状态 总内存 空闲 已使用 缓冲(加速数据写入) KiB Swap: 0 total, 0 free, 0 used. 426612 avail Mem 交换分区(虚拟内存) 总内存 空闲 已使用 缓存(加速数据读取) 选项 -d 秒数 设置top命令刷新秒数 默认3秒 -b 使用批处理模式输出 一般和 -n 合用 -n 指定top命令执行的次数 例:top -b -n 1 >top.log ?或h 显示交互模式帮助 P 以CPU使有率排序(默认) M 以内存的使用率排序 N 以PID排序 q 退出top 杀死进程 kill 信号 -1(HUP) 进程ID号 平滑重启 -9 进程ID号 强制终止进程 killall 根据进程名称杀死进程 killall -i -9 进程名 例: killall -9 httpd 选项 -i 交互询问是否删除 pkill 信号 选项 进程名 选项 -t 终端号 例:pkill -9 -t tty1 踢出用户 (w查看登录当前终端号 pts为远程终端) 修改进程优先级 ps -le PRI NI 这两个值都是优先级,数字越小优先级越高 最终优先级为PRI+NI的值,用户只能修改NI值,无法修改PRI值 NI的值范围是-20到19 普通用户调整的范围0-19,只能调整自己的进程,且只能,调高不能降低 ROOT用户才可以设置负值 PRI(最终值) = PRI(原始值)+NI nice 修改NI值 可以给新执行的命令直接赋予NI值,不能修改已存在的进程 选项: -n NI值 进程命令 例:nice -n -5 service httpd start renice 命令 修改已存在进程的NI值 renice 优先级 PID 例:renice -10 2125

二、工作管理

1.把程序放入后台 命令后面加上 &符号 把命令放入后台,并在后台执行 按下ctrl+z快捷键,放在后台暂停 2.查看后台的工作 jobs命令 选项: -l 显示工作的ID +号表示最近一个放入后台的工作 恢复工作的默认值 -号代表倒数第二个放入后台的工作 3.将暂停的工作恢复到后台执行 bg %工作号 不加任何参数 默认恢复+号工作到后台 4.恢复前台运行 fg%工作号 不加任何参数 默认恢复+号工作到前台 5.脱离终端运行 ①把需要后台执行的命令加入/etc/rc.local文件中 ②使用定时任务 ③使用nohup命令 nohup 命令 &

三、系统资源查看

1. 监控系统资源 vmstat 刷新延时 刷新次数 procs -----------memory---------- ---swap-- -----io---- -system-- ------cpu----- r b swpd free buff cache si so bi bo in cs us sy id wa st 2 0 0 78864 144776 386748 0 0 0 38 4 3 0 1 98 0 0 说明: procs 进程信息字段: r 等待运行的进程数,数量越大,系统越繁忙 b 不可被唤醒的进程数,数量越大,系统越繁忙 memory 内存信息字段: swpd 虚拟内存的使用情况,单位KB free 空闲的内存容量,单位KB buff 缓冲的内存容量,单位KB cache 缓冲的内存容量,单位KB 缓存cache:加速数据"读取" 缓冲buffer:加速数据"写入" 都是放入内存中 swap 交换分区的信息字段 si从磁盘交换到内存中数据的数量,单位KB so从内存交换到磁盘中数据的数量,单位KB 此两个数越大,证明数据需要经常在磁盘和内存间交换,系统性能越差 io 磁盘读写信息字段 bi 从块设备读入数据的总量,单位是块 bo 写到块设备的数据的总量,单位是块 此两个数越大,代表系统的I/O越繁忙 system 系统信息字段 in 每秒被终端的进程次数 cs 每秒钟进行的时间切换次数。 此两个数越大,代表系统与接口设备的通讯越繁忙 cpu cpu信息字段 us 非内核进程消耗cpu运算时间的百分比 sy 内核进程消耗cpu运算时间的百分比 id 空闲cpu的百分比 wa 等待I/O所消耗的cpu百分比 st 被虚拟机所盗用的cpu占比 dmesg 开机时内核检测信息 free 查看内存使用状态 选项: -b 以字节为单位显示 -K 以KB为单位显示 默认此项 -m 以MB为单位显示 -g 以GB为单位显示 查看cpu信息 cat /proc/cpuinfo 查看 平均负载 uptime 查看系统与内核相关信息 uname 选项: -a 查看全部 -r 查看内核版本 -s 查看内核名称 查看系统位数 file /bin/ls 查看linux系统的发行版本 lsb_release -a (yum install lsb)

四、定时任务

at 一次性定时任务 crontab循环定时任务 选项: -l 查询任务列表 -e 编写定时任务 -r 删除当前用户的定时任务 * * * * * cmd 分钟 小时 天数 月份 星期 命令 *代表任何时间 ,代表不连续的时间 -连续的时间范围 */n 每隔n执行一次 最小有效时间为分钟 最大有效时间为月份 在定时任务中使用绝对路径 系统crontab设置 /etc/crontab配置文件 # Example of job definition: # .---------------- minute (0 - 59) # | .------------- hour (0 - 23) # | | .---------- day of month (1 - 31) # | | | .------- month (1 - 12) OR jan,feb,mar,apr ... # | | | | .---- day of week (0 - 6) (Sunday=0 or 7) OR sun,mon,tue,wed,thu,fri,sat # | | | | | # * * * * * user-name command to be executed 需要指定user anacron配置 用来保证系统关机错过的定时任务,可以开机后再执行 在/var/spool/anacron/cron.{daily,weekly,monthly}文件中保存上次执行的时间 用于判断是否执行过(不能精确到小时) 以下4个目录存储对应定时执行脚本 由anacron配置和调用 /etc/cron.monthly 月份 /etc/cron.weekly 星期 /etc/cron.dailly 天数 /etc/cron.hourly 小时 配置文件 /etc/anacron RANDOM_DELAY=45 错峰执行时间随机延迟 45分钟 START_HOURS_RANGE=3-22 执行时间 3:00-22:00 1 5 cron.daily nice run-parts /etc/cron.daily 7 25 cron.weekly nice run-parts /etc/cron.weekly @monthly 45 cron.monthly nice run-parts /etc/cron.monthly 天数 强制延迟(分钟) 工作名称 实际执行命令 执行时以daily为例: 强制延迟5分钟 再随机延迟0-45分钟 依次执行daily目录下脚本 (run-parts执行参数目录下的所有可执行脚本) 因为延迟机制,执行时间不能确定
转载请注明原文地址: https://www.6miu.com/read-40653.html

最新回复(0)