linux学习第三周作业
1、自建yum仓库,分别为网络源和本地源
在windows上安装软件时我们一般需要将软件从网页上下载下来,然后安装。在linux,想要安装软件,方法比较多。
(1)如果是软件所在位置来看,有本地,或者其他yun服务器。
(2)按照软件包的文件形式来看有源码包和rpm软件包。
rpm包安装有直接的rpm包安装或者现在为了解决rpm包安装时的依赖问题的yum(dnf)安装。
yum安装本质上还是底层调用rpm包安装。
在yum安装软件包时,yum时根据系统的yum源的配置来安装软件的。
yum源所指是本地的文件就是本地源,指向其他服务器就是网络源。
在yum安装软件时就会去yum所指的文件路径中去寻找软件,找不到就会报错。
yum源配置文件主要有2个。
/etc/yum.conf:为所有仓库提供公共配置
/etc/yum.repos.d/*.repo 这里面的*.repo文件。为仓库的指向提供配置
配置本地yum源
1、确保vmware里相应的虚拟机的光盘已经挂在了相应版本的系统光盘(以当前实验环境Centos7为例)


2、确保centos7已挂载

3、配置本地源

4、本地源已完成,使用yum repolist罗列出配置的仓库的软件包

配置网络源,经常使用的EPEL源(以阿里云为例)

2、编译安装http2.4,实现可以正常访问,并将编译步骤和结果提交。
1、关闭防火墙,关闭Selinux
2、安装相关软件包

3、下载并解压httpd-2.4.50.tar.bz2软件包
wget https://repo.huaweicloud.com/apache/httpd/httpd-2.4.50.tar.bz2
tar xvf httpd-2.4.50.tar.bz2 -C /usr/local/src

4、配置
cd /usr/local/src/httpd-2.4.50/
./configure --prefix=/apps/httpd --sysconfdir=/etc/httpd


5、编译安装
make


make install


6、配置环境

7、运行

8、指定用户并且验证配置生效


9、浏览器打开,运行

3、利用sed 取出ifconfig命令中本机的IPv4地址

4、删除/etc/fstab文件中所有以#开头,后面至少跟一个空白字符的行的行首的#和空白字符

5、处理/etc/fstab路径,使用sed命令取出其目录名和基名
取目录
echo /etc/fstab/ | sed -rn 's#(.*)/([^/]+)/?#\1#p'

取基名
echo /etc/fstab/ | sed -rn 's#(.*)/([^/]+)/?#\2#p'

6、列出ubuntu软件管理工具apt的一些用法(自由总结)
Advanced Packaging Tool (APT)
apt-cache和apt-get是apt包的管理工具,他们根据/etc/apt/sources.list里的软件源地址列表搜索目标软件包、并通过维护本地软件包列表来安装和卸载软件。
apt-get install 安装软件包 apt-get remove 移除软件包
apt-get purge 移除软件包及配置文件 apt-get update 刷新存储库索引
apt-get upgrade 升级所有可升级的软件包 apt-get autoremove 自动删除不需要的软件包
apt-get dist-upgrade 在升级软件包是自动处理依赖关系 apt-cache search 搜索应用程序
apt-cache show 显示安装细节 apt list 列出包含条件的包(已安装,可升级等)
apt edit-sources 编辑源列表
7、简述osi七层模型和TCP/IP五层模型
1.OSI 七层模型
七层模型开始是某美国组织定的标准,强调的是理论,各个层需要完成的功能都很清晰,实现起来麻烦。如果一开始只是两个物理机器在通信,显然物理层就足够了,但是会出现一系列的问题,逐渐发展,计算机的最终目的已经发展到应用层,就催生了一层一层的累加,所以就需要进行区分,产生了分层,以及每一层的功能重点。

各层的功能:
1 应用层:
按照应用层协议,构建报文,往下传递。这层解决的是应用之间的交互问题。
重点的协议有:Http协议。
2 表示层:
比如Linux给Windows发包,不同系统语法不一致,导致无法通信。所以表示解决的就是不同系统之间通信的语法问题,来格式化数据。
3 会话层:
建立并管理应用程序之间的通信,自动收发包、自动寻址,解决会话同步问题等。
4 运输层(传输层):
因为计算机传输的数据量庞大,不得不分割,运输层解决的就是进程间基于网络的通信问题,将数据分为报文段,这层还要保证有序、重传等问题。重点的协议有TCP/UDP。
5 网络层:
因为互联网很庞大,不同网络之间的交互涉及各类问题,就需要网络层指导传输路径、隔断等等,网络层解决的是分组在多个网络上传输的问题。路由器工作在网络层,网络层的数据单位是分组。重点的协议有IP协议。
6 数据链路层:
因为物理层的传输会产生错传,丢失等问题,数据链路层通过格式化数据传输、减错等等,来保证传输的准确,这一层解决的是一个网络上的数据传输问题。交换机工作在这一层。传输的数据单位是 帧 。
7 物理层:
物理层就是解决的两个物理机器传输比特流的,0101010这种形式,传输的数据单位是 比特,物理层还决定以何种方式传输比特。在这一层工作的计算机组件有:网卡。这一层定义的标准就是各种传输介质的速率,光纤的接口类型等。
- TCP/IP五层模型

应用层:各种应用程序协议,如HTTP、FTP、SMTP、POP3
传输层:四层交换机、也有工作在四层的路由器
网络层:路由器、三层交换机
数据链路层:网桥(现已很少使用)、以太网交换机(二层交换机)、网卡(其实网卡是一半工作在物理层、一半工作在数据链路层)
物理层:中继器、集线器、还有我们通常说的双绞线也工作在物理层
8、总结描述TCP三次握手四次挥手
TCP三次握手

第一次:Client发送一个SYN段指明Client打算连接的Server的端口,以及初始序号seq
第二次:Server发回包含Server的初始序号的SYN报文段作为应答。同时,将确认序号ACK设置为Client的seq+1以对Client的SYN报文段进行确认。一个SYN将占用一个序号
第三次:Client必须讲确认序号ACK设置为Server的初始序号SYN+1以对Server的SYN报文段进行确认
TCP四次挥手

第一次:Client发送一个FIN段序号seq以及确认断开连接的ACK
第二次:Server收到Client的FIN和ACK后,返回一个Client的FIN序号seq+1的ACK段
第三次:同时Server还向Client发送一个FIN段序号seq
第四次:Client收到Server的FIN段的seq返回给Server一个确认的ACK的序号seq+1
9、描述TCP和UDP区别
TCP和UDP的区别:
1、连接
TCP:面向连接
UDP:无连接
2、可靠性
TCP:可靠
UDP:不可靠
3、应用场合
TCP:传输数据量比较少,对可靠性要求高
UDP:传输数据量大,对可靠性要求不是很高,但要求速度快
4、传输速度
TCP:慢
UDP:快
5、重发
TCP:重发
UDP:不重发
6、错误检测
TCP:检测
UDP:不检测
10、网卡绑定bond0的实现
[root@centos7 ~]#cat /etc/sysconfig/network-scripts/ifcfg-ens33
NAME=ens33
DEVICE=ens33
BOOTPROTO=none
MASTER=bond0
SLAVE=yes
ONBOOT=yes
[root@centos7 ~]#cat /etc/sysconfig/network-scripts/ifcfg-ens36
NAME=ens36
DEVICE=ens36
BOOTPROTO=none
MASTER=bond0
SLAVE=yes
ONBOOT=yes
[root@centos7 ~]#cat /etc/sysconfig/network-scripts/ifcfg-bond0
NAME=bond0
TYPE=bond
DEVICE=bond0
BOOTPROTO=none
IPADDR=192.168.31.157
PREFIX=24
BONDING_OPTS="mode=1 miimon=100 fail_over_mac=1"
二、加载bound0
[root@centos7 ~]#modprobe bonding
[root@centos7 ~]#systemctl restart network


浙公网安备 33010602011771号