五、磁盘管理-LVM-RAID-网络通信-TCP-UDP-总结

一、磁盘lvm管理,完成下面要求,并写出详细过程:

  1. 创建一个至少有两个PV组成的大小为20G的名为testvg的VG;要求PE大小 为16MB, 而后在卷组中创建大小为5G的逻辑卷testlv;挂载至/users目录
1. 确定使用哪些设备创建pv  这里将 /dev/sda设备 分区 sda6 大小20G  /dev/sdc 分区 sdc2 大小20G 
  [root@centos7 ~ 11:01:07]#pvcreate /dev/sda6 /dev/sdc2 
  Physical volume "/dev/sda6" successfully created.
  Physical volume "/dev/sdc2" successfully created.

2. 加入卷组VG中
  [root@centos7 ~ 11:24:46]#vgcreate testvg -s 16M /dev/sda6 /dev/sdc2 
  Volume group "testvg" successfully created

3. 创建大小为5G的逻辑卷
  [root@centos7 ~ 11:25:26]#lvcreate -n testlv -L 5G testvg 
  Logical volume "testlv" created.  

4. 创建文件系统
[root@centos7 ~ 11:50:26]#mkfs.ext4 /dev/mapper/testvg-testlv 
mke2fs 1.42.9 (28-Dec-2013)
Filesystem label=
OS type: Linux
Block size=4096 (log=2)
Fragment size=4096 (log=2)
Stride=0 blocks, Stripe width=0 blocks
786432 inodes, 3145728 blocks
157286 blocks (5.00%) reserved for the super user
First data block=0
Maximum filesystem blocks=2151677952
96 block groups
32768 blocks per group, 32768 fragments per group
8192 inodes per group
Superblock backups stored on blocks: 
        32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632, 2654208

Allocating group tables: done                            
Writing inode tables: done                            
Creating journal (32768 blocks): done
Writing superblocks and filesystem accounting information: done 

5. 挂载使用
[root@centos7 ~ 11:28:54]#mkdir /users 
[root@centos7 ~ 11:29:59]#mount /dev/testvg/testlv /users  

6. 查询确认挂载: 
[root@centos7 ~ 11:30:10]#df -h
Filesystem                 Size  Used Avail Use% Mounted on
/dev/sda2                   50G  3.8G   47G   8% /
devtmpfs                   896M     0  896M   0% /dev
tmpfs                      911M     0  911M   0% /dev/shm
tmpfs                      911M   27M  885M   3% /run
tmpfs                      911M     0  911M   0% /sys/fs/cgroup
/dev/sda3                   30G  4.1G   26G  14% /data
/dev/sda1                 1014M  165M  850M  17% /boot
tmpfs                      183M   36K  183M   1% /run/user/0
/dev/sr1                   8.8G  8.8G     0 100% /run/media/root/CentOS 7 x86_64
/dev/mapper/testvg-testlv  5.0G   33M  5.0G   1% /users

  1. 扩展testlv至7G,要求archlinux用户的文件不能丢失
扩展逻辑卷 testlv到7G大小: 
  [root@centos7 ~ 12:32:19]#lvextend -L 7G /dev/testvg/testlv 
  Size of logical volume testvg/testlv changed from 5.00 GiB (320 extents) to 7.00 GiB (448 extents).
  Logical volume testvg/testlv successfully resized.

扩展文件系统到7G :
  [root@centos7 ~ 12:32:58]#resize2fs /dev/testvg/testlv 
  resize2fs 1.42.9 (28-Dec-2013)
  Resizing the filesystem on /dev/testvg/testlv to 1835008 (4k) blocks.
  The filesystem on /dev/testvg/testlv is now 1835008 blocks long.
  
