当前位置: 首页 > 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) 时间可能并没有补全,也就…...

Flask RESTful 示例

目录 1. 环境准备2. 安装依赖3. 修改main.py4. 运行应用5. API使用示例获取所有任务获取单个任务创建新任务更新任务删除任务 中文乱码问题: 下面创建一个简单的Flask RESTful API示例。首先,我们需要创建环境,安装必要的依赖,然后…...

【Oracle APEX开发小技巧12】

有如下需求: 有一个问题反馈页面,要实现在apex页面展示能直观看到反馈时间超过7天未处理的数据,方便管理员及时处理反馈。 我的方法:直接将逻辑写在SQL中,这样可以直接在页面展示 完整代码: SELECTSF.FE…...

Objective-C常用命名规范总结

【OC】常用命名规范总结 文章目录 【OC】常用命名规范总结1.类名(Class Name)2.协议名(Protocol Name)3.方法名(Method Name)4.属性名(Property Name)5.局部变量/实例变量(Local / Instance Variables&…...

最新SpringBoot+SpringCloud+Nacos微服务框架分享

文章目录 前言一、服务规划二、架构核心1.cloud的pom2.gateway的异常handler3.gateway的filter4、admin的pom5、admin的登录核心 三、code-helper分享总结 前言 最近有个活蛮赶的,根据Excel列的需求预估的工时直接打骨折,不要问我为什么,主要…...

在四层代理中还原真实客户端ngx_stream_realip_module

一、模块原理与价值 PROXY Protocol 回溯 第三方负载均衡(如 HAProxy、AWS NLB、阿里 SLB)发起上游连接时,将真实客户端 IP/Port 写入 PROXY Protocol v1/v2 头。Stream 层接收到头部后,ngx_stream_realip_module 从中提取原始信息…...

在Ubuntu中设置开机自动运行(sudo)指令的指南

在Ubuntu系统中,有时需要在系统启动时自动执行某些命令,特别是需要 sudo权限的指令。为了实现这一功能,可以使用多种方法,包括编写Systemd服务、配置 rc.local文件或使用 cron任务计划。本文将详细介绍这些方法,并提供…...

土地利用/土地覆盖遥感解译与基于CLUE模型未来变化情景预测;从基础到高级,涵盖ArcGIS数据处理、ENVI遥感解译与CLUE模型情景模拟等

🔍 土地利用/土地覆盖数据是生态、环境和气象等诸多领域模型的关键输入参数。通过遥感影像解译技术,可以精准获取历史或当前任何一个区域的土地利用/土地覆盖情况。这些数据不仅能够用于评估区域生态环境的变化趋势,还能有效评价重大生态工程…...

大模型多显卡多服务器并行计算方法与实践指南

一、分布式训练概述 大规模语言模型的训练通常需要分布式计算技术,以解决单机资源不足的问题。分布式训练主要分为两种模式: 数据并行:将数据分片到不同设备,每个设备拥有完整的模型副本 模型并行:将模型分割到不同设备,每个设备处理部分模型计算 现代大模型训练通常结合…...

【OSG学习笔记】Day 16: 骨骼动画与蒙皮(osgAnimation)

骨骼动画基础 骨骼动画是 3D 计算机图形中常用的技术,它通过以下两个主要组件实现角色动画。 骨骼系统 (Skeleton):由层级结构的骨头组成,类似于人体骨骼蒙皮 (Mesh Skinning):将模型网格顶点绑定到骨骼上,使骨骼移动…...

Spring是如何解决Bean的循环依赖:三级缓存机制

1、什么是 Bean 的循环依赖 在 Spring框架中,Bean 的循环依赖是指多个 Bean 之间‌互相持有对方引用‌,形成闭环依赖关系的现象。 多个 Bean 的依赖关系构成环形链路,例如: 双向依赖:Bean A 依赖 Bean B,同时 Bean B 也依赖 Bean A(A↔B)。链条循环: Bean A → Bean…...