当前位置: 首页 > article >正文

【跟韩工学Ubuntu第2课】 第2章 磁盘、LVM、文件系统与扩容备份-001篇】

文章目录《Linux系统管理与服务配置》第2章 磁盘、LVM、文件系统与扩容备份2.1 磁盘基础分区与分区表2.2 实战1磁盘分区实操2.3 实战2LVM逻辑卷管理2.4 实战3文件系统管理2.5 实战4磁盘扩容与数据备份2.6 课后习题与实操任务《Linux系统管理与服务配置》第2章 磁盘、LVM、文件系统与扩容备份本章学习目标理解磁盘分区表MBR/GPT的原理与区别能根据场景正确选择。熟练使用fdisk和parted工具对磁盘进行分区。掌握LVM逻辑卷管理器的核心概念与全生命周期管理创建、扩容、缩减、快照。学会创建ext4/xfs文件系统并配置系统开机自动挂载。掌握磁盘扩容的整体流程及使用tar、rsync工具进行数据备份。通过综合实验培养解决实际生产环境中存储管理问题的能力。2.1 磁盘基础分区与分区表关键词磁道、扇区、柱面、分区、主引导记录MBR、GUID分区表GPT、UEFI2.1.1 为什么需要分区一块全新的物理硬盘就像一块未经划分的土地无法直接使用。分区的作用在于逻辑隔离将一块物理硬盘划分为多个独立的逻辑区域便于安装多个操作系统或分类管理数据。性能优化将频繁读写的系统文件与用户数据分开可提升磁盘I/O效率。安全与备份单个分区的损坏或故障通常不会影响其他分区简化了数据备份和恢复的粒度。2.1.2 主引导记录MBRMBR是传统的磁盘分区方案其结构存储在磁盘的第一个扇区512字节。结构组成引导代码446字节存储启动引导程序如GRUB第一阶段。分区表64字节记录最多4个主分区的信息。若要创建更多分区需将其中一个主分区指定为扩展分区并在其中创建多个逻辑分区。结束标志2字节固定为0x55AA用于标识MBR有效。主要限制最多支持4个主分区或3个主分区1个扩展分区。单个分区最大支持2.2TB。分区表信息仅有一份无备份损坏后可能导致数据丢失。2.1.3 GUID分区表GPTGPT是现代UEFI标准的组成部分旨在克服MBR的局限性。核心优势容量巨大理论上支持近乎无限的磁盘和分区容量受操作系统限制如Linux支持2^64个扇区。分区数量多通常操作系统支持最多128个主分区无需扩展/逻辑分区概念。健壮性强在磁盘的首部和尾部保存了分区表头和分区表项的冗余备份若一份损坏可尝试从另一份恢复。唯一标识每个磁盘和分区都有全局唯一标识符GUID。与启动方式的关系传统BIOS启动 MBR兼容性最好。UEFI启动 GPT现代标准启动更快、更安全。UEFI固件不识别MBR磁盘启动。注意通过兼容模式CSMUEFI也可启动MBR磁盘但会丧失UEFI优势。2.1.4 MBR与GPT对比总结特性MBRGPT最大磁盘容量2.2 TB理论无限如 9.4 ZB最大主分区数4个128个典型Linux实现分区表备份无有存储在磁盘末尾兼容性所有BIOS/UEFICSM模式现代UEFI或带CSM的UEFI适用场景旧系统、小容量虚拟机、遗留设备新硬件、大容量硬盘2TB、服务器课堂思考如果你需要为一台新采购的、配备4TB硬盘的服务器安装系统应选择哪种分区表为什么2.2 实战1磁盘分区实操目标为系统新增一块20GB的硬盘分别使用fdisk和parted工具将其划分为两个10GB的主分区。实验准备在虚拟机中添加一块20GB的新虚拟硬盘如/dev/sdb。使用lsblk或fdisk -l命令确认磁盘已被系统识别。2.2.1 使用fdisk工具适用于MBR/小容量GPTfdisk是交互式分区工具适合MBR和小于2TB的GPT磁盘。# 1. 对 /dev/sdb 进行操作sudofdisk/dev/sdb# 进入交互式命令行常用指令# n - 新建分区# p - 打印分区表# t - 更改分区类型 (例如将分区类型改为Linux LVM的 8e)# d - 删除分区# w - 写入并退出# q - 不保存退出# 2. 创建第一个分区 (10GB)Command(mforhelp): n Partition type: p(primary)# 选择主分区Partition number(1-4, default1):1First sector:[回车使用默认起始扇区]Last sector: 10G# 指定结束扇区为从起始开始的10G# 3. 创建第二个分区 (10GB)Command(mforhelp): n Partition type: p Partition number(2-4, default2):2First sector:[回车]Last sector:[回车]# 使用剩余所有空间# 4. 打印查看分区表Command(mforhelp): p# 5. 将分区类型改为 Linux LVM (可选为2.3节准备)Command(mforhelp): t Partition number(1,2, default2):1Hex code(type L to list all codes): 8e Changedtypeof partitionLinuxtoLinux LVM# 对分区2执行相同操作# 6. 保存并退出Command(mforhelp): w关键步骤与避坑指南确认设备务必确保操作的是正确的磁盘如sdb而非sda误操作可能导致系统崩溃。刷新内核分区表分区信息写入磁盘后需通知操作系统内核重新读取。sudopartprobe /dev/sdb# 或sudopartx-u/dev/sdbMBR限制如果用fdisk创建GPT分区需先使用g命令创建新的空GPT分区表。2.2.2 使用parted工具GPT及大磁盘首选parted支持更丰富的功能和非交互式操作是管理GPT磁盘和生产环境脚本化的首选。# 1. 启动parted并选择磁盘sudoparted/dev/sdb# 2. 查看当前分区表类型(parted)print# 如果显示为“msdos”即MBR需要先转换为GPT**此操作会清空所有数据**(parted)mklabel gpt# 3. 创建第一个分区 (10GB)(parted)mkpart primary ext4 1MiB 10GiB# 参数分区名 文件系统类型 起始 结束# 建议从1MiB开始保证4K对齐优化性能。# 4. 创建第二个分区 (使用剩余空间)(parted)mkpart primary ext4 10GiB100%# 5. 打印查看(parted)print# 6. 退出(parted)quit高级技巧parted支持命令行模式便于脚本化。sudoparted/dev/sdb mklabel gptsudoparted/dev/sdb mkpart primary ext4 1MiB 10GiBsudoparted/dev/sdb mkpart primary ext4 10GiB100%sudoparted/dev/sdb print2.3 实战2LVM逻辑卷管理核心概念LVM通过添加一个抽象层将物理存储设备聚合再灵活分配从而突破了物理分区的限制。物理卷PV, Physical Volume被LVM管理的底层物理存储硬盘、分区、RAID阵列。卷组VG, Volume Group由一个或多个PV组成的存储池。逻辑卷LV, Logical Volume从VG中划分出的逻辑块设备是用户最终格式化并使用的“分区”。实验目标使用上一节创建的/dev/sdb1和/dev/sdb2创建一个VG并从中创建、扩容、缩减一个LV最后制作快照。2.3.1 创建LVM# 1. 创建物理卷(PV)sudopvcreate /dev/sdb1 /dev/sdb2sudopvs# 查看简要信息sudopvdisplay# 查看详细信息# 2. 创建卷组(VG)命名为vg_datasudovgcreate vg_data /dev/sdb1 /dev/sdb2sudovgssudovgdisplay# 3. 从VG中创建逻辑卷(LV)命名为lv_www大小为15Gsudolvcreate-L15G-nlv_www vg_data# 参数-L 指定大小-n 指定名称sudolvssudolvdisplay# 此时LV的设备文件为 /dev/vg_data/lv_www 或 /dev/mapper/vg_data-lv_www2.3.2 扩展逻辑卷常见场景当lv_www空间不足时可以动态扩展。假设VG中还有剩余空间。# 1. 首先扩展LV的容量增加5Gsudolvextend-L5G /dev/vg_data/lv_www# 或扩展至指定大小sudo lvextend -L 20G /dev/vg_data/lv_www# 2. 然后扩展LV上的文件系统以ext4为例# 如果不执行此步操作系统仍认为文件系统是原来的大小sudoresize2fs /dev/vg_data/lv_www# 如果是xfs文件系统使用sudo xfs_growfs /挂载点2.3.3 扩展卷组当VG空间不足时如果VG空间已用完需先向VG中添加新的PV。# 假设新加了一块硬盘分区 /dev/sdc1sudopvcreate /dev/sdc1sudovgextend vg_data /dev/sdc1# 此后便可使用lvextend扩展LV2.3.4 缩减逻辑卷高风险操作务必先备份缩减操作有数据丢失风险必须先卸载文件系统并强制检查。# 1. 卸载文件系统sudoumount/dev/vg_data/lv_www# 2. 强制文件系统检查 (ext4)sudoe2fsck-f/dev/vg_data/lv_www# 3. 先缩减文件系统注意顺序与扩展相反# 将文件系统缩减到12Gsudoresize2fs /dev/vg_data/lv_www 12G# 4. 再缩减逻辑卷sudolvreduce-L12G /dev/vg_data/lv_www# 5. 重新挂载sudomount/dev/vg_data/lv_www /挂载点注意XFS文件系统不支持在线缩减。2.3.5 创建快照快照是LV在某一时刻的“冻结”副本用于数据备份或测试。# 创建一个名为 lv_www_snap 的快照大小为1G# 快照卷只需保存原始卷发生变化的数据块因此通常不需要和原始卷一样大sudolvcreate-L1G-s-nlv_www_snap /dev/vg_data/lv_www# 参数-s 创建快照-n 快照名称# 现在你可以将 /dev/vg_data/lv_www_snap 挂载到其他地方进行只读访问或备份# 备份完成后删除快照卷sudolvremove /dev/vg_data/lv_www_snap2.4 实战3文件系统管理2.4.1 创建文件系统在分区或LV上创建文件系统相当于“格式化”。# 在 /dev/vg_data/lv_www 上创建 ext4 文件系统sudomkfs.ext4 /dev/vg_data/lv_www# 创建 xfs 文件系统sudomkfs.xfs /dev/vg_data/lv_www# 查看已创建的文件系统信息sudoblkid /dev/vg_data/lv_www2.4.2 挂载与卸载# 临时挂载重启后失效sudomkdir/data/www# 创建挂载点目录sudomount/dev/vg_data/lv_www /data/www# 查看挂载信息df-hTmount|grepwww# 卸载sudoumount/data/www2.4.3 配置开机自动挂载编辑/etc/fstab文件添加一行配置。获取文件系统的UUID推荐使用比设备名更稳定sudoblkid /dev/vg_data/lv_www编辑/etc/fstab文件sudovim/etc/fstab添加如下一行以ext4为例UUID你的UUID /data/www ext4 defaults 0 2 # 或使用设备路径不推荐设备名可能变化 # /dev/vg_data/lv_www /data/www ext4 defaults 0 2字段解释UUID...或设备文件要挂载的设备。/data/www挂载点目录。ext4文件系统类型。defaults挂载选项包含rw, suid, dev, exec, auto, nouser, async等。0dump备份工具是否忽略此文件系统0为忽略。2系统启动时fsck磁盘检查的顺序。根文件系统为1其他通常为20表示不检查。测试配置是否正确sudomount-a# 挂载fstab中所有未挂载的设备mount|grep/data/www# 检查是否成功2.5 实战4磁盘扩容与数据备份2.5.1 磁盘扩容标准流程当服务器数据盘空间不足时标准扩容流程如下添加新物理磁盘。对磁盘分区fdisk/parted类型建议设为Linux LVM (8e)。创建物理卷sudo pvcreate /dev/sdX1。扩展卷组sudo vgextend 现有VG名 /dev/sdX1。扩展逻辑卷sudo lvextend -L 大小 /dev/VG名/LV名。扩展文件系统sudo resize2fs /dev/VG名/LV名ext4或sudo xfs_growfs /挂载点xfs。2.5.2 数据备份基础1. 使用tar进行归档备份tar适合创建完整的、可压缩的归档文件。# 备份 /data/www 目录到 /backup 目录以当前日期命名并启用gzip压缩sudotar-czpf/backup/www_backup_$(date%Y%m%d).tar.gz-C/data www# 参数-c 创建归档-z 用gzip压缩-p 保留权限-f 指定文件# -C /data 表示先切换到/data目录再打包其中的www目录避免归档文件中包含冗长的绝对路径。# 恢复备份到指定目录sudotar-xzpf/backup/www_backup_20231027.tar.gz-C/data/restore/# 参数-x 解压2. 使用rsync进行同步备份rsync采用增量同步效率极高适合定期备份或镜像目录。# 将本地 /data/www 目录同步到备份服务器或本地另一目录保持所有属性sudorsync-avz--delete/data/www/ userbackup_server:/backup/www/# 参数-a 归档模式保留属性-v 详细信息-z 传输时压缩--delete 删除目标端源端没有的文件使两边完全一致# 本地同步示例sudorsync-av/data/www/ /backup/www/备份策略建议定期执行通过cron计划任务实现自动化。异地备份备份数据应传输到另一台物理服务器或云存储。3-2-1原则至少保留3份备份使用2种不同介质其中1份异地保存。2.6 课后习题与实操任务一、 理论题简述MBR与GPT分区表的主要区别。在什么情况下必须使用GPTLVM的三个核心组件PV、VG、LV是什么简述它们之间的关系和LVM的主要优势。解释/etc/fstab文件中最后一行的两个数字例如0 2分别代表什么含义使用tar和rsync进行数据备份各自的优缺点和适用场景是什么二、 综合实战任务任务目标在一台Ubuntu Server虚拟机上完成以下操作模拟生产环境存储管理。环境准备为虚拟机添加三块20GB的虚拟磁盘sdb,sdc,sdd。磁盘分区将sdb磁盘划分为两个10GB的主分区sdb1,sdb2使用GPT分区表。将sdc整个磁盘作为一个分区sdc1使用MBR分区表。LVM创建与配置使用sdb1,sdb2,sdc1创建三个物理卷PV。用这三个PV创建一个名为vg_app的卷组VG。从vg_app中创建一个大小为30GB、名为lv_data的逻辑卷LV。在lv_data上创建xfs文件系统并挂载到/mnt/data。LVM扩容将第三块磁盘sdd20GB加入到vg_app中。将lv_data逻辑卷扩容15GB。在线扩展xfs文件系统使扩容生效。数据备份在/mnt/data中创建一些测试文件和目录。使用tar命令将/mnt/data完整备份到根目录下备份文件名为data_full_backup.tar.gz。使用rsync命令将/mnt/data同步到/root/data_backup/目录实现增量镜像。实验报告要求记录每一步使用的命令、命令输出截图或文本以及操作中遇到的问题和解决方案。

