실제 -를 사용하여 사용자 정의 설치 시스템 파이

환경 :
CentOS Linux release 7.6.1810
VMware Workstation Pro 14

사용자 정의 시스템에 설치된 패키지

기본 파일 KS보기

[루트 @ Jaking ~] # 파이 보고서 
배포판 : 
========== 
이름 :에 CentOS-7.6-x86_64의 
아키텍처 : x86_64에 
TFTP 부팅 파일 : {} 
품종 : 레드햇 
코멘트 : 
Fetchable 파일 : {} 
initrd를 : /을 var에 / www /에서 파이 / ks_mirror /에 CentOS-7.6-x86_64에 / 이미지 / pxeboot / initrd.img 등 
커널 : /var/www/cobbler/ks_mirror/CentOS-7.6-x86_64/images/pxeboot/vmlinuz 
커널 옵션 : {} 
커널 옵션 (사후 설치) : {} 
OS 버전 : RHEL6 
킥 스타트 메타 데이터 : { '나무': 'HTTP : //@@http_server@@/cblr/links/CentOS-7.6-x86_64'}
관리 클래스 : [] 
소유자 : [ '관리자'] 
레드햇 관리 키 : <> 
레드햇 관리 서버 : <> 
템플릿 파일 : {} 


프로파일 : 
========== 
이름 :에 CentOS-7.6-x86_64의 
TFTP 부팅 파일 : {} 
설명 : 
DHCP 태그 : 기본 
배포 : CentOS는-7.6-x86_64에 
gPXE를 사용 하시겠습니까? : 0 
PXE 메뉴를 사용 하시겠습니까? : 1 
Fetchable 파일 : {} 
커널 옵션 : {} 
커널 옵션 (설치 후) : {} 
킥 스타트 : /var/lib/cobbler/kickstarts/sample_end.ks 
킥 스타트 메타 데이터 : {} 
관리 클래스 : [] 
관리 매개 변수 : <> 
이름 서버 : [] 
이름 서버는 경로 검색 : [] 
소유자 : [ '관리자'] 
부모 프로필 : 
내부 프록시 : 
레드 모자 관리 키 : <> 
레드햇 관리 서버 : <> 
레 포스 : [] 
서버 재정의 : <> 
템플릿 파일 : {} 
VIRT 자동 부팅 : 1 
VIRT 브릿지 : xenbr0를 
VIRT의 CPU : 1 
VIRT 디스크 드라이버 유형 : 원시 
VIRT 파일 크기 (GB) : 5 
VIRT 경로 : 
VIRT RAM (MB) : 512 
VIRT 유형 : KVM

참고 : 배포판 릴리스는 CD-ROM 이미지 정보이다. KS 프로파일은 응답 파일을 의미합니다. 그것은 실제 머신 이름에 설치 파이 시스템을 의미합니다.

[루트 Jaking ~ @] # cd를은 / var / lib 디렉토리 / 파이 / 킥 스타트 / 
[Jaking 킥 스타트 @ 루트] # LS 
default.ks legacy.ks sample_esx4.ks sample.ks 
esxi4-에서 ks.cfg pxerescue.ks sample_esxi4.ks sample_old. 종자 
esxi5-에서 ks.cfg sample_autoyast.xml sample_esxi5.ks sample.seed 
install_profiles sample_end.ks sample_esxi6.ks sample.seed.28

우리는 기본 구성 파일을 많이 볼 수 있습니다.

코 블러 서버에 업로드 CentOS7.ks. 패키지 관련 개발 도구를 설치 한이 구성 파일을 CentOS7.ks.

[루트 @ Jaking 킥 스타트] # RZ

실제 - 실제 사용 파이 사용자 지정 설치 시스템 - 시스템 파이를 장착 정의를 사용하여

