(linux)服务与进程

服务与进程管理

一、Linux系统的启动过程
1、加电自检:对计算机的硬件进行自我检测
BIOS程序:基本输入输出系统,对硬件进行检测和设置。
开机时按:F2 esc F1
2、引导程序:lilo/grub
3、系统内核:
4、选运行级别:0-6 一共7个
5、登录界面:
6、shell环境:

二、Linux系统的运行级别
1、查看系统当前所在的运行级别:runlevel
2、运行级别的切换:init 3
3、修改系统启动级别:
影响启动级别的文件:/etc/systemd/system/default.target
方法一:重新设置链接文件 #rm -rf /etc/systemd/system/default.target
#ln -s /lib/systemd/system/runlevel3.target /etc/systemd/system/default.tart
方法二:使用 systemctl 命令 #systemctl set-default runlevel3.target

三、systemctl 管理服务
命令格式:systemctl 选项 服务名
# systemctl restart network 重启
# systemctl stop network 停止
# systemctl start network 启动
# systemctl status network 查看服务状态
开启服务的自启动:systemctl enable 服务名称
关闭服务的自启动:systemctl disable 服务名称
查看服务是不是开机自启:# systemctl is-enabled sshd
systemctl rescue 强制进入救援模式
systemctl emergency 强制进入紧急救援模式
四、进程的管理
1、ps 静态查看系统进程情况
2、top 动态查看系统进程情况
3、pstree 查看进程的关系
4、终止进程:kill 进程号 杀死进程
kill -9 进程号 强制杀死进程
5、进程的前后台运行控制
①利用jobs -l查看后台进程的任务编号
②利用fg 任务编号将后台进程调入终端的前台执行
③利用bg 任务编号将挂起进程调入后台继续运行
④终止进程三种方法:Ctrl+C kill PID kill -9 PID
6、进程的调度
(1)一次性调度:在指定的未来的某一时刻执行某个命令
格式:at [-f 文件] [-m ] 时间

 (2)周期性调度:指在某一个周期范围内重复执行相关的命令
         crontab  
         crontab -e  为当前用户编写一个周期性计划任务
         crontab -u student -e     为student用户制定计划任务
         crontab -u student -l       查看用户的计划任务列表
         crontab -u student -r       删除用户的计划任务列表
        用户的计划任务列表存放目录:/var/spool/cron

服务与进程管理

1.Linux 系统的启动过程
在这里插入图片描述2、Linux 系统的运行级别
(1)Linux 为了适应不同用户对服务的启动配置要求,设置了七种不同的运行级别
运行级别 0:关机模式。poweroff.target
运行级别 1:单用户模式,仅用于 root 用户对系统进行维护时。rescue.target 运行级别 2:多用户模式(没有 NFS)。multi-user.target
运行级别 3:完全多用户模式,即多用户文本界面模式,是标准的运行级别。multi-user.target
运行级别 4:特定运行级别,基本不用的用户模式。multi-user.target
运行级别 5:X11,Linux 系统的图形界面运行级别。graphical.target
运行级别 6:重新启动。reboot.target
target 文件保存在:/lib/system/system 目录中。
运行级别的设置由/etc/systemd/system/default.target 文件来控制。运行级别服务程序存放位置:/etc/rc.d/
服务进程存放在运行级别对应的目录中:Snnxxxx 或 Knnxxxxx 服务程序的脚本文件存放位置:/etc/rc.d/init.d/

(2)系统运行级别之间的切换
查看系统的当前运行级别:runlevel
查看系统启动时的运行级别:ll /etc/systemd/system/default.target

(3)系统运行级别之间的切换
使用 init 命令进行切换
将系统启动的运行级别从 5 修改为 3
方法一:重新设置链接文件
#rm -rf /etc/systemd/system/default.target
#ln -s /lib/systemd/system/runlevel3.target /etc/systemd/system/default.tart
方法二:使用systemctl 命令
#systemctl set-default runlevel3.target
#systemctl set-default runlevel3.target

(4) 关闭 Ctrl+Alt+Del 键的功能
在字符界面按 Ctrl+Alt+Del 键系统会自动重启,为避免误操作带来的损失,需要禁用此功能。注释/usr/lib/systemd/system/ctrl-alt-del.target 文件中的全部内容,保存退出。
执行 init q 重新 reload 配置文件。
3、使用 systemctl 管理服务
服务指执行指定系统功能的程序、或进程,以便支持其他程序,尤其是底层(接近硬件)程序。例如:打印服务,ftp 服务,http 服务等。对于服务的管理可使用 systemctl 命令。
(1)服务的启动与停止
命令格式:systemctl 选项 服务名选项说明:
start:启动;stop:停止;restart:重启;status:服务状态服务名:一般以“.service”结尾,输入服务名时了可省略。
(2)设置服务的自启动状态
①使用 ntsysv 命令设置服务的自启动命令格式:ntsysv [–back][–level]
选项说明:back,在互动界面不显示 cancel;level,在指定的运行级别中设置服务的自启动。
②使用 systemctl 命令设置服务的自启动
查看服务的自启动状态:systemctl is-enabled [服务名称] 开启服务的自启动:systemctl enable 服务名称
关闭服务的自启动:systemctl disable 服务名称
(3)查看所有的服务
命令格式:systemctl [选项] [–type=TYPE] [–all] 选项说明:
(1) list-units:依据 unit 列出所有启动的 unit。加上–all 会列出没启动的 unit;
(2) list-unit-files:依据/usr/lib/systemd/system/ 内的启动文件,列出启动文件列表
–type=TYPE: 为 unit type, 主要有service, socket, target

