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

在rocklinux里面批量部署安装rocklinx9

部署三台Rockylinux9服务器

实验要求

1. 自动安装ubuntu server20以上版本

2. 自动部署三台Rockylinux9服务器,最小化安装,安装基础包,并设定国内源,设静态IP

实验步骤

安装软件

# yum源必须有epel源

# dnf install -y epel-release

#关闭防火墙和selinux

systemctl stop firewalld && systemctl disable firewalld

sed -i 's/^SELINUX=.*/SELINUX=disabled/g' /etc/selinux/config

# reboot

三、部署Cobbler

1、安装软件

# dnf -y install cobbler dhcp-server

dnf -y install syslinux dnf-plugins-core pykickstart

创建三台虚拟机,设定MAC地址

将三台虚拟机的MAC地址记录下来:
00:50:56:3B:64:2F

00:50:56:23:4A:8E

00:50:56:39:61:7A

2、配置cobbler

(1)修改Cobbler主配置文件

# 生成密文密码

openssl passwd -1 "qweasd"

$1$hNAtwYE4$.l1apMwOWpCDpSmE.MBdG0

#设置root密码

vi /etc/cobbler/settings.yaml

default_password_crypted: "$1$hNAtwYE4$.l1apMwOWpCDpSmE.MBdG0"

$1$hNAtwYE4$.l1apMwOWpCDpSmE.MBdG0

# cobbler接管dhcp

manage_dhcp: true

manage_dhcp_v4: true

#cobbler服务器地址

server: 192.168.8.100 --指定自己的ip地址

#tftp地址

next_server_v4: 192.168.100.128 --指定自己的ip地址

#cobbler接管tftp

manage_tftpd: true

#当bios首选启动项是pxe时,此项设置为true,可避免重启反复安装系统,否则为false

pxe_just_once: true

  1. 修改dhcp模版文件

添加

    host server01 {

       hardware ethernet 00:50:56:3B:64:2F;  

       fixed-address 192.168.8.110;         

     }

     host server02 {

       hardware ethernet 00:50:56:23:4A:8E;  

       fixed-address 192.168.8.120;         

     }

     host server03 {

       hardware ethernet 00:50:56:39:61:7A;  

       fixed-address 192.168.8.130;         

     }

# vi /etc/cobbler/dhcp.template

……