[root@Jaking kickstarts]# ls
CentOS7.ks    install_profiles     sample_end.ks    sample_esxi6.ks  sample.seed.28
default.ks    legacy.ks            sample_esx4.ks   sample.ks
esxi4-ks.cfg  pxerescue.ks         sample_esxi4.ks  sample_old.seed
esxi5-ks.cfg  sample_autoyast.xml  sample_esxi5.ks  sample.seed

[root@Jaking kickstarts]# cat CentOS7.ks
# Cobbler for Kickstart Configurator for CentOS 7 by clsn
install
url --url=$tree
text
lang en_US.UTF-8
keyboard us
zerombr
bootloader --location=mbr --driveorder=sda --append="crashkernel=auto rhgb quiet"
#Network information
$SNIPPET('network_config')
#network --bootproto=dhcp --device=eth0 --onboot=yes --noipv6 --hostname=CentOS7
timezone --utc Asia/Shanghai
authconfig --enableshadow --passalgo=sha512
rootpw  --iscrypted $default_password_crypted
clearpart --all --initlabel
part /boot --fstype xfs --size 1024
part swap --size 1024
part / --fstype xfs --size 1 --grow
firstboot --disable
selinux --disabled
firewall --disabled
logging --level=info
reboot

%pre
$SNIPPET('log_ks_pre')
$SNIPPET('kickstart_start')
$SNIPPET('pre_install_network_config')
# Enable installation monitoring
$SNIPPET('pre_anamon')
%end

%packages
@additional-devel
@development
@platform-devel
bash-completion
chrony
dos2unix
kexec-tools
lrzsz
sysstat
tree
vim
wget
git
net-tools
%end

%post
systemctl disable postfix.service
%end

[root@Jaking kickstarts]# cobbler profile list  #查看当前启动项,使用的配置文件
   CentOS-7.6-x86_64

修改 name 是 CentOS-7.6-x86_64 的 kickstart 文件为 CentOS7.ks

[root@Jaking kickstarts]# cobbler profile edit --name CentOS-7.6-x86_64 --kickstart=/var/lib/cobbler/kickstarts/CentOS7.ks
[root@Jaking kickstarts]# cobbler report | grep Kickstart
Kickstart Metadata             : {'tree': 'http://@@http_server@@/cblr/links/CentOS-7.6-x86_64'}
Kickstart                      : /var/lib/cobbler/kickstarts/CentOS7.ks
Kickstart Metadata             : {}

通过给内核传参数,修改网卡名称为 eth0

[root@Jaking kickstarts]# cobbler profile edit --name CentOS-7.6-x86_64 --kopts='net.ifnames=0 biosdevname=0'

配置文件内容如下:

[root@Jaking kickstarts]# vim CentOS7.ks #查看配置文件中的,默认就可以,不需要修改
# Cobbler for Kickstart Configurator for CentOS 7 by clsn
Install                 #安装系统
url --url=$tree      #url 地址为 Cobbler 内置变量
text                    #文本方式安装,修改为图形界面则为 Graphical
lang en_US.UTF-8 #语言
keyboard us         #键盘
zerombr              #该参数用于清除引导信息,需要让其生效可以在参数后添加 yes 即可。可选项,一般不用。
bootloader --location=mbr --driveorder=sda --append="crashkernel=auto rhgb quiet"
#指定引导装载程序怎样被安装.对于安装和升级,这个选项都是必需的.
#Network information
$SNIPPET('network_config') #该参数表示使用下方%pre 中的脚本来配置网络,相关脚本存放于/var/lib/cobbler/snippets
#如果不需要脚本配置可启用以下配置
#network --bootproto=dhcp --device=eth0 --onboot=yes --noipv6
--hostname=CentOS7
timezone --utc Asia/Shanghai #时区
authconfig --enableshadow --passalgo=sha512 #加密 shadow
rootpw --iscrypted $default_password_crypted #设置 root 密码
clearpart --all --initlabel #--all 初除所有分区,后者将磁盘标签初始化为缺省值设置。
part /boot --fstype xfs --size 1024 #boot分区大小
part swap --size 1024 #swap分区大小
part / --fstype xfs --size 1 --grow #根分区大小
firstboot --disable #决定是否在系统第一次引导时启动"设置代理”,禁用。
selinux --disabled #在系统里设置 SELinux 状态
firewall --disabled #在系统狸设置而防火墙状态
logging --level=info #这个命令控制安装过程中anaconda的错误日志,它对安装好的系统没有影响。
reboot #安装后重启
%pre #pre 中定了前面使用的具体脚本名称。
$SNIPPET('log_ks_pre')
$SNIPPET('kickstart_start')
$SNIPPET('pre_install_network_config')
# Enable installation monitoring
$SNIPPET('pre_anamon')
%end
%packages #自定义安装内容,这里可以可以自行生成 ks 文件然后把对应的配置复制到这里。当前配置为最小化安装,以及安装系统常用工具。
@additional-devel
@development
@platform-devel
bash-completion
chrony
dos2unix
kexec-tools
lrzsz
sysstat
tree
vim
wget
git
net-tools
%end
%post #安装后执行操作,可以执行脚本也可以直接执行命令。
systemctl disable postfix.service
%end