相关文章:

【跟韩工学Ubuntu第2课】 第2章 磁盘、LVM、文件系统与扩容备份-001篇】

文章目录《Linux系统管理与服务配置》第2章 磁盘、LVM、文件系统与扩容备份2.1 磁盘基础:分区与分区表2.2 实战1:磁盘分区实操2.3 实战2:LVM逻辑卷管理2.4 实战3:文件系统管理2.5 实战4:磁盘扩容与数据备份2.6 课后习题…...

AI系列:AI时代必懂的基础概念扫盲

目录 第一篇章:核心概念三兄弟 1. 人工智能(AI):让机器模仿人的智能 2. 机器学习(ML):实现AI的一种方法 3. 深度学习(DL):机器学习中非常强大的一种技术 …...

linux系统 Ventoy 制作U启

比起君子讷于言而敏于行,我更喜欢君子善于言且敏于行。 目录 1. 下载 Ventoy 2. 解压压缩包 3. 插入U盘并确认设备名 4. 安装Ventoy到U盘(会格式化U盘) 5. 复制ISO文件 6. 使用启动盘 Ventoy的优点 1. 下载 Ventoy wget https://github.com/v…...

Webpack5 处理 CSS文件

1、背景Webpack 本身仅能处理Js文件,无法识别CSS文件及代码。因此需在webpack.config.js文件中进行单独处理。2、基础框架搭建1、搭建简单项目框架执行 npm install -y 指令,生成 package.json文件执行 npm install webpack webpack-cli html-webpack-pl…...

