面试知识点1(硬件、Linux、虚拟化、网络、openstack、Docker、KVM)

计算机基础

  1. 冯诺依曼体系内容

 1)计算机的体系架构(计算机组成)

      输入单元:键盘、鼠标

      输出单元:显示器、音响

      存储单元:硬盘、内存

      逻辑单元(运算单元):CPU的内部结构,负责计算

      控制单元:CPU的内部结构,负责调度和控制

  2)计算机只识别二进制数(0,1)

  1. 计算机的分类

1)个人PC机(x86架构)

     操作系统:

     Windows个人桌面版系统:XP、win7、win8、win10

     Linux个人桌面版系统:mint、Fedora

  2)x86服务器

     操作系统:

     Windows服务器版系统:Windows Server2003/2008/2012/2016/2019

     Linux服务器版系统:Centos、Redhat、红旗Linux、麒麟Linux、SUSE等等

  3)小型机服务器

     操作系统:

     IBM(power系列)---AIX系统

     HP                         ---HPUnix系统

备注:

x86:复杂指令集架构,使用了该指令集的计算机称为复杂指令集计算机(CISC)

PowerPC:精简指令集架构,使用了该指令集的计算机称为精简指令集计算机(RISC)

  1. PC 机的组成

1)软件系统

      1. BIOS(Basic Input Output System):基本输入输出系统

          功能:计算机开机第一个加载的软件,主要功能是实现计算机的开机加电自检,检查计算机的硬件信息及硬件的健康状况。

          存储位置:存储在固化在主板上的一个ROM(Read Only Memory)存储器上(BIOS芯片)。

          修改信息存放位置:存放在主板上的CMOS芯片,它是一个RAM(Read Access Memory)类型的存储器,纽扣电池为其供电。

      2. 操作系统软件

          功能:管理、监控、维护计算机资源的一类软件,所以应用软件要以操作系统软件为载体才能运行。

      3. 应用软件

          实现特定功能的软件,比如QQ、微信等等

  2)硬件系统

     1. 主机:主板、CPU、内存、硬盘等等

     2. 外部设备:显示器、音响、键盘、鼠标等

  1. BIOS 的概念功能

BIOS芯片:存储着BIOS系统,用于开机加电自检

  1. 操作系统的功能

功能:管理、监控、维护计算机资源的一类软件,所以应用软件要以操作系统软件为载体才能运行。

  1. CPU的相关技术

超线程:在一个CPU的处理核心中增加了一个逻辑单元,这样CPU中就可以同时运行2个线程,但是两个逻辑单元共用控制单元和存储单元。

           多核心:在一颗物理CPU中拥有多个同样功能的处理核心,每个处理核心中都至少拥有逻辑、存储、控制三大组成单元。

           SMP对称多处理器:服务器CPU技术,一台物理服务器上拥有多颗物理CPU,多颗CPU共享内存系统和总线结构,一般我们称拥有4颗CPU的服务器为4路服务器。

  1. 进程、线程、服务、协议、端口的关系

程序:一组静态指令的集合

          进程:程序运行起来,在CPU中是以进程的形式被执行的,是程序管理的最小单位。

          线程:与进程类似,但是比进程小,是由进程衍生来的; 是程序执行的最小单位。

  1. CPU的位、主频

a. cpu的位数:32bit、64bit

b. cpu的主频:GHz  计算速度

c. 厂商:Intel、AMD

9CPU、内存、硬盘的关系

CPU内存和硬盘之间是协作关系,内存负责硬盘等硬件上的数据与CPU之间数据交换处理,具有体积小,速度快,有电可存的特点,而硬盘是存储资料和软件等数据的设备,有容量大,断电数据不丢失的特点。

10、常见的存储器类型

 1. 硬盘类型

         机械硬盘(HDD):盘片制,读写速度慢、寿命长、噪音大、抗震性差(磁盘坏道)

         固态硬盘(SSD):芯片制,读写速度快、寿命短、噪音小、抗震性强

     2. 机械硬盘的工作原理

         磁道、扇区、磁头

     3. 硬盘的相关参数

         a. 转速  r/min

         b. 容量

         c.传输速率:硬盘接口从硬盘的缓存中读取数据交给其他控制器的速度。

         d. 品牌:希捷、西部数据、东芝等等

11、机械硬盘和固态硬盘的区别

机械硬盘(HDD):盘片制,读写速度慢、寿命长、噪音大、抗震性差(磁盘坏道)

         固态硬盘(SSD):芯片制,读写速度快、寿命短、噪音小、抗震性强

  1. 机械硬盘的工作原理

1)硬盘内部是一些圆形盘片,盘片的材料是磁介质。在盘片上有一圈圈同心圆的磁道,每个磁道上

分成几个区域,该区域(磁道段)被称为扇区。一个扇区的大小为512字节(注内层扇区和外层扇区的数

据存储量均为512字节)。每个扇区都有编号,硬盘的第一个扇区被称为磁盘首扇区,被称为MBR,记

录着磁盘分区表,也存储着磁盘的引导程序,可以引导系统启动。

2)硬盘内部有三到四块盘片。这些盘片共同围绕着盘片中轴由电机带动旋转。磁头在盘片的间隙中

(一般上下盘片无磁介质),所有磁头在同一垂直线上由电机带动可以左右移动。所有的磁头共同处于

一个圆柱体内,该圆柱体被称为柱面。磁头按照柱面作为存储单位,来读写数据。

  1. 常见的功能板卡及概念

HBA卡:主机总线适配器,服务器上的用于连接外部存储服务器的板卡,通常服务器和外部存储服务器之间的网络采用的是光纤的网络,那么就需要服务器上有光纤的HBA卡。

       Raid卡:磁盘阵列卡,服务器上用于管理本地磁盘的板卡,在raid卡的管理界面可以扫描到服务器的本地磁盘,通过不同的raid技术可以将多块本地磁盘在逻辑上形成一个整体,从而提高磁盘性能或者提供数据冗余。比如常用的raid技术raid 0 、raid 1。

  1. 计算机获取网络参数的方式

1)自动获取:网络中事先搭建了一台DHCP服务器(路由器内置的功能),DHCP服务器可以自动的为计算机分配网络参数。

   2)手动设置:用户事先清楚网络结构与网络配置,手动配置相关网络参数。

15、子网掩码的功能

1. 按照覆盖的地理范围进行分类

         广域网(WAN)、城域网(MAN)、局域网(LAN)

     2. 子网

         底层路由器(离电脑最近的一层)的一个接口所连接的所有网络资源称为一个子网。

     3. 子网掩码的功能:

         计算机根据为其配置的子网掩码进行判别与对方同异子网。

  1. 网关、路由、子网、DNSIP

1)IP地址

       用.分隔的四个数的形式,相当于手机的手机号码,计算机在网络上的一个地址编号。

2)、网关(gw)

     计算机出子网通信必经的一个路由器接口称为网关。

     通信规则:

            同子网通信,不需要配置网关;

            异子网通信,必须配置网关;

3)、端口

      功能:标识一台计算机上同时运行的多个进程,每运行一个程序,在CPU中都是以进程的方式被执行,CPU会分配给每个进程一个数字编号,该编号称为端口号。

     分类:

         知名端口:1-1023,与网络服务固定绑定

         动态端口:1024-65535,客户端使用,随用随开,不用即关。

 4)、子网

         底层路由器(离电脑最近的一层)的一个接口所连接的所有网络资源称为一个子网。

5)DNS服务器

      功能:域名解析,将全称域名解析成IP地址

  1. 端口的概念、功能、分类、范围

端口

      功能:标识一台计算机上同时运行的多个进程,每运行一个程序,在CPU中都是以进程的方式被执行,CPU会分配给每个进程一个数字编号,该编号称为端口号。

     分类:

         知名端口:1-1023,与网络服务固定绑定

         动态端口:1024-65535,客户端使用,随用随开,不用即关。

  1. MBRGPT的区别

GUID分区表(简称GPT。使用GUID分区表的磁盘称为GPT磁盘)与普遍使用的主引导记录(MBR)分区方案相比,GPT提供了更加灵活的磁盘分区机制。

优点是支持2TB以上的大硬盘;每个磁盘的分区个数几乎没有限制,分区大小也几乎没有限制。

关于MBR:

MBR分区表(master boot record)的英文缩写,简称主引导记录,还可以叫做主引导扇区。它的运行机制存在于硬件的基础之上,它存储在硬盘的第一个扇区上。当我们在硬盘上安装win10系统时,win10操作系统的分区软件可以将MBR分区信息写入到硬盘中保存起来。

优点就是兼容性比较好,缺点就是不支持管理大硬盘结构。

GPT和MBR两者的区别:

1、MBR分区表最多只能识别2TB左右的空间,大于2TB的容量将无法识别从而导致硬盘空间浪费;GPT分区表则能够识别2TB以上的硬盘空间。

2、MBR分区表最多只能支持4个主分区或三个主分区+1个扩展分区(逻辑分区不限制);GPT分区表在Windows系统下可以支持128个主分区。

3、在MBR中,分区表的大小是固定的;在GPT分区表头中可自定义分区数量的最大值,也就是说GPT分区表的大小不是固定的。

  1. 簇、块

1. 微软操作系统(DOS、WINDOWS等)中磁盘文件存储管理的最小单位叫做“簇”。

2. 簇(CLUST)的本意就是“一群”、“一组”,即一组扇区(一个磁道可以分割成若干个大小相等的圆弧,叫扇区)的意思。因为扇区的单位太小,因此把它捆在一起,组成一个更大的单位更方便进行灵活管理。簇的大小通常是可以变化的,是由操作系统在所谓“(高级)格式化”时规定的,因此

  1. 格式化类型和方式

格式化硬盘的时候会弹出文件系统的选项,分别有FAT32、NTFS、exFAT三种格式

网络基础与华为网络部分

  1. OSI 模型及各层功能

1)第七层  应用层

             规定了应用协议

        2)第六层  表示层

             将应用层的数据格式转换成网络通信数据的标准格式,比如编码、解码;加密、解密;压缩、解压缩

        3)第五层  会话层

             管理用户间会话;分割进程间数据;与直连设备协商单双工模式及链路速度

        4)第四层  传输层

             功能:将数据封装成数据段(报文、segment),实现端(应用进程/端口)对端的数据连接和传输

             封装单位(PDU协议数据单元):数据段(segment)

             寻址方式:端口(port)

             寻址目标:进程

             进程间的连接方式:

                    TCP:面向连接,保证通信质量

                    UDP:无连接,保证通信速度

        5)第三层  网络层(该层封装信息是路由器查看的)

             功能:将数据段封装成数据包,数据包中的封装信息为双方的IP地址,通过该层封装信息可以在广域网内进行路由寻址,将数据送达到对方所在的子网。

             封装单位(PDU):数据包(packet)

             寻址方式:IP地址

             寻址目标:子网

         6)第二层  数据链路层(该层封装信息是由交换机查看的)

             功能:将数据包封装成数据帧,数据帧中封装的是通信主机的Mac地址,通过该层封装信息可以在子网内寻找主机。

             封装单位(PDU):数据帧(frame)

             寻址方式:Mac地址

             寻址目标:主机

         7)第一层  物理层

             通过传输介质传输bit流;规定电器特性(电压)

  1. TCP/IP 模型:OSI 模型和 TCP/IP 的关系

OSI模型(参考模型)                   TCP/IP模型(四层)                         TCP/IP模型(五层)

          5-7                                     应用层                                   应用层

            4                                      传输层                                   传输层

            3                                      互联网络层(网络层)                    网络层

           1-2                                      网络接口层                            数据链路层

                                                                                           物理层

                                                                                    

  1. 端口的功能?范围?分类?

端口:标识服务

TCP   1-65535

         UDP  1-65535

如一台计算机上运行着QQ、IE、迅雷、酷狗。但该计算机只有一个网卡,那么该网卡接收到的数据

通过不同程序的端口号进行区分。

知名端口:1-1023

动态端口:1024-65535

注:IP地址+端口,成为socket套接字,用于进程间通信

使用浏览器访问:www.baidu.com:8000发现无法访问,平时浏览器会默认添加80端口

  1. 什么是Mac地址?

Mac地址也称之为硬件地址或物理地址、存储在固化在网卡上的一个ROM存储器、全球唯一 Mac地址的体现形式12位的十六进制、计算机使用Mac时会将其转换成48bit的二进制使用

  1. HTTP HTTPS的功能与端口

HTTP,超文本传输协议,提供网页浏览。

  端口     TCP  80 

HTTPS,HTTP+SSL/TLS(安全套接字协议),可以将在网页上传输的数据进行加密。 TUP 443

需要向CA提交资质,CA颁发证书,将证书部署在站点上,该协议才能使用

      HTTPS,HTTP+SSL/TLS(安全套接字协议),可以将在网页上传输的数据进行加密。

            需要向CA提交资质,CA颁发证书,将证书部署在站点上,该协议才能使用

           端口     TCP  443  、

  1. DHCP(四步通信)DNS的功能及端口

 1)DHCP协议,动态主机配置协议,给客户端自动分配网络参数。

             端口   UDP 67   ---服务器端   

                       UDP 68    ---客户端

  2)DNS,域名系统,提供域名解析服务,将FQDN(全称域名)解析成IP地址。

            端口    UDP  53   ---提供解析

                    TCP  53   ---主辅更新

1.IP租用请求:当DHCP客户机启动后,向网络内广播一个DHCP请求信息,所有机器都会收到,但不是

DHCP服务器的机器会把信息丢掉。(信息中包含客户端的MAC地址)

2.IP租用提供:DHCP服务器回应客户机,提供一个网内没有的IP地址.(信息中增加服务器的MAC地址)

3.IP租用选择:如果DHCP服务器有多个,则选择第一个回应的信息,然后向网络中广播一个消息,表

明自己已经接受一个DHCP服务器的IP。

