下面给你几种常见且实用的做法,从“官方最小镜像”到“自己定制 CentOS Minimal 镜像”,按使用场景由浅入深说明。
如果你只是用 Minimal 系统,不需要自己制作:
选择:
CentOS-7-x86_64-Minimal-xxxx.iso
✅ 官方 Minimal 已裁剪图形界面、文档、开发工具
适合:
virt-install + 手动安装(最稳妥)virt-install \
--name centos-minimal \
--ram 1024 \
--disk size=10 \
--cpu 2 \
--os-variant centos7 \
--location CentOS-7-x86_64-Minimal.iso \
--network bridge=br0 \
--graphics none \
--console pty,target_type=serial
yum clean all
rm -rf /var/cache/yum
virsh shutdown centos-minimal
cp /var/lib/libvirt/images/centos-minimal.qcow2 .
✅ 可用于:
适合:自动化、CI
auth --enableshadow --passalgo=sha512
clearpart --all --initlabel
part / --fstype=xfs --grow --size=1
reboot
timezone Asia/Shanghai
lang en_US.UTF-8
keyboard us
network --bootproto=dhcp --device=eth0
rootpw --plaintext centos
firewall --disabled
selinux --disabled
%packages
@core
%end
%post
yum -y update
yum clean all
%end
virt-install \
--name centos-minimal-auto \
--ram 1024 \
--disk size=10 \
--location CentOS-7-x86_64-Minimal.iso \
--initrd-inject centos7-minimal.ks \
--extra-args "inst.ks=file:/centos7-minimal.ks" \
--graphics none
适合:容器 / chroot
docker pull centos:7
docker export $(docker create centos:7) > centos-minimal.tar
工具:
livecd-toolsloraxmock示例(CentOS 7):
yum install lorax
lorax --product CentOS --version 7 --release 1 ./result
⚠️ 复杂度高,通常用于发行版级别定制
# 删除无用包
yum remove -y iwl*firmware
yum autoremove -y
# 清理
yum clean all
rm -rf /var/log/*
rm -rf /tmp/*
# qcow2 → raw
qemu-img convert -f qcow2 -O raw img.qcow2 img.raw
# raw → vmdk
qemu-img convert -f raw -O vmdk img.raw img.vmdk
| 场景 | 推荐方式 |
|---|---|
| 直接用 | 官方 Minimal ISO |
| 私有云 | Minimal + Kickstart |
| 容器 | Docker centos:minimal |
| 高度定制 | lorax / livecd-tools |
如果你能告诉我:
我可以给你精确到命令的模板。