华为OD机试双机位C卷-最佳植树距离(C/C++/Py/Java/Js/Go)

最佳植树距离 华为OD机试真题目录点击查看: 华为OD机试双机位C卷真题题库目录|机考题库 + 算法考点详解 华为OD上机考试2026双机位C卷 华为OD机试双机位C卷 200分题型 题目描述 按照环保公司要求,小明需要在沙化严重的地区进行植树防沙工作,初步目标是种植一条直线的树带…...

jqdatasdk与Python量化策略结合:构建你的第一个交易模型

jqdatasdk与Python量化策略结合:构建你的第一个交易模型 【免费下载链接】jqdatasdk 简单易用的量化金融数据包(easy utility for getting financial market data of China) 项目地址: https://gitcode.com/gh_mirrors/jq/jqdatasdk jqdatasdk是一款简单易用…...

Awesome Programming for Kids揭秘:从Scratch Jr.到Python Turtle的完美进阶路径

Awesome Programming for Kids揭秘:从Scratch Jr.到Python Turtle的完美进阶路径 【免费下载链接】awesome-programming-for-kids A curated list of resources for teaching kids programming. 项目地址: https://gitcode.com/gh_mirrors/aw/awesome-programmin…...

Zygisk API完全指南:用NeoZygisk开发模块的5个关键步骤