4.IP租用确认:DHCP服务器接受到客户的选择信息之后,会返回给客户一个消息包,客户机按服务

器的信息配置机器IP,服务器记录客户机的IP地址。

  1. TelnetSSH的区别及端口

 1)Telnet:字符界面的远程连接,明文传输,不安全

           端口  TCP 23

     2)SSH:Linux系统的远程连接协议,加密传输,安全

           端口  TCP 22

     3)远程桌面协议:Windows系统中的图形界面的远程连接。

           端口  TCP 3389

8FTPTFTP 端口

  1)FTP,文件传输协议,提供文件传输(上传下载)服务。

          端口 TCP   21   ---建立连接

               TCP  20    ---数据传输

     2)TFTP,简单文件传输协议,功能同FTP,但是不能设置权限及访问控制。

          端口  UDP 69

3)NFS,网络文件系统,实现Linux与Linux的目录(文件夹)共享。

          端口  TCP 2049

    netstat   -an    ---查看本机所有打开的端口

  1. SMTPPOP3 IMAP4的端口

邮件相关协议

     1)SMTP ,简单邮件传输协议,主要功能是提供邮件的收发。

          端口 TCP 25

     2)POP3 ,邮局协议,提供邮件软件(Outlook、Foxmail)接收邮件。

          端口 TCP 110

     3)IMAP4,功能同POP3

          端口  TCP 143

  1. TCPUDP的区别

TCP面向连接,可靠;UDP无连接,不可靠;

          TCP数据段有段号;UDP无

          TCP通信有窗口技术和流量调整;UDP无

          TCP通信负载高;UDP通信负载低

  1. 三次握手的标记位

面试知识点1(硬件、Linux、虚拟化、网络、openstack、Docker、KVM)_第1张图片

 

  1. ARP协议的功能

ARP协议

         地址解析协议,功能将IP地址解析成Mac地址。

         同子网,通过对方IP地址,发送ARP广播获取对方的Mac;

         异子网,通过网关的IP地址,发送ARP广播获取网关的Mac;

     RARP协议

          反地址解析协议,功能将Mac地址解析成IP地址。备注DHCP专用的网络层协议。

  1. ping命令使用哪层协议

 1)IP  通过IP协议在广域网内进行路由寻址,主要实现网络层功能的。

     2)ICMP协议

          网络控制信息协议,主要功能是探测网络连接状况,一些网络命令通信时才使用ICMP协议,比如ping

      ping  www.baidu.com    ping        pong

                             8           0

                             request    relay

协议(Internet  Protocol)

       

  1. 如何让内网服务器可以访问公网?原理是如何的?

如果公司内部使用保留IP地址,在连接因特网时,需要使用网络地址

内网计算机访问公网需要在内网和公网交界点路由器上开启NAT。

转换技术NAT把私有IP地址转换为因特网上合法的公有IP地址

  1. VLSM的功能?

VLSM(可变长子网掩码)

    功能:

      1.将主机位借给网络位使用,从而减少主机位位数,减少IP地址浪费。

      2.划分子网:在一个主类(A、B、C类)网络中包含多个子网的能力。

16、双绞线线序是什么?

1)双绞线分类

       按照传输速度:5类(100Mbp)、E5类(1000Mbps)、6类(2.4Gbps)     

       按照屏蔽型(屏蔽电磁干扰):屏蔽双绞线(STP)、非屏蔽双绞线(UTP)

  2)线序

       T568B:(常用)

       橙白   橙   绿白   蓝   蓝白   绿   棕白   棕     

       T568A:(将T568B的1和3对调;2和6对调)

       绿白  绿   橙白   蓝   蓝白   橙   棕白   棕

  3)使用规则

        同类设备相连用交叉线;

        异类设备相连用直连线;

        设备分类:

         I   Router    PC

        II   Switch     Hub

      备注:现在网卡都属于自适应网卡,通信一般都可以使用直连线

  1. 交换机的工作原理及学习过程?

1.工作原理  

        通过Mac地址表在子网内进行数据转发

     2.Mac地址表的建立(学习过程)

        交换机收到数据帧后先看源Mac,若Mac地址表中无记录,马上学习,再看目的Mac;若Mac地址表中有记录,直接看目的Mac

        Mac地址表中有目的Mac信息,按照记录进行数据转发;若无则发送临时性广播(泛洪/扩散)

       这样连接在交换机上的设备都向外发送一次数据,Mac地址表建立完善

  1. 路由器的工作原理?

路由器 

     1.工作原理

        通过路由表实现跨子网数据转发。

     2.概念

        路由:一个节点到另一个节点的路径称为路由。

        路由器:硬件设备,实现连接不同子网和跨子网转发数据的设备。

     4.路由器的特点

        属于OSI模型中网络层的设备;

        隔绝冲突;

        隔绝广播;

          OSI                    设备

         物理层              中继器、集线器、网线、光纤

         数据链路层       交换机、网桥(二层设备)

         网络层              路由器(三层设备)

19、路由表的建立方式

1>手动配置(静态路由):管理员清楚网络结构和网络配置,手动添加路由条目,适用于不经常发生变化的小型网络环境。

2>动态路由协议(动态路由):管理员需要在路由器上部署运行路由协议,路由协议的功能:相邻的路由器周期性交换路由表或者链路状态相互学习;选择最佳路径。适用于大型网络环境

20、动态路由协议的功能?

管理员需要在路由器上部署运行路由协议,路由协议的功能:相邻的路由器周期性交换路由表或者链路状态相互学习;选择最佳路径。适用于大型网络环境

  1. 网络管理员如何连接到网络设备进行管理?

通过远程协议连接主机进行管理 连接协议有

     1)Telnet:字符界面的远程连接,明文传输,不安全

           端口  TCP 23

     2)SSH:Linux系统的远程连接协议,加密传输,安全

           端口  TCP 22

     3)远程桌面协议:Windows系统中的图形界面的远程连接。

           端口  TCP 3389

  1. VLAN技术的主要功能?

随着网络中计算机的数量越来越多,传统的以太网开始面临冲突严重、广播泛滥以及安全性无法

保障等各种问题。

 VLAN(Virtual Local Area Network)即虚拟局域网,是将一个物理的局域网在逻辑上划分成多

个广播域的技术。通过在交换机上配置VLAN,可以实现在同一个VLAN内的用户可以进行二层互访,

不同VLAN间的用户被二层隔离。这样既能够隔离广播域,又能够提升网络的安全性。

22、划分 VLAN 的方式?

VLAN的类型主要有四种:

1.基于端口的VLAN:将交换机的各个端口划分到不同的VLAN

2.基于主机Mac的VLAN:将不同Mac的主机划分到不同的VLAN

3.基于协议的VLAN:将运行不同协议的主机划分到不同的VLAN

4.基于子网的VLAN:将不同子网的主机划分到不同的VLAN

24VLAN间如何标识?VLANID的范围?

通过VLAN ID 标识,VLAN ID的范围1-4094

  1. 交换机端口的链路模式有哪些?

华为交换机设备上端口链路类型Access、Trunk、Hybrid

Ø Access:独占模式,通常与PC直连的端口设置为Access,只转发与端口PVID相同的数据帧。

Ø Trunk:共享模式,通常交换机与交换机直接相连的端口设置为Trunk,可以转发多个VLAN

的数据。

Ø Hybrid:默认模式,既可以用于交换机和交换机连接,也可以用于和个人PC连接,它可以

接受和发送多个VLAN。

26accesstrunk 的适用场景及工作原理?

1、Access链路模式工作原理

面试知识点1(硬件、Linux、虚拟化、网络、openstack、Docker、KVM)_第2张图片

 

 Access端口在收到数据后会添加VLAN Tag,VLAN ID与端口PVID相同;

l Access端口在转发数据前会移除VLAN Tag;

面试知识点1(硬件、Linux、虚拟化、网络、openstack、Docker、KVM)_第3张图片

 

  1. 什么是 PVID

Port VLAN  ID

  1. 为什么要做链路聚合?

链路汇聚是通过将多个以太网端口捆绑在一起形成的,多个以太网接口捆绑后形成一个聚合组,汇聚组内的所有物理链路作为一条逻辑链路来传送数据。端口汇聚可以实现流量在汇聚组中各成员端口之间进行负载分担,以增加链路带宽,同时同一汇聚组内各个成员端口之间彼此动态备份,提高了链路的可靠性,一般用于交换机的互连中以实现具有高可靠性和高可用性的数据链路

  1. 链路聚合的模式有哪些?

手工模式、静态链路模式、动态LACP链路汇聚。

  1. 动态链路聚合适用的协议是什么?

LACP(Link Aggregation Control Protocol,链路汇聚控制协议)是基于IEEE 802.3ad标准的实现链路动态汇聚与解汇聚的协议。LACP协议通过LACPDU(Link Aggregation Control Protocol Data Unit,链路汇聚控制协议数据单元)与对端交互端口信息,实现对汇聚的控制。

  1. 动态路由协议 RIP 协议有哪些弊端

答:1)RIP仅和相邻路由器交换信息

  1. RIP路由器交换的信息是当前本路由器所知道的全部信息,即自己现在的路由表,并且是周期性的
  2. RIP协议可能造成网络环路 RIP协议使用传输层的UDP报文进行路由信息的交换
  3. RIP不能在两个网络之间同时使用多条路由,选择一条具有最少路由器的最短路径
  4. RIP限制了网络规模,存在最大跳数是16跳,最大有效跳数为15跳,无法应用在大型网络中
  5. RIP V1版本不支持VLSM,V2版支持LVSM

32、什么是OSPF,它有哪些特点?

OSPF(Open Shorest Path First)开放式最短路径优先协议,基于IP工作, 协议号89。是基于链路状态的路由选择协议;具备如下特点:

(1)、 天生无环的协议

(2)、收敛快:当网络发生变化时,网络上所有设备都知道发生了变化,并完成了相应的计算,比如增加了路由或撤销了路由

(3)、 支持多种认证方式(不认证、明文认证、MD5认证)

  1. 二层网络出现环路会有哪些弊端?

1)网络报文风暴。由于泛洪导致网络报文转发环路

2)环路导致MAC表震荡

  1. STP协议的主要功能是?如何实现这些功能的?(BPDUbridge协议数据单元)

功能 、生成树协议(Spanning-Tree Protocol)。可以在局域网中通过对某些端口进行阻塞以消除环路

  实现功能、1)选根桥:根据交换机优先级和MAC地址,选出BID最小的交换机作为整个网络的根。

 2)确定根端口(RP:RootPort):交换机上离根桥最近的端口。

 3)确定指定端口(DP:DesignatedPort):链路上最优端口。

 4)确定可选端口(AP:AlternatedPort):非最优端口,需要阻塞。也称之为阻塞端口。

 5)关闭所有阻塞端口的流量转发功能

35ACL 的功能?

ACL(Access Control List,访问控制列表)是用来实现数据包识别功能的。企业网络中的

设备进行通信时,需要保障数据传输的安全可靠和网络的稳定性。ACL可以定义一系列的不同的

规则,设备根据这些规则对数据包进行分类,并针对不同类型的报文进行不同的处理,从而可以

实现对网络访问行为的控制、限制网络流量、提高网络性能、防止网络攻击等等。

  1. ACL的分类有哪些?面试知识点1(硬件、Linux、虚拟化、网络、openstack、Docker、KVM)_第4张图片

  1. AD域的架构及AD域的功能

 

域控制器(DC):负责统一管理,安装活动目录服务(Active Directory)

客户机(成员机):被管理的机器

功能.域(客户机/服务器网):集中式管理,在域中会搭建一台域控制器(DC),由域控制器来统一管理域下客户机(成员机)

  1. 分区表的类型及特点

 MBR分区表:

          分区的类型:主要分区(划分好直接格式化使用,一般用于安装系统)

                       扩展分区(划分好以后不能直接使用,在其上划分逻辑分区使用)

                      逻辑分区(从扩展分区中划分出来的,格式化后可以直接使用)

               分区数量:主要分区+扩展分区<=4,并且一块盘最多只能划分一个扩展分区

               单个分区容量:单个分区容量不能超过2TB

    GPT分区表:

               分区分类:无类型之分,全部都是主要分区

               分区数量:最多划分128个

               单个分区容量:单个分区容量不能超过18EB(1024T=1PB   1024P=1EB)

  1. Windows下常用的文件系统类型有哪些?

FAT、FAT32、NTFS、exFAT

  1. 为什么Windows系统中的文件实际大小与占用磁盘空间大小不一致?

Windows中称为簇,是分区分配给文件的最小单位,一个文件至少在分区上占用一簇,实质上格式化就是在存储空间上划分簇。分配单元大小也是造成文件实际大小和占用磁盘空间大小不一致的原因。

  1. 内网IP有哪些?

10、172.16-172.31、192.168.0-192.168.255

42、下列命令的功能是?

Netstat/nslookup / ipconfig / tractert/ ping /

1)ping  -t   -l   1000    192.168.10.1

对方IP地址 全称域名  持续向对方发送大小为1000字节的数据包

  1. nslookup  www.baidu.com

解析全程域名成IP地址

  1. netstat  -n

查看本机正在建立连接的端口

  1. tracert   192.168.100.1

探测到对方经过的路由器

5)ipconfig 显示本机TCP/IP配置的详细信息

43、子网掩码的作用

1.用于标识网络位和主机位

     IP地址中的网络位,子网掩码转成二进制后用1表示;

     IP地址中的主机位,子网掩码转成二进制后用0表示;

    2.计算机通过子网掩码判断与对方同异子网

     计算机将自己的IP地址与子网掩码进行"与"运算,得到自己网段;

     计算机将自己的子网掩码与对方的IP地址进行"与"运算,跟自己的网段作对比,判断同异子网。

  1. IPv4IP地址的位数?IPv6IP地址的位数?

 1)IPv4地址形式

     四个十进制数用.分隔,每一段是一个字节,计算机使用时会将每个十进制数转换成8bit的二进制数,所以IP使用二进制表示为32bit。