确认:
  [root@centos7 ~ 12:34:51]#df
  Filesystem                1K-blocks    Used Available Use% Mounted on
  /dev/sda2                  52403200 3965736  48437464   8% /
  devtmpfs                     916724       0    916724   0% /dev
  tmpfs                        932652       0    932652   0% /dev/shm
  tmpfs                        932652   27068    905584   3% /run
  tmpfs                        932652       0    932652   0% /sys/fs/cgroup
  /dev/sda3                  31441920 4280796  27161124  14% /data
  /dev/sda1                   1038336  168556    869780  17% /boot
  tmpfs                        186532      36    186496   1% /run/user/0
  /dev/sr1                    9176232 9176232         0 100% /run/media/root/CentOS 7 x86_64
  /dev/mapper/testvg-testlv   7093752   36888   6720688   1% /mnt
  1. 收缩testlv至3G,要求archlinux用户的文件不能丢失
  取消挂载
  [root@centos7 ~ 12:34:51]#umount /dev/testvg/testlv 

  执行fsck检查 
  [root@centos7 ~ 12:36:20]#e2fsck -f /dev/testvg/testlv 
  e2fsck 1.42.9 (28-Dec-2013)
  Pass 1: Checking inodes, blocks, and sizes
  Pass 2: Checking directory structure
  Pass 3: Checking directory connectivity
  Pass 4: Checking reference counts
  Pass 5: Checking group summary information
  /dev/testvg/testlv: 11/458752 files (0.0% non-contiguous), 70792/1835008 blocks
  
 缩减文件系统大小
  [root@centos7 ~ 12:37:13]#resize2fs /dev/testvg/testlv 3G
  resize2fs 1.42.9 (28-Dec-2013)
  Resizing the filesystem on /dev/testvg/testlv to 786432 (4k) blocks.
  The filesystem on /dev/testvg/testlv is now 786432 blocks long.

缩减逻辑卷的大小:
    [root@centos7 ~ 12:40:05]#lvreduce -L 3G /dev/testvg/testlv 
    WARNING: Reducing active logical volume to 3.00 GiB.
    THIS MAY DESTROY YOUR DATA (filesystem etc.)
    Do you really want to reduce testvg/testlv? [y/n]: y
    Size of logical volume testvg/testlv changed from 7.00 GiB (448 extents) to 3.00 GiB (192 extents).
    Logical volume testvg/testlv successfully resized.

重新挂载并确认:
  [root@centos7 ~ 12:40:59]#mount /dev/testvg/testlv  /mnt
  [root@centos7 ~ 12:41:50]#df
  Filesystem                1K-blocks    Used Available Use% Mounted on
  /dev/sda2                  52403200 3965628  48437572   8% /
  devtmpfs                     916724       0    916724   0% /dev
  tmpfs                        932652       0    932652   0% /dev/shm
  tmpfs                        932652   27068    905584   3% /run
  tmpfs                        932652       0    932652   0% /sys/fs/cgroup
  /dev/sda3                  31441920 4280796  27161124  14% /data
  /dev/sda1                   1038336  168556    869780  17% /boot
  tmpfs                        186532      36    186496   1% /run/user/0
  /dev/sr1                    9176232 9176232         0 100% /run/media/root/CentOS 7 x86_64
  /dev/mapper/testvg-testlv   2965264   24600   2787228   1% /mnt
  [root@centos7 ~ 12:41:51]#lvs
  LV     VG     Attr       LSize Pool Origin Data%  Meta%  Move Log Cpy%Sync Convert
  testlv testvg -wi-ao---- 3.00g                                                    

  1. 对testlv创建快照,并尝试基于快照备份数据,验证快照的功能
创建快照:
  [root@centos7 ~ 12:41:59]#lvcreate -n testlv_snap -s -p r -L 1G /dev/testvg/testlv
  Logical volume "testlv_snap" created.

确认是否创建成功:
   --- Logical volume ---
  LV Path                /dev/testvg/testlv_snap
  LV Name                testlv_snap
  VG Name                testvg
  LV UUID                ISeZeZ-kbZ8-alNz-tEhA-Djz3-tR66-R0oYrO
  LV Write Access        read only
  LV Creation host, time centos7.localdomain, 2019-08-04 12:44:23 +0800
  LV snapshot status     active destination for testlv
  LV Status              available
  # open                 0
  LV Size                3.00 GiB
  Current LE             192
  COW-table size         1.00 GiB
  COW-table LE           64
  Allocated to snapshot  0.01%
  Snapshot chunk size    4.00 KiB
  Segments               1
  Allocation             inherit
  Read ahead sectors     auto
  - currently set to     8192
  Block device           253:3