subnet 192.168.8.10 netmask 255.255.255.0 { #-网段和子网掩码

     option routers             192.168.8.2; #-网关

     option domain-name-servers  8.8.8.8; #dns

     option subnet-mask         255.255.255.0;

     range dynamic-bootp        192.168.8.100 192.168.8.254; #--起始范围

     host server01 {

       hardware ethernet 00:50:56:3B:64:2F;   #-复制自己生成的mac地址

       fixed-address 192.168.8.110;         

     }

     host server02 {

       hardware ethernet 00:50:56:23:4A:8E;  

       fixed-address 192.168.8.120;         

     }

     host server03 {

       hardware ethernet 00:50:56:39:61:7A;  

       fixed-address 192.168.8.130;         

     }

     default-lease-time         21600;

     max-lease-time             43200;

     next-server                $next_server_v4;

……

(3)启动cobbler,同步配置

# systemctl enable --now cobblerd

# cobbler sync

(4)启动dhcp、tftp、http服务

# systemctl enable --now tftp httpd dhcpd

#生成引导加载程序 cobbler mkloaders ,此命令适用cobblerV3.3.1及之后的版本

# cobbler mkloaders

# 查看

# ls /var/lib/cobbler/loaders/

grub         libcom32.c32  linux.c32  menu.c32

ldlinux.c32  libutil.c32   memdisk    pxelinux.0

3、导入系统镜像资源

# 挂载光盘镜像

# mount /dev/cdrom /mnt/ #虚拟机挂载

# 导入系统镜像资源,并查看

cobbler profile add --name rocky-9-x86_64 --distro=rocky-9-x86_64 --autoinstall=rocky9.ks

# cobbler distro list

rocky-9-x86_64

# cobbler profile list

rocky-9-x86_64

注:导入的镜像资源存放在 /var/www/cobbler/distro_mirror/目录中。

#重启cobbler,同步配置

# systemctl restart cobblerd

# cobbler sync

#查看生成的启动菜单

# cat /var/lib/tftpboot/pxelinux.cfg/default

定义应答文件

# vi /var/lib/cobbler/templates/rocky9.ks

# version=Rocky9

ignoredisk --only-use=nvme0n1

# Partition clearing information

clearpart --all --initlabel

# Use graphical install

text

# Use CDROM installation media

# url --url=http://192.168.8.10/cblr/links/rocky9-x86_64/

url --url=$tree

reboot

# Keyboard layouts

keyboard --vckeymap=cn --xlayouts='cn'

# System language

lang en_US.UTF-8

selinux --disabled

firewall --disabled

# Network information

network  --bootproto=dhcp --device=ens33 --ipv6=auto --activate

# Root password

rootpw --iscrypted $1$s14oAn0D$evyEyWiCjQGRaDrI8UeP90

# Run the Setup Agent on first boot

firstboot --enable

# Do not configure the X Window System

skipx

# System services

services --disabled="chronyd"

# System timezone

timezone Asia/Shanghai --isUtc --nontp

# Disk partitioning information

zerombr

part /boot --fstype="ext4" --ondisk=nvme0n1 --size=1024

part /swap --fstype="swap" --ondisk=nvme0n1 --size=2048

part / --fstype="xfs" --ondisk=nvme0n1 --grow --size=1

%packages

@base

@^minimal-environment

%end

%addon com_redhat_kdump --enable --reserve-mb='auto'

sed -e 's|^mirrorlist=|#mirrorlist=|g' \

    -e 's|^#baseurl=http://dl.rockylinux.org/$contentdir|baseurl=https://mirrors.aliyun.com/rockylinux|g' \

    -i.bak \

    /etc/yum.repos.d/Rocky-*.repo

%end

%post

#!/bin/sh

#设置允许root用户ssh登录

echo "PermitRootLogin yes" >>/etc/ssh/sshd_config

sysemctl restart sshd

%end

%anaconda

pwpolicy root --minlen=6 --minquality=1 --notstrict --nochanges --notempty

pwpolicy user --minlen=6 --minquality=1 --notstrict --nochanges --emptyok

pwpolicy luks --minlen=6 --minquality=1 --notstrict --nochanges --notempty

%end

#更新启动菜单

# cobbler profile remove --name rocky-9-x86_64

# cobbler profile add --name rocky-9-x86_64 --distro=rocky-9-x86_64 --autoinstall=rocky9.ks

重启cobbler,同步配置

# systemctl restart cobblerd

# cobbler sync

# cobbler profile list

rocky-9-x86_64

测试

相关文章:

在rocklinux里面批量部署安装rocklinx9

部署三台Rockylinux9服务器 实验要求 1. 自动安装ubuntu server20以上版本 2. 自动部署三台Rockylinux9服务器,最小化安装,安装基础包,并设定国内源,设静态IP 实验步骤 安装软件 # yum源必须有epel源 # dnf install -y epel-re…...

Manus:成为AI Agent领域的标杆

一、引言 官网:Manus 随着人工智能技术的飞速发展,AI Agent(智能体)作为人工智能领域的重要分支,正逐渐从概念走向现实,并在各行各业展现出巨大的应用潜力。在众多AI Agent产品中,Manus以其独…...

【Java开发指南 | 第三十四篇】IDEA没有Java Enterprise——解决方法

读者可订阅专栏:Java开发指南 |【CSDN秋说】 文章目录 1、新建Java项目2、单击项目名,并连续按两次shift键3、在搜索栏搜索"添加框架支持"4、勾选Web应用程序5、最终界面6、添加Tomcat 1、新建Java项目 2、单击项目名,并连续按两次…...

WinForm模态与非模态窗体

1、模态窗体 1)定义: 模态窗体是指当窗体显示时,用户必须先关闭该窗体,才能继续与应用程序的其他部分进行交互。 2)特点: 窗体以模态方式显示时,会阻塞主窗体的操作。用户必须处理完模态窗体上…...

静态时序分析:SDC约束命令set_ideal_network详解

相关阅读 静态时序分析https://blog.csdn.net/weixin_45791458/category_12567571.html?spm1001.2014.3001.5482 set_ideal_network命令可以将当前设计中的一组端口或引脚标记为理想网络源(设置端口或引脚对象的ideal_network_source属性为true)&#…...

【学习方法】技术开发者的提问智慧:如何高效获得解答?

技术开发者的提问智慧:如何高效获得解答? 在技术开发过程中,每个人都会遇到无法解决的问题。此时,我们通常会向团队、社区或论坛求助。然而,为什么有些人的问题能迅速得到解答,而有些人的问题却石沉大海&a…...

