PXE経由でのPUPPY起動について

パピーリナックスを初めて使う方もご利用ください

モデレータ: 暇人, YoN, nyu

返信する
RTF
記事: 22
登録日時: 08/09/02(火) 02:18

PXE経由でのPUPPY起動について

投稿記事 by RTF »

自分はCDブート、USBブートができない環境なので、
XPでPXEサービスを立ち上げ、PXE経由で起動を行っています。

参考にしているサイト:
http://d.hatena.ne.jp/palm84/20070403/1175609650

しかし、1回目はPUPPYは無事に起動できたものの、再起動すると、

コード: 全て選択

Loading kernel dirvers needed tp access disk drivers...       done
pup_400sfs not found, Droping out to initial-ramdisk console...
/bin/sh: can't access tty; job control turned off
となり、止まってしまいます。


PXEサービス側のファイル構成

コード: 全て選択

c:¥pxe¥tftpd32.exe
c:¥pxe¥pxelinux.0
c:¥pxe¥tftpd32.chm
c:¥pxe¥tftpd32.ini
c:¥pxe¥pxelinux.cfg¥default
c:¥pxe¥puppy¥boot.msg
c:¥pxe¥puppy¥isolinux.bin
c:¥pxe¥puppy¥vmlinuz
c:¥pxe¥puppy¥zdrv_400.sfs
c:¥pxe¥puppy¥boot.cat
c:¥pxe¥puppy¥initrd.gz
c:¥pxe¥puppy¥pup_4003JP.sfs
c:¥pxe¥puppy¥syslinux.cfg
c:¥pxe¥puppy¥isolinux.cfg
c:¥pxe¥puppy¥pup_4003.sfs




c:¥pxe¥pxelinux.cfg¥default の 中は下記のように記述しています。

コード: 全て選択

DEFAULT puppy
PROMPT  0

LABEL puppy
      KERNEL puppy/vmlinuz
      APPEND initrd=puppy/initrd.gz



現在、PXEサービス自体は正常に動いており、起動時に、
boot:
と聞いてきます。
そこで、 puppy と打ち込んで立ち上げようとするとロードを始めるのですが、
上記の通り、pup_400sfs not found で止まります。

1度目はこういったことが起こらず、再起動すると起こるようになったので、
何かpuppyが残した設定ファイルなどが原因なのかな?とか思うのですが・・・

bootオプションなどで、試したら良い物があれば教えて下さい。
RTF
記事: 22
登録日時: 08/09/02(火) 02:18

投稿記事 by RTF »

MAC機で同様の現象が発生しました。
(CDブート経由)

一度、PUPPYをCDブート経由で起動。
適当に作業して終了。

翌日、再び、CDを入れて起動を試みる。
上記と同じエラーメッセージが表示、となりました。
アバター
暇人
記事: 2392
登録日時: 07/08/12(日) 23:33
お住まい: 埼玉県xx市並4
連絡する:

投稿記事 by 暇人 »

根本的な解決にはならんだろうけど
pfix=ram
をつけるとどうなりますか?
管理人見習い
NEC Express5800 S70/SR G6950 2.8GHz/1G
lenovo S10-3 AtomN450 1.66G/1G
暇人/貳馬力/2CV
RTF
記事: 22
登録日時: 08/09/02(火) 02:18

投稿記事 by RTF »

そのブートオプションも試しましたがダメでした。


追加でのエラーレポートです。

1.PCのHDDをフルフォーマット
パーティションは、hda1 | hda2 | hda3 という構成。
形式は、hda1とhda2はext3、hda3はswap
ブートフラグはhda1

2.minimalCDのXubuntuを入れる。 入れた場所はdev/hda1

3.Xubuntu上でpuppyのCDのisoイメージより抽出した
各ファイル(下記参照)をルート直下にpuppyフォルダを作ってそこに放りこむ

コード: 全て選択

boot.msg
isolinux.bin
vmlinuz
zdrv_400.sfs
boot.cat
initrd.gz
pup_4003JP.sfs
syslinux.cfg
isolinux.cfg

4.Xubuntuが作った/boot/grub/menu.lstで、
さきほど作った上記puppyイメージをbootメニューとして手動で書き加える

コード: 全て選択

title		extra puppy
root		(hd0,0)
kernel		/puppy/vmlinuz
initrd		/puppy/initrd.gz