挂载快照并测试:
[root@centos7 ~ 12:45:44]#mkdir /mnt/snap
[root@centos7 ~ 12:46:42]#mount /dev/testvg/testlv_snap /mnt/snap
mount: /dev/mapper/testvg-testlv_snap is write-protected, mounting read-only

创建快照以前, 逻辑卷挂载到 /mnt/lv_data下,有以下文件:
 [root@centos7 lv_data 12:52:18]#ll
 total 32
 -rw-r--r--. 1 root root   807 Aug  4 12:52 fstab
 -rw-r--r--. 1 root root    23 Aug  4 12:52 issue
 drwx------. 2 root root 16384 Aug  4 11:51 lost+found
 -r--r--r--. 1 root root  3091 Aug  4 12:52 mtab
 -rw-r--r--. 1 root root  1820 Aug  4 12:52 profile

在创建快照后,清空逻辑卷中的文件fstab, 而快照中的文件不会被删除:
[root@centos7 snap 12:55:44]#echo '' > /mnt/lv_data/fstab 
[root@centos7 snap 12:55:56]#cat /mnt/lv_data/fstab

[root@centos7 snap 12:56:02]#cat /mnt/snap/fstab 

#
# /etc/fstab
# Created by anaconda on Sat Jun 15 07:41:25 2019
#
# Accessible filesystems, by reference, are maintained under '/dev/disk'
# See man pages fstab(5), findfs(8), mount(8) and/or blkid(8) for more info
#
...

二、创建一个可用空间为1G的RAID1设备,文件系统为ext4,有一个空闲盘,开机可自动挂载至/backup目录

使用sdb1 和sdc1 作为RAID,sda7 分区作为spare 空闲盘
[root@centos6 ~ 14:28:22]#mdadm -C -a yes /dev/md0 -l 1 -n 2 -x 1 -c 1M /dev/sd{b1,c1,a7}
-x 是指定备用硬盘个数 , 写在最后的就是备用盘了
-c 是指定chunk 大小
-l 是指定RAID级别
-n RAID下激活成员的个数
 
查看信息:
[root@centos6 ~ 14:33:37]#mdadm -D /dev/md0 

创建文件系统并挂载:
[root@centos6 ~ 14:35:23]#mkfs.ext4 /dev/md0
[root@centos6 ~ 14:49:57]#blkid |grep /dev/md
/dev/md0: UUID="a40565a1-6e57-4e1a-a29c-d7928746f4b7" TYPE="ext4"
[root@centos6 ~ 14:49:37]#sed -i.bak  '$aUUID=a40565a1-6e57-4e1a-a29c-d7928746f4b7 /mnt/raid ext4 defaults 0 0' /etc/fstab
[root@centos6 ~ 14:49:48]#mount -a 
[root@centos6 ~ 14:50:34]#df -h
Filesystem            Size  Used Avail Use% Mounted on
/dev/sda2              48G  6.6G   39G  15% /
tmpfs                 490M   76K  490M   1% /dev/shm
/dev/sda1             976M   34M  892M   4% /boot
/dev/sda3              29G  645M   27G   3% /data
/dev/sr0              3.8G  3.8G     0 100% /media/CentOS_6.10_Final
/data/ext4file         93M  1.6M   87M   2% /mnt/ext4
/dev/mapper/vg0-lv_mysql
                      7.8G   18M  7.4G   1% /mnt/mysql
/dev/mapper/vg0-lv_mysql_snap
                      7.8G   19M  7.4G   1% /mnt/snap
/dev/md0              987M  1.3M  934M   1% /mnt/raid

查询确认:
[root@centos6 ~ 14:52:18]#mdadm -D /dev/md0
/dev/md0:
        Version : 1.2
  Creation Time : Sun Jul 28 14:31:32 2019
     Raid Level : raid1
     Array Size : 1059200 (1034.38 MiB 1084.62 MB)
  Used Dev Size : 1059200 (1034.38 MiB 1084.62 MB)
   Raid Devices : 2
  Total Devices : 3
    Persistence : Superblock is persistent

    Update Time : Sun Jul 28 14:49:55 2019
          State : clean 
 Active Devices : 2