2)IP地址的组成

     网络地址(网络位):子网的地址编号

     主机地址(主机位):计算机在子网中的地址编号

ipv6

      将ip地址扩展到128bit,IPv6可以完全兼容IPv4

45raid0raid1的最低配置、原理、优缺点?

raid0需要从2块或2块以上的动态磁盘上占用等大小的空间;使用时是条带的方式并行进行读写;不可扩容;

          优点:读写速度快

          缺点:怕坏盘,坏盘数据无法恢复

raid1需要从2块动态磁盘上占用等大小的空间;使用时两块盘的空间互为备份互为镜像;不可扩容

          优点:数据由冗余

          缺点:浪费磁盘空间

46raid5raid6的最低配置、原理、优缺点

raid5、需要从3块或3块以上的动态磁盘上占用等大小的空间;不可扩容; 使用时在多块动态盘上占用的空间将按照等大小的单元分成N多区块,多块盘以条带的形式轮流存储数据,轮流存储奇偶校验算法的校验值;

          优点: 允许坏一块盘,坏一块盘可以根据奇偶校验算法的逆运算恢复数据

          缺点:浪费磁盘空间

raid6需要从4块或4块以上的动态磁盘上占用等大小的空间;不可扩容; 使用时在多块动态盘上占用的空间将按照等大小的单元分成N多区块,多块盘以条带的形式轮流存储数据,轮流存储奇偶校验算法的校验值;

          优点: 允许坏一块盘,坏一块盘可以根据奇偶校验算法的逆运算恢复数据

          缺点:浪费磁盘空间

  1. raid01 /raid10

raid10:即raid 1+0

raid01:即raid 0+1确实,raid10和raid01基本上两者的原理很像,都是RAID0和RAID1的结合,不过还是有些区别的。

raid01,先条带后镜像

aba'b'

raid10是先做镜像,再条带

aa'bb'

Raid10要比raid01可靠性高,因为raid10中的任何一个盘失效,还有一个镜像存在。而01中任何一个盘失效则完全降级为raid1了。

性能相差不大。

(1)、 RAID10是RAID1和RAID0的组合运用,它第一层为RAID1模式,第二层为RAID0模式,从而结合了两者的优点,提供了新的特性,如图-4所示。如果在下层RAID1中的某个磁盘出现故障,并不会影响数据的读取;然而,如果出现故障的磁盘没有被替换,那么那个剩下的磁盘将会成为单点故障;但是,如果该单点故障的磁盘再次损坏,那么整个阵列存储的数据将会丢失;因此RAID10能支持的并不是任意两个磁盘故障。

Linux复习大纲

linux系统部分

  1. 什么是Hnux发行版。常见 nux发行版(12),如何查看当前系统的发行版本

1)Linux的发行版是指社区或者操作系统厂商在开源的内核代码之上开发的操作系统版本

        cat   /etc/centos-release     ---查看当前系统的发行版版本

        cat   /etc/redhat-release

  2)常见的linux发行版:RedHat、CentOS、Fedora、Debin、Ubuntu(桌面应用为主)、SUSE(德国)、 Mint(基于Ubuntu和Debin)、Gentoo、麒麟软件(旗下品牌:中标麒麟)、

                红旗linux、Deepin、华为OpenEuler(欧拉社区)

内核是linux系统的核心和基础,直接依附于硬件之上,控制和管理系统内的资源。

  3)Linux内核版本是指linux团队维护的开源的操作系统的内核代码版本

        uname  -r     ---查看当前系统使用的内核版本

        uname  -a

  1. 什么是内核?查看当前系统使用的内核版本

内核是linux系统的核心和基础,直接依附于硬件之上,控制和管理系统内的资源。

  Linux内核版本是指linux团队维护的开源的操作系统的内核代码版本

        uname  -r     ---查看当前系统使用的内核版本

        uname  -a

  1. Linux 系统中磁盘和分区的命名

  1)磁盘命名:磁盘类型+磁盘编码

        sda  hda

        磁盘类型:并口盘(hd)  串口盘(sd)

        磁盘编码:第一块(a) 第二块(b)

  2)分区命名:磁盘类型+磁盘编码+分区编号

        sda1   sda2

        磁盘类型:并口盘(hd);串口盘(sd)

        磁盘编码:第一块(a);第二块(b)

        分区编号:第一个主分区(1);第二个主分区(2);第一个逻辑分区(5)

  1. Linux系统和Windows系统使用的文件系统类型

制作文件系统:Windows下的格式化:FAT、FAT32、NTFS、exFAT

      linux下使用的文件系统类型(格式化类型):ext4、ext3、ext2、xfs、vfat

  1. 什么是挂载?

 linux下的设备都当做文件在使用。一个分区不能直接使用,必须和某个文件夹建立关联关系,向文件夹中存入数据,实质上就是存放到分区中,这个过程称为挂载。

      分区(sda1)------>设备文件(/dev/sda1)-------->挂载使用(空目录作为挂载点)

  1. Linux系统必备的分区

倒置树状)

      /分区

      swap分区:交换分区,相当于Windows中的虚拟内存,当真实内存不够用时,在硬盘上划分一块空间当做临时内存使用。

                        将真实内存中的非活动的数据置换到硬盘上,一旦使用到了swap分区,机器的性能就下降了,原因硬盘的速度比内存慢。合理值是真实内存的1.5-2倍。

  1. 什么是swap分区

交换分区,相当于Windows中的虚拟内存,当真实内存不够用时,在硬盘上划分一块空间当做临时内存使用。

                        将真实内存中的非活动的数据置换到硬盘上,一旦使用到了swap分区,机器的性能就下降了,原因硬盘的速度比内存慢。合理值是真实内存的1.5-2倍。

  1. Firewall selinux 的概念和区别

Security-Enhanced Linux简称SELinux,它是一个Linux内核模块,也是Linux的一个安全子系统。

相较于传统的防火墙管理配置工具,firewalld支持动态更新技术并加入了区域(zone)的概念。
简单来说,区域就是firewalld预先准备了几套防火墙策略集合(策略模板),用户可以根据生产场景的不同而选择合适的策略集合,从而实现防火墙策略之间的快速切换。

  1. Linux系统下的目录结构 查看当前登录用户?

顶级目录:/

     一级子目录:

            /root:管理员root的家目录

            /home:存放普通用户的家目录

            /proc:内存相关数据

            /lib:库文件

            /etc:存放系统配置文件

            /dev:存放设备文件

            /boot:存放系统的启动文件

            /run:系统运行相关文件

            /usr:第三方软件的默认安装位置

                 /usr/bin:存放的是所有系统用户都可以执行的命令的可执行文件

                 /usr/sbin:存放的是只有管理员可以执行的命令的可执行文件

            /mnt:存放分区的挂载点

            /media:通常作为光驱的挂载点

            /tmp:临时目录,存放临时文件

            /var/log:存放系统日志(/var/log/messages:错误日志)

            /var/lib :存放系统正常运行时要改变的文件。

2)、查看当前机器各个终端登录的用户

       # who

       # w   ---更详细

  1. 如何查看当前终端?如何切换终端?

1)Linux系统本地有6个终端(控制台)

        终端间切换 Alt+F1-F6,默认登录的第一个用户在Alt+F1上

  2)查看当前终端

       # tty

  1. 如何查看当前所在绝对路径?

# pwd

  1. 文件颜色识别类型

白色:普通文本文件

       绿色:可执行文件

       蓝色:目录

       金黄色:设备文件

       青绿色:软链接(相当于Windows下的快捷方式)

       红色:包文件(软件包、打包文件、压缩文件)、错误文件

       粉色:socket文件(套接字文件)

  1. 常用的关机、注销、重启命令

备注:关机与重启只能管理员或者管理员授权的用户

       关机:

            shutdown now    ---立刻关机

            halt   -p               ---关机并关闭电源

            shutdown  -h    5    ---5分钟后关机(shutdown -c   取消关机或重启操作)

            init  0       ---通过修改计算机的运行级别实现关机

        重启:

             reboot 

             shutdown  -r   5    ---5分钟后重启

             init  6     ---通过修改计算机的运行级别实现重启

        注销:

             exit 

             logout

             Ctrl + d(快捷键)

  1. Linux系统的运行级别和级别间切换

 0     ---关机级别

       1     ---单用户级别(相当于Windows的安全模式,只能管理员登录)

       2     ---多用户,无网络

       3     ---多用户,有网络,是字符界面的默认登录级别

       4     ---测试级别

       5     ---图形界面

       6     ---重启级别

       emergency   ---救援模式

       临时切换运行级别:init  数字编号

       查看当前的默认运行级别: systemctl  get-default

  1. 目录管理:切换目录、查看目录、创建目录、删除目录、目录权限管理

1)cd     ---切换工作路径

       用法:  

       1. cd   目标路径   ---切换到指定路径    例: cd  /etc  ---       切换到/etc/下

       2. cd   ..        ---返回父目录(..代表父目录,.代表当前目录)

       3. cd  -         ---返回上一次所在的工作路径

       4. cd             ---返回家目录

  2)ls     ---列示目录下的内容

       用法:

       ls   -选项   参数

       选项:

       1. ls  -l     ---查看目录下内容的长格式,ll功能同ls -l

           第一列第一格:文件类型

           l:软链接    d:目录      c:字符设备(顺序读写:光盘、磁带)     b:块设备(随机读写:磁盘)

           -:普通文件      s:套接字文件

       2. ls   -lh   ---文件大小按照人性化输出显示,自动换算单位

       3. ls  -a    ---查看目录下的所有文件,包括隐藏文件(以.开头的文件)

           补充:

           # history   ---查看缓存中历史命令

           # !编号      ---再次执行某一条历史命令

           # cat  / root/.bash_history   ---查看本次登录以前的历史命令

       4. ls  -ld      ---显示某个目录的属性信息

       5. ls  -R       ---递归显示目录下的内容

       6. ls  -i        ---显示文件的i节点编号

      

  3)tree  ----树状的形式列出目录内所有文件的结构(8.0以上OS使用)

            

  4)创建/删除目录

       mkdir  ---创建空目录

       用法:

       mkdir  -p   a/b/c      ---创建多级子目录

       mkdir  -m  777  test   ---创建目录同时赋权

              补充:目录的默认权限为755,即rwxr-xr-x

                         文件的默认权限为644,即rw-r--r--

       rm -rf   ---删除目录

       rmdir      ----删除空目录

          -r  :递归删除目录

          -f  :强制不询问(force:强制)

  1. 文件管理:查看文件内容、创建文件、删除文件、文件权限管理

1)创建文件

     1. touch    ---修改文件的时间戳,当文件不存在则创建,通常用作创建空文本文件

         用法:

         touch  f1 f2 f3

     2. 输出重定向(>:覆盖   >>:追加)

         用法:

          命令  > 文件名            echo  aaaaaaaa  >f3

          命令  >> 文件名          who  >>f3

2)查看文件内容

    1. cat   ---查看文本文件内容

       用法:

       cat  -n  文件名   ---显示文件内容并显示行号

    2. more  less   ---分屏显示

       用法:

       more  文件名

          向下翻页:空格  向上翻页:b  回车:向下翻行 退出:q

       less    文件名

          向下翻页:空格  向上翻页:b  退出:q

          搜索:键入/关键字 ,n 查找下一个,N查找上一个

 3)删除文件

        rm  -rf    文件名

  1. VIM的工作模式和内置命令

文本编辑器(VIM)

         用法:vim  文件名

         三种工作模式的切换:

          a.进入命令行模式:vim  文件名

          b.命令行模式---》插入模式(编辑模式):键入i/o/a

          c.插入模式---》命令行模式:键入ESC

             命令行模式保存退出 ZZ快捷键,不保存退出ZQ快捷键

          d.命令行模式---》末行模式:键入 : (shift+;)

             末行模式保存退出 :wq,强制不保存退出 :q!

             显示行号 :set nu ,取消行号显示 :set nonu

  1. head/tail

 head/tail   ---查看文件的前几行或后几行

        用法:

        head  -n  2  文件名        ---查看文件前两行

        head -n +2 文件名         ---查看文件前两行

        head  -2     文件名       ---查看文件前2行

        head -n  -2 文件名      ---不显示文件的后两行

                                     

        tail  -n  2  文件名

        tail  -n  -2 文件名

        tail  -2   文件名      ---查看文件后2行

        tail -n +2  文件名   ---从第二行开始显示直到文件尾(包括第二行)

        tail  -f  /var/log/messages   ---动态查看日志文件内容

        head -n4 passwd | tail -n1      ---查看文件的第四行

        tail  -n +4 passwd | head -n1   ---查看文件的第四行

        tail -n +3 f1 | head -n3     ---从文件的第三行起查看三行

备注:head、tail不仅可以查看文件内容,还可以查看命令结果内容

        w |  tail  -n  +3

        df  -h  |  tail -n +2    去掉标题行

  1. 查看二进制文件内容;确定文件类型

1)、查看二进制文件位置:whereis  命令

        strings   文件名

2)、查看文件类型

        file  文件名  (ASCII:文本文件)

        stat  文件名

  1. mv/Cp

1)复制

          语法格式: cp   -选项    要复制的文件     目标路径

          选项:   -r  :递归复制目录

                       -p :保留文件的原有属性

          示例:

                 cp  f1   /mnt     ---将当前目录下的f1复制到/mnt下,不改名

                 cp  f1   /mnt/f2   ---将当前目录下的f1复制到/mnt下,并改名为f2

    2)移动

          语法格式: mv   -选项    要移动的文件     目标路径

          示例:

                 mv  f1   /mnt     ---将当前目录下的f1移动到/mnt下,不改名

                 mv  f1   /mnt/f2   ---将当前目录下的f1移动到/mnt下,并改名为f2

                 mv -v f1 /mnt/f2     -v 显示详细动作   