定制 Cobbler 引导菜单(名称、超时时间、默认启动菜单)

[root@Jaking kickstarts]# vim /etc/cobbler/pxe/pxedefault.template
DEFAULT menu
PROMPT 0
MENU TITLE Jaking #菜单名称
TIMEOUT 100 #超时时间
TOTALTIMEOUT 6000
ONTIMEOUT $pxe_timeout_profile

LABEL local
        MENU LABEL (local)
        MENU DEFAULT
        LOCALBOOT -1
        
$pxe_menu_items   #该变量是我自定义的引导菜单,复制到 LABEL local 配置项上方,否则默认启动还是 local。

MENU end

同步 Cobbler 配置

[root@Jaking kickstarts]# systemctl restart cobblerd
[root@Jaking kickstarts]# cobbler sync
task started: 2020-01-04_050537_sync
task started (id=Sync, time=Sat Jan  4 05:05:37 2020)
running pre-sync triggers
cleaning trees
removing: /var/www/cobbler/images/CentOS-7.6-x86_64
removing: /var/lib/tftpboot/pxelinux.cfg/default
removing: /var/lib/tftpboot/grub/images
removing: /var/lib/tftpboot/grub/grub-x86.efi
removing: /var/lib/tftpboot/grub/grub-x86_64.efi
removing: /var/lib/tftpboot/grub/efidefault
removing: /var/lib/tftpboot/images/CentOS-7.6-x86_64
removing: /var/lib/tftpboot/s390x/profile_list
copying bootloaders
trying hardlink /var/lib/cobbler/loaders/grub-x86.efi -> /var/lib/tftpboot/grub/grub-x86.efi
trying hardlink /var/lib/cobbler/loaders/grub-x86_64.efi -> /var/lib/tftpboot/grub/grub-x86_64.efi
copying distros to tftpboot
copying files for distro: CentOS-7.6-x86_64
trying hardlink /var/www/cobbler/ks_mirror/CentOS-7.6-x86_64/images/pxeboot/vmlinuz -> /var/lib/tftpboot/images/CentOS-7.6-x86_64/vmlinuz
trying hardlink /var/www/cobbler/ks_mirror/CentOS-7.6-x86_64/images/pxeboot/initrd.img -> /var/lib/tftpboot/images/CentOS-7.6-x86_64/initrd.img
copying images
generating PXE configuration files
generating PXE menu structure
copying files for distro: CentOS-7.6-x86_64
trying hardlink /var/www/cobbler/ks_mirror/CentOS-7.6-x86_64/images/pxeboot/vmlinuz -> /var/www/cobbler/images/CentOS-7.6-x86_64/vmlinuz
trying hardlink /var/www/cobbler/ks_mirror/CentOS-7.6-x86_64/images/pxeboot/initrd.img -> /var/www/cobbler/images/CentOS-7.6-x86_64/initrd.img
Writing template files for CentOS-7.6-x86_64
rendering DHCP files
generating /etc/dhcp/dhcpd.conf
rendering TFTPD files
generating /etc/xinetd.d/tftp
processing boot_files for distro: CentOS-7.6-x86_64
cleaning link caches
running post-sync triggers
running python triggers from /var/lib/cobbler/triggers/sync/post/*
running python trigger cobbler.modules.sync_post_restart_services
running: dhcpd -t -q
received on stdout: 
received on stderr: 
running: service dhcpd restart
received on stdout: 
received on stderr: Redirecting to /bin/systemctl restart dhcpd.service

running shell triggers from /var/lib/cobbler/triggers/sync/post/*
running python triggers from /var/lib/cobbler/triggers/change/*
running python trigger cobbler.modules.manage_genders
running python trigger cobbler.modules.scm_track
running shell triggers from /var/lib/cobbler/triggers/change/*
*** TASK COMPLETE ***

新建虚拟机进行测试。

실제 - 실제 사용 파이 사용자 지정 설치 시스템 - 시스템 파이를 장착 정의를 사용하여

注意:内存要足够大,网络模式要和 Cobbler 服务端的网络模式一致。

创建过程省略,直接来到开机启动界面:

실제 - 실제 사용 파이 사용자 지정 설치 시스템 - 시스템 파이를 장착 정의를 사용하여

실제 - 실제 사용 파이 사용자 지정 설치 시스템 - 시스템 파이를 장착 정의를 사용하여

可以看到,需要安装 1262 个包,不再是原来的最小化安装了。

실제 - 실제 사용 파이 사용자 지정 설치 시스템 - 시스템 파이를 장착 정의를 사용하여

安装成功后,默认启动命令行模式
输入 root 123456 登录系统:

실제 - 실제 사용 파이 사용자 지정 설치 시스템 - 시스템 파이를 장착 정의를 사용하여

设置默认启动模式为图形化模式 graphical.target

[루트 @ localhost를 ~] # systemctl GET-기본 
multi-user.target 
[루트 @ localhost를 ~] # 개의 systemctl 세트 기본은 graphical.target 
제거 된 심볼릭 링크 /etc/systemd/system/default.target을. 
/etc/systemd/system/default.target에서 만든 심볼릭 링크는 /usr/lib/systemd/system/graphical.target합니다. 
[루트 @ localhost를 ~] # systemctl GET-기본                  
graphical.target 
[루트 @ localhost를 ~] # 재부팅

실제 - 실제 사용 파이 사용자 지정 설치 시스템 - 시스템 파이를 장착 정의를 사용하여

당신은 일반 그래픽 모드를 시작할 수 없습니다

솔루션

그래픽 소프트웨어 설치

[루트 @ localhost를 ~] # yum을 설치 -y으로 Xorg * 그놈 * GLX *

에 그래픽 모드 스위치

[루트 @ localhost를 ~] # 초기화 (5)

실제 - 실제 사용 파이 사용자 지정 설치 시스템 - 시스템 파이를 장착 정의를 사용하여
실제 - 실제 사용 파이 사용자 지정 설치 시스템 - 시스템 파이를 장착 정의를 사용하여

이 문서 원본 주소 : https://www.linuxprobe.com/?p=170731 편집기 : 전기 체스, 감사 : 팡 포에 의해

검토 클라이언트 시스템에 설치된 기본 킥 스타트 부팅 파일, 시스템의 기본 설치를 사용하여, 좋은의 파이 서버를 구축 한 후 최소화됩니다. 클라이언트 시스템의 사용자 지정 설치를 실현하기로 우리는 그렇게 킥 스타트 부팅 파일을 사용자 정의 할 수 있습니다.

추천

출처www.cnblogs.com/probemark/p/12210328.html