CentOSの7上のPXEサーバをインストールします。

著者:張瑞フラグ/プロトンIT教育グループRHCA講師

PXE、すなわち、プリブートは、「クライアント/サーバ」モードでの作業「を起動する前に動作環境」として翻訳、環境頭文字を実行し、インストール、およびそれらがオペレーティングシステムのインストールを支援するためにコンピュータのオペレーティングシステムなしでネットワークブートを介してコンピュータを私たちに聞かせすることができます。この環境のインストールは、オペレーティングシステムの機能をインストールするには、ネットワーク・サーバを提供することができ、それは、PXEサーバです。

インストールされているオペレーティングシステムは、インストールプロセスが、私たちは逃げることができなかった、随時セットアップの質問に答える必要があることを知っています。以前のオペレーティングシステムをインストールするためにCDを使用し、また、あなたはプロンプトタイムリーな交換用ディスクに従って、最終的に維持する必要があります。同社は、このようなインストールを数十人をインストールするには、一度、新しいオフィスを開設したり、コンピュータの数百人が、また、プラットフォームなら、それは死には本当にあまりにも疲れすることができます。

この記事では、VMware Worksation上でLinuxのCentOS 7を実行するPXEサーバを搭載し、かつクライアントホストとして別の仮想マシンの行為を作成し、プロセスのネットワーク・オペレーティング・システムがインストールされていることを確認します。さて、6回とコマンドチュートリアル、ほとんどレイダースのLinuxを検索することが負担するあまり、私はLinuxのCentOSのは7にPXEサーバをインストールするには、一緒にこの記事を置きます。さて、前置きなしに、我々はまっすぐに行きます。

次のタスクを実行するために、CentOSの7 PXEサーバにインストールするには:
1、インストールDHCP、TFTP、vsftpdはサーバソフトウェア
2は、例えば、IPアドレスを設定:192.168.1.1を
。3、SELinuxの、firewalldを閉じる
。4、dhcpdの配置され、TFTP
5、FTPサーバの入力ディレクトリにCentOSの7イメージファイルを展開します

具体的な手順

ステップ01

安装のdhcpd、TFTP、SYSLINUX、wgetの和にvsftpd
のyum -yのDHCPのtftp TFTPサーバのsyslinuxのwgetにvsftpdをインストール

最初のステップ02

SELinuxを閉じ、ファイアウォール
SELINUXを確実に変更は/ etc / selinuxを/ configに、=無効手動で
setenforce 0
systemctlはfirewalld無効に
STOPがfirewalld systemctl
電源オフを

ステップ03

仮想マシンにVMwareネットワークアダプタがに設定されている「ブリッジモード。」

ステップ04

あなたが自由にCentOSの7のためのIPアドレスを設定することができますので、この時間は、インターネットを必要としません。
CONショーnmcli
nmcli CONモディens32 ipv4.methodマニュアルipv4.addresses 192.168.1.1/24
#私のネットワークインタフェースIDはens32です。だから、IPが192.168.1.1に設定します。
アップCON ens32 nmcli
nmcli CONショーは、
腹腔
192.168.1.1正常に設定を確認するために#を。

ステップ05

DHCPサーバを設定します。
vimの/etc/dhcp/dhcpd.conf
次のようにその設定ファイルを確認してください。

 ddns-update-style interim;
 ignore client-updates;
 authoritative;
 allow booting;
 allow bootp;
 allow unknown-clients;
 
# A slightly different configuration for an internal subnet.
 subnet 192.168.1.0 netmask 255.255.255.0 
{
   range 192.168.1.2 192.168.1.253;
   option domain-name-servers 192.168.1.1;
   option domain-name "server1.example.com";
   option routers 192.168.1.1;
   option broadcast-address 192.168.1.255;
   default-lease-time 600;
   max-lease-time 7200;
 
   # PXE SERVER IP
   next-server 192.168.1.1; #  DHCP server ip
   filename "pxelinux.0";
 }

これまでのところ、先に言及し、ファイル名pxel​​inux.0はまだ場所に置かれていません。その最終的な位置は/tftpboot/pxelinux.0ですが、名前だけがうまく、ここにパスを使用しないでください。各ラインの端の上にセミコロン(;)。

ステップ06

TFTPサーバにxinetdを設定して、TFTPサービスはすぐにxinetdの管理に引き渡されます。
/etc/xinetd.d/tftp vimの
コンテンツ/etc/xinetd.d/tftp次のように:

service tftp
{
     socket_type             = dgram
     protocol                = udp
     wait                    = yes
     user                    = root
     server                  = /usr/sbin/in.tftpd
     server_args             = -s /tftpboot
     disable                 = no
     per_source              = 11
     cps                     = 100 2
     flags                   = IPv4
 }


私たちは、TFTPサービスは、/ tftpbootのに移動した位置にすると、プログラムが信じ続けあるだろうという点で、そのパスは/ var / libに/ tftpbootの中に、私たちは戻ってそれを変更する必要があります。
/usr/lib/systemd/system/tftp.service vimの
ExecStart =は/ usr / sbinに/は、in.tftpd -sの/ var / libに/ tftpbootの
ExecStart =は/ usr / sbinに/:に変更は、in.tftpd -s / tftpbootを
参照してください。 、に対応するコンテンツ/etc/xinetd.d/tftpと一致する唯一の方法。

ステップ07

TFTPサーバネットワークブートファイルを設定します。パスの/ tftpbootを作成することによって開始します。
ます。mkdir / tftpbootに
はchmod 777 / tftpbootを

 CP -v /usr/share/syslinux/pxelinux.0 / tftpbootの
 CP -v /usr/share/syslinux/menu.c32 / tftpbootの
 CP -vを/ usr / share / syslinuxの/ memdisk / tftpbootの
 CP -vを/ usr / share /syslinux/mboot.c32 / tftpbootの
 CP -v /usr/share/syslinux/chain.c32の/ tftpboot

