新建 Markdown File

news/2025/3/9 20:39:32/文章来源:https://www.cnblogs.com/fqcsre/p/18761324

第三周作业解答:


1. 程序包管理器总结及命令示例

程序包管理器

  • YUM:用于基于 RPM 的系统(如 CentOS、Fedora)。
  • APT:用于基于 Debian 的系统(如 Ubuntu)。
  • RPM:低级包管理工具,直接操作 .rpm 文件。

包内容

  • RPM:包含软件的二进制文件、配置文件、依赖关系等。
  • DEB:包含软件的二进制文件、配置文件、依赖关系等。

获取命令

  • **YUM:

    # 获取软件包
    yum install <package-name>
    
  • APT

    # 获取软件包
    apt-get install <package-name>
    
  • RPM

    # 安装本地 RPM 文件
    rpm -ivh <package-name>.rpm
    

命令选项示例

  • YUM

    # 安装软件包
    yum install <package-name># 更新软件包
    yum update <package-name># 卸载软件包
    yum remove <package-name># 查找软件包
    yum search <keyword>
  • APT

    # 安装软件包
    apt-get install <package-name># 更新软件包
    apt-get update
    apt-get upgrade# 卸载软件包
    apt-get remove <package-name># 查找软件包
    apt-cache search <keyword>
    
  • RPM

    # 安装 RPM 文件
    rpm -ivh <package-name>.rpm# 卸载 RPM 文件
    rpm -e <package-name># 查询已安装的 RPM 文件
    rpm -qa
    

2. YUM/DNF工作原理及私有仓库搭建

工作原理

  • YUM
    • 从配置的软件源(/etc/yum.repos.d/)获取软件包信息。
    • 使用 yum 命令安装、更新或卸载软件包。
    • 自动解析依赖关系并安装所需的依赖包。

搭建私有 YUM 仓库

  1. 安装 HTTP 服务器
    yum install -y httpd
    systemctl start httpd
    systemctl enable httpd
    
  2. 创建仓库目录
    mkdir -p /var/www/html/repo/base
    mkdir -p /var/www/html/repo/epel
    
  3. 同步软件包到仓库
    • 使用 reposync 同步 Base 和 EPEL 源:
      yum install -y yum-utils
      reposync -g -l -d -m --repoid=base --repoid=epel --download_path=/var/www/html/repo
      
  4. 配置仓库
    • 创建仓库元数据:
      createrepo /var/www/html/repo/base
      createrepo /var/www/html/repo/epel
      
  5. 配置客户端
    • 在另一台虚拟机上,添加私有仓库配置文件 /etc/yum.repos.d/private.repo
      [base]
      name=Private Base Repo
      baseurl=http://10.0.0.100/repo/base
      enabled=1
      gpgcheck=0[epel]
      name=Private EPEL Repo
      baseurl=http://10.0.0.100/repo/epel
      enabled=1
      gpgcheck=0
      

3. APT工作原理

  • APT
    • 使用 /etc/apt/sources.list/etc/apt/sources.list.d/ 文件配置软件源。
    • 使用 apt-get 命令安装、更新或卸载软件包。
    • 自动解析依赖关系并安装所需的依赖包。
    • 使用 apt-cache 管理软件包缓存。

4. 编译安装 Nginx 的步骤

  1. 安装依赖
    apt-get update
    apt-get install -y build-essential libpcre3 libpcre3-dev libssl-dev
    
  2. 下载 Nginx 源码
    wget http://nginx.org/download/nginx-<version>.tar.gz
    tar -zxvf nginx-<version>.tar.gz
    cd nginx-<version>
    
  3. 配置并编译
    ./configure --prefix=/usr/local/nginx --with-http_ssl_module
    make
    make install
    
  4. 启动 Nginx
    /usr/local/nginx/sbin/nginx
    

5. 磁盘存储术语

  • Head:磁头,用于读写磁盘数据。
  • Track:磁道,磁盘上的一圈圈同心圆。
  • Sector:扇区,磁道上的最小存储单元。
  • Cylinder:柱面,同一柱面上的所有磁道。

6. MBR 和 GPT 结构

  • MBR (Master Boot Record)
    • 位于磁盘的第 0 扇区。
    • 包含启动代码和分区表。
    • 最多支持 4 个主分区。
  • GPT (GUID Partition Table)
    • 支持更多分区(最多 128 个)。
    • 使用全局唯一标识符(GUID)标识分区。
    • 支持大于 2TB 的磁盘。

7. 分区、文件系统管理、SWAP 管理命令

  • fdisk
    # 查看分区表
    fdisk -l
    
  • parted
    # 创建分区
    parted /dev/sdX mkpart primary 0 100%
    
  • mkfs
    # 创建文件系统
    mkfs.ext4 /dev/sdX1
    
  • tune2fs
    # 调整文件系统参数
    tune2fs -L "MyVolume" /dev/sdX1
    
  • xfs_info
    # 查看 XFS 文件系统信息
    xfs_info /dev/sdX1
    
  • fsck
    # 检查和修复文件系统
    fsck /dev/sdX1
    
  • mount/umount
    # 挂载文件系统
    mount /dev/sdX1 /mnt
    umount /mnt
    
  • swapon/swapoff
    # 启用/禁用 SWAP
    swapon /dev/sdX1
    swapoff /dev/sdX1
    