备注:mv特殊功能:重命名       

   

  1. 软、硬链接的区别,如何制作软、硬链接

软链接(符号链接):相当于Windows下的快捷方式,通过源文件名间接的指向存储空间,源文件删除或改名,链接文件不可用,软链接与源文件占用不同的i节点。

        ln  -s   源文件   链接文件

例: ln  -s    f1       s1          必要情况可以写源文件的绝对路径,保证,移动软链接,软链接仍可用。

     硬链接:硬链接文件与源文件同时指向存储空间,相当于一块存储空间的多个文件名,删除或重命名源文件不影响硬链接的使用,硬链接与源文件占用相同的i节点。

        ln    源文件   链接文件

例: ln     f1       h1

  1. 时间、时区、日期相关命令

1)date  ---查看系统时间

        date +"%F %T"  ---重新格式化时间显示,显示为年-月-日 时:分:秒

   2)tzselect  ---交互式修改时区

   3)timedatectl  ---查看时间及时区

        timedatectl   set-ntp  false   ---将时间同步关闭

        timedatectl   set-time "年-月-日 时:分:秒"   ---修改时间(永久修改)

        timedatectl   set-ntp  true    ---将时间同步开启

    4)临时修改系统时间:date "月日时分年"    ---两位数显示

23Linux系统下的特殊符号(*&^$...

1)*:通配符,代表多个任意字符

     例: rm  -rf  f*    ---删除文件名以f开头的所有文件

       ?: 单配符,代表任意一个字符

  2)\:转义符,将其后的特殊符号的特殊意义去掉

     例:mkdir  \*   

            rm -rf  \*

  3)| :管道符,前后各一个命令,前一个命令的输出当做后一个命令的输入

     例:cat  /etc/services  |  less 

  4)>、>>:输出重定向,将命令输出重定向到文件中

      例:echo >f1    ---清空f1文件内容

  5)<:输入重定向,将文件的内容通过重定向交给命令去处理

      例:write  root  tty2   < /etc/fstab

  6)命令连接符,用于连接命令

        ;       --- 命令依次执行

       &&   ---前一个命令执行成功,才执行后一个命令

       ||       ---前一个命令执行失败,才执行后一个命令

  7)&:后台执行符

       命令  &     ---将命令调到后台运行

   例:sleep  1000 & 

  8)$:变量提取符、普通用户身份符

   例:x=123      ---声明变量x,并赋值123

         echo  $x   ---将变量值显示到屏幕

  9)单引号、双引号、反单引

       ' '  :引用字符串,单引不识别特殊符号

      " "  :引用字符串,双引可以识别特殊符号

例:x=123

      echo '$x'      ---显示$x

      echo "$x"     ---显示123

      ` `   :反单引中内容当做命令执行

例:echo "time  is `date`"

  1. Linux 系统中常用的帮助命令

1、man手册    ---查看命令的详细帮助文档    例:man  命令

   2、info   命令  ---查看命令超详细帮助文档

   3、命令  --help      ---查看命令的简要帮助文档

25、查找命令的可执行文件位置

 1、whereis  ---查看命令的可执行文件位置、帮助文档、源码位置

        whereis  命令

  2、which     ---查看命令的可执行文件位置(包括命令别名)

        which  命令 

  1. 别名设置

alias    ---查看系统中所有命令别名

        alias  别名="原命令"     ---定义别名

        unalias   别名                ---取消别名

  1. Find

  语法格式: find   查找范围   查找方式  参数

    1)按照文件名字查找

          find   范围  -name 文件名         例:find ./ -name file

    2)按照文件类型查找

          find   范围 -type 文件类型        例:find /etc -type l

       备注:文件类型包括

                 f:普通文件

                 l:软链接文件

                 d:目录

                 c:字符设备

                 b :块设备

    3)按照文件大小查找文件

创建指定大小的文件:dd if=/dev/zero of=文件名 count=次数 bs=单次大小

         find 范围  -size 文件大小

      例:find  ./ -size 100M     ---当前目录下查找大小为100M的文件

             find  ./ -size +100M   ---当前目录下查找大于100M的文件

             find  ./ -size +100M -size -300M   ---当前目录下查找大于100M小于300M的文件

             find  ./  -empty            ---当前目录下查找空文件

    4)按照文件属主属组查找文件

            find 范围 -user 用户名   ---按文件属主查找               例:find / -user aa   

            find 范围 -group 组名   ---按文件属组查找               例:find / -group aa

            find 范围 -uid/gid  uid号/gid号    ---按文件的UID/GID查找文件             例:find / -uid 1000

    5)按文件的更改时间查找

            find 范围 -newer  文件名

        例:find ./ -newer f1       ---当前目录下查找比f1文件更改时间更新的文件(主要指更新过的时间戳(touch))

            find 范围 -anewer  文件名

        例:find ./ -anewer f3     ---当前目录下查找比f3访问时间更新的文件 (a:access 访问)

注意:如果不在当前路径下,查找要写绝对路径

            find 范围 -cnewer 文件名

        例:find ./ -cnewer f2      ---当前目录下查找比f2状态更改时间更新的文件(c:change 改变 ,主要指更新过文件的权限、属主/组等)

    6)按时间段查找文件

          find 范围 -amin +时间段

        例:find ./ -amin +30           ---查找当前目录下30分钟前访问过的文件(a:access)

          find 范围 -mtime -天数

        例:find ./ -mtime -1            ---当前目录下查找一天内修改过的文件(m:modify   修改文件内容)

          find 范围 -ctime  +天数

        例:find ./ -ctime +1            ---当前目录下查找一天前状态修改过的文件(c:change )

          find 范围 -used -2               ---查找两天内使用过的文件

          find 范围 -used +2             ---查找2天前使用过的文件

    7)按文件系统查找

          find  范围  -name  文件名 -fstype  文件类型

        例:find /etc -name passwd -fstype ext4

               find /etc -name passwd ! -fstype ext3 

    8)按权限查询

          find ./ -perm 777     ---当前目录下查找权限值为777 的文件(permission:权限)

    9)找到文件后,执行后续操作

         find ./ -name f2 -exec rm {} \;                   ----在当前目录下查找文件名为f2的文件,找到后删除

         find ./ -name f2 | xargs rm -rf                  

        

         find ./ -name f3 -exec file {} \;                   ---在当前目录下查找文件名为f3的文件,找到后确定文件类型

         find ./ -name f3 | xargs file 

  1. Sed awk sort wCcutegrepGrep

grep

  功能:可以使用正则表达式抓取带有关键字的行

  语法格式:

        grep   -选项    关键字    文件名

        命令   |  grep  -选项   关键字

  选项:

        -i     ---忽略大小写

        -n    ---显示抓取的行在文件或命令结果中的行号

        -c    ---显示带有关键字的行的行数

        -r     ---递归抓取

        -v     ---抓取不带关键字的行(取反)

 

  正则表达式:用于限定关键字的特殊符号

        ^:匹配以某个字符开头的行(行首)

        $:匹配以某个字符结尾的行(行尾)

        \<:匹配以某个字符开头单词的行(单词首)

        \>:匹配以某个字符结尾单词的行(单词尾)

        [ ]:单个字符逐一匹配,^[AD]---以A或者D开头的行,^[A-Z] ---以大写字母开头的行

         . :单配符,代表一个任意字符

备注:egrep是grep的升级版,使用grep  -E 等同于使用egrep 。

          egrep功能:支持多个正则表达式

          1. egrep支持()限定正则表达式      例:egrep "(^b | ^c)" f1

              egrep支持 |  代表或关系

          2. egrep支持使用?与 +

              ?:匹配0次或1次正则表达式

              +:匹配1次或多次正则表达式

          3. 连续匹配关键字egrep不需要加\(转义字符)

              grep   -n  'o\{2\}'  /etc/passwd

              egrep  -n  'o{2}'  /etc/passwd

2、cut (列必须对称)

    功能:截取指定列

    语法格式:

       cut   -选项   文件名

       命令 | cut  -选项

    选项:

        -d   ---指定分隔符

        -f    ---指定截取位数

    示例:

    cut  -d  ":"  -f  1,3   /etc/passwd     ---截取文件的第1列与第3列

    cat  /etc/passwd | cut  -d ":"  -f  1    ---截取/etc/passwd 文件中的第一列

    ifconfig  ens33 | grep inet | head -n 1 | cut  -d  " " -f  10          ---截取ens33网卡的IP地址

3、sed

     功能:使用正则表达式提取带有关键字的行、删除行、替换关键字

   1)提取带有关键字的行

      语法格式:sed  -选项   '/关键字/'   文件名

                       命令 |    sed  -选项   '/关键字/'

      选项:

             -n   :取消默认输出,只显示经过sed处理的行

             -e   :多点编辑,可以在一条sed命令中执行多个处理

             -p   :  打印到屏幕

     例:

         sed  -n  -e '/test/p'   -e  '/TEST/p'   f1 

  2)删除行 

      1. 删除指定行(数值和正则表达式限定)

      语法格式:

             sed  -选项   1d   文件名    (1,3d   3,$d)

            命令  |  sed    1d

      2. 删除带有关键字的行

       语法格式:

              sed  -选项   '/关键字/d'  文件名

              命令 | sed  '/关键字/d'

      选项: -i   ---将sed程序内存空间(模式空间)数据重定向到源文件(即直接修改源文件的内容)

   3)替换

      语法格式:

             sed   -i   's/搜索关键字/替换关键字/g'   文件名

      例子:

      sed -i  's/enforcing/disabled/g' /etc/selinux/config

4、awk

   功能:使用正则表达式抓取带有关键字的行、指定行号的行、截取所需列

   语法格式:

   1)提取行

        提取带有关键字的行

        awk   '/关键字/'    文件名

        命令  |  awk   '/关键字/'

        提取指定行号的行

        awk  NR==行号   文件名 

        命令   |   awk  NR==行号      例:df -h | awk NR==2

   2)提取列

        以空格分隔的列

        awk   '{print $1,$3}'   文件名

        命令  |  awk  '{print $1}'

        不以空格分隔的列

        awk  -F  ":"   '{print $1}'  文件名

        命令  |  awk  -F  ":"  '{print $1}'

 备注: -F   ---指定分隔符

 例:

       awk -F ":" '{print $1}' /etc/passwd  

       cat /etc/passwd | awk -F ":" '{print $1}'

    3)截取命令中包含关键字所在行的列

          命令 | awk '/关键字/ {print $列}'

    4)截取命令中包含关键字所在列的行

          命令 | awk '$列 ~/关键字/'

备注:~  ---包含

          !~  ---不包含

    5)截取命令中包含关键字所在行并显示行号

          命令 | awk '/关键字/ {print NR,$0}'

5、sort

     功能:排序

     语法格式:

     sort  -rn  -t  分隔符  -k  排序列   文件名

     命令 |  sort  -rn  -t  分隔符  -k  排序列

备注: 若文件或命令结果使用空格分隔的列,不需要使用-t

    选项:

          -r     ---倒序

          -n    ---排序列当做数值处理

          -t     ---指定分隔符

          -k     ---指定排序列

          -u     ----去掉重复值

     例:

          tail -n  5 /etc/passwd | sort -rn -t ":" -k 3

          df -h | sort  -rn  -k   5   

6、wc

   功能:统计文件或者命令结果中的行数、单词数、字节数

   语法结构:

          wc  -选项   文件名

          命令  | wc  -选项

   选项:

        -l     ---统计行数(line)

        -w   ---统计单词数(word)

        -c    ---统计字节数

  1. 查询磁盘信息相关命令

1)lsblk    ---查看系统中的块设备信息

     lsblk  -f   ---查看系统中的块设备信息、UUID,并显示分区的格式化类型(文件系统类型)

  2)df -h   ---查看每个已经挂载分区(文件系统)的使用情况

  3)fdisk   -l    磁盘设备文件名     ---查看磁盘的分区表信息

  4)blkid        查看磁盘UUID,并显示分区格式化类型

30、磁盘管理流程及命令(永久挂载光盘)

1)修改/etc/fstab文件

    卷标/设备文件/UUID   挂载点    文件系统类型    挂载权限    是否允许备份    是否做开机自动磁盘检测

                                                                                                  1:备份               1:/分区自动检测

                                                                                                  0:不备份            2:非/分区自动检测

                                                                                                                              0:不检测

   例:/dev/sdb1   /mnt/d1   ext4   defaults 1  2

         /dev/sdb2    /mnt/d2   vfat    defaults 1  2

         /dev/sr0       /media      iso9660   defaults 0 0                ----永久挂载光盘(/dev/cdrom 是/dev/sr0的软链接)

注意:第三列文件系统类型一定要与mkfs格式化时类型一致;

           /etc/fstab文件书写有问题,重启后将进入紧急模式,输入管理员密码,修改改文件错误信息,再重启

   2)验证开机自动挂载

      1. #  reboot

      2. #  mount   -a      ---重新加载/etc/fstab文件中除swap类型的记录

备注:若使用分区工具创建好了分区,但是在lsblk中不显示分区信息,可以使用如下命令重新加载分区表

          # partprobe

31swap 管理流程

1)查看swap分区的使用情况

        # free   -h

   2)创建swap分区

        # fdisk  /dev/sdb

           2G     修改ID为   82 (dos分区;GPT分区表system id :14)

   3)制作swap文件系统

        # mkswap  /dev/sdb3

   4)将分区swap功能开启

        #  swapon   /dev/sdb3      ---开启

        #  swapoff  /dev/sdb3       ---关闭

   5)实现分区swap功能开机自动开启

        编辑/etc/fstab

        #  vim  /etc/fstab

          /dev/sdb3   swap  swap  defaults  0 0

        #  swapon -a    ---验证

swap挂载点是它本身

  1. LVM 组成

逻辑卷管理器,解决了基本分区下磁盘不能扩容的问题。

