RHEL7下PXE+NFS+Kickstart无人值守安装操作系统,rhel7kickstart
RHEL7下PXE+NFS+Kickstart无人值守安装操作系统,rhel7kickstart
RHEL7下PXE+NFS+Kickstart无人值守安装操作系统 1.配置yum源 vim /etc/yum.repos.d/development.repo [development] name=yum server baseurl=file:///mnt enabled=1 gpgcheck=0 2.挂载光盘 mount /dev/sr0 /mnt 3.安装相关软件包 yum install dhcp syslinux xinetd tftp-server 4.配置dhcp vim /etc/dhcp/dhcpd.conf 5.添加内容 subnet 192.168.1.0 netmask 255.255.255.0 { range 192.168.1.50 192.168.1.90; option domain-name-servers 192.168.1.1; option domain-name "internal.example.org"; option routers 192.168.1.1; option broadcast-address 192.168.1.255; next-server 192.168.1.30; filename "pxelinux.0"; default-lease-time 600; max-lease-time 7200; } 6.启动服务和开机自启动 systemctl start dhcpd.service systemctl enable dhcpd.service 7.复制启动文件 cd /var/lib/tftpboot/ #进入/var/lib/tftpboot/ cp /mnt/isolinux/initrd.img /var/lib/tftpboot #复制initrd.img到/var/lib/tftpboot目录下 cp /mnt/isolinux/vmlinuz /var/lib/tftpboot/ #复制vmlinuz到/var/lib/tftpboot目录下 cp /usr/share/syslinux/pxelinux.0 /var/lib/tftpboot/ #复制pxelinux.0到/var/lib/tftpboot目录下 cp /mnt/isolinux/vesamenu.c32 /var/lib/tftpboot/ #复制vesamenu.c32到/var/lib/tftpboot目录下 cp /mnt/isolinux/boot.msg /var/lib/tftpboot/ #复制boot.msg到/var/lib/tftpboot目录下 cd /var/lib/tftpboot/ #进入/var/lib/tftpboot目录下 mkdir pxelinux.cfg #在/var/lib/tftpboot目录下创建pxelinux.cfg目录 cd pxelinux.cfg/ #进入pxelinux.cfg目录下 cp /mnt/isolinux/isolinux.cfg /var/lib/tftpboot/pxelinux.cfg/default #复制isolinux.cfg到pxelinux.cfg目录下并命名为default vim default #在/var/lib/tftpboot/pxelinux.cfg目录下修改default文件 label PXE-linux menu label ^Install System from PXE-RHEL7.0 kernel vmlinuz append initrd=initrd.img ks=nfs://192.168.1.30/rhel7/ks.cfg ksdevice=eno16777736 ip=dhcp quiet 8.配置tftp-server syslinux vim /etc/xinetd.d/tftp service tftp { socket_type = dgram protocol = udp wait = yes user = root server = /usr/sbin/in.tftpd server_args = -s /var/lib/tftpboot disable = no per_source = 11 cps = 100 2 flags = IPv4 } 9.启动服务和开机自启动 systemctl start xinetd.service systemctl enable xinetd.service 10.安装配置NFS yum -y install nfs* #安装nfs服务 mkdir /rhel7 #根下创建安装文件目录 cd /rhel7 #进入RHEL7.0目录 cp -rf /mnt/* /rhel7/ #复制光盘内容到rhel7目录下 vim /etc/exports #nfs共享系统文件 /rhel7 192.168.1.0/24(rw,sync,no_root_squash,no_all_squash) 11.启动服务 systemctl start nfs-server systemctl enable nfs-server 12.无图形界面配置kickstart一键安装应答文件 vim /rhel7/ks.cfg #platform=x86, AMD64, 或 Intel EM64T #version=DEVEL # Install OS instead of upgrade install # Keyboard layouts keyboard 'us'# Reboot after installation reboot # Root password rootpw --iscrypted $1$FyasdJen$q2zUDfVq.ln1FmIlP8O/m0 //root密码为7788521 # System timezone timezone Asia/Shanghai # System language lang en_US # Firewall configuration firewall --disabled # Network information network --bootproto=dhcp --device=eno16777736 # System authorization information auth --useshadow --passalgo=sha512 # Use graphical install graphical firstboot --disable # SELinux configuration selinux --disabled # Use NFS installation media nfs --server=192.168.1.30 --dir=/rhel7 # System bootloader configuration bootloader --location=mbr # Partition clearing information clearpart --all --initlabel # Disk partitioning information part /boot --asprimary --fstype="xfs" --size=500 part swap --asprimary --fstype="swap" --size=2048 part / --asprimary --fstype="xfs" --size=10240 part /home --fstype="xfs" --grow --size=1 %packages @base @core @desktop-debugging @dial-up @fonts @gnome-desktop @guest-agents @guest-desktop-agents @input-methods @internet-browser @kde-desktop @multimedia @print-client @x11 %end 图形化系统可以安装Kickstart yum -y install system-config-kickstart.noarch system-config-kickstart 13.修改SELinux状态 vim /etc/sysconfig/selinux SELINUX=disabled 14.开放防火墙服务和端口 firewall-cmd --permanent --add-service=dhcp firewall-cmd --permanent --add-service=nfs firewall-cmd --permanent --add-port=69/udp firewall-cmd --permanent --add-port=111/tcp firewall-cmd --permanent --add-port=111/udp firewall-cmd --permanent --add-port=20048/tcp firewall-cmd --permanent --add-port=20048/udp firewall-cmd --reload配置文件详细内容 1.dhcpd.conf文件内容 [root@localhost tftpboot]# cat /etc/dhcp/dhcpd.conf subnet 192.168.1.0 netmask 255.255.255.0 { range 192.168.1.50 192.168.1.90; option domain-name-servers 192.168.1.1; option domain-name "internal.example.org"; option routers 192.168.1.1; option broadcast-address 192.168.1.255; next-server 192.168.1.30; filename "pxelinux.0"; default-lease-time 600; max-lease-time 7200; } 2.tftp文件内容 [root@localhost tftpboot]# cat /etc/xinetd.d/tftp # default: off # description: The tftp server serves files using the trivial file transfer \ # protocol. The tftp protocol is often used to boot diskless \ # workstations, download configuration files to network-aware printers, \ # and to start the installation process for some operating systems. service tftp { socket_type = dgram protocol = udp wait = yes user = root server = /usr/sbin/in.tftpd server_args = -s /var/lib/tftpboot disable = no per_source = 11 cps = 100 2 flags = IPv4 } 3.default文件内容 [root@localhost tftpboot]# cat /var/lib/tftpboot/pxelinux.cfg/default default vesamenu.c32 timeout 600 display boot.msg # Clear the screen when exiting the menu, instead of leaving the menu displayed. # For vesamenu, this means the graphical background is still displayed without # the menu itself for as long as the screen remains in graphics mode. menu clear menu background splash.png menu title Red Hat Enterprise Linux 7.0 menu vshift 8 menu rows 18 menu margin 8 #menu hidden menu helpmsgrow 15 menu tabmsgrow 13 # Border Area menu color border * #00000000 #00000000 none # Selected item menu color sel 0 #ffffffff #00000000 none # Title bar menu color title 0 #ff7ba3d0 #00000000 none # Press [Tab] message menu color tabmsg 0 #ff3a6496 #00000000 none # Unselected menu item menu color unsel 0 #84b8ffff #00000000 none # Selected hotkey menu color hotsel 0 #84b8ffff #00000000 none # Unselected hotkey menu color hotkey 0 #ffffffff #00000000 none # Help text menu color help 0 #ffffffff #00000000 none # A scrollbar of some type? Not sure. menu color scrollbar 0 #ffffffff #ff355594 none # Timeout msg menu color timeout 0 #ffffffff #00000000 none menu color timeout_msg 0 #ffffffff #00000000 none # Command prompt text menu color cmdmark 0 #84b8ffff #00000000 none menu color cmdline 0 #ffffffff #00000000 none # Do not display the actual menu unless the user presses a key. All that is displayed is a timeout message. menu tabmsg Press Tab for full configuration options on menu items. menu separator # insert an empty line menu separator # insert an empty line label PXE-linux menu label ^Install System from PXE-RHEL7.0 kernel vmlinuz append initrd=initrd.img ks=nfs://192.168.1.30/rhel7/ks.cfg ksdevice=eno16777736 ip=dhcp quiet label linux menu label ^Install Red Hat Enterprise Linux 7.0 kernel vmlinuz append initrd=initrd.img inst.stage2=hd:LABEL=RHEL-7.0\x20Server.x86_64 quiet label check menu label Test this ^media & install Red Hat Enterprise Linux 7.0 menu default kernel vmlinuz append initrd=initrd.img inst.stage2=hd:LABEL=RHEL-7.0\x20Server.x86_64 rd.live.check quiet menu separator # insert an empty line # utilities submenu menu begin ^Troubleshooting menu title Troubleshooting label vesa menu indent count 5 menu label Install Red Hat Enterprise Linux 7.0 in ^basic graphics mode text help Try this option out if you're having trouble installing Red Hat Enterprise Linux 7.0. endtext kernel vmlinuz append initrd=initrd.img inst.stage2=hd:LABEL=RHEL-7.0\x20Server.x86_64 xdriver=vesa nomodeset quiet label rescue menu indent count 5 menu label ^Rescue a Red Hat Enterprise Linux system text help If the system will not boot, this lets you access files and edit config files to try to get it booting again. endtext kernel vmlinuz append initrd=initrd.img inst.stage2=hd:LABEL=RHEL-7.0\x20Server.x86_64 rescue quiet label memtest menu label Run a ^memory test text help If your system is having issues, a problem with your system's memory may be the cause. Use this utility to see if the memory is working correctly. endtext kernel memtest menu separator # insert an empty line label local menu label Boot from ^local drive localboot 0xffff menu separator # insert an empty line menu separator # insert an empty line label returntomain menu label Return to ^main menu menu exit menu end 4.ks.cfg文件内容 [root@localhost tftpboot]# cat /rhel7/ks.cfg #platform=x86, AMD64, 或 Intel EM64T #version=DEVEL # Install OS instead of upgrade install # Keyboard layouts keyboard 'us'# Reboot after installation reboot # Root password rootpw --iscrypted $1$FyasdJen$q2zUDfVq.ln1FmIlP8O/m0 # System timezone timezone Asia/Shanghai # System language lang en_US # Firewall configuration firewall --disabled # Network information network --bootproto=dhcp --device=eno16777736 # System authorization information auth --useshadow --passalgo=sha512 # Use graphical install graphical firstboot --disable # SELinux configuration selinux --disabled # Use NFS installation media nfs --server=192.168.1.30 --dir=/rhel7 # System bootloader configuration bootloader --location=mbr # Partition clearing information clearpart --all --initlabel # Disk partitioning information part /boot --asprimary --fstype="xfs" --size=500 part swap --asprimary --fstype="swap" --size=2048 part / --asprimary --fstype="xfs" --size=10240 part /home --fstype="xfs" --grow --size=1 %packages @base @core @desktop-debugging @dial-up @fonts @gnome-desktop @guest-agents @guest-desktop-agents @input-methods @internet-browser @kde-desktop @multimedia @print-client @x11 %end 5.tftpboot目录下的文件 [root@localhost tftpboot]# pwd /var/lib/tftpboot [root@localhost tftpboot]# ll 总用量 39688 -rw-r--r--. 1 root root 74 6月 4 17:10 boot.msg -r--r--r-- 1 root root 35544564 6月 4 17:28 initrd.img -rw-r--r-- 1 root root 26460 6月 4 17:29 pxelinux.0 drwxr-xr-x. 2 root root 20 6月 4 17:10 pxelinux.cfg -r--r--r-- 1 root root 155792 6月 4 17:33 vesamenu.c32 -r-xr-xr-x 1 root root 4902000 6月 4 17:28 vmlinuz 6.pxelinux.cfg目录下的文件 [root@localhost pxelinux.cfg]# pwd /var/lib/tftpboot/pxelinux.cfg [root@localhost pxelinux.cfg]# ll 总用量 4 -r--r--r--. 1 root root 3343 6月 4 17:10 default
评论暂时关闭