Zygisk API完全指南:用NeoZygisk开发模块的5个关键步骤 【免费下载链接】NeoZygisk Zygote injection with ptrace 项目地址: https://gitcode.com/gh_mirrors/ne/NeoZygisk NeoZygisk是一个基于ptrace的Zygote注入框架,它允许开发者构建模块并在…...

Awesome Programming for Kids深度解析:从玩具机器人到代码世界的桥梁

Awesome Programming for Kids深度解析:从玩具机器人到代码世界的桥梁 【免费下载链接】awesome-programming-for-kids A curated list of resources for teaching kids programming. 项目地址: https://gitcode.com/gh_mirrors/aw/awesome-programming-for-kids…...

multierr与标准库兼容性:errors.Is和errors.As完美结合

multierr与标准库兼容性:errors.Is和errors.As完美结合 【免费下载链接】multierr Combine one or more Go errors together 项目地址: https://gitcode.com/gh_mirrors/mu/multierr multierr是一个功能强大的Go错误处理库,允许开发者将一个或多个…...

汉字拼音转换神器pinyin:一站式解决注音、排序与检索难题

汉字拼音转换神器pinyin:一站式解决注音、排序与检索难题 【免费下载链接】pinyin :cn: 汉字拼音 ➜ hn z pīn yīn 项目地址: https://gitcode.com/gh_mirrors/pi/pinyin 在中文信息处理领域,准确高效的汉字拼音转换工具是不可或缺的基础组件。…...