2、LVM的原理(概念)

   1)PV :物理卷,使用pvcreate将物理分区或物理磁盘转换成PV;

   2)VG:卷组,多个PV的集合;

   3)LV:逻辑卷,LV的空间使用从VG中划分的,对LV的空间进行制作文件系统并挂载使用;

   4)PE:物理块,将PV加入至卷组中时,PV的空间将按照等大小的单元划分成N多存储块,该存储块称为PE;

   5)LE:逻辑块,卷组中的PE被LV占用时则称为LE,LE是PE在LV中的映射;

33LVM 管理流程及命令

1)划分分区

       修改分区的系统ID为8e

  2)转换成PV

       # pvcreate   分区/磁盘的设备文件

         例: # pvcreate  /dev/sdb[1-2]  

       # pvs    ---查看所有PV简要信息

       # pvdisplay    ---查看所有PV的详细信息

  3)创建VG并加入PV

       # vgcreate  卷组名   PV名    ---创建VG并加入PV,PE大小默认4M

         例:# vgcreate    testvg   /dev/sdb1

       # vgcreate  -s   PE大小  卷组名   PV名    ---创建VG并加入PV,PE大小自定义

         例:# vgcreate  -s  8M   testvg   /dev/sdb2

       # vgs    ---查看所有VG的简要信息

       # vgdisplay    ---查看所有VG详细信息

  4)划分LV

       # lvcreate  -L  LV大小  -n  LV名   VG名

         例: # lvcreate  -L  3G   -n  testlv    testvg   

备注: -L  指定LV大小    -n  ---指定LV名

       # lvs    ---查看所有LV的简要信息

       # lvdisplay     ---查看所有LV详细信息

  5)制作文件系统,挂载使用

       # mkfs.ext4  LV设备文件

       # mkfs.ext4  /dev/testvg/testlv

       # mkdir   /mnt/lv

  6)设置LV开机自动挂载

       # vim  /etc/fstab

        /dev/testvg/testlv   /mnt/lv   ext4   defaults  0  0

       # mount  -a

4、LV的扩容

  1)LV扩容流程

      查看VG的剩余空间,若VG空间不足先扩容VG,再扩容LV

  2)命令

   1. 查看剩余空间

     # vgs    ---查看VG剩余空间

   2. 扩容VG

     # vgextend   卷组名   PV名   ---扩容卷组

     # vgextend   testvg   /dev/sdd1 

   3. 扩容LV

     a. LV扩容与文件系统扩容一步完成

        # lvextend  -L +2G  -rf   /dev/testvg/testlv   ---LV扩容与制作文件系统一步完成

     b.  LV扩容与文件系统扩容分步完成

        # lvextend  -L +2G     /dev/testvg/testlv  ---只进行了LV扩容,df -h没有增加,原因扩容空间无文件系统

        #  resize2fs  /dev/testvg/testlv   ---重置LV的文件系统(LV原文件系统是ext4)

        #  xfs_growfs  /dev/testvg/testlv  ---重置LV的文件系统(LV原文件系统是xfs)  

5、删除LVM

  1)卸载LV

    # umount  /mnt/lv

  2)删除LV

    # lvremove  /dev/testvg/testlv

  3)删除VG

    # vgremove  testvg

  4)去掉分区或磁盘的PV标签

    # pvremove  /dev/sd[b-d]1

  5)清除/etc/fstab中关于LV的记录

34、镜像 LV 和条带 LV 管理

1)、raid原理

        raid 0  和 raid 1

   2)条带LV

        # lvcreate  -l  100%FREE -i  PV数量  -I 条带大小   -n  LV名    卷组名

        # lvcreate  -L  lv大小        -i  PV数量 -I 条带大小   -n  LV名    卷组名      ----创建指定大小的条带LV

   3)镜像LV

      1. 创建LV同时创建镜像

        # lvcreate  -m1  -L  1.5G   -n  LV名   卷组名

      2. 创建一个普通LV,然后再转换成镜像LV

        # lvcreate  -L  1.5G   -n  LV名   卷组名

        #  mkfs.ext4   LV的设备文件

        #  mkdir   /mnt/lv

        #  mount    LV的设备文件  /mnt/lv

        #  echo aaaaaaaaaaa >/mnt/lv/file1

      3. 将LV转换成镜像LV

        #  lvconvert  -m 1  LV的设备文件   镜像添加到的PV         

注意:镜像到的PV必须与LV在同一VG中

  1. rpmyum

软件包名-版本号.架构.rpm

架构:x86_64,i386,noarch

1、RPM包的命名结构

  1)软件名

  2)版本号

  3)架构

  4)扩展名.rpm

2、查看系统光盘镜像中的软件包

  1)检查系统镜像是否在虚拟机光驱中

  2)创建光盘挂载点

      # mkdir  /mnt/cdrom

  3)挂载光驱

      # mount  /dev/cdrom  /mnt/cdrom  或者  # mount  /dev/sr0  /mnt/cdrom

  4)进入光驱挂载点下的Packages

      # cd  /mnt/cdrom/Packages

      #  ls

3、rpm命令管理软件包

  1)安装

      # cd  /mnt/cdrom/Packages

      # rpm  -ivh   软件包全名

      # rpm -ivh 包全名 --prefix=目标路径       ---安装软件包指定安装路径

  2)更新

     # rpm  -F   软件包全名      ---只更新

     # rpm  -U  软件包全名      ---更新,若软件包不存在则安装

  3)卸载

     #  rpm  -e    软件名

  4)查询

     #  rpm  -qa     ---查看系统中安装过得所有软件包

     #  rpm  -qa  | grep   软件名    ---查询某个软件包是否安装过

     #  rpm  -qi   软件名    ---查看软件详细信息

     #  rpm  -ql   软件名    ---查看软件的安装路径

     #  rpm  -qf   目录/文件名   ---查看某个文件或目录是安装了哪个软件产生的

     #  rpm  -qc   软件名     ---查看软件的配置文件路径

备注:rpm的缺点不能解决软件之间的依赖关系

       

4、yum命令管理软件包

  1)yum特点

       可以自行解决依赖关系;

       C/S架构,客户端可以从服务器端下载并安装软件;

  2)使用本地光盘镜像作为资源池

      1. 检查镜像文件是否在光驱中

      2. 挂载光驱,制作目录资源池

         # mkdir   /mnt/cdrom

         # mount  /dev/cdrom   /mnt/cdrom

      3. 书写客户端yum源配置文件

          a. 备份原有网络源文件

          #  cd  /etc/yum.repos.d

          #  mkdir  back

          #  mv  C*  back

           b. 编辑客户端源文件

          #  vim  my.repo

             [ly]             ---源标识,安装软件可以显示从哪个资源池下载

             name=cdrom   ---源名字,相当于备注

             baseurl=file:///mnt/cdrom      ---指定yum资源池位置

             enabled=1       ---是否开启该资源池,1 开启,0 关闭

             gpgcheck=0     ---是否进行数字签名验证,0 不验证,1 验证

      4、清理yum缓存

             yum clean all

           重新生成yum 元数据缓存

             yum makecache

  3)yum管理命令

     1. 安装

         yum  -y   install  软件名

         yum  -y   groups  install  软件组名

         yum --enablerepo=源名称 install 软件包名  -y       ---指定源下载软件包

     2. 卸载

         yum  -y  remove  软件名

         yum  -y  groups  remove 软件组名

         yum autoremove 包名 -y         ---删除软件包同时卸载依赖包

     3. 更新

         yum  -y  update/upgrade  软件名             

         yum  -y   groups   update/upgrade  软件组名

  注意:upgrade :更新所有软件包,包括内核 (yum -y upgrade)

     4. 查询

        :w    ---查看本机当前可用的资源池(元数据)

         yum  info  软件名    ---查看软件包的详细信息

         yum  groups info  软件组名   ---查看软件组的详细信息

         yum   list      ---查询资源池下的所有软件包

         yum   group  list    ---查询资源池下的所有软件组

         yum  search  关键字   ---根据关键字查询软件包

  1. 备份策略和备份级别zip XZbzip2

1)  备份策略

       完全备份:备份所有数据。

       增量备份:备份上一次备份后发生变化的数据。

       差异备份:备份上一次完全备份后发生变化的数据。

  2)备份级别:最多0-9级。0级别完整备份;1级别差异备份;增量备份主要看上次一备份的级别。只有在备份整个分区或整块磁盘时,才能

                 支持1-9的增量级别。如果只备份某个文件或不是分区的目录,则只能使用0级别进行完整备份。

3)备份、恢复实验

  1)安装dump命令

              yum  -y  install  dump

   2) 备份boot分区、/home目录

              dump   -0uf  /dev/sdb1    /boot      ---备份boot分区

              dump  -0uj -f   /root/boot.bak.bz2  /boot         ----备份boot分区成备份文件,并压缩成bzip2格式的压缩文件

              dump   -1uj  -f   /root/boot.bak.bz2  /boot       ----当boot分区内容发生变化,使用1级别进行增量备份。

              dump   -0f    /dev/sdb2    /home    ---备份非分区目录

               恢复非分区目录时,若出现多级目录,则到该目录的父目录进行恢复。

            

    注意:-u   每次使用dump备份文件系统,会将备份信息记录到/etc/dumpdates中,常用于备份文件系统,不用于备份目录

              实现差异备份的方法:先试用0级别完整备份一次,以后的每次备份使用1级别进行备份。

        3)查看备份存储设备上的数据

              restore   tf   /dev/sdb1  

        4)恢复(注意恢复路径)

              restore   rf  /dev/sdb1                    ---将/dev/sdb1中数据恢复到当前路径

              restore   xf  /dev/sdb1   文件名      ---从sdb1上恢复个别文件

              键入  1  ,n

         5)查看分区的备份信息

              dump -W (其中level可查备份级别) 或者 cat /etc/dumpdates

压缩

  1)gzip 文件名   ---压缩

       gunzip  压缩文件名   ---解压缩

  2)bzip2  文件名   ---压缩

       bunzip2  压缩文件名   ---解压缩

  3)xz   文件名    ---压缩

       unxz  压缩文件名   ---解压缩

备注:以上命令只能压缩文件不能压缩目录

           压缩率比较:bzip2 >gzip >xz

  4)zip

       zip  -r   test.zip   文件名/目录名    ---压缩

       unzip    test.zip          ---解压缩

  1. targzip 备份目录和文件系统

打包压缩一步完成

  1)tar调用gzip与gunzip

       tar  cvfz   test.tar.gz   目标文件/目录   ---打包压缩(文件以.tgz结尾)

       tar  xvfz   test.tar.gz     ---解包解压缩(可以-C指定解包解压缩路径)

  2)tar调用bzip2与bunzip2

       tar  cvfj   test.tar.bz2  目标文件/目录   ---打包压缩(文件以.tbz2结尾)

       tar  xvfj   test.tar.bz2    ---解包解压缩

  3)tar调用xz与unxz

       tar  cvfJ  test.tar.xz  目标文件/目录   ---打包压缩(文件以.txz结尾)

       tar  xvfJ   test.tar.xz   ---解包解压缩   

  1. 存放用户信息的文件;用户管理(创建、修改、删除);查看用户组信息

一、用户管理

1、Linux系统中用户所属组的类型

      初始化组(私有组):用户必须有且仅有一个初始化组,创建用户时不指定系统会创建一个与用户名同名的组作为其初始化组

                                          该用户创建文件的属组即为其初始化组。

      附加组(标准组):相当于Windows下的普通应用组,用户可以有可以没有,也可以同时拥有多个附加组。

2、用户和密码的配置文件

     存放用户的文件:/etc/passwd     

     存放用户密码的文件:/etc/shadow

3、用户管理命令

    1)创建用户(只有管理员或者管理员授权用户可以创建用户)

          语法格式:useradd /adduser     -选项      用户名

          选项:

                    -d   路径             ---指定家目录

                    -g   组名/GID    ---指定初始化组

                    -G  组名/GID    ---指定附加组

                    -u  数值              ---指定用户UID

                    -s    shell路径      ---指定用户使用的shell

练习:创建用户bb,UID为2001,初始化组为root,家目录在/mnt/aa,使用的shell为/sbin/nologin  

   2)设置/修改密码

        #  passwd   用户名    ---管理员修改普通用户密码

        #  passwd                   ---管理员修改自己的密码

        $  passwd                    ---普通用户修改自己的密码

        #   echo  "linux" | passwd  --stdin  用户名    ---管理员为用户明文设置密码

    3)修改用户信息 

       usermod   -l  新名    原名    ---重命名

    4)删除用户

       userdel   -r 用户名       ---删除用户并删除该用户所有数据(家目录/邮箱)

  1. Dd

功能:拷贝数据的同时可以进行数据格式的转换

      语法格式:

    dd  if=输入文件 of=输出文件  bs=每次转换大小 count=转换次数

      Linux下的两个特殊设备:

 /dev/zero:c

/dev/null:位桶,想忽略标准输出或者标准错误可以重定向到位桶

dd命令的解释

dd:用指定大小的块拷贝一个文件,并在拷贝的同时进行指定的转换。

注意:指定数字的地方若以下列字符结尾,则乘以相应的数字:b=512;c=1;k=1024;w=2

参数注释:

1. if=文件名:输入文件名,缺省为标准输入。即指定源文件。< if=input file >

2. of=文件名:输出文件名,缺省为标准输出。即指定目的文件。< of=output file >

3. ibs=bytes:一次读入bytes个字节,即指定一个块大小为bytes个字节。

obs=bytes:一次输出bytes个字节,即指定一个块大小为bytes个字节。

bs=bytes:同时设置读入/输出的块大小为bytes个字节。

4. cbs=bytes:一次转换bytes个字节,即指定转换缓冲区大小。

5. skip=blocks:从输入文件开头跳过blocks个块后再开始复制。

6. seek=blocks:从输出文件开头跳过blocks个块后再开始复制。