5.PC再起動かけて puppyブートを試みるも、
起動中に pup_400.sfs がPCにないぞと怒られる

コード: 全て選択

Loading kernel dirvers needed tp access disk drivers...       done
pup_400sfs not found, Droping out to initial-ramdisk console...
/bin/sh: can't access tty; job control turned off

6.ひとまず再起動かけて今度はXubutuを起動し、
pup_4003JP.sfsを同ディレクトリ内に複製し、
pup_400.sfs にリネームして配置する。


7.今度はpuppyの起動成功する。
puppyのgui上で、hda2をマウントする。

puppyの「メニュー」より
メニュー > セットアップ > puppyユニバーサルインストーラー を選択

8.インストール先は、hda2を指定

9.コピーしたいからファイルが入ってる場所を教えろと言われるので
/dev/hda1/puppy (xubuntuの中に入れていたpuppy一式)を指定。
「ok」ボタンが選択可能になるので、okを押す

ちなみに、/dev/hda1/puppy は日本語版isoイメージから抽出した
ファイル一式が入ってるが、上記の通りそれだけでは
起動できない経緯があるので
pup_4003JP.sfsを複製およびリネームして作ったpup_400.sfsが余分にある


10.下記のエラーが表示される

コード: 全て選択

なんと、「整合性チェック」は失敗しました。
次のファイル ./pup_400.sfs
は存在しません。
これはパピ・#91;ファイルpup_xxx.sfsが保存されているパスのようです。
「xxx」は最新バ・#91;ジョン番号です。
「ok」・#123;タンをクリックして中止して下さい。

日本語化にあたってpup_400.sfs絡みでなにかあったとかですかね。。。
うーん。。。

上記の通り、流れ的に pup_400.sfs はとりあえずだけど作ってはいるので。。。
puppy本体のバグでしょうか。。。
RTF
記事: 22
登録日時: 08/09/02(火) 02:18

投稿記事 by RTF »

PXE経由でのインストールミスですが、自分の設定ミスでした。

rootの設定を行わずにpxeブートさせていたので
迷子になっていたようです。

お騒がせしました。

あまり需要ないかと思いますが・・・
一応、修正内容を残しておきます。

ファイル構成:

コード: 全て選択

¥c:Tftpd32
¥c:Tftpd32¥Tftpd32.exe
¥c:Tftpd32¥pxelinux.0
¥c:Tftpd32¥tftpd32.ini
¥c:Tftpd32¥tftpd32.chm
¥c:Tftpd32¥default
¥c:Tftpd32¥puppy   #<- isoファイルから抽出した各ファイルが入っている

¥c:Tftpd32¥defaultの内容

コード: 全て選択

DEFAULT puppy
PROMPT 1

LABEL puppy
KERNEL /puppy/vmlinuz
APPEND root=/dev/ram0 initrd=/puppy/initrd.gz

root=/dev/ram0 が抜けていると、PXEブートであってもHD内を見に行こうとする?みたい。


参考にしたのは本家フォーラム:
http://www.murga-linux.com/puppy/viewtopic.php?t=16439
rida
記事: 10
登録日時: 09/09/10(木) 11:18

Re: PXE経由でのPUPPY起動について

投稿記事 by rida »

RTF » 08/09/07(日) 20:41 さんの投稿を元にしてやってみました。

puppyを PXEサーバーと USBメモリを利用していれます。

PXEサーバー側は
$ ls -l /tftpboot
total 7316
-r--r--r-- 1 root wheel 2048 Sep 10 08:31 boot.cat
-rwxr-xr-x 1 root wheel 163 Sep 10 08:33 boot.msg
-rwxr-xr-x 1 root wheel 1051 Sep 10 08:33 help.msg
-rwxr-xr-x 1 root wheel 1827360 Sep 10 08:44 initrd.gz
-rwxr-xr-x 1 root wheel 14776 Sep 10 08:42 isolinux.bin
-rwxr-xr-x 1 root wheel 138 Sep 10 08:33 isolinux.cfg
-rwxr-xr-x 1 root wheel 48378 Sep 10 08:33 logo.16
lrwxr-xr-x 1 root wheel 12 Sep 10 08:41 pxelinux.0 -> isolinux.bin
drwxr-xr-x 2 root wheel 512 Sep 10 08:34 pxelinux.cfg
-rwxr-xr-x 1 root wheel 1797720 Sep 10 08:44 vmlinuz


