版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第7章系统高级管理麒麟操作系统实用教程(微课版)人民邮电出版社·Linux创新人才培养系列教材本章内容导览7.1进程管理进程概述ps与top命令启动与切换进程结束进程与优先级查看服务与端口7.2systemd管理systemd概述单元与单元文件依赖关系与目标systemctl命令服务与启动目标7.3定时任务调度Cron服务定时任务crontab个人任务systemd定时器定时器示例7.4麒麟安全中心安全中心功能概览安全体检与账户保护网络保护配置病毒防护与应用保护设备安全管理7.5Shell脚本Shell脚本特点与构成脚本执行方式系统自动化管理示例AI辅助编写运维脚本CHAPTER7.1进程管理进程概述·查看监视进程·管理进程运行进程类型进程监视进程管理7.1.1进程概述核心概念程序:静态实体,存储在磁盘上的可执行文件进程:运行中的程序,动态概念,分配系统资源线程:进程中共享资源的执行单元进程是操作系统资源分配的基本单位每个进程拥有独立的地址空间和资源进程类型交互进程:由Shell启动,前台或后台运行批处理进程:与终端无关,提交到队列顺序执行守护进程:后台运行,系统启动时自动启动服务与守护进程本质相同Linux惯例守护进程名称后加"d"如sshd、httpd、mysqld进程关系示意图程序→进程→线程程序(静态文件)执行后成为进程(动态实例)进程可以包含一个或多个线程,线程共享进程资源进程状态:运行(R)、睡眠(S)、停止(T)、僵尸(Z)每个进程由唯一的进程ID(PID)标识7.1.2使用ps命令查看进程选项说明功能-e/-A所有进程显示系统中所有进程-a与终端关联显示与当前终端关联的进程-u特定用户显示指定用户的进程-f全格式显示完整格式的进程信息-l长格式显示长格式的进程信息aux组合选项显示所有用户的所有进程(最常用)psaux输出列说明USERPID%CPU%MEMVSZRSSTTYSTATSTARTTIMECOMMANDroot10.00.116844812345?Ss09:000:01/sbin/init#关键列说明USER—进程所有者PID—进程ID%CPU—CPU使用率%MEM—内存使用率VSZ—虚拟内存RSS—物理内存TTY—终端STAT—进程状态COMMAND—命令7.1.2使用top命令实时监视进程top显示内容系统信息:系统时间、运行时间、负载任务统计:总进程数、运行中、睡眠、停止、僵尸CPU使用率:用户空间、系统、空闲、等待内存使用:物理内存总量、已用、空闲、缓存交换空间:总量、已用、空闲进程列表:动态更新的进程信息交互命令空格—立即刷新显示Ctrl+L—重写屏幕q—退出topM—按内存使用率排序P—按CPU使用率排序k—杀死指定PID进程刷新间隔默认5秒top命令启动与常用操作$top#启动top实时监视$top-d2#设置刷新间隔为2秒$top-utester#只显示tester用户的进程#top交互模式下按M键→按内存排序按P键→按CPU排序按k键→输入PID→回车结束进程按q键→退出top7.1.3启动与切换进程进程启动方式手动启动:前台运行:直接输入命令执行后台运行:命令后加&符号调度启动:通过at或cron定时执行系统启动时自动运行前后台切换Ctrl+Z—挂起当前前台进程bg%n—将挂起的作业n放到后台运行fg%n—将后台作业n切换到前台jobs-l—显示后台作业列表显示作业号、PID、状态、命令%n中n为作业号前后台切换示例$firefox后台启动Firefox[1]12345$jobs-l#查看后台作业[1]+12345Runningfirefox&$fg%1#切换到前台#按Ctrl+Z挂起[1]+Stoppedfirefox$bg%1#后台恢复运行[1]+12345Runningfirefox&7.1.3结束进程与优先级管理结束进程命令killPID—发送TERM信号(15)终止kill-9PID—强制结束(SIGKILL)killall进程名—按名称结束nohup命令&不挂断执行,退出终端后继续运行输出重定向到nohup.out优先级管理nice值范围:-20~19值越小优先级越高nice-n值命令以指定优先级启动进程renice值PID调整运行中进程的优先级普通用户只能提高nice值进程管理示例$kill12345#正常终止PID为12345的进程$kill-912345#强制结束进程$killallfirefox#结束所有firefox进程$nohuppython3server.py后台运行,退出终端不停止$nice-n10./backup.sh#低优先级运行备份脚本$sudorenice-512345#提高进程优先级7.1.4查看服务与端口netstat命令-a—显示所有端口-l—仅显示监听端口-t—显示TCP连接-u—显示UDP连接-n—数字显示地址和端口常用组合:netstat-tlnp查看监听端口及对应进程ss与lsof命令ss命令功能类似netstat,速度更快ss-tlnp查看监听端口lsof命令lsof-i:端口号查看占用指定端口的进程lsof-i:22查看SSH服务查看端口占用示例$sudonetstat-tlnp#查看监听端口和进程ProtoRecv-QSend-QLocalAddressForeignAddressStatePID/Programnametcp00:22:*LISTEN1234/sshdtcp00:80:*LISTEN5678/nginx$sudolsof-i:22#查看22端口占用COMMANDPIDUSERFDTYPEDEVICESIZE/OFFNODENAMEsshd1234root3uIPv4123450t0TCP*:ssh(LISTEN)$ss-tlnp|grep80#快速筛选80端口CHAPTER7.2使用systemd管理
系统和服务systemd基础·单元管理·服务管理·系统启动管理systemd服务管理启动管理7.2.1systemd概述什么是systemdsystemd替代传统的SysVinit使用目标(Target)代替运行级别核心进程/bin/systemd,PID为1兼容SysVinit和LSB脚本向后兼容传统init脚本现代Linux发行版的标准初始化系统核心优势并行启动:同时启动多个服务大幅缩短系统启动时间按需启动:按需激活守护进程减少系统资源占用事务性依赖控制:确保服务按正确顺序启动systemdvsSysVinit对比SysVinit(传统):串行启动,按顺序逐个启动服务;运行级别概念(0-6);脚本复杂,依赖管理困难systemd(现代):并行启动,同时启动无依赖的服务;目标(Target)替代运行级别;单元文件简洁,自动解决依赖$ps-p1-ocomm=#查看PID1的进程名,确认使用systemdsystemd7.2.2systemd单元与单元文件单元类型说明service系统服务(最常见)device内核识别的设备mount文件系统挂载点automount自动挂载点socket进程间通信套接字swap交换分区或文件path文件或目录路径timer定时器(替代cron)target目标(替代运行级别)snapshot系统状态快照单元文件存放目录(优先级由高到低)/etc/systemd/system/—管理员自定义单元文件(最高优先级)/run/systemd/system/—运行时生成的单元文件/lib/systemd/system/—软件包安装的单元文件(最低优先级)同名单元文件,优先级高的覆盖优先级低的7.2.2systemd依赖关系与目标依赖关系required(强依赖):目标单元必须成功启动,否则当前单元失败wants(弱依赖):目标单元最好启动,失败不影响当前单元事务完整性保证无循环引用systemd自动检测并拒绝循环依赖目标(Target)目标替代传统的运行级别多个目标可以同时启动目标之间可以存在依赖关系常用目标:graphical.target—图形界面multi-user.target—多用户文本rescue.target—救援模式运行级别与systemd目标对应运行级别systemd目标说明0poweroff.target关机1rescue.target单用户救援模式3multi-user.target多用户文本模式5graphical.target图形界面模式6reboot.target重启7.2.3systemctl命令行工具列出单元list-units—列出已加载单元显示五列:UNIT/LOAD/ACTIVE/SUB/DESCRIPTION--all—列出所有单元--state=状态—按状态过滤--type=类型—按类型过滤systemctllist-units--type=service查看状态与配置status单元名查看单元运行状态和日志show单元名查看单元详细配置属性is-active单元名检查单元是否正在运行is-enabled单元名检查单元是否开机启动systemctl常用查询命令$systemctllist-units--type=service#列出所有服务$systemctllist-units--state=failed#列出失败的服务$systemctlstatussshd.service#查看SSH服务状态$systemctlshowsshd.service#查看SSH详细配置$systemctlis-activesshd#检查SSH是否运行$systemctlis-enabledsshd#检查SSH是否开机启动$systemctllist-units--type=target#列出所有目标7.2.4单元状态转换操作命令语法功能startstart单元名启动单元stopstop单元名停止单元restartrestart单元名重启单元(先stop再start)reloadreload单元名重载配置(不中断服务)try-restarttry-restart单元名运行则重启,未运行不操作killkill单元名向单元进程发送信号list-dependencieslist-dependencies单元列出单元的依赖关系editedit--full单元名编辑单元文件提示:restart会中断服务,reload不中断。生产环境优先使用reload重载配置。edit命令默认创建覆盖文件,--full编辑整个单元文件。修改单元文件后需执行daemon-reload重新加载。7.2.5单元文件管理单元文件状态enabled—开机自动启动disabled—不开机启动static—静态单元,被其他单元依赖masked—屏蔽状态,无法启动list-unit-files列出所有单元文件及状态显示STATE和VENDORPRESET管理命令enable—设置开机启动disable—禁用开机启动mask—屏蔽单元(完全禁用)unmask—解除屏蔽daemon-reload重新加载所有单元文件配置修改单元文件后必须执行单元文件管理示例$systemctllist-unit-files--type=service#列出所有服务单元文件$systemctlenablesshd.service#设置SSH开机启动$systemctldisablesshd.service#禁用SSH开机启动$systemctlmasksshd.service#屏蔽SSH服务$systemctlunmasksshd.service#解除屏蔽$sudosystemctledit--fullnginx.service#编辑Nginx单元文件$sudosystemctldaemon-reload#重新加载配置7.2.6使用systemd管理服务常用服务管理systemctl[命令]服务名.servicestart—启动服务stop—停止服务restart—重启服务reload—重载配置status—查看状态enable--now—启用并立即启动disable--now—禁用并立即停止自定义服务单元[Service]节关键字段:Type—服务类型(simple/forking/oneshot)ExecStart—启动命令ExecStop—停止命令ExecReload—重载命令Restart—自动重启策略创建/etc/systemd/system/下的.service文件服务管理示例$sudosystemctlstartnginx.service#启动Nginx$sudosystemctlstopnginx.service#停止Nginx$sudosystemctlrestartnginx.service#重启Nginx$sudosystemctlenable--nownginx#开机启动并立即运行$sudosystemctldisable--nownginx#禁用并立即停止$sudosystemctlstatusnginx#查看Nginx状态$sudojournalctl-unginx#查看Nginx日志7.2.7管理系统启动目标查看与设置默认目标get-default查看当前默认启动目标set-default目标名更改默认启动目标常用目标:graphical.target—图形界面(默认)multi-user.target—多用户文本模式临时切换目标isolate目标名临时切换到指定目标不影响默认启动设置list-units--type=target查看已启动的目标isolate会停止当前目标中新目标不需要的服务启动目标管理示例$systemctlget-default#查看默认目标graphical.target$sudosystemctlset-defaultmulti-user.target#设置为文本模式$sudosystemctlisolaterescue.target#临时进入救援模式$systemctllist-units--type=target#查看已启动目标$sudosystemctlset-defaultgraphical.target#恢复图形界面7.3.1Cron服务实现定时任务系统级定时任务/etc/crontab管理系统级任务格式:分时日月周用户名命令特殊符号:*—通配,任意值-—区间,如1-5,—列表,如1,3,5/—间隔,如*/5预定义目录将脚本放入对应目录即可定时执行:/etc/cron.hourly/—每小时执行一次/etc/cron.daily/—每天执行一次/etc/cron.weekly/—每周执行一次/etc/cron.monthly/—每月执行一次/etc/crontab示例$cat/etc/crontabSHELL=/bin/bashPATH=/sbin:/bin:/usr/sbin:/usr/bin#分时日月周用户命令02***root/usr/sbin/backup.sh#每天2:00备份*/5****root/usr/sbin/check.sh#每5分钟检查00**0root/usr/sbin/weekly.sh#每周日0:00执行031**root/usr/sbin/monthly.sh#每月1日3:00执行CHAPTER7.3定时任务调度Cron服务·systemd定时器Cron服务定时任务systemd定时器7.3.1定制个人Cron任务crontab命令-e—编辑当前用户的crontab-l—显示当前用户的crontab-r—删除当前用户的crontab-u用户名—指定用户(需root权限)配置文件位置:/var/spool/cron/crontabs/用户名Cron监测周期为1分钟注意事项修改crontab后无需重启服务Cron自动检测文件变化命令建议使用绝对路径避免环境变量问题输出重定向到文件或/dev/null避免邮件通知堆积crontab使用示例$crontab-e#编辑个人定时任务#每分钟执行echo测试*****echo"test">>/tmp/cron_test.log#每5分钟同步时间*/5****/usr/sbin/ntpdate$crontab-l#查看当前任务$crontab-r#删除所有任务7.3.2systemd定时器定时器单元结构需要两个单元文件配合:.timer—定时器单元定义触发时间和规则.service—服务单元定义要执行的任务定时器触发时启动对应服务[Timer]节常用字段OnActiveSec—定时器激活后多久触发OnBootSec—系统启动后多久触发OnUnitActiveSec—上次触发后多久再次触发OnCalendar—按日历时间触发Persistent—持久化(错过则补执行)Unit—指定触发的服务单元类型:单调定时器(相对时间)实时定时器(绝对时间,如cron)定时器单元文件示例#/etc/systemd/system/backup.timer[Unit]Description=Dailybackuptimer[Timer]OnCalendar=dailyPersistent=trueUnit=backup.service[Install]WantedBy=timers.target7.3.2systemd定时器示例创建定时器完整流程1.创建任务脚本(如/usr/local/bin/my-task.sh)2.创建.service服务单元文件,ExecStart指向脚本3.创建.timer定时器单元文件,设置触发规则4.执行daemon-reload重新加载配置5.执行enable--now启用并立即启动定时器6.使用list-timers查看定时器状态7.验证执行结果(检查日志或输出文件)8.使用disable--now停用并删除(如需清理)定时器操作命令#创建并启用定时器$sudosystemctldaemon-reload$sudosystemctlenable--nowmy-task.timer#查看定时器状态$systemctllist-timers--all$systemctlstatusmy-task.timer#停用并删除定时器$sudosystemctldisable--nowmy-task.timer$sudorm/etc/systemd/system/my-task.timerCHAPTER7.4使用麒麟安全中心安全体检·账户保护·网络保护·病毒防护·应用保护·设备安全安全体检账户保护网络保护7.4安全中心功能概览麒麟安全中心Kysec安全框架,六大功能模块:1.安全体检—系统安全扫描与一键修复2.账户保护—密码策略与账户锁定3.网络保护—防火墙与应用联网控制4.病毒防护—奇安信引擎智能查杀5.应用保护—来源检查与权限控制6.设备安全—外设管控与设备策略启动方式方式一:开始菜单开始菜单→安全中心方式二:设置窗口设置→安全与更新→安全中心方式三:命令行$kylin-security-center安全建议定期执行安全体检及时修复发现的安全问题保持病毒库最新启用自动更新漏洞补丁合理配置防火墙规则控制应用程序联网行为7.4.1实施安全体检安全体检多维度系统安全扫描检测系统漏洞、配置问题一键修复:自动修复发现的安全问题自动更新漏洞补丁:保持系统安全更新及时修复已知漏洞7.4.3网络保护配置防火墙配置两种网络模式:公用网络:不可被其他设备检测防火墙规则更严格专用网络:可被其他设备检测允许更多共享功能配置访问规则:名称、应用、方向、协议、IP、端口防火墙规则配置示例添加访问规则步骤:网络保护→防火墙→添加规则→设置规则名称→选择应用→设置方向(入站/出站)→选择协议(TCP/UDP/ICMP)→设置IP地址→设置端口→选择动作(允许/阻止)常用规则示例:允许SSH(22端口入站)—远程管理需要允许HTTP(80端口入站)—Web服务器需要阻止所有入站—最高安全性配置7.4.3网络保护配置应用联网控制管控应用程序的联网行为三种策略:允许—应用可以自由联网阻止—禁止应用联网警告—联网时弹出提示按应用单独配置策略精细控制网络访问权限7.4.4实施病毒防护病毒防护集成奇安信杀毒引擎三种查杀模式:智能查杀—快速扫描关键位置全盘查杀—扫描整个系统自定义查杀—指定目录扫描扫描模式:性能优先/速度优先病毒查杀操作建议日常维护:建议每周执行一次智能查杀,每月执行一次全盘查杀下载文件后执行自定义查杀发现病毒时:选择处理方式:清除(尝试清除病毒)、隔离(移动到隔离区)、删除(直接删除文件)7.4.5配置应用保护应用保护应用来源检查:阻止/警告/关闭检查应用签名和来源应用访问权限控制:限制应用访问系统资源应用执行控制:阻止/警告/关闭应用防护控制:进程防杀死、内核模块防卸载、文件防篡改应用保护建议:启用应用来源检查(警告模式),保持应用防护控制开启7.4.5配置应用保护应用保护应用来源检查:阻止/警告/关闭检查应用签名和来源应用访问权限控制:限制应用访问系统资源应用执行控制:阻止/警告/关闭应用防护控制:进程防杀死、内核模块防卸载、文件防篡改应用保护建议:启用应用来源检查(警告模式),保持应用防护控制开启7.4.5配置应用保护应用保护应用来源检查:阻止/警告/关闭检查应用签名和来源应用访问权限控制:限制应用访问系统资源应用执行控制:阻止/警告/关闭应用防护控制:进程防杀死、内核模块防卸载、文件防篡改应用保护建议:启用应用来源检查(警告模式),保持应用防护控制开启7.4.6设备安全管理外设管控功能控制接口开关:USB接口、光驱等设备的启用/禁用设备控制与权限:USB移动存储读写控制外置光驱、内置光驱控制设备策略管理:未授权设备处理设备连接记录审计配置建议建议保持默认配置默认配置经过安全优化高安全需求环境可:禁用USB存储设备禁用光驱设备记录所有设备连接设备策略支持白名单只允许特定设备接入设备安全应用场景场景一:防止数据泄露禁用USB存储设备,禁止文件通过U盘拷贝外传场景二:防止恶意软件入侵禁用自动运行,插入U盘不自动执行程序场景三:审计追踪开启设备连接记录,追溯所有外设接入历史场景四:办公环境管控只允许公司认证的USB设备接入,拒绝未知设备CHAPTER7.5编写Shell脚本实现
自动化管理Shell脚本特点·脚本构成·脚本执行·自动化管理示例Shell脚本自动化运维脚本7.5.1-7.5.2Shell脚本特点与构成Shell脚本特点解释执行:无需编译,直接运行汇集命令:将连续命令整合为脚本自动化:整合各种命令实现自动化适合系统管理任务批量处理、定时执行简化重复性操作脚本基本构成Shebang:#!/bin/bash指定解释器路径注释:#注释内容变量定义:name=value命令执行条件判断:if/then/else函数定义source/.—合并外部脚本Shell脚本示例#!/bin/bash#系统信息收集脚本HOSTNAME=$(hostname)DATE=$(date+%Y-%m-%d)echo"主机名:$HOSTNAME"echo"日期:$DATE"echo"CPU负载:$(uptime|awk-F'loadaverage:''{print$2}')"echo"磁盘使用:$(df-h/|tail-1|awk'{print$5}')"source/etc/profile#加载环境变量7.5.3Shell脚本执行方式方式命令说明1chmod+x后./脚本赋予执行权限后,通过路径执行。当前目录需加./前缀2bash脚本指定Shell解释器执行,无需执行权限3source脚本或.脚本在当前Shell环境执行,变量和函数保留在当前环境4bash<脚本通过输入重定向执行,从标准输入读取脚本内容提示:直接执行当前目录的脚本需要加./前缀(如./script.sh),因为当前目录通常不在PATH环境变量中。source方式执行会改变当前Shell环境,适合加载环境变量配置。推荐生产环境使用chmod+x方式,明确脚本的执行权限。7.5.4系统自动化管理脚本示例监控脚本功能监控系统负载和磁盘使用率超过阈值时记录警报脚本逻辑:1.定义阈值变量2.获取当前负载和磁盘使用率3.自定义send_alert函数4.条件判断,超限则发送警报5.记录到sys_alert.log结合Cron定时执行将监控脚本加入Cron实现自动化周期性检查每5分钟执行一次:*/5****/usr/local/bin/sys_monitor.sh每小时执行一次:0****/usr/local/bin/sys_monitor.sh持续监控系统健康状态7.5.4系统自动化管理脚本示例系统监控脚本示例#!/bin/bashLOAD_THRESHOLD=2.0DISK_THRESHOLD=80LOG_FILE="/var/log/sys_alert.log"send_alert(){echo"$(date)ALERT:$1">>$LOG_FILE}CURRENT_LOAD=$(uptime|awk-F'loadaverage:''{print$2}'|cut-d','-f1)DISK_USAGE=$(df/|tail-1|
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 麒麟操作系统教程(微课版) 课件 第6-10章 软件安装- 麒麟服务器操作系
- 涡阳就业指导服务平台
- 2026智能制造成熟度评估与辅导方案
- 教师新职业规划总结
- 2026年福建江夏学院教师招聘考试备考题库及答案解析
- 服装设计历史就业分析
- 专业就业指导专家课
- 2026浙江湖州市安吉雷博人力资源服务有限公司招聘2人考试参考题库及答案解析
- 2026年周口西华县中医院校园招聘30名考试备考题库及答案解析
- 2026年及未来5年市场数据中国物流金融行业发展前景预测及投资战略数据分析研究报告
- cjj932025生活垃圾卫生填埋场运行维护技术规程
- 2025新能源风电场规范化管理导则
- RCO运行管理制度
- 信息时代的生产技术-终考任务-国开(NMG)-参考资料
- 村委会工作报告模板
- 浙江省9+1联盟2024-2025学年高一下学期4月期中物理试题(PDF版含答案)
- 致敬劳动者争做劳动小先锋-劳动教育主题队会
- 建筑施工吊篮验收要求
- 2025年演出经纪人演出经纪实务考试题库(新版)
- 给童年留白读书分享
- 一年级日常家长会含内容课件
评论
0/150
提交评论