一、远程管理Linux服务器
1、windows下远程连接工具
2、windows下文件传输工具
二、远程连接管理服务SSH
1、了解服务端和客户端
服务端:提供服务
客户端:享受服务
2、了解端口号的设定
说明:端口号只有整数,范围是从0 到65535
- 1~255:一般是知名端口号,如:ftp 21号、web 80、ssh 22、telnet 23号等
- 256~1023:通常都是由Unix系统占用来提供特定的服务
- 1024~5000:客户端的临时端口,随机产生
- 大于5000:为互联网上的其他服务预留
3、了解ssh服务的作用
用于Linux下远程连接管理服务器的安全协议。
功能:远程管理Linux服务器
- SSH服务默认端口22
- SSH服务是C/S架构
- 服务器端(开启ssh服务):安装软件(openssh-server)
- 客户端(专门的客户端工具):
- windows:SecureCRT、MobaXterm
- linux:openssh-clients ssh/scp
查看默认是否开机自启动:
4、SSH服务的重启/停止
5、修改ssh服务的默认端口
㈠ 查看ssh服务端口
㈡ 修改ssh服务默认端口
① 修改配置文件
② 重启服务
㈢ 搭建服务总结
1. 关闭防火墙和selinux(实验)
2. 配置软件仓库
3. 软件三步曲
-
安装相应软件(程序)
-
确认软件是否成功安装
-
查看软件的文件列表(配置文件、程序本身、man文档手册等)
4. 了解配置文件(man 5 xxx.conf)
5. 根据需求通过修改配置文件完成服务的搭建
6. 启动服务,开机自启动
7. 测试验证
6、基于SSH服务的命令
㈠ Linux下客户端工具ssh
㈡ Linux下远程拷贝命令scp
三、进程的检测与控制
1、认识管道
㈠ 什么是管道
管道,指在类UNIX系统中,进程之间通讯的一种方式或机制。管道,也指一种特殊的文件,叫管道文件。
㈡ 管道的分类
① 匿名管道
匿名管道,顾名思义,就是没有名字的管道,常常用于父子关系的进程之间通讯一种方式。匿名管道,在bash中,用符号" "来表示。在同一个终端通讯。
匿名管道作用:将上一个命令所执行的结果(标准输出)作为下一条命令的标准输入
② 命名管道
- 命名管道,顾名思义,就是有名字的管道,既可以用于任何进程之间通讯。
- 命名管道,可以使用mkfifo命令创建。
㈢ 引申xargs命令
场景:找出某些文件将其删除或者找出某个进程将它结束,如何实现?
xargs: 将上一条命令所执行的结果作为下一条命令的参数
xargs其他选项(了解):
2、进程概述
㈠ 什么是进程
进程,由程序产生,是正在运行的程序,或者说是已启动的可执行程序的运行实例。
进程,具有自己的生命周期和各种不同的状态。
引申:什么是线程?
线程,也被称作轻量级进程,线程是进程的执行单元,一个进程可以有多个线程。线程不拥有资源,它与父进程的其它线程共享该进程所拥有的资源。线程的执行是抢占式的。
张三(砌墙的):a b c
李四(贴瓷砖)
王五(装水电)
㈡ 进程有什么特点
-
独立性
进程是系统中独立存在的实体,它可以拥有自己的独立资源,每一个进程都有自己的私有地址空间;
在没有经过进程本身允许的情况下,一个用户进程不可以直接访问其他进程的地址空间。
-
动态性
进程与程序的区别在于,程序只是一个静态的指令集合,而进程是一个正在系统中活动的指令集合;进程具有自己的生命周期和各种不同的状态。
-
并发性
多个进程可以在单个处理器上并发执行,多个进程之间不会互相影响。
程序和进程有什么区别?
-
程序。二进制的文件,静态的。如:/usr/sbin/vsftpd,/usr/sbin/sshd
-
进程。程序的运行过程,动态的,有生命周期及运行状态的。
㈢ 进程生命周期
父进程,复制自己的地址空间(fork)创建一个新的(子)进程结构。每个新进程分配一个唯一的进程 ID (PID),满足跟踪安全性之需。PID 和 父进程 ID (PPID)是子进程环境的元素,任何进程都可以创建子进程,所有进程都是第一个系统进程的后代:Centos5/6: init RedHat7/8: systemd
子进程,继承父进程的安全性身份、过去和当前的文件描述符、端口和资源特权、环境变量,以及程序代码。随后,子进程exec 自己的程序代码。通常,父进程在子进程运行期间处于睡眠(sleeping)状态。当子进程完成时发出(exit)信号请求,在退出时, 子进程会关闭或丢弃了其资源环境,剩余的部分称之为僵停(僵尸Zombie)。父进程在子进程退出时收到信号而被唤醒,清理剩余的结构,然后继续执行其自己的程序代码。
3、进程信息查看
㈠ 静态查看ps命令
-
常见组合
-
进程信息解释说明
㈡ 动态查看top命令
第一部分:统计信息
关注load average:系统1分钟、5分钟、15分钟内的平均负载,判断一个系统负载是否偏高需要计算单核CPU的平均负载,如下图,一般以1以内为比较合适的值。偏高说明有比较多的进程在等待使用CPU资源。
计算方法:
平均负载 / 逻辑cpu数量
第三行:当前的CPU运行情况
第二部分:进程信息
-
top命令常用按键命令
-
在top的执行过程中,还可以使用以下的按键命令:
-
top命令常用的选项
4、进程控制
㈠ 进程的优先级控制
① 调整正在运行进程的优先级(renice)
(1)使用top按"r"来调整
(2)命令行使用renice调整
② 程序运行时指定优先级(nice)
㈡ 进程的运行状态控制
① 如何控制进程的状态?
用户通过给进程发送信号来控制进程的状态。
② 常见的信号有哪些?
③ 如何给进程发送信号?
㈢ 进程其他控制命令
总结
1. 如何查看进程相关信息
(1)静态查看 ps
2)动态查看 top
2. 如何控制进程的状态或优先级
(1)设置进程优先级(-20-19)
-
renice调整正在运行进程优先级
-
nice指定程序运行时的优先级
(2)发送信号控制进程的状态
-
常见信号(kill -l) 9 15 18 19 20 1
-
使用哪些命令发送信号(kill/pkill/killall)
-
进程前台和后台运行(jobs/fg/bg)
四、时间同步服务NTP
1、了解时间同步的重要性
由于IT系统中,准确的计时非常重要,有很多种原因需要准确计时,如
-
在网络传输中,数据包和日志需要准确的时间戳
-
各种应用程序中,如订单信息,交易信息等都需要准确的时间戳
在Linux系统中, Network Time Protocol (NTP),NTP协议由在用户空间中运行的守护程序实现,即ntp和chrony。
2、了解时间同步服务器
查看可以提供时间同步的服务器:
http://www.ntp.org.cn/pool.php
3、如何同步自己系统时间
-
修改配置文件指定ntp服务器同步
-
临时指定ntp服务器同步
4、搭建时间同步服务
㈠ 了解RHEL7和RHEL8区别
-
在RHEL7中,用户可以在ntp和chrony之间进行选择,以确保准确的计时。
-
在RHEL8中,不再支持ntp,使用chronyd守护进程来实现NTP,默认已启用,从chrony软件包获得。
-
chrony和ntp之间的差异
-
ntpd服务器在控制客户端访问方式上默认响应来自任何地址的请求,相对不安全
-
chronyd默认不允许访问,要想提供时间同步服务端需要在allow中指定
-
ntpd 和 chronyd 在系统时钟校正方面的默认行为也不同。
-
客户端同步方式有差异
-
还有很多不同可以参考官方网站:https://chrony.tuxfamily.org/comparison.html
总结:
chrony在各种条件下表现良好,包括间歇性网络连接,高度拥挤的网络,温度变化(普通计算机时钟对温度敏感),以及不能连续运行或在虚拟机上运行的系统。
㈡ RHEL8配置时间同步服务
1. 关闭防火墙和selinux(实验)
2. 配置软件仓库
3. 软件三部曲
-
安装软件
-
确认软件是否成功安装
-
查看软件的文件列表(配置文件、程序本身、man手册)
4. 了解配置文件(man 5 xxx.conf)
5. 根据需求通过修改配置文件来完成服务搭建
6. 启动服务,开机自启动
7. 测试验证
- 时间同步服务器端
-
客户端