8. RAID 工作原理

  • RAID 0
    • 工作原理:数据分条存储在多个磁盘上。
    • 利用率:100%。
    • 冗余性:无。
    • 性能:高。
    • 最少硬盘数:2。
  • RAID 1
    • 工作原理:数据镜像存储在两个磁盘上。
    • 利用率:50%。
    • 冗余性:高。
    • 性能:读取快,写入慢。
    • 最少硬盘数:2。
  • RAID 5
    • 工作原理:数据分条存储,带奇偶校验。
    • 利用率:(N-1)/N。
    • 冗余性:中。
    • 性能:读取快,写入中。
    • 最少硬盘数:3。
  • RAID 10
    • 工作原理:先镜像,再分条。
    • 利用率:50%。
    • 冗余性:高。
    • 性能:高。
    • 最少硬盘数:4。
  • RAID 01
    • 工作原理:先分条,再镜像。
    • 利用率:50%。
    • 冗余性:高。
    • 性能:高。
    • 最少硬盘数:4。

9. LVM 基本原理

  • LVM (Logical Volume Manager)
    • 将物理磁盘抽象为逻辑卷,便于动态调整磁盘容量。
    • 创建 LVM
      # 创建物理卷
      pvcreate /dev/sdX1# 创建卷组
      vgcreate myvg /dev/sdX1# 创建逻辑卷
      lvcreate -L 10G -n mylv myvg# 格式化并挂载
      mkfs.ext4 /dev/myvg/mylv
      mount /dev/myvg/mylv /mnt
      
    • 扩容逻辑卷
      # 添加新磁盘到卷组
      pvcreate /dev/sdY1
      vgextend myvg /dev/sdY1# 扩容逻辑卷
      lvextend -L +5G /dev/myvg/mylv
      resize2fs /dev/myvg/mylv
      

10. OSI 模型

  • OSI (Open Systems Interconnection)
    • 物理层:传输二进制数据流,定义电气接口。
    • 数据链路层:建立链路连接,传输数据帧。
    • 网络层:负责路由选择,传输 IP 数据包。
    • 传输层:提供端到端的通信,如 TCP/UDP。
    • 会话层:建立、管理和终止会话。
    • 表示层:数据格式转换,加密解密。
    • 应用层:提供用户接口,如 HTTP、FTP。

11. 调整动态端口范围

# 修改 /etc/sysctl.conf 文件
net.ipv4.ip_local_port_range = 20000 60000# 应用更改
sysctl -p

12. TCP 包头结构

  • 源端口:16 位。
  • 目的端口:16 位。
  • 序列号:32 位。
  • 确认号:32 位。
  • 头部长度:4 位。
  • 标志位:6 位(SYN、ACK、FIN、RST 等)。
  • 窗口大小:16 位。
  • 校验和:16 位。
  • 紧急指针:16 位。

TCP 三次握手

  1. SYN:客户端发送 SYN 包到服务器。
  2. SYN-ACK:服务器回应 SYN-ACK 包。
  3. ACK:客户端发送 ACK 包,连接建立。

TCP 四次挥手

  1. FIN:客户端发送 FIN 包。
  2. ACK:服务器回应 ACK 包。
  3. FIN:服务器发送 FIN 包。
  4. ACK:客户端回应 ACK 包,连接关闭。

13. 主机到主机的包传递过程

  1. 源主机:封装数据包,添加 IP 和 TCP/UDP 头。
  2. 路由器:根据 IP 地址和子网掩码转发数据包。
  3. 目的主机:解封装数据包,处理数据。

14. IP 地址分类

  • A 类0.0.0.0 - 127.255.255.255,子网掩码 /8
  • B 类128.0.0.0 - 191.255.255.255,子网掩码 /16
  • C 类192.0.0.0 - 223.255.255.255,子网掩码 /24
  • D 类224.0.0.0 - 239.255.255.255,多播地址。

IP 地址组成

  • 网络部分:标识网络。
  • 主机部分:标识主机。

15. 201.222.200.111/18 的主机数和子网掩码

  • 子网掩码255.255.192.0/18)。
  • 主机数2^(32-18) - 2 = 16382

计算方法

  • 子网掩码:/18 表示前 18 位为网络位,后 14 位为主机位。
  • 主机数:2^(32-18) - 2(减去网络地址和广播地址)。

16. A(10.0.1.1/16) 与 B(10.0.2.2/24) 的通信

  • 判断是否在同一个网段
    • A 的子网掩码为 /16,网络地址为 10.0.0.0
    • B 的子网掩码为 /24,网络地址为 10.0.2.0
    • A 和 B 不在同一个网段。
  • 能否通信
    • 如果 A 和 B 在同一个网络中(如通过路由器连接),可以通信。
    • 如果不在同一个网络中,无法直接通信。

