How to boot Puppy over network (PXE / TFTP)? (Solved)

New to Puppy and have questions? Start here

Moderator: Forum moderators

Post Reply
Minn
Posts: 3
Joined: Wed Mar 15, 2023 10:07 am

How to boot Puppy over network (PXE / TFTP)? (Solved)

Post by Minn »

Hi,
I'm currently trying to get poppy Linux booting over the Network (PXE / TFTP).
I was following this Guide: https://tenbaht.github.io/posts/pxe-boo ... ppy-linux/

Used the following to try create a initrd.gz containing all .sfs files:

Code: Select all

#!/usr/bin/env bash
rptmpdir=/tmp/repack
outdir=$(pwd)
mount $1 /mnt
mkdir -p $rptmpdir
pushd $rptmpdir
zcat /mnt/initrd.gz | cpio -i
cp -av /mnt/*.sfs .
find . | cpio -o -H newc | gzip -9 > $outdir/initrd.gz
popd
umount /mnt
Grub 2 config:

Code: Select all

menuentry 'Test' {
        linux  (pxe)/hrz_custom/puppy/vmlinuz plang=de_DE.UTF-8 pkeys=de
        initrd (pxe)/hrz_custom/puppy/initrd.gz
}
After a long black screen I get the attached error.
Any Ideas what's going wrong here?
Thanks to everyone taking the time an reading.
Attachments
pup_err.PNG
pup_err.PNG (23.22 KiB) Viewed 1375 times
Last edited by Minn on Wed Mar 15, 2023 2:42 pm, edited 1 time in total.
User avatar
Trapster
Posts: 231
Joined: Sat Aug 01, 2020 7:44 pm
Location: Texas
Has thanked: 3 times
Been thanked: 72 times

Re: Netboot Issues

Post by Trapster »

Please list all files in /hrz_custom/puppy/

It seems you may be missing /hrz_custom/puppy/puppy_s15pup64_22.12.sfs.
Minn
Posts: 3
Joined: Wed Mar 15, 2023 10:07 am

Re: Netboot Issues

Post by Minn »

There is only the kernel and initrd in that directory.
Just putting the iso content there didn't work over PXE, I got a different error stating the sfs files could not be located at all.
That's why I followed the Guide (https://tenbaht.github.io/posts/pxe-boo ... ppy-linux/) to add the sfs files to initrd:
Notice

Code: Select all

cp -av /mnt/*.sfs . 
before repacking.
It seems the file is found in / but then something goes wrong.
I could not find a more recent Netboot guide for Puppy Linux unfortunately.

Content of initrd:

Code: Select all

-rw-r--r-- 1 root root  26378240 adrv_s15pup64_22.12.sfs
drwxr-xr-x 1 root root       244 bin
-rw-r--r-- 1 root root      1209 DISTRO_SPECS
drwxr-xr-x 1 root root        38 etc
-rw-r--r-- 1 root root  78893056 fdrv_s15pup64_22.12.sfs
-rwxr-xr-x 1 root root     55559 init
drwxr-xr-x 1 root root        38 lib
drwxr-xr-x 1 root root        56 locale
-rw-r--r-- 1 root root 245923840 puppy_s15pup64_22.12.sfs
-rw-r--r-- 1 root root     14296 README.txt
drwxr-xr-x 1 root root       320 sbin
-rw-r--r-- 1 root root  49098752 zdrv_s15pup64_22.12.sfs
Minn
Posts: 3
Joined: Wed Mar 15, 2023 10:07 am

Re: Netboot Issues

Post by Minn »

Ended up trying FossaPup64 9.5, that worked (Slackware64 15.0 does not, I tried the full mknetboot.sh, same error).
Here my final script in case it's useful for someone.
Just run as root (not strictly necessary, but you would need to replace the "mount $1 /mnt" line with extracting the iso to a temp dir),
pass it the path to the .iso file and kernel and initrd are created in the current directory:

Code: Select all

#!/usr/bin/env bash
rm -r /tmp/netpuppy
rptmpdir=/tmp/netpuppy
outdir=$(pwd)
mount $1 /mnt
mkdir -p $rptmpdir
pushd $rptmpdir
zcat /mnt/initrd.gz | cpio -i
cp -av /mnt/*.sfs .
find . | cpio -o -H newc | gzip -9 > $outdir/initrd.gz
popd
cp -av /mnt/vmlinuz $outdir
rm -r /tmp/netpuppy
umount /mnt
I'll mark this as solved because it seems this is not a general Issue.
Post Reply

Return to “Beginners Help”