1,进程管理
定义:进程是一个具有一定独立功能的程序在一个数据集上的一次动态执行的过程,是操作系统进行 资源分配和调度的一个独立单位,是应用程序运行的载体。
2,当前用户进程:ps
含义:用于报告当前系统的进程状态
格式:ps [选项] [参数]
选项:
-a:显示所有用户的进程
-u:显示用户名和启动时间
-l :长格式显示
案例1:显示家目录当前进程
PID:地址编号
TTY:终端名称
TIME:运行时间
CMD:命令名称
ps:操作命令
bash:将命令解析显示出来
案例2:显示所有进程
%CPU:CPU占比
%MEM:内存占比
VSZ:虚拟内存
RSS:真实内存
TTY:进程
?:后台进程
pts/51:前台51号终端
STAT:状态
S:sleep等待
R:run运行
START:运行的时间
TIME:运行了多久
COMMAND:运行进程的命令
案例3:查看数据库进程
3,杀死进程命令:kill
含义:终止一个进程
格式 [选项] [参数]
选项:
-1:重启进程
-9:强制杀死
参数:pid进程编号
4,查看进程信息:top
含义:进程状态显示和控制,每5秒自动刷新一次。
格式:top [选项] [参数]
注意:退出top键按q
案例:查看进程信息
(1)第一行
top - 01:45:05 up 1 days, 11:43, 2 user, load average: 0.92, 0.61, 0.48
01:45:05:系统当前时间。
up 1 days, 11:43 :系统开机一共经过了一天11小时43分钟。
2 users:当前一共2位用户在线。
load average:0.92, 0.61, 0.48:系统1分钟、5分钟、15分钟的CPU负载信息。
(2)第二行
Tasks: 85 total, 1 running, 84 sleeping, 0 stopped, 0 zombie
85 total:当前有108个进程
1 running:1个进程正在运行
84 sleeping:84个进程处于睡眠状态
0 stopped:0个进程停止(被挂起的进程)
0 zombie:0个进程僵死(运行无任何意义)
(3)第三行
%Cpu(s): 5.4 us, 5.1 sy, 0.0 ni, 89.5 id, 0.0 wa, 0.0 hi, 0.0 si, 0.0 st
5.4%us:用户态进程占用CPU时间百分比
5.1%sy:内核占用CPU时间百分比
0.0%ni:renice值为负的任务的用户态进程的CPU时间百分比。nice是优先级的意思
89.5%id:空闲CPU时间百分比
0.0%wa:等待I/O的CPU时间百分比
0.0%hi:CPU硬中断时间百分比
0.0%si:CPU软中断时间百分比
(4)第四行
KiB Mem : 1881840 total, 318396 free, 240584 used, 1322860 buff/cache
1881840 k total:物理内存总数
240584 k used: 使用的物理内存
318396 k free:空闲的物理内存
1322860 k cached:用作缓存的内存
buff:输入型缓存
catche:输出型缓存
(5)第五行
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
PID:进程ID
USER:进程的所有者
PR:进程的优先级
NI:nice值
VIRT:占用的虚拟内存
RES:占用的物理内存
SHR:使用的共享内存
S:进行状态 S:休眠 R运行 Z僵尸进程 N nice值为负
%CPU:占用的CPU
%MEM:占用内存
TIME+: 占用CPU的时间的累加值
COMMAND:启动命令
5,操作系统负载查看
(1)uptime:命令可以显示的信息显示依次为:现在时间、系统已经运行了多长时间、目前有多少登陆用户、系统在过去的1分钟、5分钟和15分钟内的平均负载。
uptime 参数 -V(大写)用来查询版本
(2)w
USER TTY FROM LOGIN@ IDLE JCPU PCPU WHAT解释如下:
USER: 登录的用户名
TTY :登录后系统分配的终端号
FROM:远程主机名,即从哪儿登录来的
LOGIN@:登录时间
IDLE:空闲了多长时间,表示用户闲置的时间。这是一个计时器,一旦用户执行任何操作,该计时器便会被重置
JCPU:和该终端(tty)连接的所有进程占用的时间,这个时间里并不包括过去的后台作业时间,但却包括当前正在运行的后台作业所占用的时间
PCPU:指当前进程(即在WHAT项中显示的进程)所占用的时间
WHAT:当前正在运行进程的命令行
(3)vmstat
procs 显示进程相关信息:
r :表示运行和等待cpu时间片的进程数,如果长期大于服务器cpu的个数,则说明cpu不够用了;
b :表示等待资源的进程数,比如等待I/O, 内存等,这列的值如果长时间大于1,则需要关注一下了;
memory 内存相关信息:
swpd :表示切换到交换分区中的内存数量 ;
free :当前空闲的内存数量;
buff :缓冲大小,(即将写入磁盘的);
cache :缓存大小,(从磁盘中读取的);
swap 内存交换情况:
si :由交换区写入到内存的数据量;
so :由内存写入到交换区的数据量;
io 磁盘使用情况:
bi :从块设备读取数据的量(读磁盘);
bo: 从块设备写入数据的量(写磁盘);
system 显示采集间隔内发生的中断次数:
in :表示在某一时间间隔中观测到的每秒设备中断数;
cs :表示每秒产生的上下文切换次数;
CPU 显示cpu的使用状态:
us :显示了用户下所花费 cpu 时间的百分比;
sy :显示系统花费cpu时间百分比;
id :表示cpu处于空闲状态的时间百分比;
wa :表示I/O等待所占用cpu时间百分比;
st :表示被偷走的cpu所占百分比(一般都为0,不用关注);
(4)free:可以显示当前系统未使用的和已使用的内存数目,还可以显示被内核使用的内存缓冲区。
空闲内存:available = free + buffer(缓冲) + cache(缓存)
shared:共享空间。
(5)mpstat :CPU核状态。
(6)ifstat : 网卡网络状态。
(7)df :查看磁盘的使用率。
tmpts:都不是真实内存。
vda :
v:虚拟的
d:磁盘
a:第一块磁盘(一台Linux系统最多可以架26块磁盘,但磁盘大小没有限制。)
6,进程管理
7,进程的挂起
Ctrl + z :将正在运行的进程挂起。
案例:将top进程挂起。
jobs:查看被挂起的进程。
+:刚刚被挂起
-:刚刚被挂起的被挂起
:很早以前被挂起
fg:挂起编号 把挂起的进程调至前台继续执行
bg:挂起编号 把挂起的进程调至后台执行
Ctrl + c :将正在进行的进程终止。
8,编辑文件
9,Vim编辑器
含义:vi与vim编辑器是所有Unix及Linux系统下标准的编辑器,他就相当于windows系统中的记事本一样,它的强大不逊色于任何最新的文本编辑器。由于对Unix及Linux系统的任何版本,vi编辑器是完全相同的,学会它后,您将在Linux的世界里畅行无阻。
格式:vim 文件
vim/vi:
vim里面加入了很多额外的功能,例如支持正则表达式的搜索、多文件编辑、块复制等等。 这对于我们在Linux上进行一些配置文件的修改工作时是很棒的功能。vim可以当作vi的升级版本,他可以用多种颜色的方式来显示一些特殊的信息。
10,vim的模式
一般模式
案例:输入vim进入AA文件
编辑模式:
案例1:输入i,I,a,A,o,O,r,R进入编辑模式
案例2:写入123456789
命令行模式:
案例:使用:w命令保存编辑模式内容。
案例2:使用:q命令退出命令行模式。
案例3:在文件中查看AA,显示刚刚所输入的内容。
11,一般模式下的操作
x | 向后删除一个字符 |
nx | 连续向后删除n个字符 |
dd | 删除光标所在行 |
ndd | 删除光标所在的向下n行 |
yy | 复制光标所在的整行 |
nyy | 复制光标所在的向下n列 |
p | 将已复制的数据在光标下一行粘贴 |
P | 将已复制的数据在光标上一行粘贴 |
u | 恢复上一个操作 |
12,一般模式下切换到编辑模式
i | 从光标所在处插入 |
I | 在光标所在行第一个非空格符开始插入 |
a | 从光标所在的下一个字符处插入 |
A | 在光标所在行最后一个字符处空格符开始插入 |
o | 在目前光标所在处,下方插入新的一行 |
O | 在目前光标所在处,上方插入新的一行 |
r | 只会取代光标所在的那一个字符一次 |
R | 会取代光标所在的文字,直到按下ESC键 |
13,一般模式切换到命令行模式
:w | 保存编辑内容 |
:w! | 强制写入该文件(条件:操作者对该文件的权限要高) |
:q | 离开vim |
:q! | 不想保存修改强制离开 |
:wq | 保存后离开 |
:x | 保存后离开 |
14,用户分类
(1)超级管理员
用户ID为:0
在Linux中拥有任何权限。
(2)程序用户
用户ID为:(0<use_id<1000)
普通权限,但没有家目录,也不能登录系统。
(3)普通用户
用户ID为:(1000+)
普通权限,但可以登录系统。
15,新建用户:adduser/useradd
含义:adduser/useradd使用来新建用户,指定用户家目录和组
格式:adduser [参数]
useradd [参数]
参数:用户名
16,新建组:groupadd
含义:groupadd命令用来创建一个新的工作组,新的工作组的信息将被添加到系统文件中。
格式:groupadd [参数]
参数:
组名:新建的组名
17,查看用户ID:id
含义:id命令可以显示真实的用户ID(UID)和组ID(GID)
格式:id [选项] [参数]
选项:
-g:显示用户所属群的ID
-u:显示用户ID
参数:
用户名:要查看的用户名。
案例:显示用户ID和组ID。
18,改变文件所属:chown
含义:chown命令改变某个文件或目录的所属者和所属组。
该命令可以向某个用户授权,使该用户变成指定文件所有者或者改变文件所属的组。
格式:chown [选项] [参数]
选项:
-R:递归处理,将指定目录下的所有文件及子目录一并处理。
参数:
所属用户:要改变的所属用户
所属组:要改变的所属组
19,改变用户权限:chmod
含义:chomd命令用来变更文件或目录的权限。
在Linux系统家族里,文件或目录权限的控制分别以读取、写入、执行3种一般权限来区分。
格式:chmod [选项] [参数]
选项:
权限:权限值
参数:
文件名:设置权限的文件名
权限对应符号以及数字:
4 | 2 | 1 |
读取 | 写入 | 执行 |
r | w | x |
l:链接文件
①rwx:所属人(u)拥有读取、写入、执行3种权限。
②rwx:所属组(g)拥有读取、写入、执行3种权限。
③rwx:其他人(o)拥有读取、写入、执行3种权限。
1:硬链接数
ape10014:文件拥有者
javaee2202:文件所属组
2:文件所占空间多少字节
5月 31 23:21:文件最近一次修改时间
ccc:文件名
案例1:给fff文件u(所输人)添加x(执行)权限,g(所属组)添加r(读取)权限,o(其他人)添加r(读取)权限 。
案例2:给fff文件u添加rw权限,给g添加r权限,给o添加r权限。
案例3:给fff文件u,g,o添加读取权限。
20,网络配置:ifconfig
含义:用于配置和显示Linux内核中网络接口的网络参数用ifconfig命令配置的网卡信息,在网卡重启后机器重启后,配置就不存在。要想将上述的配置信息永远的存的电脑里,那就要修改网卡的配置文件了。
格式:ifconfig [参数]
参数:网卡 ip 掩码 up down
Linux网卡信息:
eth0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
eth0:网卡设备名
UP:表示“接口已启用”
BROADCAST:表示“主机支持广播”
RUNNING:表示“接口在工作中”
MULTICAST:表示“主机支持多播”
mtu 1500:(最大传输单元):1500字节
inet 172.31.73.189 netmask 255.255.240.0 broadcast 172.31.79.255
网卡的IP地址:inet 172.31.73.189
A类地址:0开头,第一个字节作为网络号,地址范围为:0.0.0.0~127.255.255.255;
B类地址:10开头,前两个字节作为网络号,地址范围是:128.0.0.0~191.255.255.255;
C类地址:110开头,前三个字节作为网络号,地址范围是:192.0.0.0~223.255.255.255
网络掩码:netmask 255.255.240.0
广播地址:broadcast 172.31.79.255
21,配置静态的IP地址
BOOTPROTO=static 静态IP地址
ONBOOT=yes 开机自动启动网卡
IPADDR=192.168.70.155 IP地址
GATEWAY=192.168.70.2 网关
DNS=192.168.70.2 端口
22,网络状态查询:netstat
含义:用于显示与IP、TCP、UDP和ICMP协议相关的统计数据,一般用于检验本机各端口的网络连接情况。netstat是在内核中访问网络及相关信息的程序,它能提供TCP连接,TCP和UDP监听,进程内存管理的相关报告。
格式:netstat [选项]
选项:
-a:所有的
-l:显示监控中服务器的Socket
-n:直接使用ip地址,而不通过域名服务器。
-p:显示正在使用Socket的程序识别码和程序名称。
-t:跟tcp相关的。
案例:netstat检测本地IP地址占用情况。
Proto:协议名称
Local Address:内网访问的IP地址
Foreign Address:外网访问的IP地址
PID:进程号
Program name:程序名称
sshd:客户端文件
案例:netstat检测本机端口的网络连接情况。
23,通过网络下载文件:weget
含义:从指定URL下载文件
格式:weget [选项] [参数]
选项:
-b:进行后台的方式运行weget
-c:继续执行上次终端的任务
参数:网址
24,主机名和IP地址间的映射
IP地址太长选择使用一个域名来表示一个网络IP,这样的域名和IP映射的服务叫做DNS。