一、 磁盘lvm管理,完成下面要求,并写出详细过程:
LVM就是动态卷管理,可以将多个硬盘和硬盘分区做成一个逻辑卷,并把这个逻辑卷作为一个整体来统一管理,动态对分区进行扩缩空间大小,安全快捷方便管理。
逻辑卷的4个概念
①PE(Physical Extend) 物理拓展
②PV(Physical Volume) 物理卷
③VG(Volume Group) 卷组
④LV(Logical Volume) 逻辑卷
1) 创建一个至少有两个PV组成的大小为20G的名为testvg的VG;要求PE大小 为16MB, 而后在卷组中创建大小为5G的逻辑卷testlv;挂载至/users目录
- 把4个分区划分为逻辑卷PV
pvcreate /dev/sdc{1,2,3,5} - 显示PV详细信息
pvdisplay - 把4个PV创建成一个名为testlv的卷组(-s指定PE大小)
vgcreate testvg -s 16M /dev/sdc{1,2,3,5} - 显示卷组
vgdisplay - 创建逻辑卷指定大小(-n 逻辑卷名字)
lvcreate -n testlv -L 5G testvg - 显示逻辑卷信息
lvdisplay - 创建挂载点目录
mkdir /users - 格式化创建文件系统
mkfs.ext4 /dev/testvg/testlv - 挂载逻辑卷
mount /dev/testvg/testlv /users
2) 扩展testlv至7G,要求archlinux用户的文件不能丢失
- 创建archlinux用户指定家目录
useradd -d /users/archlinux archlinux - 复制文件到archlinux家目录
cd /users/archlinux/ cp /etc/issue . cp /etc/motd . - 扩展逻辑卷
lvextend -r -L +2G /dev/testvg/testlv -r直接添加到lvm(6,7通用)
lvextend -L +2G /dev/testvg/testlv, resize2fs /dev/testvg/testlv (centos6)
lvextend -L +2G /dev/testvg/testlv, xfs_growfs /dev/testvg/testlv(centos7) - 显示逻辑卷信息
lvdisplay
3) 收缩testlv至3G,要求archlinux用户的文件不能丢失
- 取消挂载
umount /dev/testvg/testlv - 检查逻辑卷
fsck -f /dev/testvg/testlv - 缩减文件系统(centos7不支持缩减LVM)
resize2fs /dev/testvg/testlv 3G - 缩减逻辑卷
- lvreduce -L 3G /dev/testvg/testlv
- 重新挂载
mount /dev/testvg/testlv /users/
4) 对testlv创建快照,并尝试基于快照备份数据,验证快照的功能
- 显示逻辑卷看有没有剩余空间
vgdisplay - 创建快照(-s 快照)(-p r 只读创建)(centos7创建快照不能指定只读,会挂载不上)
lvcreate -n testlv_snap –s –p r -L 1G /dev/testvg/testlv (centos6)
lvcreate -n testlv_snap –s -L 1G /dev/testvg/testlv (centos7) - 显示LVM
lvdisplay - 创建挂载点目录
mkdir /mnt/snap - 挂载快照 (centos7只读挂载 -r 只读,-o nouuid忽略uuid重复)
mount /dev/testvg/testlv_snap /mnt/snap/(centos6)
mount –o nouuid –r /dev/testvg/testlv_snap /mnt/snap/(centos7) - 删除文件
rm -fr /users/archlinux/ - 取消挂载
umount /dev/testvg/testlv - 取消挂载(快照)
umount /dev/testvg/testlv_snap - 快照恢复(会自动删除快照)
lvconvert --merge /dev/testvg/testlv_snap - 显示LVM
lvdisplay - 重新挂载
mount /dev/testvg/testlv /users/ - 查看文件是否恢复
ls /users/archlinux/
二、 创建一个可用空间为1G的RAID1设备,文件系统为ext4,有一个空闲盘,开机可自动挂载至/backup目录
1.创建RAID
mdadm -C /dev/md0 -ayes -l1 -n2 -x1 /dev/sdb{1…3}
2.查看RAID信息
mdadm -D /dev/md0
3.保存raid信息到配置文件/etc/mdadm.conf
mdadm -D -scan >/etc/mdadm.conf
4.创建文件系统
mkfs.ext4 /dev/md0
5.创建挂载点文件
mkdir /backup
6.写入挂载信息到/etc/fstab
echo “UUID=7cb9b202-d239-4c19-898d-28678f0d7ac4 /backup ext4 defaults 0 0” >>/etc/fstab
7.自动挂载
mount –a
三、简述TCP链接建立和断开过程
Tcp报文标记位
ACK:表示是否前面确认号字段是否有效。只有当ACK=1时,前面的确认号字段才有效。TCP规定,连接建立后,ACK必须为1,带ACK标志的TCP报文段称为确认报文段
SYN:在建立连接时使用,用来同步序号。当SYN=1,ACK=0时,表示这是一个请求建立连接的报文段;当SYN=1,ACK=1时,表示对方同意建立连接。SYN=1,说明这是一个请求建立连接或同意建立连接的报文。只有在前两次握手中SYN才置为1,带SYN标志的TCP报文段称为同步报文段
FIN:表示通知对方本端要关闭连接了,标记数据是否发送完毕。如果FIN=1,即告诉对方:“我的数据已经发送完毕,你可以释放连接了”,带FIN标志的TCP报文段称为结束报文段
三次握手:
第一次握手:客户端发送SYN=1(标记位),seq=x(客户端报文序号)到服务器,并进入SYN_SEND状态,等待服务器确认。
第二次握手:服务器收到客户端发过来建立连接请求,必须确认客户端的请求,同时发送SYN=1(标记位),ACK=1(标记位),seq=y(客户端报文序号),ack=x+1(确认号)包,此时服务器进入SYN_RECV状态。
第三次握手:客户端收到服务器的确认连接请求,向服务器发送确认包ACK=1(标记位),ack=y+1(确认号),seq=x+1(客户端报文序列号)此包发送完毕,客户端和服务器进入ESTABLISHED状态,完成三次握手。
四次挥手
与建立连接的“三次握手”类似,断开一个TCP连接则需要“四次握手”。
第一次挥手:主动关闭方发送一个FIN=1,seq=u同时主动关闭方会进入FIN-TIME-1状态,关闭主动方到被动关闭方的数据传送,也就是主动关闭方告诉被动关闭方,我已经不会再给你发数据了(当然在FIN包之前发送出去的数据,如果没有收到对应的ack确认报文,主动关闭方依然会重发这些数据),但是,此时主动关闭方还可以接受数据。
第二次挥手:被动关闭方收到FIN包后,发送一个ACK=1,seq=v,ack=u+1给对方,同时进入CLOSE-WAIT状态,等待数据传送完毕。
第三次挥手:被动方的数据传送完毕,被动关闭方会发送一个FIN=1,ACK=1,seq=w,ack=u+1,同时进入LAST-ACK状态,关闭被动关闭方到主动关闭方的数据传送,也就是告诉主动关闭方,我的数据也发送完了,不会再给你发数据了。
第四次挥手:主动关闭方收到FIN后,发送一个ACK=1,seq=u+1,ack=w+1给被动关闭方,同时进入TIME-WAIT状态至此,完成四次挥手
四、 简述TCP和UDP的区别
1、TCP是面向连接的(在客户端和服务器之间传输数据之前要先建立连接),UDP是无连接的(发送数据之前不需要先建立连接)
2、TCP提供可靠的服务(通过TCP传输的数据,无差错,不丢失,不重复,且按序到达);UDP提供面向事务的简单的不可靠的传输。
3、UDP具有较好的实时性,工作效率比TCP高,适用于对高速传输和实时性比较高的通讯或广播通信。随着网速的提高,UDP使用越来越多。
4、没一条TCP连接只能是点到点的,UDP支持一对一,一对多和多对多的交互通信。
5、TCP对系统资源要去比较多,UDP对系统资源要求比较少
6、UDP程序结构更加简单
7、TCP是流模式,UDP是数据报模式