二つのパスを作成します:
MKDIR /tftpboot/pxelinux.cfg
ます。mkdir / tftpbootを/ネットブート/

ステップ08

FTPフォルダへのCentOSのISOファイルのリリース。これを行うには、CentOSのISOファイル7がなければなりません。私は、仮想ディスクとして仮想マシンにマウントしたいです。下記に示すような手順:

画面のディスクアイコンの右下をクリックして、短いメニュー「ホストに接続」を選択
lsblkビューディスクは、マウントパスを
このようSR0 / RUN /メディア/ルート/として。7のCentOS x86_64で
ます。mkdir -p / VAR / FTP /パブ
/ CP -R&LT RUN /メディア/ルート/ 'のCentOS x86_64の7' / *は/ var / FTP /パブ
"のCentOS x86_64の7"引用符を使用、またはエラーが発生します。

ステップ09

あなたは、ディレクトリの場所をコピーするために使用するブートイメージファイル。
CPは/ var / FTP /パブ/画像/ pxebootと/ vmlinuzでは/ tftpboot /ネットブート/
CP /var/ftp/pub/images/pxeboot/initrd.imgの/ tftpboot /ネットブート/

ステップ10

ks.cfgと名付けキックスタート、つまり無人インストールファイルを作成します。
Vimの/var/ftp/pub/ks.cfg
次のように読み取ります。
 

#platform=x86, AMD64, or Intel EM64T
 #version=DEVEL
 # Firewall configuration
 firewall --disabled
 # Install OS instead of upgrade
 install
 # Use NFS installation media
 url --url="ftp://192.168.1.1/pub/"
 rootpw --plaintext 123456
#root的密码设为123456
 # Use graphical install
 graphical
 firstboot disable
 # System keyboard
 keyboard us
 # System language
 lang en_US
 # SELinux configuration
 selinux disabled
 # Installation logging level
 logging level=info
# System timezone
 timezone Asia/Shanghai
 # System bootloader configuration
 bootloader location=mbr
 clearpart --all --initlabel
 part swap --asprimary --fstype="swap" --size=1024
 part /boot --fstype xfs --size=200
 part pv.01 --size=1 --grow
 volgroup rootvg01 pv.01
 logvol / --fstype xfs --name=lv01 --vgname=rootvg01 --size=1 --grow

%packages
 @core
 wget
 %end
 %post
 %end

ksvalidatorでチェック構文エラーがあるかどうかを確認するために、保存した後。
ksvalidator /var/ftp/pub/ks.cfg

キックスタートファイルは一般に、3つの部分、「%プリ%終了」、「%パッケージ%端部」、「%ポスト%終了」によって定義された各分割されます。2つだけの後部を残して、この文書内のシンボル%プレ%の端部が省略された上で定義されました。

ステップ11

PXEメニュー作成
/tftpboot/pxelinux.cfg/default Vimを
次のようにデフォルトで読み取ります。

 default menu.c32
 prompt 0
 timeout 30
 MENU TITLE Togogo.net Linux Training

 LABEL centos7_x64
 MENU LABEL CentOS 7 X64
 KERNEL /netboot/vmlinuz
 APPEND  initrd=/netboot/initrd.img inst.repo=ftp://192.168.1.1/pub ks=ftp://192.168.1.1/pub/ks.cfg

一行には、この最後のAPPENDは、途中で改行しないでください。

ステップ12

dhcpdのsystemctlの有効
systemctlは、TFTPを有効に
vsftpdを有効systemctl
自動的に有効に起動するサービスを超えます。

vsftpdを再起動systemctl
systemctl再起動dhcpdを
systemctl再起動TFTPは、
上記のサービスを再起動します。


検証

クライアントを確認するために、PXEサーバとして動作するように、VMwareの中で新しい仮想マシンを作成します。ネットワークアダプタがそのネットワークに接続されているに設定されている「ブリッジモード。」
 
そして、この仮想マシンを起動します。したがって、我々は見ることができ、この仮想マシンをインストールすることができますCentOSのLinuxは、すなわちインストールを最小限に抑え、介入の不存在下で最小です。

メニューは、インストールを開始するために3秒間待機するように設定されています。前にTabキーを押したときに、あなたは次の単語が表示されます「CentOSの7のx64」、まだハイライトされているメニュー項目をインストールしていません。

> vmlinuz initrd=initrd.img inst=ftp://192.168.1.1/pub ks=ftp://192.168.1.1/pub/ks.cfg

私はまさにそれを設定するためのステップ11のメニュー項目はありませんよ?
 

追伸

このプロセスは、困難が発生する可能性があり、同じセグメントにPXE PXEクライアントとサーバにあります。私たちは自宅でインターネットを持っている場合は、物理的なネットワークカードのIPアドレスが192.168.1.Xが、それは上記の手順に完全従うことができるかもしれません。
物理的なネットワークカードのIPアドレスが192.168.0.Xであれば、あるいは何か他のものにして、手動で、IPカードを変更192.168.1.X.に入れて VMwareの設定をブリッジする、ので、「PXEクライアントが」ちょうど同じ「PXEサーバ」で、このセグメントのIPアドレス192.168.1.0/24を入手してみましょう。
 

ます。https://my.oschina.net/u/589241/blog/3059255で再現

おすすめ

転載: blog.csdn.net/weixin_33785108/article/details/92009988
おすすめ