避免90%状态错误:ADK-Python变量引用与上下文管理完全指南

避免90%状态错误:ADK-Python变量引用与上下文管理完全指南 【免费下载链接】adk-python 一款开源、代码优先的Python工具包,用于构建、评估和部署灵活可控的复杂 AI agents 项目地址: https://gitcode.com/GitHub_Trending/ad/adk-python ADK-Pyt…...

解决ActualBudget项目Docker启动失败:从环境配置到日志分析的全流程指南

解决ActualBudget项目Docker启动失败:从环境配置到日志分析的全流程指南 【免费下载链接】actual A local-first personal finance app 项目地址: https://gitcode.com/GitHub_Trending/ac/actual ActualBudget是一款本地优先的个人财务管理应用,…...

终极解决方案:ActualBudget在GrapheneOS移动端的JIT编译问题全攻略

终极解决方案:ActualBudget在GrapheneOS移动端的JIT编译问题全攻略 【免费下载链接】actual A local-first personal finance app 项目地址: https://gitcode.com/GitHub_Trending/ac/actual ActualBudget作为一款本地优先的个人财务管理应用,为用…...

告别快捷键冲突:AeroSpace与DBeaver完美兼容的终极解决方案

告别快捷键冲突:AeroSpace与DBeaver完美兼容的终极解决方案 【免费下载链接】AeroSpace AeroSpace is an i3-like tiling window manager for macOS 项目地址: https://gitcode.com/GitHub_Trending/ae/AeroSpace AeroSpace作为一款类i3的macOS窗口管理器&am…...

CTPN vs 传统OCR:为什么它是自然场景文本检测的终极选择

CTPN vs 传统OCR:为什么它是自然场景文本检测的终极选择 【免费下载链接】CTPN Detecting Text in Natural Image with Connectionist Text Proposal Network (ECCV16) 项目地址: https://gitcode.com/gh_mirrors/ct/CTPN CTPN(Connectionist Tex…...

Deepagents测试策略:确保AI代理系统的可靠性

Deepagents测试策略:确保AI代理系统的可靠性 【免费下载链接】deepagents Deepagents is an agent harness built on langchain and langgraph. Deep agents are equipped with a planning tool, a filesystem backend, and the ability to spawn subagents - makin…...

如何快速上手wmiexec-Pro?从安装到基本命令执行的完整指南

如何快速上手wmiexec-Pro?从安装到基本命令执行的完整指南 【免费下载链接】wmiexec-Pro New generation of wmiexec.py 项目地址: https://gitcode.com/gh_mirrors/wm/wmiexec-Pro wmiexec-Pro是新一代的wmiexec.py工具,专为Windows管理规范&…...

探索Swaptube分形渲染:Mandelbrot与Julia集的视觉艺术

探索Swaptube分形渲染:Mandelbrot与Julia集的视觉艺术 【免费下载链接】swaptube youtube video renderer 项目地址: https://gitcode.com/gh_mirrors/sw/swaptube Swaptube是一个功能强大的YouTube视频渲染项目,专注于分形艺术的视觉呈现。它通过…...

