*10.3*

{第七单元}

 [1.进程定义]

 进程就是cpu未完成的工作

 [2.ps命令]

 ps  a    #关于当前环境的所有进程

     x    #与当前环境无关的所有进程

     f    #显示进程从属关系

     e    #显示当前用户环境中的所有进程

     l    #长列表显示进程的详细进程

     u    #显示进程的用户信息

 ps ax -o %cpu,%mem,user,group,comm,nice  #指定显示进程的某些信息

 %cpu    #显示进程cpu负载

 %mem    #显示进程内存负载

 user    #进程用户

 group   #进程组

 comm    #进程名称

 nice    #进程优先级

 ps ax -o %cpu,comm --sort <+|-%cpu><+|-%mem> 按照进程信息排序

 +      #正序

 -      #倒序

 %cpu   #cpu负载

 %mem   #内存负载

  [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 1086  #改变1086进程的优先级为-5

   [4.环境中进程的前后台调用]

 jobs    #查看被打入环境后台的进程

 ctrl+z  #把占用终端的进程打入后台

 fg      #把后台进程调入前台

 bg      #把后台暂停的进程运行

 comm &  #让命令直接在后台运行

1.常用信号等级

 1   #进程重新加载配置

 2   #删除进程在内存中的数据

 3   #删除鼠标在内存中的数据

 9   #强行结束单个进程

 15  #正常关闭进程

 18  #运行暂停的进程

 19  #暂停某个进程

 20  #把进程打入后台

 man 7 signal  #查看信号详细信息

 kill -信号 进程名字pid

 killall -信号 进程名字

 pkill -u student -信号

    [6.用户登陆审计]

1. w     #查看使用系统的当前用户有哪些

   w -f  #-f查看使用地点

2. last  #查看用户登陆成功历史

3. lastb #查看用户登陆未成功历史

    [7.top命令]

 top      #监控系统负载工具

 {8.系统服务的控制}

1.systemd

系统初始化程序,系统开始的第一个进程,pid为1

2.systemctrl 命令

 systemctrl list-units      #列出当前系统服务的状态

 systemctrl list-unit-files #列出服务的开机状态

 systemctrl status sshd     #查看指定服务的状态

 systemctrl stop sshd       #关闭指定服务

 systemctrl start sshd      #开启指定服务

 systemctrl enable sshd     #设定指定服务开机开启

 systemctrl disable sshd    #设定指定服务开机关闭

 systemctrl reload sshd     #使指定服务重新加载配置

 systemctrl list-dependencies sshd  #查看指定服务的依赖关系

 systemctrl mask sshd       #冻结指定服务

 systemctrl unmask sshd     #启用服务

3.服务状态

 loaded            #系统服务已经初始化完成,加载过配置

 active(running)   #服务正在被系统利用

 active(exited)    #服务已经加载配置,等待被系统利用

 active(waiting)   #服务等待被系统处理

 inactive          #服务关闭

 enabled           #服务开机启动

 disabled          #服务开机不自启

 static            #服务开机启动项不可被管理

 failed            #系统配置错误

    {9.openssh-server}

 [1.openssh-server]

 功能:让远程主机可以通过网路访问sshd服务,开始一个安全shell

 [2.客户端连接方式]

 ssh 远程主机用户@远程主机ip

[root@desktop Desktop]# ssh root@192.168.1.109

The authenticity of host '192.168.1.109 (192.168.1.109)' 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 '192.168.1.109' (ECDSA) to the list of known hosts.

root@192.168.1.109's password:         #远程用户密码

Last login: Sun Oct  9 08:03:29 2016

[root@server ~]#                       #登陆成功

 

 ssh 远程主机用户@远程主机ip -X           #调用远程主机图形工具

 ssh 远程主机用户@远程主机ip  command     #直接在远程主机运行某条命令

 [3.sshkey加密]

1.生成公钥私钥

[root@server Desktop]# ssh-keygen          #生成公钥私钥工具

Generating public/private rsa key pair.

Enter file in which to save the key (/root/.ssh/id_rsa): 【enter】

                              #加密字符保存文件(建议默认)

Enter passphrase (empty for no passphrase):              【enter】

                              #密码钥匙,必须>4位(建议默认)

Enter same passphrase again:   【enter】    #确认密码

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:

4b:60:b6:dd:0f:80:b5:4d:bb:38:df:87:01:47:a7:fb root@server

The key's randomart p_w_picpath is:

+--[ RSA 2048]----+

|        . . . .  |

|       o + o o   |

|      = o + o    |

|     o + + + .   |

|      . S + o    |

|       . + + +   |

|        . . + E  |

|             .   |

|                 |

+-----------------+

[root@server Desktop]# ls /root/.ssh

id_rsa  id_rsa.pub

id_rsa        #私钥,就是钥匙

id_rsa.pub    #公钥,就是锁

2.添加key认证方式

 [root@server Desktop]# ssh-copy-id -i /root/.ssh/id_rsa.pub root@172.25.254.100

ssh-copy-id             #添加key认证方式的工具

-i                      #指定加密key文件

/root/.ssh/id_rsa.pub   #加密key

root                    #加密用户为root

172.25.254.100          #被加密主机ip

3.分发钥匙给client主机

[root@server Desktop]# scp /root/.ssh/id_rsa root@172.25.254.99:/root/.ssh/

4.测试

[root@desktop Desktop]# ssh root@172.25.254.100   #通过id_rsa直接连接

                                                  不需要输入用户密码

[root@server ~]#

**10.4**

 [4.提升openssh的安全级别]

1.openssh-server配置文件

 /etc/ssh/sshd_config

 78 PasswordAuthentication yes|no  #是否允许用户密码认证,yes为支持,no为关闭

 48 permitRootLogin yes|no         #是否允许超级用户登陆

 49 AllowUsers student westos      #用户白名单,只有在白名单中出现的用户可以

                                                   使用sshd建立shell

 50 DenyUserrs westos              #用户黑名单

  {12.不同系统之间的文件传输}

 [1.文件归档]

1.文件归档,就是把多个文件变成一个归档文件

2.

tar   c      #创建

      f      #指出归档文件名称

      t      #显示归档文件中的内容

      t      #向归档文件中添加文件

     --get   #取出单个文件

    --delete #删除单个文件

     -x      #取出归档文件中的所有内容

     -C      #指定解档目录

     -z      #gz格式压缩

     -j      #bz2格式压缩

     -J      #xz格式压缩

 [2.压缩]

gz

 gzip etc.tar        #压缩成gz格式

 gunzip etc.tar.gz   #解压gz格式压缩包

 tar zcf etc.tar.gz /etc  #把文件归档为tar并压缩成gz

 tar zxf etc.tar.gz  #解压并解档gz格式压缩包

bz2

 bzip2 etc.tar       #压缩成bz2格式

 bunzip2 etc.tar.bz2 #解压bz2格式压缩包

 tar zxf etc.tar.bz2 /etc #把文件归档为tar文件并压缩成bz2

 tar zxf etc.tar.bz2 #解压并解档bz2格式压缩包

xz

 xz etc.tar          #解压成xz格式

 unxz etc.tar.xz     #解压xz格式压缩包

 tar zcf etc.tar.xz /etc #把文件归档为tar并压缩成xz

 tar zcf etc.tar.xz  #解压并解档xz格式压缩包

zip

 zip -r etc.tar.zip etc.tar  #压缩成zip格式

 unzip etc.tar.zip   #解压zip格式压缩包

  [3.系统中的文件传输]

scp file username:/dir  #上传

scp username@ip:/dir/file /dir  #下载

rsync [参数] file username@ip:/dir

rsync  -r   #同步目录

       -l   #不忽略连接

       -p   #不忽略文件权限

       -t   #不忽略文件时间戳

       -g   #不忽略文件组

       -o   #不忽略所有人

       -D   #不忽略快设备

  {11.管理网络}

 [1.ip基础知识]

1.ipv4

 二进制32位----10进制

 172.25.254.100/255.255.255.0

 172.25.254.100:ip地址

 255.255.255.0:子网掩码

 子网掩码255位对应的ip位为网络位

 子网掩码0对应的ip位为主机位

 [2.配置ip]

<<图形化>>

1.图形化 nm-connection-editor

2.文本化 nmtui

<<命令>>

ifconfig 网卡 ip netmask   #临时设定

nmcli connection add type ethernet con-name westos ifname ech0 autoconnect yes

nmcli connection add type ethernet con-name westos ifname ech0 ip4 ip/24

nmcli connection delete westos

nmcli connection show

nmcli connection down westos

nmcli connection up westos

nmcli connection modify "westos" ipv4.addresses newip/24

nmcli connection modify "westos" ipv4.<auto|manual>

nmcli device connect ech0

nmcli device disconnect ech0

nmcli device show

nmcli device status

<<文件>>

dhcp    #动态获取

vim /etc/sysconfig/network-scripts/ifcfg-ech0

DEVICE=ech0       #接口使用设备

BOOTPROTO=dhcp    #网卡工作模式

ONBOOT=yes        #网络服务开启时自动激活

NAME=ech0         #网络接口名称

:wq

systemctl restart network

static|none  #静态网络

vim /etc/sysconfig/network-scripts/ifcfg-ech0

DEVICE=ech0

BOOTPROTO=static|none

ONBOOT=yes

NAME=ech0

IPADDR=172.25.254.100           #IP

NETNASK=255.255.255.0|PREFIX=24 #子网掩码