Simple Grub4DOS chain-loader for Porteus on a USB flash-drive...

Here you can post about non-standard installation methods
(for example when using grub4dos).
User avatar
Mike_Walsh
White ninja
White ninja
Posts: 16
Joined: 25 Feb 2023, 14:14
Distribution: Puppy!

Simple Grub4DOS chain-loader for Porteus on a USB flash-drive...

Post#1 by Mike_Walsh » 19 Sep 2023, 01:03

Hi, all.

I'm a long-term Puppy veteran, currently running a "kennels" of more than a dozen Pups. I also run HaikuOS from an "external" SSD.....basically the internal KingSpec SSD from my old, deceased Dell Inspiron 1100 lappie....via a PATA/SATA adapter & a SATA-to-USB 3.0 lead, and sitting in an enclosure I cobbled together from a 30-yr old Compaq floppy-disk box!

Although newer Puppies are now beginning to use GRUB 2.0, I've always found it to be excessively bloated for what is merely a bootloader. I find Grub4DOS - the traditional Puppy bootloader - to be far simpler, and much more elegant. I could start HaikuOS from the Grub4DOS 'Advanced' menu, but it's technically more satisfying to give it its own Menu entry. So I've done this via the 'chainloader' method.

--------------------------

Having installed Porteus KDE v5.0 last week to a 16GB SanDisk 'Fit' USB 2.0 flash drive - allowing it to install its own bootloader to the flash drive - I thought I'd share the stanza I've added to my Puppy bootloader Menu. Quite simply, it's this:-

Code: Select all

# 'Portable' Linux

title Porteus 5.0 KDE (sdc1/boot)
  rootnoverify (hd2,0)
  chainloader +1
Just add this to your menu.lst file. Do bear in mind the disk numbering convention; Linux/Unix using Grub4DOS (Grub 'legacy', if you prefer), begins at 0, NOT 1. Hence:-

sda=0
sdb=1
sdc=2, etc.

The same goes for partitions.....so my 'sdc1' translates to 'hd2,0' in the older numbering scheme that Grub4DOS employs. Adjust this accordingly for your own storage medium. Please also bear in mind this is essentially for anybody with an existing Grub4DOS installation, since the offical version of this was deprecated some years ago.

That's it! Hope this may help some of you.