ここでリンクを作ったのは PXEサーバー(これはopenbsdなのですが)で
$ cat /etc/dhcpd.conf
option domain-name "my.domain";
subnet 192.168.1.0 netmask 255.255.255.0 {
option routers 192.168.1.250;
option domain-name-servers 202.224.32.1;
filename "pxelinux.0";
range 192.168.1.83 192.168.1.84;
}
と "pxelinux.0" という名前だからです。


なお PXEサーバーで
$ ls -l /tftpboot/pxelinux.cfg/
total 4
-r--r--r-- 1 root wheel 169 Sep 10 10:45 default
および
$ cat /tftpboot/pxelinux.cfg/default
default puppy
display boot.msg
prompt 1
timeout 80
F1 boot.msg
F2 help.msg
label puppy
kernel vmlinuz
append initrd=initrd.gz root=/dev/ram0
です。



さて puppyをインストールする CDドライブのない libretto L2 では 
USBメモリに
-rwx------ 1 tuyosi root 2048 2009-09-10 05:05 boot.cat
-rwx------ 1 tuyosi root 163 2009-09-10 05:05 boot.msg
-rwx------ 1 tuyosi root 1051 2009-09-10 05:05 help.msg
-rwx------ 1 tuyosi root 1827360 2009-09-10 05:05 initrd.gz
-rwx------ 1 tuyosi root 12241 2009-09-10 05:05 isolinux.bin
-rwx------ 1 tuyosi root 138 2009-09-10 05:05 isolinux.cfg
-rwx------ 1 tuyosi root 48378 2009-09-10 05:05 logo.16
-rwx------ 1 tuyosi root 125390848 2009-09-10 05:05 pup_420p1retroJP.sfs
-rwx------ 1 tuyosi root 1797720 2009-09-10 05:05 vmlinuz
をいれといたものを差し込んでおいて
nキーを押しながら 電源をいれたら PXEでインストールできます。
rida
記事: 10
登録日時: 09/09/10(木) 11:18

Re: PXE経由でのPUPPY起動について

投稿記事 by rida »

その後 要領がわかってきました。
自分のopteronには lennyがはいってます。
このlennyに寄生するpuppy つまり puppyの frugal インストを行ってみました。
linuxさえはいっておれば CDも USBもいりません。

