Linux笔记

it2025-04-07  19

ps -aux  #查看系统中所有进程,使用BSD操作系统格式 ps -le #查看系统中所有进程,使用Linux标准命令格式 选项     - a:显示一个终端的所有进程,除了绘画引线     - u:显示进程归属用户及内存的使用情况     - x:显示没有控制终端的进程     - -l:长格式显示。显示更加详细的信息     - -e:显示所有进程,和-A作用一致      USER:该进程是由哪个用户产生的; PID:进程的ID号 %CPU:该进程占用CPU资源的百分比,占用越高,进程越耗费资源 %MEM:该进程占用物理内存百分比,占用越高,进程越耗费资源 VSZ:该进程占用物理内存的大小,单位KB; RSS:该进程占用实际物理内存的大小,单位KB; TTY:该进程是在哪个终端中运行的。其中tty1-tty7代表本地控制 台终端,tty1-tty6是本地的字符界面终端,tty7是图形终端。pts/0 -255代表虚拟终端。

pstree 显示进程数 -p:显示进程的PID -u:显示进程的所属用户

top查看系统健康,任务管理器 -d秒数:指定top命令每隔几秒更新。默认是3秒 -b:使用批处理模式输出。一般和“-n”选项合用 -n次数:指定top命令执行的次数。一般和“-b”选项合用 在top命令的交互模式当中可以执行的命令: ?或h:显示交互模式的帮助 P:以CPU使用率排序,默认就是此项 M:以内存的使用率排序 N:以PID排序 q:退出top 第一行信息为任务队列信息 12:26:46系统当前时间 up 1 day,13:32    系统的运行时间,本机已经运行1天13小时32分钟 2 users         ,计算的s    当前登记了两个用户 load average:0.00,0.00,0.00    系统在之前1分钟,5分钟,15分钟的平均负载。>1系统超出负载。 第二行为进程信息 task:95 total 系统中的进程总数 1 running 正在运行的进程数 94 sleeping 睡眠的进程 0 stopped 正在停止的进程 0 zombie 僵尸进程。如果不是0,需要手工检查僵尸进程 第三行为cpu信息

kill 1 SIGHUP 该信号让进程立即关闭,然后重新读取配置文件后重启 2 SIGINT 程序终止信号,用于前台进程。相当于输出ctrl+c快捷键 8 SIGFPE 在发生致命的算术运算错误时发出,不仅包括浮点运算错误,还包括溢出及除数为0等其它所有的算术的错误。 9 SIGKILL 用来立即结束程序的运行 本信号不能被阻断、处理和忽略。一般用于强制终止进程。 14 SIGALRE 时钟定时信号,计算的是实际的时间或时钟时间。alarm函数使用该信号。 15 SIGTERM 正常结束进程的信号,kill命令的默认信号。有时如果进程已经发生问题,这个信号是无法正常终止进程的,我们才会尝试SIGKILL信号,也就是信号9. 18 SIGCONT 该信号可以让暂停的进程恢复执行,本信号不能被阻断。 19 SIGSTOP 该信号可以暂停前台进程,相当于输入ctrl+z快捷键。本信号不能被阻断。

killall 按照进程名杀死进程  -i:交互式操作 -I:忽略进程大小写

pkill 按照进程名终止进程 -t 安装终端号踢出用户 安装终端号踢出用户 w 使用w命令查询本机已登录的用户 pkill -9 -t pts/1 强制杀死从pts/1虚拟终端登录的进程

PRI代表Priority,NI代表Nice。这两个值都是优先级,数字越小代表该优先级越高。 Nice范围-20~19 普通用户调整NI值的范围是0-19,而且只能调整自己的进程 普通用户只能调高NI值,而不能降低,如原本NI值为0,则只能调整为大于0 root才能设定进程NI值为负值,而且可以调整任何用户的进程 PRI(最终值)= PRI(原始值)+ NI 用户只能修改NI的值,不能直接修改PRI nice命令 #nice命令可以给新执行的程序直接赋予NI值,但是不能修改已经存在进程的NI值 选项:-n NI值:给命令赋予NI值。 例如 nice -n -5 service httpd start renice [优先级] PID #renice命令是修改已经存在进程的NI值的命令 例如 renice -10 2125

jobs 查看后台 命令+ &  将相关命令放入后台,放入后台命令必须可以持续运行一段时间 放入后台的命令不能和前台有交互或需要前台输入,否则放入后台只能暂停 按下ctrl+z快捷键,暂停放入后台 bg %工作号 把后台暂停的工作恢复到后台执行 fg %工作号 将后台暂停的工作恢复到前台执行

将进程脱离终端运行 第一种把需要后台执行的命令加入/etc/rc.local 第二种使用系统定时任务,让系统在指定的时间执行某个后台命令 第三种方法是使用nohup命令 nohup + 命令 &      脱离终端放入后台运行

系统资源查看: vmstat命令监控系统资源 vmstat[刷新延时 刷新次数] 缓存(cache)是用来加速数据读取,而缓冲(buffer)是加速数据写入硬盘的 dmesg开机时内核检测信息 free [-b|-k|-m|-g]   计算机内存单位 cat /proc/cpuinfo 查看cpu信息 uptime 显示系统启动时间和平均负载,也就是top命令第一行。w命令也一样 uname[选项] -a:查看系统所有相关信息;-r:查看内核版本;-s:查看内核名称 file /bin/ls 查看系统位数 lsb_release -a 查看系统是什么发行版 lsof[选项] 列出进程打开或者使用的文件信息   /sbin/init 知道文件名看是哪个进程调用   -c httpd 查看httpd进程调用了哪些文件   -u root 按照用户名,查询某用户的进程调用的文件名    at[选项]时间 -m:当at工作完成后无论是否有命令输出都用email通知执行at命令的用户 -c工作号:显示该at工作的实际内容 atq 查询当前服务器上的at工作 atrm[工作号] 删除指定的at任务

crontab -e 当系统中有/etc/cron.allow文件时,只有写入此文件的用户可以使用crontab命令,没有写入的用户 不能使用crontab命令。如果有此文件/etc/cron.deny文件会被忽略,/etc/cron.allow文件的优先级更高。 当系统中有/etc/cron.deny文件时,则写入此文件的用户不能使用crontab命令,没有写入文件的用户 可以使用crontab命令。 第一个“*”       一小时当中的第几分钟 第二个“*”        一天当中的第几个小时 第三个“*”        一个月当中的第几天 第四个“*”        一年当中的第几个月 第五个“*”        一周当中的星期几 特殊符号 *        代表任何时间。比如第一个*就代表一小时中每分钟都执行一次 ,        代表不连续的时间。比如“0 8,12,16 * * * 命令”代表每天8点12点16点都执行一次命令 -        代表连续的时间范围。比如”0 5 * * 1-6 命令“代表周一到周六凌晨五点执行命令 */n        代表每隔多久执行一次。比如“*/10 * * * * 命令”代表每隔10分钟执行一次命令 crontab -l    查看root用户的crontab任务 crontab -r    删除用户所有的定时任务

系统定时任务 第一种是把需要定时执行的脚本复制到/etc/cron.{daily,weekly,montyly}目录中任意一个 第二种是修改/etc/crontab配置文件

anacron是用来保证系统关机的时候错过的定时任务,可以在系统开机之后再执行  

最新回复(0)