Linux基础运维篇:Linux进程与服务管理(第010课)

Linux基础运维篇:Linux进程与服务管理(第010课)

精选文章moguli202025-04-25 13:58:0016A+A-

在 Linux 系统里,进程和服务管理就像是一个大管家的工作,得把各种程序的运行安排得明明白白,这样系统才能稳稳当当地干活。进程就是程序跑起来的一个实例,服务呢,是那种一直在后台默默工作的进程,咱下面就详细说说咋管理它们。

进程管理

1. 进程是啥

进程其实就是程序在系统里跑起来的样子。比如说你打开了一个音乐播放器,系统就给这个播放器创建了一个进程,让它能正常播放音乐。每个进程都有自己的地盘(内存空间),用着系统给它分配的资源,还有自己的运行状态。


2. 查看进程信息

  • ps 命令
    ps 命令就像是一个小侦探,能让你知道当前系统里都有哪些进程在跑。你在命令行里输入 ps aux,它就会把所有用户的进程信息都列出来,包括进程的编号(PID)、是哪个用户启动的、用了多少 CPU 和内存啥的。这里的 a 就是说要查看所有用户的进程,u 是让信息显示得更友好,x 是连那些没有控制终端的进程也给你找出来。
  • top 命令
    top 命令就更厉害了,它是一个实时监控小能手。你输入 top 后,它会给你展示一个动态的界面,不停地刷新,让你随时能看到哪个进程占了好多 CPU 或者内存。要是你看够了,按 q 键就能退出。


3. 终止进程

  • kill 命令
    有时候有些进程调皮捣蛋,不好好干活,或者你不想让它继续跑了,就可以用 kill 命令把它干掉。不过你得先知道这个进程的 PID 才行。你在命令行输入 kill <PID>,系统就会给这个进程发一个信号,让它自己停下来。比如说有个进程的 PID 是 1234,你就输入 kill 1234。要是这个进程不听话,不肯停下来,你就用 kill -9 <PID>,这就相当于强制让它停止。


4. 调整进程优先级

  • nice 命令
    nice 命令就像是给进程安排座位,优先级高的进程能多吃点系统资源,优先级低的就少吃点。优先级的范围是从 -20(最高优先级)到 19(最低优先级),默认是 0。你要是想让一个程序以低优先级运行,就在启动它的时候加上 nice -n 10 <命令>,比如 nice -n 10 ./你的程序。
  • renice 命令
    renice 命令是给已经在跑的进程重新安排座位。你输入 renice -n <优先级> <PID>,就能改变这个进程的优先级。比如说有个进程 PID 是 1234,你想把它的优先级改成 5,就输入 renice -n 5 1234。


服务管理

1. 服务是啥

服务就是那些在后台一直默默工作的进程,一般系统一开机它们就自己启动了,给系统和用户提供各种功能,像网络服务、数据库服务啥的。


2. 老办法管理服务(SysVinit)

在以前的 Linux 系统里,用 SysVinit 来管理服务,主要用 service 和 chkconfig 这两个命令。

  • service 命令
    service 命令就像是服务的开关,能让服务启动、停止、重启,还能查看它的状态。你输入 service <服务名> start 就是启动服务,service <服务名> stop 就是停止服务,service <服务名> restart 就是重启服务,service <服务名> status 就是看看服务现在是啥状态。比如说你想启动 Apache 服务,就输入 service httpd start。
  • chkconfig 命令
    chkconfig 命令是用来设置服务在不同运行级别下要不要自动启动的。你输入 chkconfig <服务名> on 就是让服务在这些运行级别下自动启动,chkconfig <服务名> off 就是不让它自动启动。比如说你想让 Apache 服务在所有运行级别下都自动启动,就输入 chkconfig httpd on。


3. 新办法管理服务(Systemd)

现在大部分 Linux 系统都用 Systemd 来管理服务了,它功能更强大、更灵活。

  • systemctl 命令
    systemctl 命令是 Systemd 的大管家,能启动、停止、重启服务,查看服务状态,还能设置服务开机自启。你输入 systemctl start <服务名> 是启动服务,systemctl stop <服务名> 是停止服务,systemctl restart <服务名> 是重启服务,systemctl status <服务名> 是查看服务状态,systemctl enable <服务名> 是让服务开机自动启动,systemctl disable <服务名> 是不让服务开机自动启动。比如说你想启动 Nginx 服务,还想让它开机自动启动,就先输入 systemctl start nginx,再输入 systemctl enable nginx。


总结

进程和服务管理在 Linux 系统里就像给程序们安排工作和生活,你得知道怎么查看进程、让进程停下来、调整进程的优先级,还得会启动和停止服务、设置服务开机自启。这样系统就能顺顺当当的,不会出啥大毛病。在实际用的时候,你得看看你的系统适合用老办法(SysVinit)还是新办法(Systemd)来管理服务。

#Linux##服务器#

点击这里复制本文地址 以上内容由莫古技术网整理呈现,请务必在转载分享时注明本文地址!如对内容有疑问,请联系我们,谢谢!
qrcode

莫古技术网 © All Rights Reserved.  滇ICP备2024046894号-2