注意:通常只用当输出文件是磁盘或磁带时才有效,即备份到磁盘或磁带时才有效。

7. count=blocks:仅拷贝blocks个块,块大小等于ibs指定的字节数。

8. conv=conversion:用指定的参数转换文件。

ascii:转换ebcdic为ascii

ebcdic:转换ascii为ebcdic

ibm:转换ascii为alternate ebcdic

block:把每一行转换为长度为cbs,不足部分用空格填充

unblock:使每一行的长度都为cbs,不足部分用空格填充

lcase:把大写字符转换为小写字符

ucase:把小写字符转换为大写字符

swab:交换输入的每对字节

noerror:出错时不停止

notrunc:不截短输出文件

sync:将每个输入块填充到ibs个字节,不足部分用空(NUL)字符补齐。

  1. 存放组信息的文件;组管理(创建、修改用户组信息、删除)

1、组配置文件

          /etc/group   组名 组密码 组ID 组成员  

          /etc/gshadow  组名 组密码 组管理员 组成员

    2、创建组

          groupadd 组名

          groupadd   -g   数值     ---指定组ID(GID)

    3、gpasswd  组名                 ---给组设置密码

    4、查看用户组信息

         id   用户名

    5、修改用户组信息

         usermod   -g     组名/GID   用户名       ---修改用户的初始化组(私有组)

         usermod   -G     组名/GID   用户名       ---指定用户附加组

         usermod   -aG  组名/GID   用户名        ---增添用户的附加组(标准组)

         gpasswd   -A    管理员   -M   组成员  组名    ---将用户添加到组,并指定管理员

         gpasswd   -A    管理员   组名                 ---指定组的管理员

         gpasswd   -M   组成员   组名                ---覆盖组中成员

         gpasswd   -a     用户名      组名            ---将用户添加到组

         gpasswd   -d     用户名      组名            ---将用户从组中删除

    6、删除组

         groupdel    组名

  1. set位;修改属主属组;ACL权限;文件特殊属性管理

修改文件或目录权限

1、特殊权限(set 位)

1)SUID(冒险位、危险位):针对可执行文件设置该权限,当其他人执行可执行文件时,以该可执行文件的属主身份执行该文件

                 在可执行文件的所有者的权限上赋值s

     赋值方法:chmod u+s 可执行文件名                  chmod u-s 可执行文件名(去掉SUID权限)

                      chmod 4755 可执行文件名                chmod 0755 可执行文件名(去掉SUID权限)

     例:让普通用户可以cat  /etc/shadow

acl给特定用户/组针对特定文件/目录设置特定权限

1)给文件/目录设置acl权限

     针对用户:setfacl  -m   u:用户名:权限   文件/目录

     针对组:   setfacl   -m  g:组名:权限   文件/目录

2)查看acl权限

      getfacl 文件/目录

3)给目录设置递归的acl权限

     目录下所有的文件和目录都有父目录的acl权限

     setfacl -R -m u:用户名:权限  目录

     setfacl -R -m g:组名:权限 目录

4)给目录设置继承的acl权限

     保证随时添加文件或目录都有父目录的acl权限

     setfacl -m d:u:用户名:权限 目录

     setfacl -m d:g:组名:权限 目录

5)删除单条acl权限

     针对用户:setfacl -x u:用户名 文件/目录

     针对组:   setfacl -x g:组名 文件/目录

6)清空全部acl权限

     setfacl -b 文件/目录

7)修改mask默认权限(一般不修改,默认mask权限:rwx)

      mask权限:最大有效权限。结合acl权限使用,将acl权限限制在mask权限内

     setfacl -m m:权限 文件/目录

  1. 存储空间监控(dudf);内存空间监控(free topvmstart;CPU率监控(sartop)

存储空间监控

    1)du    ---查看文件或目录占用磁盘空间的大小

          du  -选项   文件/目录名  

          选项: 

                   -h    --- 以1024进制进行单位换算,默认单元KB

                   -s     --- 只显示目录占用磁盘的总空间      例:du -sh  /etc

                   --inodes   ---查看所用i 节点数量             例:查看当前目录所有文件的i节点占用数量   du --inodes  /etc

                  

    2)df    ---查看已挂载的文件系统的使用率

          df   -选项

          选项:

                  -h     ---以1024进制进行单位换算

                  -i      ---查看文件系统i节点的使用率

                  -T     --- 查看文件系统使用率和文件系统类型

3、内存空间的监控

      1)free   -选项

      选项:

                -h    ---以1024进制进行单位换算   

                -m   ---以1024进制换算成MB

                -g    ---以1024进制换算成GB

      2)vmstat

           vmstat 1 2    ---每隔1秒显示,一共显示2次

      3)cat /proc/meminfo  ----查看内存的详细信息

      4) top    ---综合查询查看内存信息

4CPU使用率的监控

      1)sar   --- 10分钟取样一次

           sar  1   2     ---每隔1秒统计一次,共统计两次

      备注:

               %user    ---用户进程占用CPU的百分比

               %nice       ---改变过优先级的进程占用CPU的百分比

               %system   ---系统进程占用CPU的百分比

               %iowait   ---等待输入输出进程占用CPU的百分比

               %steal      ---虚拟化程序占用CPU的百分比

               %idle        ---CPU的空闲率

       2)cat /proc/cpuinfo  ---查看CPU的信息(vmx/svm)

       3)lscpu     ----查看CPU的详细信息

       4)top       ----综合查询

43、孤儿进程、僵尸进程;进程查看命令(pstreeps)

孤儿进程:子进程正常运行,父进程由于某些原因终止了

           僵尸进程:子进程退出时,父进程没有收集该子进程的状态信息,僵尸进程是占用内存不释放的

     3)进程的查看命令

           1. pstree    ---以树状显示系统中进程的信息    yum search  pstree

               pstree   -选项

               选项: -p     ---显示进程号

           2. ps         ---查看进程的详细信息和状态

               常用参数组合:

                ps      ---查看当前终端正在运行的用户进程

                ps  ef   ---查看所有终端正在运行的用户进程,常用该命令获取进程的PID

                ps  elf  ---查看所有终端正在运行的用户进程,常用该命令获取进程的父进程号PPID

                ps  aux   ---查看系统中所有进程的信息,显示每个进程占用系统资源的百分比,该命令常用于shell脚本后者日常巡检检测进程

            

  1. 抓取僵尸进程;占用内存、CPU 进程

1.查看系统中占用CPU最高的5个进程

                          ps aux  | sed  1d | sort -rn  -k 3 | head -n 5

                      2. 查看系统中占用内存最高的5个进程

                          ps aux  | sed  1d | sort -rn  -k 4 | head -n 5

                      3.抓取僵尸进程

                          ps aux | awk  '$8 ~ /Z/'

                          top | head -n 2 | tail -n1  | awk '{print $10,$11}'

  1. topuptimeIsofkill

top  

     1)功能:动态查看系统情况

     2)可查看信息:

          第一行:显示系统时间、系统运行时间,用户数、系统平均负载(同uptime)

          第二行:系统中所有的任务情况,运行的任务、休眠的任务、僵尸进程

          第三行:CPU的使用率(同sar)

          第四行:真是内存的情况(同free)

          第五行:swap交换分区的使用情况(同free)

          第七行:系统的进程信息(进程占用资源的百分比,同 ps aux)

     3)top的内置命令

           q     ---退出

           h     ---帮助

          空格  ---立刻刷新,默认3s

          s        ---修改刷新间隔

          k       ---杀掉一个进程

          r        ---定义一个进程的优先级

          P       ---CPU使用率逆序排列

          M      ---内存使用率逆序排列

          b->x   ---将某一列高亮显示,shift  +   进行左右移动

7、其他查询

     1)uptime     ---查询系统不间断运行时间和系统平均负载

     2)lsof           ---显示进程打开的所有文件

           lsof   文件名/目录名   ---显示指定文件或目录正在被哪个进程占用

           lsof  -i tcp:80        ---查看端口状态

           lsof  -i:80               ---查看TCP /UDP端口状态

8、进程的控制

      1. kill

      1)功能

            对进程进行控制

      2)kill的特点

           不仅可以结束进程,还可以对进程进行暂停或继续;

            kill针对的对象是进程PID;

            kill执行相应的操作实际上是给进程的PID发送信号;

      3)kill可使用的信号类型

            kill   -l 

      4)语法格式

            kill   -信号的编号/信号名      想要控制的进程的PID  

           例:结束PID为59599的进程

           #   kill   -9    59599

                kill   -15  59599    -----正常退出进程

     2. killall    ---控制同名进程

        killall   -9     find     ---结束所有find进程

注意: 优先级值的范围:-20到19 ,数字越小,优先级越高

  1. 进程的运行状态调度

1)进程的运行状态

            前台运行:命令直接执行在前台,占用前台页面,运行过程可见,运行完毕才能进行其他操作。

            后台运行:不占用前台页面,不争抢系统资源,运行过程不可见,运行完毕只返回一个结果。

            后台挂起:后台暂停。

      2)查看后台运行和挂起的任务

            jobs

      3)运行状态的调度

            命令     ---前台运行

            命令   &     ---后台运行

            1.  前台运行----》挂起    ---Ctrl z

            2.  挂起---》前台运行     ---fg  X(任务编号)

            3.  挂起---》后台运行     ---bg X(任务编号)

            4.  后台运行---》前台运行   ---fg  X(任务编号)

备注: x为jobs显示结果中的任务编号

            快速终止后台运行或暂停的进程:kill   -9 /-15  %X(任务编号)

  1. 开机自动运行脚本

1、编写脚本   vim /root/a.sh

                    df -h >> /root/file

2、赋予脚本执行权限:chmod a+x /root/a.sh

3、赋予开机自动运行配置文件执行权限:chmod a+x /etc/rc.d/rc.local

4、将脚本追加至配置文件:echo "/root/a.sh" >> /etc/rc.d/rc.local

5、重启验证

48、设置和修改进程优先级

1)环境准备

         #  vim  1.sh

             #!/bin/bash

            while true

            do

           echo "hei" >>/root/f1

           sleep 5

           done

#  chmod  a+x  1.sh

#   ./1.sh  &     ---优先级使用默认值

       2)执行程序直接设置优先级

            nice   -优先级值    程序

           #  nice  --20   ./1.sh  &

       3)修改进程优先级

           renice   优先级值    PID

          #  renice  19   60652

  1. Atcron

1、at(一次性计划任务)

     1)查看at的服务是否运行

           systemctl   status   atd 

备注:

     1. 7.0及以后的系统服务管理命令

        # systemctl  start  服务名

        # systemctl  stop  服务名

        # systemctl  restart  服务名

        # systemctl  enable 服务名

        # systemctl  disable  服务名

     2. 7.0以前的系统服务管理命令

        #  service   服务名    start/stop/restart

        # chkconfig  服务名   on/off

     2)制定at的计划任务

           at    时间

           at>  命令

           at>  ctrl  d

         支持的时间格式:

                 23:00

                 12012019

                 23:00  12012019

                 noon   +3days        ---中午

                 teatime +3weeks     ---饮茶时间(一般是下午四点)

                 now

     3)查看

           atq     ---查看at的计划任务列表

           at    -c  任务编号   ---查看at计划任务具体执行的命令

           cat    /var/spool/at/a00000XXXXX   ---查看任务文件内容

     4)删除

           atrm   任务编号

           rm  -rf   /var/spool/at/a0000XXXXX

     5)at的配置文件

           /etc/at.deny

           /etc/at.allow

          1. 两个文件都不存在,只有root可以使用at;

          2. 只存在at.deny,在该文件内的用户不允许使用at;

          3. 两个文件都存在,只看at.allow;

2、cron(周期性计划任务)

1)查看cron服务的状态

      systemctl     status     crond 

2)cron服务的配置文件

      /etc/cron.deny和/etc/cron.allow  ---限制使用的用户,限制方式同at

     /etc/crontab      ---说明了cron计划任务的格式

3)制定cron计划任务

      crontab  -e      ---制定当前用户的计划任务

      crontab -e -u 用户名 ---管理员制定普通用户的计划任务

4)查看cron计划任务列表

      crontab   -l      ---查看当前用户的计划任务列表

      crontab   -l  -u  用户名   ---管理员查看普通用户计划任务列表

5)删除cron计划任务列表

      crontab   -r         ---清空当前用户计划任务列表   

     crontab   -r  -u  用户名   ---管理员清空普通用户计划任务列表

备注:若删除个别计划任务,只能进入编辑模式,使用dd快捷键删除指定行

6)cron中支持的时间格式

      分    时    日    月    周     命令的绝对路径

例:

      00   20    *    *    1-5,7   /usr/bin/echo  aaaaa >/mnt/f1                        每周周一到周五,周末晚上八点执行echo命令

      00   */2   *    *     *        /usr/bin/wall 

  1. 系统启动过程

Linux系统的启动过程(centos7.0、Redhat7.0)

    1)加载主板上的BIOS程序,加电自检,扫描所有硬件,收集硬件信息,检测硬件健康状况

    2)根据BIOS收集硬件信息找到可引导设备,读取MBR(存放引导程序和分区表)

    3)加载引导程序(OSLoader),Centos7.0后使用的为grub2

          OSLoader主要功能将内核和虚拟磁盘文件加载到内存

    4)读取引导程序的配置文件,显示grub2的选择菜单(让用户选择加载的内核)

          软链接: /etc/grub2.cfg 

          源文件:/boot/grub2/grub.cfg

    5)grub2将用户选择的内核(vmlinuz)和虚拟磁盘文件(initramfs)加载至内存

         内核文件:/boot/vmlinuz.3.10.0-XXXX ----操作系统的核心程序

         虚拟磁盘文件:/boot/initramfs.3.10.0XXX.img    ---系统安装完成后自动生成的,存放着系统中硬件的驱动程序

   6)grub2将系统的控制权移交给内核(kernel)

   7)内核开始初始化所有的硬件,并且启动系统首进程(systemd),systemd会派生udev进程(udev的功能是将所有的设备识别为设备文件存放至/dev)

   8)systemd开始初始化系统服务,并读取/etc/fstab,自动挂载文件系统

   9)systemd 开始加载自定义的开机自启服务

  10)进入登录界面

  1. Target