终极指南:如何突破K9s权限壁垒,轻松解决受限环境下的资源跳转难题

终极指南:如何突破K9s权限壁垒,轻松解决受限环境下的资源跳转难题 【免费下载链接】k9s 🐶 Kubernetes CLI To Manage Your Clusters In Style! 项目地址: https://gitcode.com/GitHub_Trending/k9s/k9s K9s是一款功能强大的Kubernete…...

告别复杂时间计算:ngx-moment让Angular开发效率提升300%

告别复杂时间计算:ngx-moment让Angular开发效率提升300% 【免费下载链接】ngx-moment urish/ngx-moment: 是一个用于 Angular 应用的时间处理库,可以方便地在 Angular 应用中处理和显示时间。适合对 Angular、时间处理和想要实现时间处理功能的开发者。 …...

告别传统复制粘贴!yanky.nvim的剪贴板历史管理功能详解

告别传统复制粘贴!yanky.nvim的剪贴板历史管理功能详解 【免费下载链接】yanky.nvim Improved Yank and Put functionalities for Neovim 项目地址: https://gitcode.com/gh_mirrors/ya/yanky.nvim yanky.nvim是一款专为Neovim打造的剪贴板增强插件&#xff…...

Geb自动化测试框架完全指南:从入门到精通的Groovy浏览器测试神器

Geb自动化测试框架完全指南:从入门到精通的Groovy浏览器测试神器 【免费下载链接】geb Very Groovy Browser Automation 项目地址: https://gitcode.com/gh_mirrors/ge/geb Geb是一款基于Groovy语言的浏览器自动化测试框架,它构建在WebDriver之上…...

Spleen 2.0.0新特性详解:全面支持CP437编码与Powerline符号

Spleen 2.0.0新特性详解:全面支持CP437编码与Powerline符号 【免费下载链接】spleen Monospaced bitmap fonts 项目地址: https://gitcode.com/gh_mirrors/sp/spleen Spleen是一款备受欢迎的等宽位图字体,2.0.0版本带来了令人期待的新特性&#x…...

SonarJS架构深度解析:从Java桥接到ESLint插件的实现原理

SonarJS架构深度解析:从Java桥接到ESLint插件的实现原理 【免费下载链接】SonarJS SonarSource Static Analyzer for JavaScript and TypeScript 项目地址: https://gitcode.com/gh_mirrors/so/SonarJS SonarJS作为SonarSource推出的JavaScript和TypeScript静…...

awesome-3d-printing完全指南:从入门到精通的终极资源清单

awesome-3d-printing完全指南:从入门到精通的终极资源清单 【免费下载链接】awesome-3d-printing A curated list of awesome 3D printing resources 项目地址: https://gitcode.com/gh_mirrors/aw/awesome-3d-printing awesome-3d-printing是一个精心策划的…...

Hasktorch优化器全解析:从SGD到Adam的高效参数更新策略

Hasktorch优化器全解析:从SGD到Adam的高效参数更新策略 【免费下载链接】hasktorch Tensors and neural networks in Haskell 项目地址: https://gitcode.com/gh_mirrors/ha/hasktorch Hasktorch作为Haskell生态中专注于张量和神经网络的深度学习库&#xff…...

如何用ksonnet快速生成和部署Kubernetes应用?5分钟上手教程

如何用ksonnet快速生成和部署Kubernetes应用?5分钟上手教程 【免费下载链接】ksonnet A CLI-supported framework that streamlines writing and deployment of Kubernetes configurations to multiple clusters. 项目地址: https://gitcode.com/gh_mirrors/ks/ks…...

Go eBPF高级技巧:使用Perf Events实现高效用户态与内核态通信

Go eBPF高级技巧:使用Perf Events实现高效用户态与内核态通信 【免费下载链接】goebpf Library to work with eBPF programs from Go 项目地址: https://gitcode.com/gh_mirrors/go/goebpf 在现代Linux系统开发中,eBPF(Extended Berke…...

轻松掌握ASP.NET Core Template服务层设计:DI容器配置与服务注册

轻松掌握ASP.NET Core Template服务层设计:DI容器配置与服务注册 【免费下载链接】ASP.NET-Core-Template A ready-to-use template for ASP.NET Core with repositories, services, models mapping, DI and StyleCop warnings fixed. 项目地址: https://gitcode.…...