-
关于Linux的那些事儿--系统常见工作命令
-
软件管理器RPM和YUM软件库
1.RPM(红帽软件包管理器) 源代码+安装规定的集合,目的是降低安装难度,作用是安装升级卸载服务程序的时候会考虑其他程序和库的依赖关系。
rpm-ivh filenme.rpm 安装软件
rom-Uvh filenme.rpm 升级软件
rpm-e filenme.rpm 卸载软件
rpm-qpi filenme.rpm 查询软件描述信息
rpm-qpl filenme.rpm 列出软件文件信息
rpm-qf filenme.rpm 查询文件属于哪个RPM
2.YUM(YUM软件仓库) 将大量的RPM集合到一起,进一步降低安装难度,自动解决以来关系。
常见的YUM命令
yum info 查看软件包信息
yum install 安装软件包
yum reinstall 重新安装软件包
yum update 升级软件包
yum remove 移除软件包
systemd初始化进程
systemd 服务名称
systemctl 配置工具
systemctl restart +服务名字 重启服务
systemctl start +服务名字 启动服务
systemctl stop+服务名字 停止服务
systemctl ewable +服务名字 加载到启动项
systemctl status+服务名字 查看服务状态
Shell
人与硬件并不能直接交互。Shell(也称为终端或壳)是一个命令行工具,它充当人与内核(硬件)的翻译官。
通过上下方向键来调取过往执行过的Linux命令;
命令或参数仅需输入前几位就可以用Tab键补全;
具有强大的批处理脚本;
具有实用的环境变量功能。
常见命令规则
常见命令执行格式:命令名称 [命令参数] [命令对象]
命令名称、命令参数、命令对象之间要用空格键分隔。
命令对象:一般是指要处理的文件、目录、用户等资源;
命令参数:
长格式(完整的选项名称),例子:man --help
短格式(单个字母的缩写),例子:man -h
短+短可以合并,且只需留一个“-”。
长+长不可以合并,长+短不但可以同时使用。
(1)查看帮助命令
man命令用于查看命令的帮助信息。
常用系统工作命令
1.echo命令:用于在终端输出字符串或变量提取后的值。(变量一般字母全大写,前面有$符号)
2.date命令:用于显示及设置系统时间或日期。格式:date [选项] [+指定格式]
%t (tab键) %H 小时(00-23) %I 小时(00-12) %M(分钟) %S(秒) %j(今年中的第几天)
3.reboot命令:重启系统(重启)。
systemctl restart 重新启动 PID值会发生变化 关闭服务后可以启动
systemctl reload 重新加载 只加载 PID值不会发生变化 关闭服务后无法启动
4.poweroff命令:关闭系统(关机)。
5.wget命令:用于在终端下载网络文件。格式:wget [参数] 下载地址
6.ps命令:用于查看系统中的进程状态。格式:ps [参数]。ps命令使用参数时可以不加“-”号。
-a (显示所有进程,包括其他用户的进程) -u(显示用户以及其他详细信息) -x(显示没有控制终端的进程)
在Linux系统中,有5种常见的进程状态,分别为运行、中断、不可中断、僵死与停止,具体含义如下:
R(运行):进程正在运行或在运行队列中等待。
S(中断):进程处于休眠中,当某个条件形成后或者接收到信号时,则脱离该状态。
D(不可中断):进程不响应系统异步信号,即便用kill命令也不能将其中断。
Z(僵死):进程已经终止,但进程描述符依然存在, 直到父进程调用wait4()系统函数后将进程释放。(僵尸僵死进程,不会提供服务,消耗资源。)
T(停止):进程收到停止信号后停止运行。
7.top命令:用于动态地监视进程活动与系统负载等信息。相当于加强版任务管理器。执行top后界面如下,q退出。
PR NI (进程优先值) VIRT RES (数据交互值)
top命令执行结果的前5行为系统整体的统计信息。具体含义如下
第1行:系统时间、运行时间、登录终端数、系统负载(三个数值分别为1分钟、5分钟、15分钟内的平均值,从右往左看数值越小意味着系统负载情况越来越低)。
第2行:进程总数、运行中的进程数、睡眠中的进程数、停止的进程数、僵死的进程数。
第3行:用户占用资源百分比、系统内核占用资源百分比、改变过优先级的进程资源百分比、空闲的资源百分比等。其中数据均为CPU数据并以百分比格式显示,例如“98.4 id”意味着有98.4%的CPU处理器资源处于空闲。
第4行:物理内存总量、内存使用量、内存空闲量、作为内核缓存的内存量。
第5行:虚拟内存总量、虚拟内存使用量、虚拟内存空闲量、已被提前加载的内存量。
load average(负载值) 0为最小 1满载 5可能崩溃 9非常繁忙(数值越小越好)
8.pidof命令:用于查询某个指定服务进程的进程ID号(PID)。每个进程PID值是唯一的。以此查询本机sshd服务程序的PID。格式:pidof [参数] [服务名称]
9.kill命令:用于终止某个指定PID的服务进程。格式:kill [参数] [进程PID]kill+进程号
10.killall命令:用于终止某个指定名称的服务所对应的全部进程。格式:killall [参数] [服务名称]killall+服务名称
一些服务程序会有多个进程协同为用户提供服务,如果用kill命令一个一个终止进程会比较麻烦,killall可以批量结束某个服务的所有进程。
sshd 协同服务进程只有一个
httpd 协同服务进程不止一个