Kickstart +ftp+dhcp+tftp实现Linux系统的无人值守安装

简介:

基本原理及概念:

image

image

一、配服务器的IP地址:

image

二、yum 的配置如下:

1.[root@localhost ~]# mount /dev/cdrom /mnt/cdrom

2.[root@localhost ~]# vim /etc/yum.repos.d/rhel-debuginfo.repo

[rhel-server] //描述目录

name=Red Hat Enterprise Linux server //名称(不受影响)

baseurl=file:///mnt/cdrom/Server //准确目录

enabled=1 // 启用该功能

gpgcheck=1 //签名检测

gpgkey=file:///mnt/cdrom/RPM-GPG-KEY-redhat-release //钥匙文件

[rhel-vt]

name=Red Hat Enterprise Linux vt

baseurl=file:///mnt/cdrom/VT

enabled=1

gpgcheck=1

gpgkey=file:///mnt/cdrom/RPM-GPG-KEY-redhat-release

[rhel-cluster]

name=Red Hat Enterprise Linux cluster

baseurl=file:///mnt/cdrom/Cluster

enabled=1

gpgcheck=1

gpgkey=file:///mnt/cdrom/RPM-GPG-KEY-redhat-release

[rhel-clusterstorage]

name=Red Hat Enterprise Linux clusterstorage

baseurl=file:///mnt/cdrom/ClusterStorage

enabled=1

gpgcheck=1

gpgkey=file:///mnt/cdrom/RPM-GPG-KEY-redhat-release

3.[root@localhost ~]# yum repolist // 查看Yum的配置信息

三、kickstart的图形界面配置如下:

1.[root@localhost ~]# yum list all |grep kickstart

This system is not registered with RHN.

RHN support will be disabled.

pykickstart.noarch 0.43.5-1.el5 rhel-server

system-config-kickstart.noarch 2.6.19.8-2.el5 rhel-server

2.[root@localhost ~]# yum install -y system-config-kickstart

3.[root@localhost ~]#system-config-kickstart

image

       配时区   ROOT Password   Reboot  install text

image 

             FTP服务器    IP  文件存放的默认目录pub

image

内核参数: rhgb(以图形的方式引导) quiet (与用户无关的信息不显示)

image 内核参数参考的配置文件

 image

           分区时注意 swap是文件系统类型

image

        清楚MBR  移除所有已存在的分区    初始化磁盘及具体分区

image

   IP 地址通过eth0动态获取

image

   防火墙 SELinux 都关闭

image

开发包 GNOME

image

应用程序按需选择(为了启动快,尽量不要选声音与视频)

image

开发库及开发工具

image

管理工具及系统工具

image

         安装时携带执行的shell脚本(按需编写,可不写)

脚本命令如下:

A=`ifconfig |grep -i bcast | awk '{ print $2 }'`// 获取addr:ip地址

sed -i "s/HOSTNAME.*/HOSTNAME=gjp${A##*.}.baidu.com / " /etc/sysconfig/network  //红色字体(IP 地址的最后一段作为主机的标识)

sed -i "s/127.0.0.1.*/127.0.0.1 localhost.localdomain localhost / " /etc/hosts        //把红色的一行用蓝色的内容代替

