Linux系列之——软件包、服务和进程管理
前言
软件包管理工具
rpm
释义:由红帽公司开发的软件包安装和管理程序,可以对rpm格式的软件包进行安装、升级、卸载、校验和查询等操作
格式:rpm [选项] [安装文件]
选项:
-q 查询指定的一个或者多个软件包是否安装
-qa 显示当前系统中已安装的全部rpm软件包清单
-qi 显示软件包的名称、版本、许可协议、用途等详细信息
-ql 显示指定软件包在当前系统中安装的所有目录、文件列表
-qf 查询指定的目录或文件是由哪个软件包所产生的
-qc 显示指定软件包在当前系统中被标注为配置文件的文件清单
-ivh 安装
-Uvh 升级
-e 卸载
-p 未安装包信息
-V 校验
--import 导入公钥文件
yum
释义:软件管理命令,可以查询、下载、安装、卸载、升级本地主机和网络中其他主机的rpm包,并且能够自动查找并解决rpm包之间的依赖关系,一次性完成所有具有依赖关系rpm包的安装
格式:yum [参数]
参数:
repolist all 列出所有仓库
list 列出仓库中所有包
info [软件包名] 查看软包信息
install [软件包名] 安装
reinstall [软件包名] 重新安装
update [软件包名] 升级
remove [软件包名] 删除
clean all 清除所有仓库缓存
check-update 检查可更新的软件包
-y 直接回答工作过程中需要使用者响应的yes
search [模糊包名] 查看模糊包名的软件
grouplist 查看软件包组(groupinstall、groupremove、groupinfo含义相同)
软件仓库搭建
yum-config-manager
释义:自动生成yum源的模板文件
格式:yum-config-manager --add-repo=仓库名
编辑配置文件:/etc/yum.repos.d/仓库名.repo
[仓库名] //软件仓库的标示,全局唯一
name= //软件仓库的描述信息
baseurl=file:// //软件仓库的位置
enabled=0/1 //仓库是否开启:1开启 0关闭
gpgcheck=0/1 //是否校验GPG签名:1校验 0不校验
gpgkey=file:///etc/…… //校验文件位置
# file://——表示本地 http://——网络 ftp://——文件传输服务器
systemd初始化进程
systemd与System V init的区别及作用
控制服务运行状态
设置服务运行环境
runlevel 查看当前系统的运行环境
systemctl get-default 查看默认的运行环境
systemctl set-default [运行级别] 设置系统下次开机的运行级别
服务运行状态关键字
Loaded 服务已被加载
enabled 将在系统启动时启动
active(running) 正在通过一个或多个进程运行
active(waiting) 运行中,但正在等待事件
static 无法启动,但可以由某一启用的单元自动启动
disabled 不会在系统启动时启动
inactive 服务未运行
服务进程监控
ss
释义:显示各类协议、各种状态的套接字信息
格式:ss [选项]
选项:
-atn 以数字方式查看所有TCP协议连接情况
-tnap 查看所有的TCP端口和使用它们的进程
-s 查看服务器当前已经连接、关闭、等待的TCP连接及连接的分类统计
ps/top
返回结果各字段含义
- USER 启动该进程的用户
- UID 进程所属组的用户ID
- PID 进程在系统中的标识号
- PPID 进程的父进程标识号
- %CPU 占用的CPU
- %MEM 占用的物理内存和总内存的百分比
- TTY 进程运行的终端,?表示未知或者不需要
- VSZ/VIRT 占用的虚拟内存(swap)的大小
- RSS/RES 占用的固定内存(物理内存)的大小
- COMMAND/CMD 启动该进程的命令的名称
- TIME 实际使用CPU的时间/进程启动后占用的总CPU的时间
- STIME 进程启动的时间
- STAT/S 进程当前状态
- START 启动该进程的时间
- RPI/PR 进程的优先级,优先级越小越早被执行
- NI 进程的友善度或者谦让度
sleep
释义:用来将目前动作延迟一段时间。
格式:sleep [数字s|m|h|d]
jobs
释义:用于显示Linux中的任务列表及任务状态,包括后台运行的任务
格式:jobs [选项] [参数]
选项:
-l 显示进程号
-p 仅任务对应的显示进程号
-n 显示任务状态的变化
-r 仅输出运行状态的任务
-s 仅输出停止状态的任务
参数:任务标识号:指定要显示的任务识别号
fg
释义:用于将后台任务(在后台运行的或者在后台挂起的任务)放到前台终端运行
格式:fg [参数]
参数:任务标识:指定要放到前台的任务标识号。
bg
释义:将处于暂停状态的后台进程恢复到运行状态
格式:bg [参数]
参数:任务标识:指定要放到前台的任务标识号。
计划任务管理
at
释义:指定一次性执行任务
格式:at [选项] [执行任务的时间] [执行任务的日期]
选项:
-m 当at工作完成后,即便没有输出信息,也会以E-mail通知用户工作已完成
-l 显示当前正在等待执行的计划任务队列(等同于atq命令)
-d [任务编号] 删除指定编号的任务(等同于atrm命令)
时间指定方式
绝对时间
HH:MM[am|pm]
相对时间
now+count time-units 从现在开始多长时间之后
模糊时间
midnight(深夜)、noon(中午)、teatime(下午茶时间)
日期指定方式
日期格式
month day(月 日)、mm/dd/yy(月/日/年)、dd.mm.yy(月.日.年)、YYYY-MM-DD(年-月-日)
模糊日期
today(今天)、tomorrow(明天)
crontab
释义:制定周期性执行的计划任务
格式:crontab [选项]
选项:
-e 针对当前用户或指定用户编辑计划任务
-u [用户名] 指定执行计划任务的用户
-l 显示当前用户或指定用户的计划任务
-r 删除当前用户或指定用户的计划任务
* * * * * foo
分 时 日 月 星期 命令
#分钟0~59
#时间0~23
#日期1~31
#月份1~12
#星期0~7 0和7代表星期日
#命令:linux命令或者用户自己写的脚本
##“*“代表“每”,“/”代表“每隔”,“-”代表“连续取值范围”、“,”用来间隔多个取值
##用整点时间的时候,如7:00,则分钟要写成0
##星期可以用英文缩写:如sun、mon、tue、wed、thu、fri、sat
共有 0 条评论