Working Devices : 3
 Failed Devices : 0
  Spare Devices : 1

           Name : centos6.localdomain:0  (local to host centos6.localdomain)
           UUID : 6be07abf:7c7a13d7:c64afebe:fbfa77d7
         Events : 17

    Number   Major   Minor   RaidDevice State
       0       8       17        0      active sync   /dev/sdb1
       1       8       33        1      active sync   /dev/sdc1

       2       8        7        -      spare   /dev/sda7



三、简述TCP链接建立和断开过程

TCP建立连接的三次握手:

  1. 客户端A向服务器B发送同步报文SYN=1 ,数据报文 seq=0 (相对序列号为0,说明是第一次请求通信)。发送完同步报文,A由CLOSED状态变更为SYN-SENT
  2. 服务端B在端口上侦听客户端的发送请求,一直处于LISTEN状态,当监听到A发送过来的同步报文时SYN=1,立刻发送回应测试报文给A: SYN=1 ACK=1 ,ACK=1表示A发来的同步报文咱B收到了,此时B回应完后状态由LISTEN切换为SYN-RCVD。同时发A的数据报文段序号 seq=0 , ack=1。ack为1 表示 A发来的序号为0的数据报文段收到了,希望下次收到序号为1的报文,同时B给A回应序号为0的数据报文段(首次给A发送,相对序号)。
  3. 当客户端A再次收到服务端B发来的报文时,即可确认双方是可以正常连接的,于是状态切换为ESTABLISHED,并再次发送确认同步报文给B,即
    ACK=1,seq=1,ack=1 , B服务端收到后,状态切换为ESTABLISED,于是之后双方开始正常的数据传输。

TCP的四次挥手:

  1. 客户端最初在ESTABLISHED状态下,主动向服务端B发出断开连接请求, FIN=1 ,seq=u .状态切换为 FIN-WAIT1 终止等待1
  2. 服务端收到A发来的断开连接请求,回应报文 ACK=1 , ack=u+1 , seq=v , 意思是确认客户端发来的断开请求收到了。并将状态切换为关闭等待状态CLOSE-WAIT
  3. 大部分情况下,之后的A不会立刻断开连接,而是切换到FIN-WAIT2,也即终止等待2的状态下,这时B开始传送数据给A,可以理解为是分手前的财产归还,发送完数据后,此时再向A发送确认断开请求, FIN=1 , ACK=1 , seq=w , ack=u+1 , B状态切换为LAST-ACK ,即最后确认
  4. A收到B的确认请求后,回应ACK=1 ack=w+1 seq=u+1 ,回应玩,A状态切换到TIME-WAIT,再等待2MSL的时间,A正式关闭连接,状态为CLOSED。B收到A的回应后,不再回应任何数据,直接状态切换为CLOSED。至此,双方通过4次挥手完成了通信的终止

四、简述TCP和UDP的区别

TCP和UDP都工作在传输层,但是它们有较大的差异:
区别一:
TCP 叫做传输控制协议 是面向连接的。也就是通信双方在利用某个协议传输数据以前,先发送测试报文来确认双方网络是正常连接的
UDP 叫做用户数据报协议 非面向连接的。即源端主机只管发送数据,而不管对端主机是否能接收到

区别二:
TCP 协议下。每一个数据包都是有次序的。也就是对于大文件将被切割成小的数据包进行传输,会按照顺序进行编号。到目标主机能精确的还原,数据传输可靠
UDP是无序的, 不对数据进行排序和编号,这样有可能出现先发送的数据包对方主机后收到。这样在目标主机端组合完的数据可能是不可靠的

区别三:
基于两种协议的特性,用途不一:
TCP 对数据可靠性要求高 所以适用于 邮件 文件共享 文件的下载
UDP 不保证数据的可靠性, 适用于音频和视频传输。即便丢失一点数据也是在可接受范围内的

你可能感兴趣的:(五、磁盘管理-LVM-RAID-网络通信-TCP-UDP-总结)