#systemctl //列出所有的系统服务
#systemctl list-units //列出所有启动 unit
#systemctl list-unit-files //列出所有启动文件
#systemctl list-units -type=service -all //列出所有 service 类型的 unit
#systemctl list-units -type=service -all grep cpu //列出 cpu 电源管理机制的服务

#systemctl list-units -type=target -all //列出所有目标单元 target
(4)systemctl 命令特殊功能
命令 说明
systemctl poweroff 系统关机
systemctl reboot 重新启动
systemctl suspend 进入睡眠模式
systemctl hibernate 进入休眠模式
systemctl rescue 强制进入救援模式
systemctl emergency 强制进入紧急救援模式
4、进程的延迟与周期调度
(1)进程的概念
进程:开始执行但是还没有结束的程序的实例程序:包含可执行代码的文件
进程由程序产生,是一个运行着的、要占系统资源的程序,进程不等于程序。进程分为:交互进程、批处理进程、守护进程。
(2)进程的查看ps 命令
命令语法:ps [选项] 选项说明:
-A:显示系统中所有进程的信息,与-e 具有相同的功能。
-a:显示所有用户进程的信息。
-f:完整的显示进程的所有信息。
-l:以长格式显示进程信息。
-r:只显示正在运行的进程。
-u:显示面向用户的格式(包括用户名、CPU 及内存使用情况等信息)。
-x:显示所有非控制终端上的进程信息。
-p:显示由进程 ID 指定的进程的信息。
-t:显示指定终端上的进程的信息。

(3)查看各进程继承关系的命令:pstree
pstree 命令以树状结构显示系统进程的继承关系。树状图将会以 pid (如果有指定) 或是以 init 为根,如果指定 user,则树状结构只显示该用户所拥有的进程。
命令格式:pstree [选项] [pid|user] 选项说明:
-a:显示该进程的完整继承关系,如果是被内存置换出去的进程则会加上括号。
-c 如果有重复的进程名, 则分开列出 (默认值是会在前面加上 * )。pid|user:查看指定根进程(pid)或用户(user)所拥有的进程。
(4)进程的终止
kill [ 信 号 代 码 ] pid
Killall [信号代码] 进程名

(5)进程的调度
①延迟性调试命令:at
功能:指定时间运行指定的程序 格式:at [-f 文件] [-m ] 时间
-f : 指定存放计划执行命令的文件
-m: 作业结束后发送邮件给执行 at 命令的用户
时间:任务执行的时间,可采用相对和绝对两种方法
绝对表示法: MMDDYY 或 MM/DD/YYYY, today 或 tomorrow 来表示今天或明天
相对表示法:now+num+时间单位,其中的时间间隔可以是 minutes, hours, days, weeks

②周期性调度命令 crontab 功能:计划调度服务
crontab –u user {-e | -l | -r}
-u:为指定的用户设置计划任务
-e:编辑计划任务列表
-l:查看指定用户的计划任务列表,默认为当前用户
-r:删除用户的计划任务列表
crontab –u user file (其中 file 代表任务列表文件)
在这里插入图片描述任务列表文件的格式:minute hour day month day-of-the-week run_command

课程小结:
1、Linux 系统的启动过程
2、设置 Linux 系统的运行级别
3、管理服务的命令
4、管理进程的命令
课后作业:
1、用户 lily 经常在 Linux 字符界面下进行工作,因此 lily 把 Linux 系统设置开机后直接进入完全多用户字符界面。
2、root 管理员在 Linux 服务器对 sshd 服务做了简单的管理,首先查询 sshd 服务的启动状态,发现 sshd 服务为关闭,接着 root 启动sshd 服务并将其设置为自启动,然后查询 sshd 的服务状态以确保设置成功。
3、Linux 服务器用户 tom 远程登录到服务器准备开始一天的工作,首先 tom 设置了一个提醒任务:在上午9:50,系统自动输出“I have a meeting at 10:00”以提示自己有一个重要会议。同时 tom 以后每周三下午要主持一个讲座,因此 tom 制定了一个周期性任务:每周二下午 1 点提醒第二天有讲座。
4、笔记本用户 bob 为了提高工作效率,把 Linux 系统设置开机后直接进入字符界面下,同时他发现重启键

Ctrl+Alt+Del 很少使用,但是错误的操作往往导致关机或重启,于是他取消了 Ctrl+Alt+Del 组合键。

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值