1)target称为目标单元,每个target中都包含多个子target和子服务,当系统需要启动到某个状态或级别时需要加载多个服务

                               但是系统不会逐个查找,而是将服务打包到target下,这样的话只需要加载目标单元即可将系统加载至某种状态。

    2)系统中所有target 和服务文件的存放路径

          /usr/lib/systemd/system

    3)如何查看系统中的服务启动类型

          1. systemctl  status  服务名或进程名

              systemctl  status  firewalld.service /firewalld

          2. systemctl  list-unit-files   |  grep  进程名/服务名

              systemctl list-unit-files    | grep   firewalld/firewalld.service

  1. 查看、设置、切换系统默认启动级别

1)查看系统默认启动级别

        1.  #  systemctl  get-default  

        2.  #   ll   /etc/systemd/system/default.target   

    2)修改系统的默认启动级别

       1.  #  systemctl  set-default   运行级别.target

 eg:      #  systemctl  set-default   graphical.target   

       2.  #   ln  -sf   /usr/lib/systemd/system/graphical.target    /etc/systemd/system/default.target 

    3)临时切换运行级别

       1. # init   运行级别编号(0-6)

       2. # systemctl  isolate   运行级别.target

          #  systemctl  isolate graphical.target

       3.通过grub2菜单切换运行级别

          重启系统->在grub2菜单出现时按键盘上下键取消读秒->选中需要编辑的系统(第一个)->按e编辑,

                在linux16字段后,添加:systemd.unit = 运行级别.target -> ctrl + x  (multi-user.target /graphical.target)

    4)修复默认启动级别实验

      1. # systemctl   set-default  poweroff.target    ---启动模式改为:开机即关机。可以达到开机就关机的效果,不能登录

      2. 修复操纵

         重启系统---》grub2选择菜单,上下箭头取消读秒---》选择第一个选项按e键编辑启动参数

         在linux16开头的行,在行尾添加:systemd.unit=rescue.target

         按Ctrl x继续启动,启动后将进入单用户模式,输入root密码后即可

         #   systemctl   set-default   multi-user.target 

         #   reboot   

  1. grub2 文件丢失

实验过程:

     1)删除grub2配置文件

            #  rm  -rf  /boot/grub2/grub.cfg

     2)手动引导

         1.判断boot和/分区

           > ls     ---查看磁盘和分区

           > ls (hd0,msdos1)/   ---查看分区下的文件,该分区是boot分区

           > ls (hd0,msdos2)/   ---该分区是/分区

          2.加载Linux模块

           >insmod   /grub2/i386-pc/linux.mod

 

          3. 指定当前目录为主目录

           >set  root=(hd0,msdos1)

          4.手动加载内核与虚拟磁盘

           >linux16   /vmlinuz-3.10.0.XXXX     root=/dev/sda2   

           >initrd16  /initramfs-3.10.0XXXX.img  

          5. 启动

           >boot  

      3)进入系统,重新生成grub2配置文件

           # grub2-mkconfig   > /boot/grub2/grub.cfg 

           #  reboot    ---验证

  1. 破解 root 密码

1.进入grub2选择菜单,修改启动参数

        1)重启进入grub2选择菜单,上下箭头结束读秒,选择第一项,按e键进行编辑,找到linux16的行,在行尾添加rd.break后按Ctrl x继续启动

        2)重新挂载根分区,将挂载权限修改为读写

              #  mount  -o  remount,rw    /sysroot 

              #  mount

        3)切换工作路径到/bin/bash

              # chroot  /sysroot   /bin/bash

        4)清空语言环境设置,防止乱码

              #  unset  LANG

        5)重置root密码

              #  passwd 

        6)若系统中SELinux未关闭,新密码是无法识别,需要更新SELinux的标签

              # touch  /.autorelabel  

        7)退出当前shell,重启验证

              #  exit 

              # reboot

     2. 使用启动盘, 进入troubleshooting进行密码破解

         1)重启按F2进入BIOS界面,将CD-ROM或者USB修改为第一启动项(当前默认从硬盘启动),F10保存退出继续启动

         2)显示安装菜单,选择第三项Troubleshouting,再选择rescue 开头项,选择continue ,OK

         3)切换工作路径

               # chroot   /mnt/sysimage

         4)修改密码(进入到#bash-4.2下)

               # passwd root

         5)退出并重启验证

              # exit

              # reboot

         6)进入BIOS将启动顺序调整回来,将Hard Drive改为第一启动项

55、系统加固

1.明文加密

       1) 修改/etc/grub.d/00_header

           文件尾追加

           cat  <<   EOF

           set  superusers="用户名"

           password   用户名    密码

           EOF

       2)重新生成grub配置文件

             grub2-mkconfig   -o   /boot/grub2/grub.cfg 

       3)重启验证

     2.密文加密

       1)制作密文密码

             grub2-mkpasswd-pbkdf2

       2) 修改/etc/grub.d/00_header

           文件尾追加

           cat  <<   EOF

           set  superusers=“用户名”

           password_pbkdf2   用户名    密文密码 (第一步生成的密码从is后开始复制)‘’

           EOF

       3)重新生成grub配置文件

             grub2-mkconfig    >/boot/grub2/grub.cfg 

      4)重启验证

二、linux服务部分

1、查看、临时设置网络参数( ifconfig ip );永久设置网络参数

  1. Ifconfig:
  • 查看系统中所有活动的网卡信息(IP地址、掩码、广播、MAC地址、接收/发送的数据包):ifconfig
  • 查看所有网卡信息包括非活动状态:ifconfig -a
  • 查看某块网卡的信息:ifconfig 网卡名
  • 禁用/启用网卡:ifconfig 网卡名 down/up
  • 临时设置IP地址和子网掩码

Ifconfig 网卡名 IP地址 按照ABC三类进行掩码设置

Ifconfig 网卡名 IP地址/24 自定义子网掩码

Ifconfig 网卡名 IP地址 netmask 255.255.255.0 自定义子网掩码

  1. Ip addr:
  • 查看/临时设置网卡的网络参数(IP地址、子网掩码、广播地址):ip addr
  • 查看所有网卡信息,包括禁用状态:ip a s(ip addr show)
  • 查看指定网卡信息:ip a s 网卡名(ip addr show 网卡名)
  • 指定网卡增加IP地址:ip addr add IP地址/掩码 brd + dev 网卡名
  • 指定网卡去掉IP地址:ip addr del IP地址/掩码 dev 网卡名
  1. 永久设置网络参数:
  • 修改网卡的连接配置文件:/etc/sysconfig/network-scripts/ifcfg-网卡名
  • nmtui:NetworkManager(网络管理器服务)提供的图形化网络配置工具
  • nmcli:NetworkManager提供的字符界面网络配置工具

nmcli con 查看所有的网卡连接

nmcli con modify 网卡名 ipv4.address IP地址/掩码 ipv4.gateway 网关ip ipv4.dns dns的IP地址 ipv4.method manual(手动) connection.autoconnect yes 修改网卡连接的配置

nmcli con up 网卡名 激活一个连接

nmcli con del 网卡名 取消一个连接

  1. 网络路由、主机路由、默认路由
  1. 网络路由:指定到达目的网段
  2. 主机路由:指定到达目的主机
  3. 默主机路由>网络路由>默认路由认路由:指定到达任何网段 default

  1. 修改主机名
  1. 临时修改主机名:hostname 主机名
  2. 永久修改主机名:
  • vim /etc/hostname 重启才能生效
  • hostnamectl set-hostname 新主机名 注销重新登录才能生效
  • nmtui 第三个选项 注销重新登录生效

  1. 查看服务端口状态
  1. netstat -lantu | grep 端口号
  2. lsof -i 协议:端口号   |     lsof -i :端口号
  3. ss -lantu | grep 端口号

  1. DHCP概念、功能、端口号、通信过程、架构、软件包名(客户端、服务器)配置文件位置
  1. DHCP概念:(Dynamic Host Configuration Protocol 动态主机配置协议),为同一子网的主机动态的分配网络参数
  2. DHCP的功能:为同一子网的主机动态配置TCP/IP网络参数
  3. DHCP的端口号:udp 67 服务端、udp 68 客户端
  4. DHCP的通信过程:四步通信过程中发送的均为广播包
  • 租约请求:客户端拿着MAC地址向网络内所有主机发送DHCP请求,非DHCP服务器的主机丢弃。
  • 租约提供:DHCP服务器回应客户机,提供一个网内没有的IP地址(信息中增加服务器的MAC地址)
  • 租约选择:如果DHCP服务器有多个,则选择第一个回应的信息,然后向网络中广播一个信息,表明自己已经接收一个DHCP的IP
  • 租约确认:DHCP服务器接收到客户的选择信息之后,会反悔给客户一个信息包,客户机按照服务器的信息配置极其的IP,服务器记录客户机的IP地址
  1. 架构:C/S架构
  2. 软件包名:

服务端:dhcp-4.2.5

客户端:dhclient

  1. 配置文件位置:/etc/dhcp/dhcpd.conf

  1. 基于MAC和主机名绑定IP地址

修改配置文件/etc/dhcp/dhcpd.conf第81行,指定客户端绑定IP地址的mac,指定宇客户端固定绑定的IP地址

  1. 中继代理原理、配置文件
  1.  中继代理原理:穿透技术,同子网代理客户机穿透路由器从DHCP服务器端获取到网络参数
  2. 配置文件:/usr/lib/systemd/system/dhcrelay.service

  1. DNS概念、功能、端口号、区域类型、工作原理、架构、解析方式、查询方式、DNS记录类型、区域文件位置、软件包名、解析文件位置
  1. DNS概念:(Domain Name System,域名解析系统),将全程域名(FQDN)解析为IP地址
  2. DNS功能:实现全称域名与IP地址之间的相互转换
  3. DNS端口号:

UDP 53 提供解析

TCP 53 主辅更新

  1. DNS区域类型:
  • Hint:根域,记录了13台根DNS服务器的信息
  • Master:主域,主要负责提供域名解析
  • Slave:辅域,主域的备份
  • Forward:转发域,转发主服务器的解析
  • Cache:缓存域,将得到的信息缓存到本地,方便下次解析
  1. DNS工作原理:
  • 客户端在浏览器输入要浏览的网页全称域名
  • 首先查看本地的静态解析文件hosts
  • 本地hosts文件没有则指向DNS,由DNS接管进行解析
  1. DNS架构:C/S架构
  2. DNS解析方式:
  • 正向解析方式:将FQDN解析成IP地址
  • 反向解析方式:将IP地址解析成FQDN
  1. DNS查询方式:
  • 递归查询:客户端向DNS发出解析请求,得到最佳答案,称为递归
  • 迭代查询:客户端向DNS服务器发出解析请求,DNS返回一个最佳答案,否则提供一个指针,让客户端找其他DNS查询,称为迭代查询
  1. DNS记录类型:
  • SOA:起始授权记录,指定为笨鱼做解析的主DNS的FQDN
  • NS:名称服务器,指定为本域做解析的DNS服务器都需要添加一条NS记录
  • A:主机记录,IPV4
  • AAAA:IPV6主机记录
  • CNAME:别名记录
  • MX:邮件交换器
  • PTR:反向记录
  1. DNS区域文件存放位置:/etc/named.conf
  2. DNS软件包名:bind-9.9.4
  3. DNS解析文件存放位置:/var/named

  1. 根域:在DNS域名空间中,根域只有一个,没有上级域,用“.”来表示,目前全世界有13台根域服务器,服务器中保存顶级域的“DNS服务器-IP地址”的对应的数据
  2. 顶级域:根域之下的第一级域就是顶级域,一般为地理域域机构域
  3. 子域:除了顶级域和根域之外,其他域都为子域
  4. 二级子域:离顶级域(一级子域)越近,级别也就越高,如二级子域、三级子域等

  1. 主辅DNS更新
  1. 根据同名区域进行区域复制
  2. 按序列号进行数据同步

  1. FTP概念、功能、端口号、文件传输方式、架构、工作模式、软件包名
  1. FTP概念:(File Transfer protocol,文件传输协议),用于Linux系统间文件的传输
  2. FTP功能:文件传输、上传、下载
  3. FTP端口号:

TCP 20 数据传输

TCP 21 建立连接

  1. FTP文件传输方式:

ACSII:网页文件

Binary:二进制传输方式,可执行文件

  1. FTP架构:C/S架构
  2. FTP工作模式:
  • PORT主动模式:客户端开启一个大于1024的随机端口N,连接服务器端的21号端口,建立通道,通过这个通道,客户端发送PORT命令到服务器端,告知服务器端自己用于数据传输的端口为N+1号端口,服务器端使用20号端口连接N+1号端口进行数据传输
  • PASV被动模式:客户端开启一个大于1024的随机端口N,连接服务器端的21号端口,建立连接形成通道后发送PASV命令告知服务器端处于被动模式,服务器端开启一个随机端口M,客户端开启一个随机端口N+1连接服务器端的M号端口进行数据传输。
  1. FTP软件包名:
  • 服务器端:vsftpd
  • 客户端:ftp

  1. 匿名账户默认登录位置和默认权限,实体账户默认登录位置和默认权限;虚拟账户默认登录位置和默认权限
  1. 匿名账户默认登录位置/var/ftp,默认权限只能下载
  2. 实体账户默认登录位置:系统用户的家目录,默认权限可以上传下载随意切换路径创建删除
  3. 虚拟账户默认登录位置:实体账户的家目录,虚拟账户的默认权限:由实体账户的家目录的权限决定

  1. ssh概念、功能、端口、架构、软件包名、配置文件位置(客户端、服务器)
  1. ssh概念:(secure shell,安全外壳),用于远程连接
  2. ssh功能:远程连接,加密传输
  3. ssh端口:TCP 22
  4. ssh架构:C/S
  5. ssh软件包名:openssh、openssh-server、openssh-clients
  6. ssh配置文件位置:

服务器端:/etc/ssh/sshd_config

客户端:/etc/ssh/ssh_config

  1. 基于口令登录、免密登录
  1. 基于口令登录:

客户端向服务器的22号端口发起连接请求

服务器向客户端发送公钥

客户端使用该公钥对用户名和密码进行加密后上传至服务器端

服务器端对接收的数据与加密前的数据进行对比,对比成功后,客户端即可登录

  1. 基于免密登录:

客户端生成一对儿密钥对,将公钥发送至服务器端

服务器端使用公钥加密一串随机字符串,发送给客户端

客户端使用私钥解密后,并将解密后的内容发送给服务器端

服务器端对接收的数据与加密签进行对比,对比成功后,客户端既可以登录

  1. ssh 子系统
  1. sftp:基于ssh的文件传输协议
  2. scp:

将本地文件复制到远程主机:scp 本地文件 用户名@远程主机IP:存放位置

将远程主机上的文件复制到本地:scp 用户名@远程IP:文件位置 存放到本地的位置

  1. NTP概念、端口号、架构、工作原理、软件包名、配置文件
  1. NTP概念:(Network Time Protocol,网络时间协议),将当前系统时间同步至网络标准时间
  2. NTP端口号:UDP 123
  3. NTP架构:C/S
  4. NTP工作原理:

客户端连接至服务器端的123端口,请求进行时间同步

服务器发送调校时间给客户端

客户端根据调校时间将时间调整为正确时间

  1. NTP软件包名:ntp
  2. NTP配置文件:/etc/ntp.conf

  1. NFS概念、端口号、架构、工作原理、软件包名、配置文件、挂载
  1. NFS概念:(Network File System,网络文件系统),用于实现Linux和Unux系统间共享目录,NFS服务可以做共享存储使用
  2. NFS端口号:TCP2049
  3. NFS架构:C/S
  4. NFS工作原理:

服务器启动RPC(portmap)服务,再启动NFS服务

NFS向RPC中注册自己使用的通信端口

客户端RPC连接服务器端RPC,获取NFS的工作端口

客户端连接NFS端口进行连接,实现数据传输

  1. 软件包名:rpcbind、nfs-utils
  2. NFS配置文件:/etc/exports
  3. 挂载:

客户端安装软件nfs-utils

创建挂载点/mnt/XXX

查看服务器端的共享目录:showmount -e 服务器IP/主机名

挂载服务器端共享目录:mount -t nfs 服务器IP/主机名:服务器共享目录 /mnt/xxx

查看挂载结果:df -h

  1. ApacheNginx的区别

Nginx:稳定、丰富的模块库、灵活的配置、低系统资源消耗、高并发、占用资源少、nginx逐渐替代Apache服务器

Apache:并发量低、维护工作量大

  1. 静态网页和动态网页
  1. 静态网页

静态网站是最初的建站方式,浏览者所看到的每个页面都是由建站者上传到服务器上的一个html文件,网站每添加、删除、修改的页面都必须重新对服务器的文件进行一次上传下载

静态网站的内容相对稳定、容易被浏览器检索

静态网站没有数据库的支持,在网站制作和维护方面工作量较大,因此当网站信息量很大时完全依靠静态网页制作方式比较困难

静态网页的交互性较差,在功能方面有较大的限制

  1. 动态网页

交互性:网页会根据用户的要求和选择而动态地改变和响应,浏览器作为客户端,成为一个动态交流的桥梁,动态网页的交互性也是今后web发展的潮流

自动更新:无须手动更新HTML文档,便会自动生成新页面,可以大大节省工作量

因时因人而异:当不同时间、不同用户访问同一网址时会出现不同页面

  1. Nginx的功能;软件包及版本;相关文件位置
  1. nginx的功能:web服务器、负载均衡、web缓存等
  2. nginx软件包名及版本号:nginx-1.10.3
  3. nginx相关文件位置:

主配置文件:/usr/local/nginx.conf/nginx.conf

日志文件存放位置:/usr/local/nginx.logs

主页文件存放位置:/usr/local/nginx/html

Nginx命令存放目录:/usr/local/nginx/sbin

  1. Iptables 组成、策略编写
  1. iptanles由两部分组成:

netfilter内核空间:存储规则、过滤

iptables用户空间:用iptables命令编写规则

  1. iptables的工作原理:

表:3个表 不同的表管理不同的链

链:多条规则组成的就是一个链,总共5个链

Iptables 表名 命令 链名 规则 动作

表名:nat、filter、mangle

命令:-L 列出指定链的规则(默认查看filter表中的规则)

  -F 清除指定链/表中的规则

          -N 自定义链

          -X 删除自定义链

          -P 设定默认策略

  -Z 清空指定链中的所有技术

  -t 指定表名

  -A 添加一条策略

  -D 清除某条规则

  -I 插入一条策略

规则:-p 指定匹配的协议(tcp/udp/icmp)

  -s 指定匹配的源地址

  -d 指定匹配的目的地址

  --sport 指定源端口或者端口范围

  --dport 知名目的端口或端口范围

  --icmp-type 指定icmp类型,可以使用iptables -p icmp -h查看icmp类型

  -m multiport --source-port 指定15个以内的源端口

  -m multiport --destination-port 指定15个以内的目的端口

动作:ACCEPT 允许通过

  DROP 拒绝,并不告知对方

  REJECT 拒绝,告知对方

  MASQUERAD 伪装

  SNAT 修改保重源地址(POSTROUTING)

  DNAT 修改包中的目的地址(PREROUTING),对于端口转发、负载均衡、透明代理都是DNAT

  1. 源码包安装过程;升级内核场景;升级内核方式;模块管理
  1. 源码包安装过程:
  • 以“.rpm”结尾的二进制软件包,使用rpm或者yum直接进行安装
  • 以“.src.rpm”结尾的rpm源码包,需要通过spec文件重新构建成.rpm结尾的二进制软件包,再使用rpm或者yum安装
  • 以“.tar”结尾的源码包,需要将压缩包上传到linux系统,解包或者解压缩,检查编译环境并指定安装路径,编译并安装
  • 以“.bin”、“.bundle”、“.run”结尾的二进制软件包,赋予执行权限后执行安装
  1. 升级内核场景:

为了支持新特性、新设备、新功能、旧版本内核中存在BUG

  1. 升级内核方式:
  • 通过光盘升级,首先查看可以升级的内核版本、升级内核、使用升级内核版本后的CentOS7重启
  • 通过elrepo源更新内核,elrepo是国外的一个只对Linux操作系统的第三方免费软件资源库,支持Linux和CentOS操作系统的软件安装和升级。该网站没有被任何国外屏蔽,使用linux系统的用户可以通过盖网站进行软件和驱动的安装和审计操作。
  1. 模块管理:

Linux系统采用的是模块化技术,这样的设计可以使得系统内核保持最小化,同时确保了内核的可扩展性和可维护性

某块华设计允许在需要时才将模块加载至内核,实现动态内核的调整,内核模块集中存放在/lib.modules下

  1. CDN使用场景;增加CDN后访问网页的过程;CDN组成
  1. CDN使用场景:
  • 网站静态加速:包括图片、CSS、JS等静态文件的加速
  • 全站加速:静态加速与动态加速结合,智能路由调度实现业务0改动全面加速整个网站访问速度
  • 下载服务:大文件下载,如游戏安装包和素材,APK更新等
  • 图片服务:运用于UGC类社交图片应用
  • 流媒体:包括视频点播、视频直播、音视频通信、安防监控

  1. 增加CDN后访问网页的过程:
  • 用户在浏览器中输入网址
  • Hosts文件、DNS递归解析
  • 请求转移至GSLB
  • 返回最佳CDN节点IP同时缓存该信息
  • 用户对CDN节点发起请求
  • 请求被转发至源服务器
  • 源服务器响应,CDN节点数据缓存数据并返回给用户

  1. CDN组成:
  • CDN网络一般分为中心与边缘节点两部分
  • 中心节点包括CDN网管中心和全局负载均衡DNS重定向解析系统
  • 边缘节点包括负载均衡设备、高速缓存服务器

  1. 集群概念;集群分类及概念
  1. 集群的概念:两台或者两台以上的独立的计算机对外表现为一个整体的系统
  2. 集群的分类及概念:
  • HPC:高性能集群,将多台计算机的计算资源进行整合,从而形成更强大的计算系统,主要应用于计算量较大的业务系统
  • HAC:高可用集群,主要是用于防止单点故障,提高系统的可用性,保证服务一直可以对外提供
  • LBC:负载均衡集群,主要减轻单台服务器的压力,可以将访问压力均衡到集群中其他节点

  1. 实现HA的软件;HA的工作模式
  1. 实现HA的软件:keepalived、heartbeat、HAproxy等
  2. HA的工作模式:
  • 主从模式:主机工作,备机处于监控准备状态。主机宕机,备机接管工作,待主机回复正常后,按使用者的设定自动或者手动方式将服务切换到主机上运行,数据的一致性通过共享存储来解决。
  • 双机双工(互备互援):两台机器同时工作,运行各自的服务且相互监测情况,当其中任一胎主机宕机,另一台主机接管一切工作
  • 集群模式(多主多备):多台服务一起工作,各自运行一个或者几个服务,各为主机提供多个备用主机

  1. Keepalived工作原理、配置文件
  1. keepalived工作原理:

Keepalived服务启动后,启动三个进程,keepalived主进程,负责对子进程的管理;vrrp子进程,每隔单位时间通过心跳线发送vrrp广播包给备机;healthchecker子进程,负责检查主机状态主机,一旦主机上的服务不可用,会将状态报告给vrrp。

  1. keepalived配置文件:/etc/keepalived/keepalived.conf

  1. LBC的功能;工作模式;调度算法;
  1. LBC的功能:

减轻单台服务器的访问压力,可以根据实现制定号的负载均衡策略将客户访问分配给集群中

  1. LBC的工作模式:
  • NAT模式
  • TUN模式(IP隧道模式)
  • DR模式(直连路由模式)
  1. LVS调度算法:
  • rr:轮询算法
  • wrr:加权轮询算法
  • Lc:最小连接算法
  • Wlc:加权最小连接算法
  • Lblc:局部最少连接算法
  • Lblcr:带有复制的局部最少连接算法
  • Dh:随机
  • Sh:随机

  1. Tomcat 概念;Tomcat 优点
  1. tomcat服务器是一个免费的开放源代码的web应用服务器,属于轻量级web中间件,是开发和调试jsp的首选,实际上运行tomcat的时候,与apache独立开来,运行jsp和servlet页面
  2. tomcat优点:

系统占用资源少,代码开源

  1. 中间件概念、作用、分类
  1. 中间件的概念:中间件是一大类基础软件,又称为中介层,提供系统软件和应用软件之间连接,便于软件各部件之间的沟通。应用软件可以借助中间件在不同技术架构之间共享信息和资源,位于客户机服务器的操作系统之上。管理计算资源和网络通信。
  2. 中间件的作用:

为不同的应用程序提供数据的连接和传输

为上层应用程序提供运行和开发环境

  1. 中间件的分类:

消息型中间件:实现组件之间或应用程序之间的解耦,还可以实现数据的异步传输

缓存中间件:用于减轻数据库的压力,加速动态页面的访问

Web型中间件:一般会与Apache集成,Apache不能支持Java程序的,Tomcat支持java程序的,这样的话用户访问Java程序或者动态页面,可以由Tomcat辅助Apache进行处理;当用户访问静态页面Apache则直接响应。

  1. Rsync概念、功能、端口号、架构、工作原理、配置文件
  1. rsync概念:

rsync是一个远程数据同步工具,可以通过网络快速同步多台主机间的文件

  1. rsync功能:

远程拷贝目录,保证集群件数据同步

使用rsync算法来使用本地和远程之间的文件达到同步,只传送两个文件的不同部分,而不是每次都整份传送,速度快

  1. rsync端口号:TCP 873
  2. rsync架构:C/S架构
  3. rsync工作原理:
  • 基于daemon模式运行:

打开一个TCP873端口,等待客户端连接,连接时,rsync server会检查口令是否相符,通过口令检查,可以开始进行文件传输,第一次连接完成时,会将整份文件传输一次,以后只需进行增量传输

  • 基于ssh模式运行:

Ssh基于口令的工作原理:

客户端发起申请请求连接服务器端,服务器端将公钥发送至客户端,客户端收到公钥后将用户名和密码进行加密传输到服务器端,服务器端使用私钥解密后对比是否正确,正确则连接成功可以进行文件传输,否则失败

  1. rsync配置文件:/etc/rsyncd.conf
  1. lscsi 概念、功能、端口号、架构、工作原理
  1. iscsi概念:Internet SCSI,在Internet上传输scsi的指令集
  2. iscsi功能:可以将磁盘、分区、文件、lv、.img制作为存储服务器的共享设备,向外提供存储
  3. iscsi端口号:TCP 3260
  4. iscsi架构:C/S
  5. iscsi工作原理:

将要共享的设备加入iscsi服务,创建luns

设定iqn,不同iqn中可以配置不同luns

根据iscsi启动器iqn配置iscsi目标器的iqn

  1. 常见的存储方案
  1. DAS:直连存储
  2. NAS:网络附加存储(文件服务器),相当于文件服务器,实质上就是通过以太网使用远程服务器的文件系统
  3. SAN:存储区域网络(光纤)

常用的是FC-SAN,通过专有的FC网络(光纤)将SAN存储的硬盘空间映射给主机或服务器使用,实质上通过光纤网络使用远程服务器的因公安

你可能感兴趣的:(运维,linux,服务器)