进程管理


##1.什么是进程##
进程就是系统未完成并且正在进行的工作

##2.查看进程##
1)图形方式查看
    gnome-system-monitor

进程管理   进程管理
2)进程查看命令
ps 默认显示与shell有关的进程
ps -A    ##所有进程
ps -a    ##在当前环境中运行的程序(不包含环境信息)
ps -d    ##除过当前环*的所有进程
ps -u    ##显示进程用户信息
ps a    ##在当前环境中运行的进程
ps x    ##列出系统中所有运行包含tty输出设备
ps f    ##显示进程的父子关系
ps e    ##显示进程的详细信息(系统资源的调用)
##ps常用组合
ps aux    ##显示系统中所有进程并显示进程用户
ps ef    ##显示进程详细信息并显示进程父子关系
ps ax    ##显示当前系统中的所有进程

进程管理进程管理

进程管理
##显示进程指定信息
ps -o    xxxx    ##显示进程的指定信息
    comm    ##进程名称
    user    ##进程所有人
    group    ##进程所有组
    %cpu    ##进程cpu使用率
    %mem    ##进程内存使用率
    pid    ##进程id
    nice    ##进程优先级

进程管理
##进程排序
ps ax --sort=
        +%cpu|-%cpu    正序|倒序
        +%mem|-%mem    正序|倒序

进程管理  进程管理
##stat中显示的信息##
S    ##进程状态是
l    ##内存中有锁定空间
N    ##优先级低
<    ##优先级高
+    ##前台运行 占用终端
s    ##*进程
###3.进程优先级###
1.进程的优先级范围
-20~19    *越-优先级越高
2.优先级查看
ps ax -o pid,nice,comm
3.指定某个优先级开启进程
nice -n 优先级数字 进程名称
nice -n -5 vim &    ##开启vim并且指定程序优先级为-5进程管理


4.改变进程优先级
renice -n 优先级数字 进程pid
renice -n -5 1806    ##改变1806进程的优先级为-5
ps a -o pid,nice,comm
PID    NI    COMMAND
595    0     Xorg
1291   0     agetty
2832   0     bash
30706  -5    vim
30719  0     ps

进程管理

###4.环境中进程的前后台调用###
jobs        ##查看被打入环境后台的进程 *[1][2]后面的+号最优先,-号次优先
ctrl+z        ##把占用终端的进程打入后台
fg jobsnum    ##把后台进程调回前台
bg jobsnum    ##把后台暂停的进程运行
comm &        ##让命令直接在后台运行

进程管理

进程管理

###5.进程信号###
1.常用信号等级
1        ##进程重新加载配置
2        ##删除进程在内存中的数据
3        ##删除鼠标在内存中的数据 *ctrl+\
9        ##强行结束单个进程(不能被阻塞)
15        ##正常关闭进程(可能会被阻塞)
18        ##运行暂停的进程
19        ##暂停某个进程(不能被阻塞)
20        ##把进程打入后台(可以被阻塞)
man 7 signal    ##查看信号详细信息
kill    -信号    进程pid
killall -信号    进程名字    ##对进程名字为xx的所有进程执行-信号
pkill    -u student -信号

进程管理

###6.进程的动态监控###
1.top
    1    ##显示cpu每个核的负载
    s    ##调整刷新频率
    c    ##CPU负载排序
    m    ##内存使用量排序
    h    ##查看帮助
    u    ##查看指定用户进程
    k    ##对指定进程进行指定操作
        q       ##退出

进程管理

###7.控制服务###
1.什么是服务
2.用什么控制服务
    系统初始化进程可以对服务进行相应的控制
3.当前系统初始化进程是什么
    systemd        ##系统初始化进程
    pstree        ##显示系统中的进程树

 

进程管理

 


4.进程控制命令
    ssh-------->sshd
    client    server       
    systemctl        ##服务控制命令
    systemctl status sshd    ##查看服务状态,inacticve(不可用),active(可用)
    systemctl start sshd    ##开启服务
    systemctl stop sshd    ##关闭服务
    systemctl restart sshd    ##重启服务
    systemctl reload sshd    ##重新加载服务配置(相当于信号1)
    systemctl enable sshd    ##设置服务开机自动启动
    systemctl disable sshd    ##设置服务开机不启动
    systemctl list-units    ##列出系统所有已开启服务当前状态    

进程管理  进程管理


    systemctl list-unit-files ##列出所有服务开机启动的状态,static依赖disable未启动 enable启动
    systemctl list-dependencies         ##列出所有服务的依赖
    systemctl set-default multi-user.target    ##设定系统启动级别为多用户模式(无图形)输入startx 就有图形了
    systemctl set-default graphical.target    ##设定系统启动级别为图形模式
###1.sshd简介###
sshd= secure shell
可以通过网络在主机中开启shell的服务

客户端软件
    sshd