さて pup-424ja.iso をlennyでダウンロードし
lennyで /puppyというフォルダをつくって 
mount -o loop -t iso9660 pup-424ja.iso  /mnt/tmp
として展開し
cp /mnt/tmp/* /puppy
します。

すると lennyで
# ls -l /puppy/
total 643499
-r--r--r-- 1 root root 2048 2009-09-15 06:01 boot.catalog
-rwxr-xr-x 1 root root 217769 2009-09-15 06:01 grldr
-rwxr-xr-x 1 root root 1321749 2009-09-15 06:01 initrd.gz
-rwxr-xr-x 1 root root 1631 2009-09-15 06:01 menu.lst
-rwxr-xr-x 1 root root 117538816 2009-09-15 06:01 pup-424ja.sfs
-rwxr-xr-x 1 root root 309309 2009-09-15 06:01 splash.xpm
-rwxr-xr-x 1 root root 2024512 2009-09-15 06:01 vmlinuz
なってます。

あとは lennyのmenu.lstの最後に
title Puppy frugal
rootnoverify (hd0,4)
kernel /puppy/vmlinuz psubdir=puppy nosmp
initrd /puppy/initrd.gz
とします。

なお (hd0,4) は、puppyをいれたパーティションです。
この点はここで
# fdisk -l /dev/sda
すると
Disk /dev/sda: 122.9 GB, 122942324736 bytes
255 heads, 63 sectors/track, 14946 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Device Boot Start End Blocks Id System
/dev/sda1 1 10199 81923436 83 Linux
/dev/sda2 14574 14946 2996122+ 82 Linux swap / Solaris
/dev/sda3 10200 14573 35134155 5 Extended
/dev/sda5 10200 14573 35134123+ 83 Linux
となっており、自分の場合は /dev/sda5 つまり (hd0,4) にpuppyのフォルダがあります。

frugal インストレーションは 本当に簡単ですね。
アバター
みのむし
記事: 1164
登録日時: 08/09/10(水) 13:56
お住まい: 福岡市中央区草香江1-2-40-101号
連絡する:

Re: PXE経由でのPUPPY起動について

投稿記事 by みのむし »

面白そうなので、幸いPXEブート可のノートPCを2台所有していましたので、
試してみました。
私はLinux(CentOS 5.3)上でTFTPサーバを起動したかったので
DHCPサーバ+TFPサーバのインストール&設定を行いました。
インストールは非常に簡単でしたが、設定には大変苦労しました。
(以下ではインストール手順は省略しています)
現在は、Puppy 4.3JPalpha(430)を起動しています。

簡易ネットワーク構成図)

JCOM:NET Cable
|
無線LANアクセスポイント
|
+- Server PC(CentOS 5.3)
+- Client PC1(EPSON Direct Endeavor NA702)
+- Client PC2(DELL studio 1536)
+- 空き

※PCは無線LANアクセスポイントに有線LAN接続。

◯DHCPサーバの設定
・無線LANアクセスポイントのDHCPサーバ機能を停止して
・PC(CentOS 5.3)にDHCPサーバをインストールして設定
※Server PCのIPアドレス取得がどうなるか心配したのですが、
192.168.11.2 を取得出来ていました。
なお、念のため、/etc/hosts に各PCのIPアドレスを設定しています。
Server PC上ではDNSサーバ(LAN内向け)を設定、起動しています。

# gedit /etc/dhcpd.conf

コード: 全て選択

ddns-update-style interim;
ignore client-updates;

subnet 192.168.11.0 netmask 255.255.255.0 {
  option routers                  192.168.11.1;
  option subnet-mask              255.255.255.0;
  option domain-name              "mland.jp";
  option domain-name-servers      192.168.11.2;
  option time-offset              -18000;
  range dynamic-bootp 192.168.11.3 192.168.11.100;
  default-lease-time 21600;
  max-lease-time 43200;
}

allow booting;
allow bootp;
class "pxeclients" {
  match if substring(option vendor-class-identifier,0,9)="PXEClient";
  next-server 192.168.11.2;
  filename "pxelinux.0";
}

host na702 {
  hardware ethernet 00:1A:92:XX:XX:XX;
  fixed-address 192.168.11.4;
}

host studio {
  hardware ethernet 00:21:70:XX:XX:XX;
  fixed-address 192.168.11.7;
}
※192.168.11.*(無線LANアクセスポイントのIPアドレスより) を各自の環境に合わせて変更する事。
range 192.168.11.3 192.168.11.100;
このように、192.168.11.3から始めないと、dhcpd サービスを起動出来ませんでした。
hardware ethernet は一部伏字、各自の環境に合わせて変更してください。

コード: 全て選択

# /etc/init.d/dhcpd/restart
◯TFTPサーバの設定
 /tftpboot/pxelinux.0 がどうしても分からなかったのですが、
以下のページを参照して理解出来ました。

Diskless Linux by PXELinux or GRUB
5.1 tftpサーバの設定
http://vision.kuee.kyoto-u.ac.jp/~nob/d ... l#doc1_404

コード: 全て選択

# rpm -q syslinux
syslinux-3.11-4
(↑何も表示されない場合はインストールされていないのでインストールする事)
# cd /tftpboot
# cp /usr/lib/syslinux/pxelinux.0 .

(その他のファイルはCDからコピーしたり、FrugalインストールしているUSB HDDからアップロードしました)

# tree /tftpboot
/tftpboot
|-- 412 ... Puppy 4.1.2.1-JP
|   |-- initrd.gz
|   `-- vmlinuz
|-- 425 ... Puppy 4.3 beta3 / pup-425ja
|   |-- initrd.gz
|   `-- vmlinuz
|-- 430 ... Puppy 4.3JPalpha
|   |-- initrd.gz
|   `-- vmlinuz
|-- boot.msg
|-- pxelinux.0
`-- pxelinux.cfg
    `-- default

4 directories, 9 files
※pup_save.2fsはクライアントPC上のHDDを見に行っています。
詳細な手順は省略しています。上のディレクトリツリーの内容に合わせて、
必要なディレクトリ/ファイルを作成してください。

4.3bata3 (pup-425ja)
viewtopic.php?f=28&t=1345
みのむし
記事の件名: Re: 4.3bata3 (pup-425ja)
投稿記事Posted: 09/09/14(月) 14:29

4.3JPalpha
viewtopic.php?f=28&t=1353
みのむし
記事の件名: Re: 4.3JPalpha
投稿記事Posted: 09/09/18(金) 20:15

私の環境で使用している430用ファイル)
URL: http://www.mland.jp/pub2/pxe/430/
initrd.gz
vmlinuz
pup_430JPalpha.sfs
pup_save.2fs

コード: 全て選択

# cd pxelinux.cfg
# gedit default

コード: 全て選択

default 3
display boot.msg
label 1
  kernel /412/vmlinuz
  append root=/dev/ram0 initrd=/412/initrd.gz
label 2
  kernel /425/vmlinuz
  append root=/dev/ram0 initrd=/425/initrd.gz
label 3
  kernel /430/vmlinuz
  append root=/dev/ram0 initrd=/430/initrd.gz
「default 3」と「label 3」の 3 は同名である事。

コード: 全て選択

# cd /etc/xinetd.d
# gedit 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
}
-s /tftpboot」なので、パスには /tftpboot を付けない。
例えば、「filename "pxelinux.0"; 」や「kernel vmlinuz」のように。

コード: 全て選択

# /etc/init.d/xinetd reload
設定を再読み込み: ... [  OK  ]
これで、有線LAN接続したノートPCを起動すればPuppyが起動出来ました。
なお、当然の事ながら「BIOSの設定」でPXEから起動するように設定して
おかなければなりません。
最後に編集したユーザー みのむし [ 09/09/21(月) 14:38 ], 累計 19 回
みのむし
Notebook PC HP G62
CPU: Intel(R) Core(TM)i5 M450 @ 2.40GHz
MEM: 4GB
Puppy Linux Quickset 5.1.1 JP
PC内蔵無線LANデバイス RTL8171(r8192se_pci)
rida
記事: 10
登録日時: 09/09/10(木) 11:18

Re: PXE経由でのPUPPY起動について

投稿記事 by rida »

rida です。

補足を一つ書かせてください。
「lennyに寄生するpuppy つまり puppyの frugal インスト」
は、PXEブートは必要としませんので 手軽にpuppyのいろんな バージョンを試すことができます。

なお top linuxという puppy 派生のものがあるようですね。
アバター
ビズアイユ
記事: 222
登録日時: 08/09/24(水) 13:27
お住まい: Bahir Dar, ETHIOPIA
連絡する:

Re: PXE経由でのPUPPY起動について

投稿記事 by ビズアイユ »

呼ばれて飛び出てみましたw

TOP Linuxは、8割ほどの日本語化も施された
途上国向けのPupletで、デフォルトだと軽いけど
ブラウザがdillo2オンリーで、追加モジュールを読み込むと
一気にハイエンドになってPC性能を要求するじゃじゃ馬ですw

詳しくはここらへんをどうぞ!
http://sourceforge.jp/projects/toplinux/
http://sourceforge.jp/magazine/09/08/03/0858210
http://venture-plus.com/news/48596
viewtopic.php?f=24&t=1243
rida
記事: 10
登録日時: 09/09/10(木) 11:18

Re: PXE経由でのPUPPY起動について

投稿記事 by rida »

top linuxで localeを日本語にすると scim-anthyがひとりでに動きますが、 ビズアイユさんの 言われるとおりpuppy よりずっと重たいと思います (これ top linuxで書き込んでます)。
http://distrowatch.com/ でpuppyは7位につけてますが、もっと大勢の人に子犬パピーのことを知ってもらったら 
5位以内にはいる素質をpuppyはもっていると思います。
軽くてしかも実用的な子犬 パピーと一緒に走ってます 。
アバター
ビズアイユ
記事: 222
登録日時: 08/09/24(水) 13:27
お住まい: Bahir Dar, ETHIOPIA
連絡する:

Re: PXE経由でのPUPPY起動について

投稿記事 by ビズアイユ »

scim-anthyというか、Firefoxが重くてですね(汗
まあ、そこらへんは改善も考えておりまーす。
rida
記事: 10
登録日時: 09/09/10(木) 11:18

Re: PXE経由でのPUPPY起動について

投稿記事 by rida »

ridaです。
lennyですらpuppyの採用のjwm(Joe's Window Manger)をつかうと非常に軽快になります。 lxdeは重い。 gnomeは耐えがたいほど重い。 http://hyamada.ddo.jp/hiki/hiki.cgi?jwm は綺麗にjwmとrox-filerとを語ってくれてます、謝々。
返信する