C++:入门详解(关于C与C++基本差别)

目录 一.C的第一个程序 二.命名空间(namespace) 1.命名空间的定义与使用: (1)命名空间里可以定义变量,函数,结构体等多种类型 (2)命名空间调用(&#xf…...

服务器上的nginx因漏洞扫描需要升级

前言 最近客户联系说nginx存在安全漏洞 F5 Nginx 安全漏洞(CVE-2024-7347) F5Nginx是美国F5公司的一款轻量级Web服务器/反向代理服务器及电子邮件(IMAP/POP3)代理服务器,在BSD-like协议下发行。F5 Nginx存在安全漏洞,该漏洞源于可能允许攻击者使用特制的…...

1688商品列表商品详情API接口全面解析

1688作为中国领先的B2B电子商务平台,汇聚了海量的商品资源,为商家和采购商提供了丰富的交易机会。为了更方便地获取和利用这些商品信息,1688平台提供了商品列表API接口,允许第三方开发者通过编程方式获取平台上的商品列表数据。本…...

【爬虫】开篇词

一、网络爬虫概述 二、网络爬虫的应用场景 三、爬虫的痛点 四、需要掌握哪些技术? 在这个信息爆炸的时代,如何高效地获取和处理海量数据成为一项核心技能。无论是数据分析、商业情报、学术研究,还是人工智能训练,网络爬虫&…...

如何在SpringBoot中灵活使用异步事件?

在现代的应用开发中,事件驱动的架构越来越受到欢迎。当我们在使用SpringBoot时,了解如何实现异步事件变得尤为重要。通过事件机制,我们能够在系统中实现松耦合的组件,让不同模块之间能够有效沟通,而无需直接依赖。本文…...

S19文件格式详解:汽车ECU软件升级中的核心镜像格式

文章目录 引言一、S19文件格式的起源与概述二、S19文件的核心结构三、S19在汽车ECU升级中的应用场景四、S19与其他格式的对比五、S19文件实例解析六、工具链支持与安全考量七、未来趋势与挑战结语引言 在汽车电子控制单元(ECU)的软件升级过程中,S19文件(也称为Motorola S-…...

git安装(windows)+vscode配置

安装git for windows在使用 Git 之前,建议设置全局的用户名称和电子邮件地址,这样每次提交代码时就可以自动关联您的身份信息。设置一次后,您无需每次都输入这些信息,Git 将自动使用您配置的全局用户信息。如果需要针对特定项目使…...

Python性能优化面试题及参考答案

目录 解释字典与列表在查找操作中的时间复杂度差异,如何利用哈希表特性提升性能? 为什么在只读场景下使用元组(tuple)比列表(list)更高效? 如何用 collections.deque 优化频繁的队列插入 / 删除操作? defaultdict 相比普通字典在哪些场景下能减少冗余代码并提升效率…...

【十四】Golang 接口

💢欢迎来到张胤尘的开源技术站 💥开源如江河,汇聚众志成。代码似星辰,照亮行征程。开源精神长,传承永不忘。携手共前行,未来更辉煌💥 文章目录 接口接口定义接口初始化接口嵌套空接口存储任意类…...

ngx_openssl_create_conf

ngx_openssl_create_conf 声明在 src\event\ngx_event_openssl.c static void *ngx_openssl_create_conf(ngx_cycle_t *cycle); 定义在 src\event\ngx_event_openssl.c static void * ngx_openssl_create_conf(ngx_cycle_t *cycle) {ngx_openssl_conf_t *oscf;oscf ngx_…...

54-WLAN 无线局域网配置方案-三层

一、网络拓扑说明 本 WLAN 网络由交换机(LSW1)、无线控制器(AC1)、无线接入点(AP1\2)以及无线客户端(STA1)组成。 用途VLANAC100AP200业务300 二、设备配置 二、设备配置 &#x…...

JVM 类加载原理之双亲委派机制(JDK8版本)

对 Java 程序的运行过程而言,类的加载依赖类加载器完成,而在 Java 默认的类加载器又分为启动类加载器、扩展类加载器和应用程序类加载器三种,但是一个类通常仅仅需要被加载一次即可,双亲委派机制即规定各个类该被何种类加载器加载…...

Mysql快速学习——《一》: Mysql的基础架构

了解mysql的基础架构, 理解大概的实现思想, 更有利与我们知之所以然, 是我们学习mysql起来思路更清晰, 效率更高. 思维导图: mysql 基础架构 mysql基础架构.png 1. 连接器 Mysql作为服务器,一个客户端的Sql连接过来就需要分配一个线程进行处理,这个线程…...

【华为OD机试真题29.9¥】(E卷,100分) - 运维日志排序(Java Python JS C++ C )

最新华为OD机试 题目描述 [运维工程师]采集到某产品线网运行一天产生的日志n条,现需根据日志时间先后顺序对日志进行排序,日志时间格式为H:M:S.N。 H表示小时(0~23)M表示分钟(0~59)S表示秒(0~59)N表示毫秒(0~999) 时间可能并没有补全,也就…...

调用支付宝接口响应40004 SYSTEM_ERROR问题排查

在对接支付宝API的时候,遇到了一些问题,记录一下排查过程。 Body:{"datadigital_fincloud_generalsaas_face_certify_initialize_response":{"msg":"Business Failed","code":"40004","sub_msg…...

Java面试专项一-准备篇

一、企业简历筛选规则 一般企业的简历筛选流程:首先由HR先筛选一部分简历后,在将简历给到对应的项目负责人后再进行下一步的操作。 HR如何筛选简历 例如:Boss直聘(招聘方平台) 直接按照条件进行筛选 例如&#xff1a…...

大语言模型(LLM)中的KV缓存压缩与动态稀疏注意力机制设计

随着大语言模型(LLM)参数规模的增长,推理阶段的内存占用和计算复杂度成为核心挑战。传统注意力机制的计算复杂度随序列长度呈二次方增长,而KV缓存的内存消耗可能高达数十GB(例如Llama2-7B处理100K token时需50GB内存&a…...

管理学院权限管理系统开发总结

文章目录 🎓 管理学院权限管理系统开发总结 - 现代化Web应用实践之路📝 项目概述🏗️ 技术架构设计后端技术栈前端技术栈 💡 核心功能特性1. 用户管理模块2. 权限管理系统3. 统计报表功能4. 用户体验优化 🗄️ 数据库设…...

A2A JS SDK 完整教程:快速入门指南

目录 什么是 A2A JS SDK?A2A JS 安装与设置A2A JS 核心概念创建你的第一个 A2A JS 代理A2A JS 服务端开发A2A JS 客户端使用A2A JS 高级特性A2A JS 最佳实践A2A JS 故障排除 什么是 A2A JS SDK? A2A JS SDK 是一个专为 JavaScript/TypeScript 开发者设计的强大库&#xff…...

Go 并发编程基础:通道(Channel)的使用

在 Go 中,Channel 是 Goroutine 之间通信的核心机制。它提供了一个线程安全的通信方式,用于在多个 Goroutine 之间传递数据,从而实现高效的并发编程。 本章将介绍 Channel 的基本概念、用法、缓冲、关闭机制以及 select 的使用。 一、Channel…...

纯 Java 项目(非 SpringBoot)集成 Mybatis-Plus 和 Mybatis-Plus-Join

纯 Java 项目(非 SpringBoot)集成 Mybatis-Plus 和 Mybatis-Plus-Join 1、依赖1.1、依赖版本1.2、pom.xml 2、代码2.1、SqlSession 构造器2.2、MybatisPlus代码生成器2.3、获取 config.yml 配置2.3.1、config.yml2.3.2、项目配置类 2.4、ftl 模板2.4.1、…...

RabbitMQ入门4.1.0版本(基于java、SpringBoot操作)

RabbitMQ 一、RabbitMQ概述 RabbitMQ RabbitMQ最初由LShift和CohesiveFT于2007年开发,后来由Pivotal Software Inc.(现为VMware子公司)接管。RabbitMQ 是一个开源的消息代理和队列服务器,用 Erlang 语言编写。广泛应用于各种分布…...

搭建DNS域名解析服务器(正向解析资源文件)

正向解析资源文件 1)准备工作 服务端及客户端都关闭安全软件 [rootlocalhost ~]# systemctl stop firewalld [rootlocalhost ~]# setenforce 0 2)服务端安装软件:bind 1.配置yum源 [rootlocalhost ~]# cat /etc/yum.repos.d/base.repo [Base…...

R 语言科研绘图第 55 期 --- 网络图-聚类

在发表科研论文的过程中,科研绘图是必不可少的,一张好看的图形会是文章很大的加分项。 为了便于使用,本系列文章介绍的所有绘图都已收录到了 sciRplot 项目中,获取方式: R 语言科研绘图模板 --- sciRplothttps://mp.…...