连接方式:
    ssh    [email protected]    ##文本模式的连接
    ssh -X [email protected]    ##可以在连接成功后开启图形

进程管理

    注意:
        第一次连接陌生主机时要建立认证文件
        所以会询问是否建立,需要输入yes
        再次连接此台主机时,因为已经生成~/.ssh/know_hosts文件,所以不需要再次输入yes
        
远程复制:
    scp file [email protected]:dir        ##上传
    scp -r test/ [email protected]:/root/Desktop/        ##远程上传文件夹
    scp [email protected]:file dir        ##下载
    scp -r [email protected]:/root/Desktop/test/ .    ##远程复制文件夹

进程管理

###2.sshd的key认证###
1.生成认证KEY                                    
[email protected] ~]# ssh-******   ##生成**的命令
Generating public/private rsa key pair.
Enter file in which to save the key (/root/.ssh/id_rsa):    ##指定保存加密字符的文件(使用默认)
Enter passphrase (empty for no passphrase):                 ##设定密码(使用空密码)
Enter same passphrase again:                                ##确认密码
Your identification has been saved in /root/.ssh/id_rsa.    ##私钥(钥匙)
Your public key has been saved in /root/.ssh/id_rsa.pub.    ##公钥(锁)
The key fingerprint is:
8b:0b:a3:f2:2e:f0:84:2b:fc:d2:33:31:a5:db:75:ce [email protected]
The key's randomart image is:
+--[ RSA 2048]----+
|                 |
|                 |
|                 |
|     .           |
| .  o   S        |
|o .+   o o       |
|o+. B o =        |
|=o.* + . E       |
|.=*.o .          |
+-----------------+

2.加密服务
[[email protected] ~]# ssh-copy-id -i /root/.ssh/id_rsa.pub [email protected]
The authenticity of host '172.25.254.215 (172.25.254.215)' can't be established.
ECDSA key fingerprint is eb:24:0e:07:96:26:b1:04:c2:37:0c:78:2d:bc:b0:08.
Are you sure you want to continue connecting (yes/no)? yes
/usr/bin/ssh-copy-id: INFO: attempting to log in with the new key(s), to filter out any that are already installed
/usr/bin/ssh-copy-id: INFO: 1 key(s) remain to be installed -- if you are prompted now it is to install the new keys
[email protected]'s password:

Number of key(s) added: 1

Now try logging into the machine, with:   "ssh '[email protected]'"
and check to make sure that only the key(s) you wanted were added.

[[email protected] ~]# ls /root/.ssh/
authorized_keys  id_rsa  id_rsa.pub  known_hosts
      ^
此文件出现表示加密完成

3.分发钥匙
scp /root/.ssh/id_rsa [email protected]:/root/.ssh/

[[email protected] ~]# scp /root/.ssh/id_rsa [email protected]:/root/.ssh/
The authenticity of host '172.25.254.115 (172.25.254.115)' can't be established.
ECDSA key fingerprint is eb:24:0e:07:96:26:b1:04:c2:37:0c:78:2d:bc:b0:08.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added '172.25.254.115' (ECDSA) to the list of known hosts.
[email protected]'s password:
id_rsa                        100% 1675     1.6KB/s   00:00  
4.测试
在客户主机中(172.25.254.115)
ssh [email protected]     ##连接时发现直接登陆不需要root登录系统密码认证

[[email protected] ~]# ssh [email protected]
The authenticity of host '172.25.254.215 (172.25.254.215)' can't be established.
ECDSA key fingerprint is eb:24:0e:07:96:26:b1:04:c2:37:0c:78:2d:bc:b0:08.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added '172.25.254.215' (ECDSA) to the list of known hosts.
Last login: Mon Jul 23 04:18:32 2018 from 172.25.254.115

进程管理

进程管理

进程管理###3.sshd的安全设定###
vim /etc/ssh/sshd_config
systemctl restart sshd.service
78 PasswordAuthentication yes|no    ##是否允许用户通过登录系统的密码做sshd的认证
48 PermitRootLogin yes|no        ##是否允许root用户通过sshd服务的认证
52 AllowUsers student westos        ##设定用户白名单,白名单出现默认不在名单中的用户不能使用sshd
53 DenyUsers    westos            ##设定用户黑名单,黑名单出现默认不在名单中的用户可以使用sshd

进程管理

###4.添加sshd登陆信息###
vim /etc/motd    ##文件内容就是登陆后显示的信息

进程管理

###5.用户的登陆审计###
1.w        ##查看正在使用当前系统的用户
    -f    ##查看使用来源
    -i    ##显示IP
    /var/run/utmp
2.last        ##查看使用过并退出的用户信息
    /var/log/wtmp
3.lastb        ##试图登陆但没成功的用户
    /var/log/btmp

/var/log/messages

 

进程管理

进程管理