CentOS7 をネットワークインストールする。その2 PXEサーバ

CentOS7 をネットワークインストールする。その1 VMware の続き。

 

  • Windows上のVMwareにCentOS7をインストール→そのCentOS7でPXEサーバを構築する→もう一台の空のPCをPXEブートしCentOSをインストールする、という手順を取ってます。
  • ただ、今回は結局インストール失敗してます。次回の その3 その4 まで行って成功しました。以下はそれまでの経緯というか、私は基本的なこともまだ知らないので一歩一歩メモのつもりで書いてます。

Linuxを導入する一番の目的は貧乏なので無料のOSを入れたいということです。素直にWindows8のバンドル版でも買ったほうが費用対効果が上回るだろうと思います。でもやる(今までに何度も挑戦したがそのたびに挫折。月日も流れインストールも以前より簡単になったろうと再々……挑戦)。現状は初心者に毛が生えた程度ですが、順次学んでいきます。

 

Linux仮想マシンでVMware Toolsではなくopen-vm-toolsを使う | 仮想(VMware & Hyper-V)/クラウド・エンジニア技術ブログ

最近VMware社からは、ESXiにバンドルされているVMware Toolsではなく、各Linuxディストリビューションからリリースされているopen-vm-toolsの利用が推奨されています。

<中略>

現在、最新のCentOS 7 デスクトップ版では標準でopen-vm-toolsが搭載されています。

確かに、入ってました。

$ rpm -qa | grep open-vm-tools
open-vm-tools-9.10.2-4.el7.x86_64
open-vm-tools-desktop-9.10.2-4.el7.x86_64

なのにホスト・クライアント間のコピペができなくて困っていたのですが、別の日に起動したらできたので…再起動が必要だっただけかな?

  • NHMでVMWareのコピーを作り、以後そちらを使う。(いずれはVagrantとかDockerとか使えるようになりたいです)

CentOS7 PXE Boot を参考に以下進めます。

  • 追加のソフトウェア(tftp,xinetdなど)をインストールする。

端末(CUI)ではなくGUIでインストールしてみようと思う。が、ドロップメニューにはSoftwareUpdateのみで、ソフトウェアインストーラーらしきものが見当たらない。CentOS6まではあったけどなぁ…。変わりに[アプリケーション][システムツール]に[アプリケーションマネージャー]なるものがあるな。が、中を見ても何か違う気がする。

どうやら gnome-packagekit というものをインストールする必要がある?

 

CentOS でソフトウェアの追加・更新をGUIで行う - clock-up-blog

# yum -y install gnome-packagekit

・結果

>>パッケージ gnome-packagekit-3.14.3-5.el7.x86_64 はインストール済みか最新バージョンです 何もしません。

 

あれ。入ってるとのこと。どこだよ。

 

もう一度[アプリケーションマネージャー]を見てみる。

[システム][その他]に[GNOME パッケージ:システムにインストールされたパッケージの追加と削除]てのがある。これかな。あ、これだ。 

f:id:demandosigno:20160309213410j:plain

  • tftpのインストール
    [アプリケ
    ーション][システムツール][Software][Servers][ネットワークインフラストラクチャサーバー][tftp-server-5.2-*]を選択。→パッケージキットGUIが落ちる…。
    というわけでCUIで。
    # yum install tftp-server
    # rpm -qa | grep tftp
    tftp-server-5.2-11.el7.x86_64 

f:id:demandosigno:20160309213435j:plain