17. 10.0.0.0/8 划分 32 个子网

  • 子网掩码255.255.224.0/19)。
  • 每个子网的主机数2^(32-19) - 2 = 8190

计算方法

  • 子网掩码:/8 表示前 8 位为网络位,需要再划分 5 位(2^5 = 32)。
  • 子网掩码:255.255.224.0/19)。
  • 每个子网的主机数:2^(32-19) - 2

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/896087.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

p44太阳花

from turtle import * color(red, yellow) begin_fill() while Ture:forward(200)left(170)if abs(pos()) < 1:break end_fill() done()

基于IEKF迭代扩展卡尔曼滤波算法的数据跟踪matlab仿真,对比EKF和UKF

1.程序功能描述 基于IEKF迭代扩展卡尔曼滤波算法的数据跟踪matlab仿真,对比EKF和UKF.仿真输出误差收敛曲线和误差协方差收敛曲线。 2.测试软件版本以及运行结果展示MATLAB2022A版本运行 (完整程序运行后无水印) 3.核心程序for i=1:Lekf-1z =…

Winform控件命名规则

C#控件命名规范控件分类控件名称命名规范说明数据显示控件DataGridViewdgv 数据绑定和定位控件BindingSourcebds BindingNavigatorbdn 文本编辑控件TextBoxtxt RichTextBoxrtxt MaskedTextBoxmtxt 信息显示控件Labellbl LinkLabelllbl StatusTripst ProgressBarpb 网页显示控件…

VMware中三种网络的区别

目录桥接模式仅主机模式NAT网络模式 桥接模式桥接模式 在Linux中,桥接模式通常指的是网络桥接(Network Bridging),它是一种将多个网络接口连接在一起的技术,形成一个局域网(LAN),使它们能够像在同一个网络中一样通信。仅主机模式仅主机网络 在仅主机模式下,虚拟网络是…

UE5之使用C++显示瞄准准星

1.创建控件蓝图 首先右键 用户界面---控件蓝图,创建一个控件蓝图CrosshairWidget,默认继承自UserWidget。在CrosshairWidget中新建一个Canvas Panel,再创建一个Image,加入准星图像并设置位置居中,这样准星的UI就完成了。 再添加一个图像,将其绘制为圆形盒体,这样就得到了…

20242802 2024-2025-2 《网络攻防实践》第二周作业

20242802 2024-2025-2 《网络攻防实践》第二周作业 目录 目录20242802 2024-2025-2 《网络攻防实践》第二周作业1. 实验要求2. 实验相关知识点nmap工具使用3. 实验详细过程3.1 从www.besti.edu.cn、baidu.com、sina.com.cn中选择一个DNS域名进行查询,获取如下信息:3.2尝试获取…

UE5之瞄准视角的俯仰偏移

1.创建瞄准姿势 复制瞄准动画,删除其中多余的帧,只保留瞄准的一帧,将其创建为一个单帧动画。然后将其复制成三份,分别用于表示瞄准三个姿势的up,middle,down。 将middle姿势动画的Additive动画类型修改为网格体空间,因为我们需要在网格空间创建叠加动画。基础姿势修改为…

2K star!三分钟搭建企业级后台系统,这款开源Java框架绝了!

"LikeAdmin Java是基于Spring Boot + Mybatis Plus + Vue 3的快速开发平台,内置RBAC权限管理、工作流引擎、数据可视化、三方登录等核心模块,助力开发者快速构建企业级中后台管理系统"2K star!三分钟搭建企业级后台系统,这款开源Java框架绝了!"LikeAdmin J…

震惊!C++程序真的从main开始吗?99%的程序员都答错了

嘿,朋友们好啊!我是小康。今天咱们来聊一个看似简单,但实际上99%的C++程序员都答错的问题:C++程序真的是从main函数开始执行的吗? 如果你毫不犹豫地回答"是",那恭喜你,你和大多数人一样——掉进了C++的第一个陷阱!别担心,等你看完这篇文章,你就能成为那个与…

11套!量产15W~1000W开关电源电路全套方案资料合集!

本系列小编给大家带来了15W到1000W完整量产版开关电源全系列,全套资料分期给大家分享。每套资料都包含详细的原理图,PCB图,变压器图纸,共模电感图纸,磁环图纸!点击下方链接获取! 15W开关电源方案👆👆👆(点击下载) 25W开关电源方案👆👆👆(点击下载) 30W开…

【每日一题】20250309

我所渴望的,不过是过上一种发自本心的生活,为什么竟会如此困难?【每日一题】已知 \(\odot C\) 过点 \(P(1,2)\),与 \(y\) 轴相交于点 \(Q(0,6)\).若过点 \(Q\) 作 \(\odot C\) 的切线 \(l\),其切线 \(l\) 与 \(x\) 轴平行,则 \(l\) 的方程为_________,\(\odot C\) 的标…