no 5.5 boot with syslinux 5.01
What wiejetzt has failed to mention in all of this discussion is where he is getting syslinux 5.01 and why he is using it to boot Puppy. As Karl stated above, all recent woof-built Puppies have syslinux 3.73, which works fine.
As a test, I compiled syslinux 5.01 in Precise. Sure enough, it had exactly the problems that wiejetzt described. The same was true with 5.00. However, 4.06 worked.
So it appears that syslinux 5.x introduced something that is incompatible with how Puppy builds its kernel/initrd.gz.
As a test, I compiled syslinux 5.01 in Precise. Sure enough, it had exactly the problems that wiejetzt described. The same was true with 5.00. However, 4.06 worked.
So it appears that syslinux 5.x introduced something that is incompatible with how Puppy builds its kernel/initrd.gz.
I can only suspect that extlinux v5 is passing the boot parameters corrupted furhther .
In the initrd shell would probably reveal things .
Code: Select all
echo "pmedia='$pmedia' PMEDIA='$PMEDIA' psubdir='$psubdir' PSUBDIR='$PSUBDIR' pdev1='$pdev1' PDEV1='$PDEV1'"
sh-3.00# ls -1 /root/my-documents/syslinux-3.86/extlinux/
ext2_fs.h
extlinux
main.c
Makefile
sh-3.00# ls -1 /root/my-documents/syslinux-4.06/extlinux/
btrfs.h
extlinux
fat.h
main.c
Makefile
mountinfo.c
mountinfo.h
ntfs.h
sh-3.00# ls -1 /root/my-documents/syslinux-5.01/extlinux/
btrfs.h
extlinux
fat.h
main.c
Makefile
misc.h
mountinfo.c
mountinfo.h
ntfs.h
xfs_fs.h
xfs.h
xfs_sb.h
xfs_types.h
ext2_fs.h
extlinux
main.c
Makefile
sh-3.00# ls -1 /root/my-documents/syslinux-4.06/extlinux/
btrfs.h
extlinux
fat.h
main.c
Makefile
mountinfo.c
mountinfo.h
ntfs.h
sh-3.00# ls -1 /root/my-documents/syslinux-5.01/extlinux/
btrfs.h
extlinux
fat.h
main.c
Makefile
misc.h
mountinfo.c
mountinfo.h
ntfs.h
xfs_fs.h
xfs.h
xfs_sb.h
xfs_types.h
Got syslinux 5.01 from syslinux.org, included are binaries, enabling to install immediately.rcrsn51 wrote:What wiejetzt has failed to mention in all of this discussion is where he is getting syslinux 5.01 and why he is using it to boot Puppy. As Karl stated above, all recent woof-built Puppies have syslinux 3.73, which works fine.
As a test, I compiled syslinux 5.01 in Precise. Sure enough, it had exactly the problems that wiejetzt described. The same was true with 5.00. However, 4.06 worked.
So it appears that syslinux 5.x introduced something that is incompatible with how Puppy builds its kernel/initrd.gz.
That syslinux 5.x introduced something is one conclusion, another conclusion is that other distros have no problem with syslinux 5.01, only puppy 5.5.
I am sorry that caused so much trouble. I thought it is helpful to point out bugs. Obviously I have to be VERY careful, to report something that might be a bug, but may be not. Delete my account.
I haven't got lot of time lately but this thread is on my radar.wiejetzt wrote:I am sorry that caused so much trouble. I thought it is helpful to point out bugs. Obviously I have to be VERY careful, to report something that might be a bug, but may be not. Delete my account.
From the start I understood that your problem was with syslinux >= 5.0x and any recent puppy linux.
It is a bug and should be dealt with. Don't pack up your bat and ball and go home just yet!
Puppy Linux Blog - contact me for access
But a nice logo syslinux have now since v4 :
- Attachments
-
- syslinux-100.png
- (128.23 KiB) Downloaded 1562 times
«Give me GUI or Death» -- I give you [[Xx]term[inal]] [[Cc]on[s][ole]] .
Macpup user since 2010 on full installations.
People who want problems with Puppy boot frugal :P
Macpup user since 2010 on full installations.
People who want problems with Puppy boot frugal :P
The Puppy installer installs it onto the rootfs of the partition ieextlinux.txt wrote:EXTLINUX is a new Syslinux derivative, which boots from a Linux
ext2/ext3 filesystem.
It works the same way as SYSLINUX (see doc/syslinux.txt), with a few
slight modifications.
1. The installer is run on a *mounted* filesystem. Run the extlinux
installer on the directory in which you want extlinux installed:
extlinux --install /boot
Specify --install (-i) to install for the first time, or
--update (-U) to upgrade a previous installation.
NOTE: this doesn't have to be the root directory of a filesystem.
If /boot is a filesystem, you can do:
mkdir -p /boot/extlinux
extlinux --install /boot/extlinux
... to create a subdirectory and install extlinux in it.
/boot/extlinux is the recommended location for extlinux.
mkdir /boot /mnt/data
mount /dev/sdb1 /mnt/data || mount /dev/sdb1 /boot
puppyinstaller wrote:if [ ! "`echo "$DESTPART" | grep '[0-9]$'`" = "" ];then
extlinux -i /mnt/data #i think only use -z for superfloppy.
else
extlinux -i -z /mnt/data
fi
extlinux.txt wrote: 2. The configuration file is called "extlinux.conf", and is expected
to be found in the same directory as extlinux is installed in.
Since 4.00 "syslinux.cfg" is also tried if "extlinux.conf" is not
found.
3. Pathnames can be absolute or relative; if absolute (with a leading
slash), they are relative to the root of the filesystem on which
extlinux is installed (/boot in the example above), if relative,
they are relative to the extlinux directory.
extlinux supports subdirectories, but the total path length is
limited to 511 characters.
First adventures with extlinux :
1) version 5.01 make; make clean; make; make install
* Extended partition on SDCARD sd*5 formatted with xfs
* mount /dev/sd*5 /mnt/sd*5
* mkdir -p /mnt/sd*5/boot/extlinux
* extlinux --install /mnt/sd*5/boot/extlinux
-> files created in /mnt/sd*5/boot/extlinux : ldlinux.sys AND ldlinux.c32 [ no extlinux.sys ]
* by default make install installs to /usr/share NOT to /usr/lib [ NO MCONFIG file ]
-> cp /usr/share/syslinux/mbr.bin /mnt/sd*5/boot/extlinux/
* cat /mnt/sd*5/boot/extlinux/mbr.bin >/dev/sd* [ * mostly c -> /dev/sdc in my case ]
* installed precise-5.5 into /mnt/sd*5/LINUXes/precise-5.5 frugal
* fetched the syslinux.cfg out of the precise-5.5.iso and copied to /mnt/sd*5/boot/extlinux
* renamed /mnt/sd*5/boot/extlinux/syslinux.cfg to extlinux.conf
* umount /dev/sd*5
* ran fdisk /dev/sd*5 to flag partition bootable
* ran fdisk -l /dev/sd*5 to check if it is now marked active
* rebooted
-> Missing Operating System ..
2) version 3.86 make; make clean; make; make install
* did all that above for a USB first partition ext3 formatted which had grub4dos on it
-> Problems with the PATH to boot.msg , help.msg , logo16
* typed at the prompt : /vmlinuz
-> booted a full installation on second internal hard drive .
* fixed the PATHs in these files
* rebooted
* booted correctly .
3) fixed everything for 1) : Still missing operating system .
OVERALL : 5.0X seems very unstable for now .
For the record : Puppy 4.3 has already extlinux v3.73 and since the files for the syslinux in woof2 are empty placeholders it seems that all main distros also still use v3.73 .
1) version 5.01 make; make clean; make; make install
* Extended partition on SDCARD sd*5 formatted with xfs
* mount /dev/sd*5 /mnt/sd*5
* mkdir -p /mnt/sd*5/boot/extlinux
* extlinux --install /mnt/sd*5/boot/extlinux
-> files created in /mnt/sd*5/boot/extlinux : ldlinux.sys AND ldlinux.c32 [ no extlinux.sys ]
* by default make install installs to /usr/share NOT to /usr/lib [ NO MCONFIG file ]
-> cp /usr/share/syslinux/mbr.bin /mnt/sd*5/boot/extlinux/
* cat /mnt/sd*5/boot/extlinux/mbr.bin >/dev/sd* [ * mostly c -> /dev/sdc in my case ]
* installed precise-5.5 into /mnt/sd*5/LINUXes/precise-5.5 frugal
* fetched the syslinux.cfg out of the precise-5.5.iso and copied to /mnt/sd*5/boot/extlinux
* renamed /mnt/sd*5/boot/extlinux/syslinux.cfg to extlinux.conf
* umount /dev/sd*5
* ran fdisk /dev/sd*5 to flag partition bootable
* ran fdisk -l /dev/sd*5 to check if it is now marked active
* rebooted
-> Missing Operating System ..
2) version 3.86 make; make clean; make; make install
* did all that above for a USB first partition ext3 formatted which had grub4dos on it
-> Problems with the PATH to boot.msg , help.msg , logo16
* typed at the prompt : /vmlinuz
-> booted a full installation on second internal hard drive .
* fixed the PATHs in these files
* rebooted
* booted correctly .
3) fixed everything for 1) : Still missing operating system .
OVERALL : 5.0X seems very unstable for now .
For the record : Puppy 4.3 has already extlinux v3.73 and since the files for the syslinux in woof2 are empty placeholders it seems that all main distros also still use v3.73 .
Finally : Cannot confirm this BUG .
Posting from precise-5.5 on sdc2 ext2 formatted SDCard partition . Found the files ! Nothing unusual to report .
WHAT I can confirm is : xfs support is broken .
The partition was formerly formatted jfs .
Formatted to xfs : Missing operating system .
Formatted ext2 : Everything went smooth . Posting from it now .
Will have to check the PATH to logo.16 cos it did not show up,
but the four lines of boot.msg .
And while copying I did not correct the pdev1 variable in extlinux.conf and the /init was able to find it though :
Posting from precise-5.5 on sdc2 ext2 formatted SDCard partition . Found the files ! Nothing unusual to report .
WHAT I can confirm is : xfs support is broken .
The partition was formerly formatted jfs .
Formatted to xfs : Missing operating system .
Formatted ext2 : Everything went smooth . Posting from it now .
Will have to check the PATH to logo.16 cos it did not show up,
but the four lines of boot.msg .
And while copying I did not correct the pdev1 variable in extlinux.conf and the /init was able to find it though :
Code: Select all
# cat /proc/cmdline
video=640x480 /LINUXes/precise-5.5/vmlinuz /LINUXes/precise-5.5/vmlinuz initrd=/LINUXes/precise-5.5/initrd.gz psubdir=LINUXes/precise-5.5 pdev1=sdc5