うむ。入ってる。GUIなんていらんかったんや!

  • TFTPサーバの設定(# vi /etc/xinetd.d/tftp)
  • xinetd起動

[root@tako ~]# systemctl start xinetd.service
Failed to start xinetd.service: Unit xinetd.service failed to load: No such file or directory.

入ってないのか。

TFTPのインストールと設定 - adsaria mood

tftpdはxinetdから起動されるので、tftp-serverパッケージを導入する際に、xinetdが未導入であれば依存解決によりxinetdも同時にインストールされる。

とのことだが…。 
$ yum deplist tftp-server
読み込んだプラグイン:fastestmirror, langpacks
Loading mirror speeds from cached hostfile
* base: www.ftp.ne.jp
* extras: www.ftp.ne.jp
* updates: www.ftp.ne.jp
パッケージ : tftp-server.x86_64 5.2-12.el7
依存性 : /bin/sh
provider: bash.x86_64 4.2.46-19.el7
依存性 : libc.so.6(GLIBC_2.15)(64bit)
provider: glibc.x86_64 2.17-106.el7_2.4
依存性 : libnsl.so.1()(64bit)
provider: glibc.x86_64 2.17-106.el7_2.4
依存性 : libwrap.so.0()(64bit)
provider: tcp_wrappers-libs.x86_64 7.6-77.el7
依存性 : rtld(GNU_HASH)
provider: glibc.x86_64 2.17-106.el7_2.4
provider: glibc.i686 2.17-106.el7_2.4
依存性 : systemd-units
provider: systemd.x86_64 219-19.el7_2.4

xinetdはないぞ。ん?systemd そういやCentOS7(RHEL7)からなんか変わってたな。

「Systemd」を理解する ーシステム起動編ー | ギークを目指して
http://equj65.net/tech/systemd-boot/
xinetdが「レガシー UNIX の互換性」グループに入れられてたのはそういうことか。

なぜ #vi /etc/xinetd.d/tftp は元からあったんだろう?

f:id:demandosigno:20160309221754j:plain

[root@tako ~]# yum install xinetd
読み込んだプラグイン:fastestmirror, langpacks
Loading mirror speeds from cached hostfile
(中略)
インストール:
xinetd.x86_64 2:2.3.15-12.el7
完了しました!

[root@tako ~]# rpm -qa | grep xinetd

xinetd-2.3.15-12.el7.x86_64
[root@tako ~]# systemctl status xinetd
● xinetd.service - Xinetd A Powerful Replacement For Inetd
Loaded: loaded (/usr/lib/systemd/system/xinetd.service; enabled; vendor preset: enabled)
Active: inactive (dead)
[root@tako ~]# systemctl start xinetd.service (systemctlコマンドの利用においては、サービス名の「.service」を省略することもできる)

[root@tako ~]# systemctl status xinetd
● xinetd.service - Xinetd A Powerful Replacement For Inetd
Loaded: loaded (/usr/lib/systemd/system/xinetd.service; enabled; vendor preset: enabled)
Active: active (running) since 水 2016-03-09 22:24:21 JST; 4s ago
Process: 8716 ExecStart=/usr/sbin/xinetd -stayalive -pidfile /var/run/xinetd.pid 
(中略)
Hint: Some lines were ellipsized, use -l to show in full.

  • PXEサーバのインストール

[root@tako ~]# yum install syslinux syslinux-tftpboot
[root@tako ~]# rpm -qa | grep syslinux
syslinux-4.05-12.el7.x86_64
syslinux-tftpboot-4.05-12.el7.x86_64

CentOS7 PXE Boot

これで/tftpbootにPXE関連のファイルが一式でインストールされます。

# ls /tftpboot/ がない。
# ls /var/lib/tftpboot/ があった。上記TFTPサーバの設定(# vi /etc/xinetd.d/tftp)が間違ってるというか反映されてないようだ。なぜ。xinetdをインストールしてから設定ファイルを編集すべきだったか。

うまくいかない。どんどこエラー。

・PXEはあきらめて会社でCD-ROMを焼いてインストールしようとした。がこのPCのCD-ROMがいつのまにか壊れてたぽい…もうやだ。

・そもそもXinetdてなんや!Systemdになったんちゃうんか!

CentOS7 をネットワークインストールする。その3 xinetd ではなく systemd を

行けた!が、インストール途中で止まる。

・どうやらCentOS7はAMDだとアウトぽい。

・CentOS6でその先に進めた。がまたブラックアウト。そういえばビデオカードGeforce製でこいつが引っかかってるかも。

vmlinux initrd.img initrd=initrd.img ip=dhcp ksdevice=link repo=http://ftp.jaist.ac.jp/pub/Linux/CentOS/6.7/os/x86_64/ に続けて xdriver=vesa nomodeset と記載することでその先に進めた。残りはまた今度…。頼むよ。

/* -----codeの行番号----- */