Mike. ;)
Last edited by Mike_Walsh on 19 Sep 2023, 10:47, edited 1 time in total.
The hallmark of the truly skilled is to make the difficult stuff look EASY..... (Of course, it does help to know what you're doing in the first place! :good: )

User avatar
Ed_P
Contributor
Contributor
Posts: 8374
Joined: 06 Feb 2013, 22:12
Distribution: Cinnamon 5.01 ISO
Location: Western NY, USA

Simple Grub4DOS chain-loader for Porteus on a USB flash-drive...

Post#2 by Ed_P » 19 Sep 2023, 05:31

Mike_Walsh wrote:
19 Sep 2023, 01:03
I find Grub4DOS - the traditional Puppy bootloader - to be far simpler, and much more elegant.
Do you have a link for downloading Grub4DOS and steps to install it to a USB drive?
Ed

User avatar
Rava
Contributor
Contributor
Posts: 5416
Joined: 11 Jan 2011, 02:46
Distribution: XFCE 5.01 x86_64 + 4.0 i586
Location: Forests of Germany

Simple Grub4DOS chain-loader for Porteus on a USB flash-drive...

Post#3 by Rava » 19 Sep 2023, 07:05

Mike_Walsh wrote:
19 Sep 2023, 01:03
sitting in an enclosure I cobbled together from a 30-yr old Compaq floppy-disk box!
That's one cool retro tech solution. I love it.

Also, thanks for the good article. :magic:
Cheers!
Yours Rava

User avatar
Mike_Walsh
White ninja
White ninja
Posts: 16
Joined: 25 Feb 2023, 14:14
Distribution: Puppy!

Simple Grub4DOS chain-loader for Porteus on a USB flash-drive...

Post#4 by Mike_Walsh » 19 Sep 2023, 09:53

Ed_P wrote:
19 Sep 2023, 05:31
Mike_Walsh wrote:
19 Sep 2023, 01:03
I find Grub4DOS - the traditional Puppy bootloader - to be far simpler, and much more elegant.
Do you have a link for downloading Grub4DOS and steps to install it to a USB drive?
I'll have to look into that, Ed. Traditionally, the whole Grub4DOS installer mechanism and files have always been directly built-in to Puppy, although I guess the Woof-CE build-system over at Github must source it from somewhere. I'll have to investigate, mate. Leave it with me....


Mike. ;)
The hallmark of the truly skilled is to make the difficult stuff look EASY..... (Of course, it does help to know what you're doing in the first place! :good: )

User avatar
Mike_Walsh
White ninja
White ninja
Posts: 16
Joined: 25 Feb 2023, 14:14
Distribution: Puppy!

Simple Grub4DOS chain-loader for Porteus on a USB flash-drive...

Post#5 by Mike_Walsh » 19 Sep 2023, 09:56

Rava wrote:
19 Sep 2023, 07:05
Mike_Walsh wrote:
19 Sep 2023, 01:03
sitting in an enclosure I cobbled together from a 30-yr old Compaq floppy-disk box!
That's one cool retro tech solution. I love it.

Also, thanks for the good article. :magic:
Well, Haiku has its roots all the way back in the BeOS of the mid-to-late 90s, so.....it all fits! :thumbsup:


Mike. :)
The hallmark of the truly skilled is to make the difficult stuff look EASY..... (Of course, it does help to know what you're doing in the first place! :good: )

User avatar
Mike_Walsh
White ninja
White ninja
Posts: 16
Joined: 25 Feb 2023, 14:14
Distribution: Puppy!

Simple Grub4DOS chain-loader for Porteus on a USB flash-drive...

Post#6 by Mike_Walsh » 19 Sep 2023, 10:44

@ Ed_P :-

To answer your query above, um......I doubt this would work for Porteus anyway. Reasons are as follows:-

1 ) Grub4DOS was officially deprecated some years ago.
2 ) Puppy's version is one that has been 'patched', in-house, to work specifically with Puppy's unique method of operation.
3 ) Newer versions of Puppy are all now using a modified build of the standard GRUB 2.0.6 bootloader. This is what's now a built-in component of the Woof-CE build script, hosted at Github, which takes a mainstream distro in at one end & spist out a Puppy based on it at the other. There's no longer any sign of the older Grub4DOS mechanism, because our sole Woof-CE developer, Dima Krasner, doesn't like Grub4DOS and is a big fan of the way mainstream distros handle this. He also wants Puppy to remain viable into the forseeable future, which essentially means abandoning many of Puppy's original unique mechanisms and following in everybody else's footsteps.....a path which I myself am not happy with. Puppy's original simplicity is slowly becoming mired in pointless technicalities, merely out of a desire to 'comply'.

(Dima works for an Israeli-based high-security outfit, GYTPOL, that advises enterprise operations as to the best way to ensure none of their software mechanisms/scripts/programs/apps have been tampered with prior to execution. He is an absolute security freak, and was advising the community to part company with Grub4DOS years ago.)

I'll modify the first post to state it's for anybody with an existing Grub4DOS bootloader setup. I think I must be one of the relatively few Puppians still using Grub4DOS.....but it just 'works' for me.


