Install
openclaw skills install loraxCreate bootable system images (ISO, disk, cloud) for Fedora/RHEL using Lorax with customizable packages, templates, and boot configurations.
openclaw skills install lorax名称 | Name: lorax
版本 | Version: 1.0.0
作者 | Author: OS Build Agent
领域 | Domain: System Image Creation (Fedora/RHEL)
专业的系统镜像构建技能,使用 Lorax 工具创建可启动的 ISO、 disk 镜像、云镜像等,支持 Anaconda 安装镜像和 Live 镜像。
Professional system image creation skill using Lorax tool to create bootable ISOs, disk images, cloud images, supporting Anaconda installer and Live images.
# RHEL/Fedora
dnf install lorax lorax-templates-generic
# 可选工具 | Optional tools
dnf install virt-install virt-builder guestfs-tools
/usr/share/lorax/
├── templates/ # 模板文件
│ ├── Fedora/ # Fedora 模板
│ └── RHEL/ # RHEL 模板
├── conf/ # 配置文件
└── logs/ # 日志文件
/var/tmp/lorax/ # 构建临时目录
# 基本安装 ISO 创建
# Basic installer ISO creation
lorax \
-p "Fedora" \
-v "39" \
-r "39" \
-o "/var/tmp/lorax" \
/path/to/repo
# 完整参数示例
# Full parameter example
lorax \
-p "Fedora" \
-v "39" \
-r "39" \
-o "/var/tmp/lorax" \
--project "Fedora Project" \
--release "Fedora 39" \
--variant "Server" \
--bugurl "https://bugzilla.redhat.com" \
--isfinal \
--installpkgs "fedora-release,systemd" \
--excludepkgs "firewalld" \
--macboot \
/path/to/repo
# 创建 Live ISO
# Create Live ISO
livemedia-creator \
--make-iso \
--iso-only \
--iso-name "Fedora-Live-Workstation-x86_64-39.iso" \
--project "Fedora" \
--releasever "39" \
--title "Fedora Live Workstation" \
--extra-kernel-args "rhgb quiet" \
--unionfs-config "NONE" \
/path/to/ks/file
# 使用自动安装文件
# Using kickstart file
livemedia-creator \
--make-iso \
--iso-only \
--ks "fedora-live.ks" \
--project "Fedora" \
--releasever "39" \
--title "Fedora Live" \
/path/to/repo
# 创建 QCOW2 镜像
# Create QCOW2 image
virt-builder \
--fedora-39 \
--size 20G \
--format qcow2 \
--output "fedora-39.qcow2" \
--install "fedora-release,systemd"
# 创建 VMDK 镜像
# Create VMDK image
virt-builder \
--fedora-39 \
--size 20G \
--format vmdk \
--output "fedora-39.vmdk"
# 创建多格式镜像
# Create multi-format image
virt-builder \
--fedora-39 \
--size 20G \
--output "fedora-39" \
--formats "qcow2,vmdk,vdi"
# 使用自定义模板
# Use custom template
lorax \
-p "CustomOS" \
-v "1.0" \
-r "1.0" \
-o "/var/tmp/lorax" \
--templatedir "/path/to/templates" \
--template "custom.tmpl" \
/path/to/repo
# 模板变量
# Template variables
lorax \
-p "CustomOS" \
-v "1.0" \
-r "1.0" \
-o "/var/tmp/lorax" \
--add-template-var "custom_var=value" \
--add-template-var "another_var=value2" \
/path/to/repo
# 安装特定包
# Install specific packages
lorax \
-p "Fedora" \
-v "39" \
-r "39" \
-o "/var/tmp/lorax" \
--installpkgs "fedora-release,systemd,grub2,kernel" \
--installpkgs "gnome-desktop,firefox" \
--excludepkgs "firewalld,postfix" \
/path/to/repo
# 使用包组
# Use package groups
lorax \
-p "Fedora" \
-v "39" \
-r "39" \
-o "/var/tmp/lorax" \
--installpkgs "@core,@standard" \
--excludepkgs "@debugging" \
/path/to/repo
# 创建 AWS AMI
# Create AWS AMI
virt-builder \
--fedora-39 \
--size 20G \
--format qcow2 \
--output "fedora-39-aws.qcow2" \
--install "fedora-release,cloud-init,aws-cli" \
--firstboot "/path/to/aws-config.sh"
# 创建 Azure VHD
# Create Azure VHD
virt-builder \
--fedora-39 \
--size 20G \
--format vpc \
--output "fedora-39-azure.vhd" \
--install "fedora-release,cloud-init,WALinuxAgent"
# 创建 GCE 镜像
# Create GCE image
virt-builder \
--fedora-39 \
--size 20G \
--format qcow2 \
--output "fedora-39-gce.qcow2" \
--install "fedora-release,cloud-init,google-compute-engine"
# 创建 OpenStack 镜像
# Create OpenStack image
virt-builder \
--fedora-39 \
--size 20G \
--format qcow2 \
--output "fedora-39-openstack.qcow2" \
--install "fedora-release,cloud-init"
# fedora-live.ks 示例
# fedora-live.ks example
cat > fedora-live.ks << 'EOF'
# Platform
x86_64
# Language
lang en_US.UTF-8
# Keyboard
keyboard us
# Timezone
timezone UTC
# Root password
rootpw --plaintext password
# Bootloader
bootloader --location=mbr
# Partitioning
clearpart --all --initlabel
part / --fstype="ext4" --size=10000
part swap --size=2000
# Packages
%packages
@core
fedora-release
systemd
kernel
grub2
firefox
gnome-desktop
%end
# Post installation
%post
dnf update -y
%end
EOF
# 创建自定义模板
# Create custom template
cat > /path/to/templates/custom.tmpl << 'EOF'
# 安装基本包
# Install base packages
installpkg fedora-release
installpkg systemd
installpkg kernel
installpkg grub2
# 安装桌面环境
# Install desktop environment
installpkg @gnome-desktop
# 创建目录
# Create directories
mkdir /etc/custom
mkdir /var/custom
# 复制文件
# Copy files
copy /path/to/config /etc/custom/config
# 运行命令
# Run commands
run ln -s /etc/custom/config /etc/config-link
# 设置启动项
# Setup boot
bootloader --append="rhgb quiet"
EOF
# 使用模板
# Use template
lorax \
-p "CustomOS" \
-v "1.0" \
-r "1.0" \
-o "/var/tmp/lorax" \
--templatedir "/path/to/templates" \
--template "custom.tmpl" \
/path/to/repo
# x86_64 架构
# x86_64 architecture
lorax \
-p "Fedora" \
-v "39" \
-r "39" \
-o "/var/tmp/lorax-x86_64" \
--arch "x86_64" \
/path/to/repo
# aarch64 架构
# aarch64 architecture
lorax \
-p "Fedora" \
-v "39" \
-r "39" \
-o "/var/tmp/lorax-aarch64" \
--arch "aarch64" \
/path/to/repo
# ppc64le 架构
# ppc64le architecture
lorax \
-p "Fedora" \
-v "39" \
-r "39" \
-o "/var/tmp/lorax-ppc64le" \
--arch "ppc64le" \
/path/to/repo
# 创建精简网络安装 ISO
# Create minimal network install ISO
lorax \
-p "Fedora" \
-v "39" \
-r "39" \
-o "/var/tmp/lorax-net" \
--netboot-only \
--installpkgs "anaconda,grub2,syslinux" \
/path/to/repo
| 选项 | Option | 描述 | Description |
|---|---|---|---|
-p | product | 产品名称 | Product name |
-v | version | 版本号 | Version |
-r | release | 发布号 | Release |
-o | output | 输出目录 | Output directory |
--arch | architecture | 目标架构 | Target architecture |
--installpkgs | install packages | 安装包列表 | Packages to install |
--excludepkgs | exclude packages | 排除包列表 | Packages to exclude |
--templatedir | template dir | 模板目录 | Template directory |
--template | template | 模板文件 | Template file |
--macboot | mac boot | Mac 启动支持 | Mac boot support |
| 选项 | Option | 描述 | Description |
|---|---|---|---|
--make-iso | make ISO | 创建 ISO | Create ISO |
--make-disk | make disk | 创建磁盘镜像 | Create disk image |
--iso-only | ISO only | 仅 ISO | ISO only |
--ks | kickstart | Kickstart 文件 | Kickstart file |
--title | title | 镜像标题 | Image title |
| 选项 | Option | 描述 | Description |
|---|---|---|---|
--format | format | 镜像格式 | Image format |
--size | size | 镜像大小 | Image size |
--output | output | 输出文件 | Output file |
--install | install | 安装包 | Install packages |
--firstboot | firstboot | 首次启动脚本 | Firstboot script |
# 查看详细日志
# View detailed logs
cat /var/tmp/lorax/lorax.log
# 检查依赖
# Check dependencies
dnf deplist lorax
# 清理临时文件
# Clean temp files
rm -rf /var/tmp/lorax/*
# 检查 GRUB 配置
# Check GRUB configuration
grep -r "menuentry" /boot/grub2/
# 验证内核
# Verify kernel
rpm -qa kernel
# 检查启动日志
# Check boot logs
journalctl -xb
MIT License