B=${A#*:}  //获取IP地址

M=`ifconfig |grep -i Mask |awk '{print $4}'` //获取Mask:255.255.255.0

L=${M#*:} //获取子网掩码

sed -i "s/dhcp$/none/" /etc/sysconfig/network-scripts/ifcfg-eth0

  //把以dhcp结尾的改为none

echo "NETMASK=$L">> /etc/sysconfig/network-scripts/ifcfg-eth0

//把子网掩码追加到ifcfg-eth0文件里

echo "IPADDR=$B">> /etc/sysconfig/network-scripts/ifcfg-eth0

//把IP地址追加到ifcfg-eth0文件里

image

单击“文件”--“保存文件” 可重命名,在这里命名为k.cfg

image

       显示文件基本信息

4.[root@localhost ~]# vim /root/k.cfg

增加

4 key –skip        //遇到key的跳过

5 services --disable sendmail    //禁止sengmail服务

四、FTP服务器的配置如下:

1.clip_image002

2.image

3.[root@localhost ~]# ftp 192.168.10.100

Connected to 192.168.10.100.

220 (vsFTPd 2.0.5)

530 Please login with USER and PASS.

530 Please login with USER and PASS.

KERBEROS_V4 rejected as an authentication type

Name (192.168.10.100:root): anonymous   //用匿名登录

331 Please specify the password.

Password:                                      //密码为空,直接回车即可

230 Login successful.

Remote system type is UNIX.

Using binary mode to transfer files.

ftp> ls                    //显示存在的文件

227 Entering Passive Mode (192,168,10,100,32,213)

150 Here comes the directory listing.

drwxr-xr-x 2 0 0 4096 Aug 02 05:40 pub

ftp> cd pub

250 Directory successfully changed.

ftp> ls

227 Entering Passive Mode (192,168,10,100,252,253)

150 Here comes the directory listing.

-rw-r--r-- 1 0 0 5 Aug 02 05:40 index.html

4.[root@localhost ~]# cd /var/ftp/pub

[root@localhost pub]# ls

[root@localhost pub]# touch index.html   //创建一个文件

[root@localhost pub]# echo "123 ">index.html  // 写入内容

5.测试:

image

6.挂载光盘cd /dev/cdrom /mnt/cdrom   //把RED HAT 5.4的iso加载过来

[root@localhost cdrom]# cp -r . /var/ftp/pub //把镜像文件拷进去,用于安装时查找并安装

[root@localhost ftp]# du -sh // 显示ISO的大小,与实际对比,证明已经拷贝完成

2.9G

[root@localhost ~]# cp /root/k.cfg /var/ftp/pub

[root@localhost ~]# cd /var/ftp/pub //确保拷贝成功

[root@localhost pub]# ll -d k.cfg

-rw-r--r-- 1 root root 1914 Aug 2 20:17 k.cfg

 五.DHCP 服务器的配置如下:

1.[root@localhost Server]# yum install -y dhcp  (-y 表示安装时无需交互,)

2.[root@localhost ~]# vim /etc/dhcpd.conf

底行模式输入

:-r /usr/share/doc/dhcp-3.0.5/dhcpd.conf.sample 回车

subnet 192.168.10.0 netmask 255.255.255.0 {

7 # --- default gateway

8 option routers 192.168.10.254; //网关

9 option subnet-mask 255.255.255.0;   //Mask

option domain-name-servers 222.88.88.88; //DNS

22 range dynamic-bootp 192.168.10.11 192.168.10.99;  //可分配IP范围

3.[root@localhost ~]# service dhcpd restart //服务重启

Shutting down dhcpd: [ OK ]

Starting dhcpd: [ OK ]

六.TFTP服务器的配置:

1.[root@localhost ~]# rpm -qa |grep tftp-server //查询该服务是否已安装

tftp-server-0.49-2

2.[root@localhost ~]# rpm -ql tftp-server  // 定位tftp-server所在的路径

/etc/xinetd.d/tftp //依赖于超级守护进程

/tftpboot

/usr/sbin/in.tftpd

/usr/share/man/man8/in.tftpd.8.gz

/usr/share/man/man8/tftpd.8.gz

3.[root@localhost ~]# vim /etc/xinetd.d/tftp //编写超级守护进程

6 service tftp (注意:第一列为行号

7 {

8 socket_type = dgram

9 protocol = udp //69号端口

10 wait = yes //单线程

11 user = root

12 server = /usr/sbin/in.tftpd //真正的进程

13 server_args = -s /tftpboot

14 disable = no //必须开启

15 per_source = 11

16 cps = 100 2

17 flags = IPv4

18 }

4.[root@localhost ~]# grep tftp /etc/services 可查看服务类型、服务号

tftp 69/tcp

tftp 69/udp

tftp-mcast 1758/tcp

tftp-mcast 1758/udp

mtftp 1759/udp

subntbcst_tftp 247/tcp # SUBNTBCST_TFTP

subntbcst_tftp 247/udp # SUBNTBCST_TFTP

etftp 1818/tcp # Enhanced Trivial File Transfer Protocol

etftp 1818/udp # Enhanced Trivial File Transfer Protocol

tftps 3713/tcp # TFTP over TLS

tftps 3713/udp # TFTP over TLS

5.[root@localhost ~]# service xinetd restart //必须启用真正的进程

Stopping xinetd: [ OK ]

Starting xinetd: [ OK ]

6.[root@localhost ~]# cd /tftpboot/

[root@localhost tftpboot]# cp /usr/lib/syslinux/pxelinux.0 ./

[root@localhost tftpboot]# cp /mnt/cdrom/images/pxeboot/vmlinuz ./

[root@localhost tftpboot]# cp /mnt/cdrom/images/pxeboot/initrd.img ./

[root@localhost tftpboot]# mkdir -pv pxelinux.cfg  //创建目录

mkdir: created directory `pxelinux.cfg'

[root@localhost tftpboot]# cp /mnt/cdrom/isolinux/isolinux.cfg pxelinux.cfg/default  //拷贝文件到pxelinux.cfg目录下,并重命名default文件

7.[root@localhost tftpboot]# vim ./pxelinux.cfg/default //编辑default文件

3 timeout 6

12 append ks=ftp://192.168.10.100/pub/k.cfg ksdevice=eth0 initrd=initrd.img

8.[root@localhost ~]# vim /etc/dhcpd.conf

12 option domain-name "domain.org";

13 option domain-name-servers 222.88.88.88;

14 next-server 192.168.10.100 // tftp服务器地址

15 filename "pxelinux.0" //文件名

 七.安装成功后的界面与测试:

1.image

登录显示

2.关于SHELL的测试:

  2.1 查看sendmail的状态

image

2.2 查看HOSTNAME

image

image

2.3 查看动态获取ip 和追加的子网掩码及IP 地址

image

image

3.用startx

image



本文转自 gjp0731 51CTO博客,原文链接:http://blog.51cto.com/guojiping/951797


相关文章
|
7月前
|
Ubuntu Linux
计算机基础知识:linux系统怎么安装?
在虚拟机软件中创建一个新的虚拟机,并选择相应操作系统类型和硬盘空间大小等参数。将下载的 ISO 镜像文件加载到虚拟机中。启动虚拟机,进入安装界面,并按照步骤进行安装。安装完成后,可以在虚拟机中使用 Linux 系统。
|
5月前
|
安全 Linux iOS开发
Nessus Professional 10.10 Auto Installer for RHEL 10, AlmaLinux 10, Rocky Linux 10 - Nessus 自动化安装程序
Nessus Professional 10.10 Auto Installer for RHEL 10, AlmaLinux 10, Rocky Linux 10 - Nessus 自动化安装程序
381 6
Nessus Professional 10.10 Auto Installer for RHEL 10, AlmaLinux 10, Rocky Linux 10 - Nessus 自动化安装程序
|
5月前
|
消息中间件 Kafka Linux
Linux下安装Kafka 3.9.1
本文介绍Kafka 3.9.1版本的安装与配置,包括通过ZooKeeper或KRaft模式启动Kafka。涵盖环境变量设置、日志路径修改、集群UUID生成、存储格式化及服务启停操作,适用于Linux环境下的部署实践。
654 0
|
7月前
|
网络协议 关系型数据库 Linux
【App Service Linux】在Linux App Service中安装 tcpdump 并抓取网络包
在App Service for Linux环境中,无法像Windows一样直接使用网络排查工具抓包。本文介绍了如何通过TCPDUMP在Linux环境下抓取网络包,包括SSH进入容器、安装tcpdump、执行抓包命令及下载分析文件的完整操作步骤。
371 5
|
7月前
|
弹性计算 安全 Linux
阿里云服务器ECS安装宝塔Linux面板、安装网站(新手图文教程)
本教程详解如何在阿里云服务器上安装宝塔Linux面板,涵盖ECS服务器手动安装步骤,包括系统准备、远程连接、安装命令执行、端口开放及LNMP环境部署,手把手引导用户快速搭建网站环境。
|
7月前
|
Ubuntu 安全 Linux
Linux这5款微型发行版,体积小+精简,比win7运行还快,值得安装
以上5款微型发行版体积小且精简,如果你有台旧电脑,不妨试试?
|
6月前
|
Linux 应用服务中间件 Shell
二、Linux文本处理与文件操作核心命令
熟悉了Linux的基本“行走”后,就该拿起真正的“工具”干活了。用grep这个“放大镜”在文件里搜索内容,用find这个“探测器”在系统中寻找文件,再用tar把东西打包带走。最关键的是要学会使用管道符|,它像一条流水线,能把这些命令串联起来,让简单工具组合出强大的功能,比如 ps -ef | grep 'nginx' 就能快速找出nginx进程。
740 1
二、Linux文本处理与文件操作核心命令
|
6月前
|
Linux
linux命令—stat
`stat` 是 Linux 系统中用于查看文件或文件系统详细状态信息的命令。相比 `ls -l`,它提供更全面的信息,包括文件大小、权限、所有者、时间戳(最后访问、修改、状态变更时间)、inode 号、设备信息等。其常用选项包括 `-f` 查看文件系统状态、`-t` 以简洁格式输出、`-L` 跟踪符号链接,以及 `-c` 或 `--format` 自定义输出格式。通过这些选项,用户可以灵活获取所需信息,适用于系统调试、权限检查、磁盘管理等场景。
435 137