Mike. :(
Last edited by Mike_Walsh on 19 Sep 2023, 13:19, edited 1 time in total.
The hallmark of the truly skilled is to make the difficult stuff look EASY..... (Of course, it does help to know what you're doing in the first place! :good: )

User avatar
Rava
Contributor
Contributor
Posts: 5416
Joined: 11 Jan 2011, 02:46
Distribution: XFCE 5.01 x86_64 + 4.0 i586
Location: Forests of Germany

Simple Grub4DOS chain-loader for Porteus on a USB flash-drive...

Post#7 by Rava » 19 Sep 2023, 11:05

Update:
Tome found a maintainer who released a much more recent version:
Simple Grub4DOS chain-loader for Porteus on a USB flash-drive... (Post by tome #95778)

If that maintainer is as trust-worthy as the original maintainers: I have no clue. if you do not know, any bootloader can theoretically install all kinds of nasty things onto your system, e.g. a virtual machine that starts your OS or OS-es (e.g. your Linux and Windoze) - and such a Virtual Machine would be able to trace every keystroke you do and read all in and out data, so any encrypting you would run on any of your OS would no longer be working as intended.
Because that malware VM would be the only real OS running on your system.

And yes, such malware really exists (unfortunately), not making stuff up here.
Thus a bootloader is a very sensitive part of your local software, security-wise.

Therefore I keep the info about the older grub4dos-0.4.4 in here:

Code: Select all

828933 bytes 2010-09-12 07:34 grub4dos-0.4.4-2009-06-20.zip
This is what my lsfind indexing finds for me on one of my many many drives.
By the date alone you see how old it is.
I have an even older version:

Code: Select all

826278 bytes 2009-01-15 13:16 grub4dos-0.4.4-2009-01-11.zip
I am sure you find online the last official version of g4d if you search for it.


In the end maybe my 0.4.4 is the very last version. :hi:

https://grub4dos.sourceforge.net/ says
Mail list grub4dos-devel@gna.org , subscribe page https://mail.gna.org/listinfo/grub4dos-devel/

Documents have been moved to grub4dos wiki

To download grub4dos and grubinst, please go to the project page

https://sourceforge.net/projects/grub4dos/
Downloads: 385 This Week
Last Update: 2013-04-16
Not updated in more than 10 years, still it gets weekly downloads. That says something.

I used it when I had my Witless7 and Porteus on the then new Toshiba satellite notebook. Now that WitlessOS is gone I changed my bootloader since then the only thing I boot is Linux. But back then Grub4Dos was the only bootloader to be known to work for my case. :magic: Worked flawlessly until the witless-"c:" partition went kaput - since Grub4Dos has its main binary on that partition.

Added in 3 minutes 15 seconds:
As I suspected: grub4dos 0.4.4 from2009-03-31 is the last existing version (just like the one I used)

https://sourceforge.net/projects/grub4d ... /GRUB4DOS/

Code: Select all

grub4dos 0.4.4 	2009-03-31 	
download link:
https://sourceforge.net/projects/grub4d ... s%200.4.4/

Added in 2 minutes 37 seconds:
And don't ask me why I have a version called
grub4dos-0.4.4-2009-06-20
when SF says the newest version is from 2009-03-31

One would have to make md5sum comparisons of the main files inside the archives to see if there is a difference.

Added in 59 seconds:
And by "one would have to do…" I mean: anyone but me. :D
Last edited by Rava on 19 Sep 2023, 23:45, edited 1 time in total.
Reason: info on troyan VM and tome's post about never version by a different maintainer

User avatar
Ed_P
Contributor
Contributor
Posts: 8374
Joined: 06 Feb 2013, 22:12
Distribution: Cinnamon 5.01 ISO
Location: Western NY, USA

Simple Grub4DOS chain-loader for Porteus on a USB flash-drive...

Post#8 by Ed_P » 19 Sep 2023, 17:21

From my old desktop, that I built about 20 yrs ago, a grub4dos Porteus menu.

Code: Select all

title 14. Porteus 4.0 
find --set-root /boot/syslinux/initrd.xz
map --mem /boot/syslinux/initrd.xz (fd0)
map --hook
root (fd0)
kernel /boot/syslinux/vmlinuz volume=15% 
initrd /boot/syslinux/initrd.xz
boot

#title XX. PEBuilder's BartPE 
#root (hd0,1)
#chainloader /Users/Ed/"My Utilities"/PEBuilder3110a/PEBuilder3110a/BartPE/I386/SETUPLDR.BIN

# Load the MBR
# chainloader (hd0)+1
# Load the bootsector
# chainloader +1
# Load the loader
# chainloader /ntldr or /bootmgr
# http://www.911cd.net/forums//index.php?s=&showtopic=24300&view=findpost&p=167292

# Menu commands: http://www.gnu.org/software/grub/manual/html_node/
# end file menu.lst
And for anyone interested my Porteus submenu.

Code: Select all

# global options

# splashimage=/GRLDRfiles/splash/glogo.xpm.gz
# splashimage=/GRLDRfiles/splash/tux.xpm.gz
  splashimage=/GRLDRfiles/splash/tux.new.xpm.gz
# http://www.schultz-net.dk/grub.html
# http://www.911cd.net/forums//index.php?s=&showtopic=24951&view=findpost&p=171797

# color <foreground/background> [hilite-fg/hilite-bg] - sans splashimage
# colors:                black       blue       green       cyan       red       magenta   brown    light-gray
#   foreground only: dark-gray light-blue light-green light-cyan light-red light-magenta   yellow   white
# color white/blue  black/light-gray
# color white/green white/blue

# ****ground rrggbb   000000=black  ffffff=white  8-f = bright
# foreground 000099
# background eeeeee
  foreground 000088
  background cccccc

timeout 600
default 7
fallback 8

# menu entries

--map --unhook

title 01. Porteus 4.0+\n\a Disregard the missing cfg warning.
find --set-root                     /Porteus/Porteus-CINNAMON-v4.0-i586.iso
map --heads=0 --sectors-per-track=0 /Porteus/Porteus-CINNAMON-v4.0-i586.iso (0xff)
map --hook
root (0xff)
kernel /boot/syslinux/vmlinuz  from=/Porteus/Porteus-CINNAMON-v4.0-i586.iso \
                           extramod=/Porteus/Modules volume=40 noload=cinnamon  
initrd /boot/syslinux/initrd.xz

title 02. Porteus 4.0 AF\n\a Disregard the missing cfg warning.
find --set-root                     /Porteus/Porteus-CINNAMON-v4.0-i586.iso
map --heads=0 --sectors-per-track=0 /Porteus/Porteus-CINNAMON-v4.0-i586.iso (0xff)
map --hook
root (0xff)
kernel /boot/syslinux/vmlinuz  from=/Porteus/Porteus-CINNAMON-v4.0-i586.iso volume=40   
initrd /boot/syslinux/initrd.xz

title 03. Porteus 4.0 AF - text mode\n\a Text mode
find --set-root                     /Porteus/Porteus-CINNAMON-v4.0-i586.iso
map --heads=0 --sectors-per-track=0 /Porteus/Porteus-CINNAMON-v4.0-i586.iso (0xff)
map --hook
root (0xff)
kernel /boot/syslinux/vmlinuz  from=/Porteus/Porteus-CINNAMON-v4.0-i586.iso 3   
initrd /boot/syslinux/initrd.xz

title 04. Porteus 4.0 AF - hd32\n\a To boot requires responding to the CD or DVD prompt. 
                               \n\a Edit menus to include from=/mnt/isoloop
find --set-root --ignore-floppies --ignore-cd /Porteus/Porteus-CINNAMON-v4.0-i586.iso
map                                           /Porteus/Porteus-CINNAMON-v4.0-i586.iso (hd32)
map         --hook
root        (hd32)
chainloader (hd32)

test1=abc
test2=xyz
title 05. Porteus LXQT 4.0 AF - hd32\n\a To boot requires responding to the CD or DVD prompt. \n\a Edit menus to include from=/mnt/isoloop \n\a test1=$test1$ test2=%test2%
find --set-root --ignore-floppies --ignore-cd /Porteus/Porteus-LXQT-v4.0-i586.iso
map                                           /Porteus/Porteus-LXQT-v4.0-i586.iso (hd32)
map         --hook
root        (hd32)
chainloader (hd32)

title 06. Porteus LXQT 4.0+\n\a Disregard the missing cfg warning.
find --set-root                     /Porteus/Porteus-LXQT-v4.0-i586.iso
map --heads=0 --sectors-per-track=0 /Porteus/Porteus-LXQT-v4.0-i586.iso (0xff)
map --hook
root (0xff)
kernel /boot/syslinux/vmlinuz  from=/Porteus/Porteus-LXQT-v4.0-i586.iso \
                           extramod=/Porteus/Modules volume=40 noload=cinnamon  
initrd /boot/syslinux/initrd.xz

title
root

title exit \n\a Return to main menu.
find --set-root /menu.lst
configfile /menu.lst

Added in 7 minutes 53 seconds:
And some grub4dos notes from a old friend that I've kept.

Code: Select all

The GRUB Loader consists of:

c:\grldr
c:\bcdf.bin
c:\BCDL.BIN
c:\VIDE-CDD.SYS
c:\menu.lst
c:\boot folder and subfolders

http://www.justlinux.com/forum/showthread.php?threadid=143973

The main advantage of indirect booting is that the partition number is the "sole" information needed to boot that system, with 3 generic lines needed

Code:

title This is a system in jth partition of ith disk
root (hdi,j) 
chainloader +1


Grub counts from 0 and so the 3rd partition in the second disk will have root (hd1,2)

One can actually say the success of the booting of the 100+ systems was made possible essentially by Grub's ability to "chainload" the boot loaders of the other systems.




http://www.911cd.net/forums//index.php?s=&showtopic=17144&view=findpost&p=113740

Please note that GRLDR, besides "chainloading" a partition can also DIRECTLY chainload NTLDR (or SETUPLDR.BIN:


Directly boot NTLDR of WinNT/2K/XP and IO.SYS of Win9x/ME and
KERNEL.SYS of FreeDOS. Examples:

chainloader [--edx=0xPPDD] (hd0,0)/ntldr
boot

chainloader [--edx=0xDD] (hd0,0)/io.sys
boot

chainloader [--ebx=0xDD] (hd0,0)/kernel.sys
boot

The hex DD specifies the boot drive number, and PP specifies
the boot partition number of NTLDR. If the boot drive is
floppy, PP should be the hex value ff.


This way, it should be possible to "bypass" the actual BOOTRECORD of the Logical Volume inside Extended Partition.

I haven't tried it, as I do not have a system configured as yours, but you can try:

chainloader (hd0,10)/ntldr

or

chainloader (hd0,10)/SETUPLDR.BIN


(remember that GRUB uses CaSe SeNsItIvE names)

On my GRUB based bootCD, I use (using GRLDR as no-emulation file)

chainloader /I386/SETUPLDR.BIN


and it works allright.

jaclaz
Ed

tome
Contributor
Contributor
Posts: 676
Joined: 26 Jun 2013, 14:03
Distribution: x64 Openbox
Location: Russia is causing the immense damage to humanity
Contact:

Simple Grub4DOS chain-loader for Porteus on a USB flash-drive...

Post#9 by tome » 19 Sep 2023, 19:25

You have mind and feelings. Be wise and clever.

User avatar
Rava
Contributor
Contributor
Posts: 5416
Joined: 11 Jan 2011, 02:46
Distribution: XFCE 5.01 x86_64 + 4.0 i586
Location: Forests of Germany

Simple Grub4DOS chain-loader for Porteus on a USB flash-drive...

Post#10 by Rava » 19 Sep 2023, 23:37

tome wrote:
19 Sep 2023, 19:25
https://github.com/chenall/grub4dos
grub4dos-0.4.6a-2023-08-18.7z Latest
Aug 18, 2023
Indeed, a newer version. :shock:
Thanks tome. :friends:

I edited my above post to give folks the link you posted - and also added this:
Rava wrote:
19 Sep 2023, 11:12
If that maintainer is as trust-worthy as the original maintainers: I have no clue. if you do not know, any bootloader can theoretically install all kinds of nasty things onto your system, e.g. a virtual machine that starts your OS or OS-es (e.g. your Linux and Windoze) - and such a Virtual Machine would be able to trace every keystroke you do and read all in and out data, so any encrypting you would run on any of your OS would no longer be working as intended.
Because that malware VM would be the only real OS running on your system.

And yes, such malware really exists (unfortunately), not making stuff up here.
Thus a bootloader is a very sensitive part of your local software, security-wise.
Ed_P wrote:
19 Sep 2023, 17:29
The GRUB Loader consists of:

c:\grldr
c:\bcdf.bin
c:\BCDL.BIN
c:\VIDE-CDD.SYS
c:\menu.lst
c:\boot folder and subfolders
That must have been a much older version than the 0.4.4 i used, I recall in "C:\" being a folder that contains the core binary.
Update
Found the name of the folder via my lsfind database of my crashed historical C:\ partition - the name is NST - or in Windoze parlance C:\NST\
And it had in C:\ these:

Code: Select all

NeoGrub
NeoGrub.exe
And I added this:

Code: Select all

      1250 2017-07-07 11:57 NeoGrub.checksums
:)

And my NST folder had these the last time I ran my lsfind script to create the ls and the find database:

Code: Select all

./NST/grub.booting.ISO.file
./NST/menu.lst
./NST/menu.lst.backup1
./NST/menu.lst.backup2
./NST/menu.lst.backup3
./NST/menu.lst.backup4
./NST/menu.lst.backup5
./NST/menu.lst.backup6
./NST/menu.lst.backup7
./NST/menu.lst.backup8
./NST/menu.lst.backup9
./NST/menu.lst.DOS
./NST/menu.lst.Port5.0rc1+DEs.md5sums.txt
./NST/menu_FJ_Lifebook.lst
./NST/menu_Q40.lst
./NST/NeoGrub.checksums
./NST/NeoGrub.mbr
./NST/NeoGrub.mbr.checksums
Added in 29 minutes 26 seconds:
These are the most crucial files of a Grub4DOS setup (v.0.4.4)

Code: Select all

C:\NeoGrub
C:\NeoGrub.exe
C:\NST\menu.lst
C:\NST\NeoGrub.mbr
Any one of these missing or corrupt and your PC would not start without an external OS - like a USB stick with a Puppy, Porteus, gparted-live or Knoppix. :)
Cheers!
Yours Rava

User avatar
Ed_P
Contributor
Contributor
Posts: 8374
Joined: 06 Feb 2013, 22:12
Distribution: Cinnamon 5.01 ISO
Location: Western NY, USA

Simple Grub4DOS chain-loader for Porteus on a USB flash-drive...

Post#11 by Ed_P » 20 Sep 2023, 03:33

My GRUB4DOS backup folder.

Code: Select all

guest@porteus:/mnt/sda6$ ls -onR GRUB4DOS
GRUB4DOS:
total 4
drwxrwxrwx 1 1000 4096 Sep 19 23:10 Hdd\ files/

GRUB4DOS/Hdd files:
total 297
drwxrwxrwx 1 1000   4096 Sep 19 23:10 GRLDRfiles/
-rwxrwxrwx 1 1000    191 Feb 18  2014 boot.ini*
-rwxrwxrwx 1 1000 270387 Mar  2  2013 grldr*
-rwxrwxrwx 1 1000   9216 Jun  1  2011 grldr.mbr*
-rwxrwxrwx 1 1000   2883 Apr  1  2019 menu.lst*
-rwxrwxrwx 1 1000   2671 Jul 28  2015 menuBkup.lst*
-rwxrwxrwx 1 1000   3434 Feb  3  2020 porteus.lst*

GRUB4DOS/Hdd files/GRLDRfiles:
total 441
drwxrwxrwx 1 1000   4096 Sep 19 23:10 EdsLsts/
-rwxrwxrwx 1 1000   4878 Jul  2  2006 GRUB.txt*
-rwxrwxrwx 1 1000    410 Aug 11  2011 boot.ini*
-rwxrwxrwx 1 1000 220921 Jun  1  2011 grldr*
-rwxrwxrwx 1 1000   9216 Jun  1  2011 grldr.mbr*
-rwxrwxrwx 1 1000 160664 Sep 19  2006 grldrold*
-rwxrwxrwx 1 1000  20020 Aug 30  2006 memdisk.bin*
-rwxrwxrwx 1 1000  18432 Aug 30  2006 sbootmgr.dsk*
drwxrwxrwx 1 1000      0 Sep 19 23:10 splash/

GRUB4DOS/Hdd files/GRLDRfiles/EdsLsts:
total 33
-rwxrwxrwx 1 1000  808 Apr 29  2013 COMMANDS.LST*
-rwxrwxrwx 1 1000  115 Jan  6  2006 GRUB\ Manual.url*
-rwxrwxrwx 1 1000 1698 Apr 30  2013 menu.lst*
-rwxrwxrwx 1 1000  868 Apr 29  2013 menuBasic.lst*
-rwxrwxrwx 1 1000 1914 Apr 30  2013 menuBrio.lst*
-rwxrwxrwx 1 1000  930 Jul 13  2010 menuBrioOld.lst*
-rwxrwxrwx 1 1000  338 Apr 29  2013 menuGRLDR.lst*
-rwxrwxrwx 1 1000 1626 Apr 30  2013 menuNotebook.lst*
-rwxrwxrwx 1 1000 2236 Mar  6  2006 menuOld.lst*
-rwxrwxrwx 1 1000 1361 Apr 29  2013 menuXtended.lst*

GRUB4DOS/Hdd files/GRLDRfiles/splash:
total 24
-rwxrwxrwx 1 1000 8147 Jan  3  2006 glogo.xpm.gz*
-rwxrwxrwx 1 1000 8038 Jul 19  2012 tux.new.xpm.gz*
-rwxrwxrwx 1 1000 8050 Apr 12  2011 tux.xpm.gz*
guest@porteus:/mnt/sda6$ 
:lol:
Ed

Post Reply