Thanks for all the valuable feedback on the first public beta of my Slackware Live Edition. It allowed me to fix quite a few bugs in the Live scripts (thanks again!), add new functionality (requested by you or from my own TODO) and I took the opportunity to fix the packages in my Plasma 5 repository so that its Live Edition should actually work now.
What is Slackware Live Edition?
If you’re new here: Slackware Live Edition is a “live OS” meaning it does not have to be installed to a harddrive and can run straight off a CDROM or DVD medium, or off a USB stick. Slackware Live Edition is meant to showcase the development of Slackware. Therefore it will boot slackware-current and no other OS. It is meant as an ideal opportunity for people who are curious what two years of Slackware development have resulted in. You do not have to erase your current OS, just copy the ISO to a suitable medium, boot from the medium and check it out. The previous article I wrote explains in more detail why I wanted to write my own Live scripts instead of just using one of the available solutions.
What’s with these three ISO’s?
Slackware Live Edition comes in three flavors (for now). There’s a 700 MB slimmed-down XFCE version with XDM as the graphical login manager; then there is the actual complete Slackware-current with KDE4 and using KDM as the graphical login manager (2.6 GB in size); and finally you can download a 3.0 GB ISO image of Slackware-current with Plasma 5 and the SDDM graphical login manager. The Plasma 5 edition has some cool extras like vlc, libreoffice, calibre, qbittorrent ffmpeg, chromium, openjdk, veracrypt… and more from my own repository.
How do I use the ISO?
The ISO can be burnt to a DVD (XFCE version will fit on CDROM even) or copied to USB stick. Since the ISOs are ‘hybrid’ just copying to the USB device using ‘dd’ or ‘cp’ will get you a fully functional bootable medium, albeit without persistence (it’s still technically a read-only CDROM filesystem that you’ve copied to the USB stick). The OS will not be bothered by this, because it thinks it can write to the filesystem. That is the trick of a Live OS – all these write operations are done to a RAM based filesystem. The changes are gone once you reboot.
But when using the ‘iso2usb.sh‘ script you can create a real Live OS on the USB device with persistence, meaning that the things you change will be preserved across reboots. All your modifications will be stored in the directory “persistency” in the root of the USB device. Therefore you are actually able to use the USB stick as your pocket-OS on the go:
# ./iso2usb.sh -i ~/Download/slackware64-live-current.iso -o /dev/sdX
… where /dev/sdX is the device name of your USB stick. Don’t worry about accidentally overwriting the content of your hard drive – the script will first show you details about the sdX device and wants your confirmation that this is actually the device you want to reformat.
When you boot Slackware Live you will be presented with a Syslinux boot menu:
- Start (SLACKWARE | PLASMA5 | XFCE) Live (depending on which of the three ISOs you boot)
- Non-US Keyboard selection
- Non-US Language selection
- Memory test with memtest86+
The first entry boots you straight into the Live OS, using US keyboard mapping and a “en_US.utf8” locale. If you have a non-US keyboard layout and/or want your Linux to show itself in a non-US Language, you can use the second and third menu entries to configure one of the languages I selected ( I picked what I thought were the most commonly used). If your language or keyboard is not listed, just hit the <TAB> key and change the values for the “kbd” and “locale” parameters. Likewise for the timezone parameter which by default is associated with your choice of language.
The memtest option was copied from the Slackware installer – it allows you to test your RAM sticks for hardware errors very thoroughly.
More parameters
The syslinux boot menu allows you to modify the boot command line. Press <TAB> to edit the command line. You will see several parameters you can edit but you can also add more. The <F2> key will show a couple of those.
- 0|1|2|3|4|5|6|S|s|single (Select another runlevel to start with; the default is 4 for graphical login)
- lang=nl_NL kbd=nl tz=Europe/Amsterdam (Example of language, keyboard and/or timezone customization)
- nop (No persistence, i.e. boot the virgin installation)
- nomodeset (Boot with kernel mode setting for graphics — needed with some machines)
- load=nvidia (Load and configure binary Nvidia drivers that are present in the ISO)
- rootdelay=10 (Add 10 second delay to allow proper USB initialization)
But there are some others, and some of these have been added after readers of this blog suggested them:
- hostname=aliens (Change the hostname for the OS; default hostname is “darkstar“)
- livepw=”somestring” (Change the password for the ‘live’ user)
- rootpw=”somestring” (Change the password for the ‘root’ user)
- load=mod1[,mod2[…]] (load one or more squashfs modules that are present in the directory “/liveslack/optional”; by default none of the modules in the “optional” directory are loaded)
- noload=mod1[,mod2[…]] (prevent loading of one or more squashfs modules that are present in the directory “/liveslack/addons”; by default all of the modules in the “addons” directory are loaded on boot)
- rescue (After initialization, you will be dropped in a rescue shell where you can perform lowlevel maintenance; the same happens anyway if the OS fails to boot)
- swap (Allow the Live OS to activate all swap partitions it finds on the local hardware; by default, the hard drive will not be touched at all)
I get errors and booting fails
Booting an OS off a USB medium is tricky. Linux kernel initializes the storage and the usb subsystems in parallel. If you have a fast computer and slow USB medium or you use a USB-1 / USB-2 port, the probability is pretty high that the USB stick is not yet ready when the OS starts its mount attempts. There’s a parameter you can add to the boot command line to give the USB device some extra time to settle – try adding “rootdelay=10” or even “rootdelay=20” which will add 10 (or 20) seconds pause to the boot process. The iso2usb.sh script configures a default delay of 5 seconds which should be sufficient for most computers.
Instead of “rootdelay” you can use the parameter “waitforroot” with identical result.
Slackware Live does not log me on automatically!
Correct. This is a demonstration environment, with the purpose of getting you acquainted with Slackware, remember?
You already saw all these intimidating kernel messages scrolling across the screen while booting the OS, and now you have two choices for login:
- user ‘root’ with the password ‘root’ (at least that is the default – you can change it using a boot parameter if you want)
- user ‘live’ with the password ‘live’ (idem about the default value).
I would suggest using the ‘live’ user account to logon to the Live OS, because KDE 4 and Plasma 5 will not appreciate it when you login as root directly. If you need root access, then just run “sudo -i” or “su -” (both commands will request you to enter the password of user ‘live’, not the root password!).
What’s still on the TODO?
There are a couple of items that I did not get to but they should really be looked into to bring this out of Beta:
- UEFI boot needs to work (must have)
- Better documentation about how the scripts work (must have)
- Documentation on all the boot parameters (must have)
- Slackware installer as part of the ISO, perhaps even Didier’s polyglot installer (nice to have, only in the Plasma5 version)
- A ‘copy2ram‘ function to run the OS entirely in RAM (nice to have)
- Persistence directory inside a loop-mounted ext4 container file, so that the persistent USB stick can have a single FAT partition (nice to have)
- Homedirectory of a persistent Live OS inside a loop-mounted LUKS-encrypted container file, to protect your private data (nice to have)
- … tell me more! Or post patches!
Download the ISO images
- Primary location: http://taper.alienbase.nl/mirrors/slackware-live/ (rsync URI: rsync://taper.alienbase.nl/mirrors/slackware-live/)
- Willy’s mirror: http://repo.ukdw.ac.id/slackware-live/
Show me the source!
Git repository for the scripts can be found here: http://taper.alienbase.nl/cgit/liveslak/
A checkout of the repository can be found in http://www.slackware.com/~alien/liveslak/ and http://taper.alienbase.nl/mirrors/people/alien/liveslak/
Hopefully soon, I will write a proper README which takes you through the inner workings of the scripts. If you are curious you can of course check out the sources – they are full of comments. But there are some design decisions at the core which you need to be aware of before you start on these scripts.
Happy hacking! Eric
Update 25-dec-2015: please continue reading the follow-up article on “Beta 3“.
Update 24-jan-2016: please continue reading and commenting in my follow-up article “Beta 4″.
Eric wrote :
What’s still on the TODO?
A ‘copy2ram‘ function to run the OS entirely in RAM (nice to have)
Eric, if you can implement this function, i wil send
you a “splikslplinternieuw” KeyTronic KT2001PROUS
toetsenbord……We have a deal ? 🙂
Hi Eric,
I’m thrilled to pieces that you’ve integrated all my changes!
…first try to build the new FluxFlux version based on your scripts is running at the very moment.
Keep up your splendid work!
Manfred
My repo should be finished mirroring in the next few minutes i guess
OK, it’s up now with all the latest Beta 2 ISOs
Looking at rsync and HTTP, the plasma5 files (.iso, .asc, and .md5) are new, but the xfce and “vanilla’ versions are the same. Are they not being updated this round?
Is it be possible to add an option, if one has a lot a memory, to copy the whole DVD in memory and run from there ?
Again, thank you very much for providing these new Beta 2 isos.
However, see that the ‘slackware64-live-xfce-current.iso’ is still the beta 1. Won’t you provide a Beta 2?
May I repeat my question : “How to make a ‘.sxz’ module?
Your efforts are very much appreciated.
Thank you for your attention.
The ISOs for “XFCE” and “full Slackware” were indeed still the old Beta 1 versions.
I have uploaded the correct versions and notified Willy that he needs to refresh his Indonesian mirror.
Eric,
skel.txz is missing in the livescripts 😉
Imho you should check it like you do with squashfs-tools/cdrtools.
Manfred
ikke, please take a look at the “makemod” script, which will create a .sxz module out of the content of a directory, or out of an actual Slackware package:
# ./makemod
-- Usage:
makemod <packagename |directory> modulename.sxz
Manfred, indeed I had applied a filter for compressed archives when I uploaded my sources to git… I have added the skel.tgz too now.
A checkout of it all is also available in http://www.slackware.com/~alien/liveslak/ and http://taper.alienbase.nl/mirrors/people/alien/liveslak/
Tried using the iso2usb.sh script and the attached (https://dpaste.de/svR0) error, Not sure if it is somthing I did wrong.
Eric, thanks for the fix.
First created ISO didn’t work because system is still searching for ‘liveslack’ folder although I’ve defined another value for LIVEMAIN var.
find a fix for init create section and liveinit itself below:
— liveslak/liveinit 2015-11-28 14:56:29.000000000 +0100
+++ liveslak1/liveinit 2015-11-28 14:41:19.000000000 +0100
@@ -35,6 +35,7 @@
# The ISO creation script will create a filesystem with this label.
# Nevertheless, the user may have copied the ISO content to a different device.
MEDIALABEL=”@MEDIALABEL@”
+LIVEMAIN=”@LIVEMAIN@”
# By default, let the media determine if we can write persistent changes:
VIRGIN=0
@@ -193,7 +194,7 @@
# Separate partitions from block devices, look at partitions first:
for SLDEVICE in $(blkid |cut -d: -f1 |grep “[0-9]$”) $(blkid |cut -d: -f1 |grep -v “[0-9]$”) ; do
mount -t auto -o ro $SLDEVICE /mnt/media
– if [ -d /mnt/media/liveslak ]; then
+ if [ -d /mnt/media/$LIVEMAIN ]; then
# Found our media!
LIVEMEDIA=$SLDEVICE
LIVEFS=$(blkid $LIVEMEDIA |rev |cut -d'”‘ -f2 |rev)
@@ -229,7 +230,7 @@
# number (i.e. created last) will be leftmost in a colon-separated list:
RODIRS=””
# First, the base Slackware system components:
– for MODLOC in $(ls -1 /mnt/media/liveslak/system/*.sxz) ; do
+ for MODLOC in $(ls -1 /mnt/media/$LIVEMAIN/system/*.sxz) ; do
MODBASE=”$(basename ${MODLOC} .sxz)”
mkdir /mnt/live/modules/${MODBASE}
mount -t squashfs -o loop ${MODLOC} /mnt/live/modules/${MODBASE}
@@ -239,8 +240,8 @@
# Next, the add-on (3rd party etc) components, if any:
# Remember, module name must adhere to convention: “NNNN-modname-*.sxz”
# where ‘N’ is a digit and ‘modname’ must not contain a dash ‘-‘.
– if ls /mnt/media/liveslak/addons/*.sxz 1>/dev/null 2>/dev/null ; then
– for MODLOC in /mnt/media/liveslak/addons/*.sxz ; do
+ if ls /mnt/media/$LIVEMAIN/addons/*.sxz 1>/dev/null 2>/dev/null ; then
+ for MODLOC in /mnt/media/$LIVEMAIN/addons/*.sxz ; do
MODBASE=”$(basename $MODLOC .sxz)”
# Skip loading one or more addons by using boot parameter ‘noload’:
# noload=mod1[,mod2[,mod3]]
@@ -257,8 +258,8 @@
# And finally any explicitly requested optionals (like nvidia drivers):
# Remember, module name must adhere to convention: “NNNN-modname-*.sxz”
# where ‘N’ is a digit and ‘modname’ must not contain a dash ‘-‘.
– if ls /mnt/media/liveslak/optional/*.sxz 1>/dev/null 2>/dev/null ; then
– for MODLOC in /mnt/media/liveslak/optional/*.sxz ; do
+ if ls /mnt/media/$LIVEMAIN/optional/*.sxz 1>/dev/null 2>/dev/null ; then
+ for MODLOC in /mnt/media/$LIVEMAIN/optional/*.sxz ; do
MODBASE=”$(basename $MODLOC .sxz)”
if [ -n “$LOAD” -a -n ‘$(echo “,${LOAD},” |grep -i “,$(echo $MODBASE |cut -d- -f2),”)’ ]; then
mkdir /mnt/live/modules/${MODBASE}
@@ -391,7 +392,7 @@
fi
# Copy contents of rootcopy directory (may be empty) to overlay:
– cp -af /mnt/media/liveslak/rootcopy/* /mnt/overlay/ 2>/dev/null
+ cp -af /mnt/media/$LIVEMAIN/rootcopy/* /mnt/overlay/ 2>/dev/null
# ——————————————————————— #
# SLACKWARE LIVE – !END! #
— liveslak/make_slackware_live.sh 2015-11-28 14:56:29.000000000 +0100
+++ liveslak1/make_slackware_live.sh 2015-11-28 14:00:37.000000000 +0100
chroot ${LIVE_ROOTDIR} /sbin/mkinitrd -c -l us -o /boot/initrd_${KVER}.gz -k ${KVER} -m ${KMODS} 1>${DBGOUT} 2>${DBGOUT}
cat $LIVE_TOOLDIR/liveinit | sed \
-e “s/@MEDIALABEL@/$MEDIALABEL/g” \
+ -e “s/@LIVEMAIN@/$LIVEMAIN/g” \
-e “s/@DARKSTAR@/$LIVE_HOSTNAME/g” \
> ${LIVE_ROOTDIR}/boot/initrd-tree/init
chroot ${LIVE_ROOTDIR} /sbin/mkinitrd 1>/dev/null 2>${DBGOUT}
Alienbob, yes! My aim is to create a .sxz module out of the contents of a directory.
“makemod modulename.sxz” should be the command to do it. However [code]makemod[/code] seems not to be available at least not on the xfce4-iso.
Where can I find it? Guess you make use of the ‘squashfs-tools’ which are not available neither.
Anyway, thank you for understanding.
live iso kde5 work here, it seem just that shutdown and reboot command in sddm don’t work here with live user.
I used the script to install the XFCE image to USB (I think I got the new version, downloaded less than an hour ago). The output was the same as that seen by Richard Lapointe. However, it booted fine (the root delay of five you mention seems to have been sufficient in the case of this hardware). But when I rebooted (with persistence) X wouldn\’t start, even when I then added an extra delay of 20. When I booted with option \”nop\”, X started, but there was a black screen with the words \’reboot\’ and \’halt\’ at bottom right, and nothing else. tty2 worked normally and I was able to log in, run screen, top, and reboot.
Either I do have the old iso (downloaded twice), or the md5sum is still the old one:
mimosa[iso]$ md5sum slackware64-live-xfce-current.iso
04cb8a56be3cb4d248b5990b1c6559ba slackware64-live-xfce-current.iso
mimosa[iso]$ cat slackware64-live-xfce-current.iso.md5
04cb8a56be3cb4d248b5990b1c6559ba /tmp/slackware64-live-xfce-current.iso
Sorry, please scrub my last comment – I obviously did have the wrong image! I\’ll try the script again.
OK. This, the “new” kde5 live disk, works…. Very slow, but it works. This is not an exaggeration, I was up early, downloaded the .iso, started the burn and waited if the check sum was OK and went to the market. Returned, re-booted with the DVD, started a pot of coffee, put the groceries away, made and buttered some toast, poured a couple of coffee, and just as I was about to eat the last bite of toast, there was finally a working screen on the monitor. It went a little faster in VirtualBox.
Can’t decided if the wallpaper reminds me of something my oldest painted on his wall when it was four years old or if it is something I once saw on a wall of a beach bar in a third world country…..
Just ordered a copy of win7-64 bit and think I’ll just called it day if this is future of open source.
The reason for the apparent problem with X was I had two monitors connected, and couldn\’t see the one that was inviting me to log in. Apologies for the confusion!
Persistence safely preserved my network settings, and an empty file created with touch. However, when I tried downloading a file, I got a \’no room on device\’ error, repeated when I dd\’d from /dev/zero to the empty file. Attempting to open it with vi produced a blkid (?) read error. I was also unable to write to /usr/local/bin (experimenting with youtube-dl with a view to testing multimedia); so it isn\’t just the /home/live directory.
cwizardone, good luck with Windows!
Wonderful!
Must clean up an usb stick before testing.
Small typo in the iso2usb.sh script :
-w|–wait Pause boot seconds to ititialize USB
I will test to add a line preserving a small fat partition to be able to share files with Windows.
ikke, just look in the source directory.
cwizardone – disappointed in the nature of your comments and the spite that emanates from it.
Good luck with windows. Please don’t reply.
mimosa I wonder if you ran into a hardware issue with that USB pendrive. It looks as if the stick has corrupted blocks.
Manfred, I think you need to share a link to that patch, for example in your git repository. The blog edit widget eats all the whitespace and the patch becomes useless.
Hi Eric,
The Polyglot installer of Didier is a MUST HAVE.
Thanks for your amazing work.
Eric, It might be the old USB stick (it was the same one used to dd the first beta). Using iso2usb.sh, on boot I get “invalid partition table” message. It took me hours, after wiping it etc with parted, to just hit to get the boot menu. After that all appeared ok. There where a few odd messages when the script ran about invalid GPT and ‘umount2: Invalid argument”. You can find a log here:
http://www.linuxgalaxy.org/slacklive/
Is it to be assumed that the script should be run under Slackware64-current? I used Slackware64-14.1
Thanks, Ed.
Works fine here
GPT data structures destroyed! You may now partition the disk using fdisk or
other utilities.
Creating new GPT entries.
The operation has completed successfully.
Setting name!
partNum is 0
REALLY setting name!
Setting name!
partNum is 1
REALLY setting name!
Setting name!
partNum is 2
REALLY setting name!
The operation has completed successfully.
The operation has completed successfully.
Disk /dev/sdh: 15155200 sectors, 7.2 GiB
Logical sector size: 512 bytes
Disk identifier (GUID): 0C0F50A8-C897-4CE1-95E0-3FAC0035CE92
Partition table holds up to 128 entries
First usable sector is 34, last usable sector is 15155166
Partitions will be aligned on 2048-sector boundaries
Total free space is 2014 sectors (1007.0 KiB)
Number Start (sector) End (sector) Size Code Name
1 2048 4095 1024.0 KiB EF02 BIOS Boot Partition
2 4096 413695 200.0 MiB EF00 EFI System Partition
3 413696 15155166 7.0 GiB 8300 Slackware Linux
3:2:1 (legacy BIOS bootable)
mkfs.fat 3.0.28 (2015-05-16)
mkfs.fat 3.0.28 (2015-05-16)
mke2fs 1.42.13 (17-May-2015)
Creating filesystem with 1842683 4k blocks and 461472 inodes
Filesystem UUID: 99b2cea9-1746-4ee0-89f9-ce8aaed8a450
Superblock backups stored on blocks:
32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632
Allocating group tables: done
Writing inode tables: done
Creating journal (32768 blocks): done
Writing superblocks and filesystem accounting information: done
tune2fs 1.42.13 (17-May-2015)
Setting maximal mount count to -1
Setting interval between checks to 0 seconds
mount: /dev/loop0 is write-protected, mounting read-only
— Copying files from ISO to USB… takes some time.
— Extracting Slackware initrd and adding rootdelay for USB…
35536 blocks
— Compressing the initrd image again:
35536 blocks
/vm
— Making the USB drive ‘/dev/sdh’ bootable using extlinux…
/mnt/alienusb.BEhdF8/boot/extlinux is device /dev/sdh3
— Cleaning up the staging area…
umount: /mnt/alienefi.Z7sEj1: not mounted
Thank you very much, alienbob.
Guess I might install your ‘squashfs-tools’. mksquashfs-options “-Xbcj x86 -Xdict-size ‘50%'” no longer required? Any harm?
Dank!
Eric,
please find the patch at https://repo.fluxflux.net/slackware-live/291115/liveslak.fixed.diff
After applying this patch I’ve successfully managed to create a i486 version.
Fixes:
– changed hardcoded liveslak to var LIVEMAIN in init
– fixed hostname changing by adding missing ‘/’ in build-script
– fixed silencing rc.modules in build-script
– changed hardcoded lib64 to @LIBDIR@ in xdm-config
– added sed line in build-script to replace @LIBDIR@ with arch depended value
Manfred
Hi Manfred
Thanks! I applied these as separate patches in git.
The one I did not take was the depmod patch. I do not think it is needed. My original version changes rc.modules in the 0099-slackware_zzzconf module, yours changes the original file in 0000-slackware_boot.
If you want to have any chance of installing the Live OS to a harddisk, then you would want the original files unaltered because the adaptations I made for running Slackware as a Live OS do not make sense when you run it directly from a harddisk installation.
About startup times. People who complain that they can go to the mall and eat breakfast during startup of their Live Plasma 5 in a VM, here are my measurements, run in QEMU on a quadcore machine. The QEMU VM was given 2GB of RAM.
– Boot to syslinux menu: almost instantaneous
– Live OS boot to start of Runlevel 4: 41 seconds
– Load time of SDDM login manager in rulnevel 4: 29 seconds (you’re right to state that that sucks… after all it is just a session manager)
– Load time of Plasma 5 between entering password and appearance of the startmenu: 76 seconds.
Summarizing: I needed to wait 2 minutes 26 seconds before I could start working in a Plasma 5 session – in a Virtual Machine.
On real hardware, using a USB stick with a persistent Slackware Live, these times are slashed to a fraction.
I did not try DVD or CD media, but certainly those will be slow media to boot a 3 GB OS from. TO me, only the XFCE edition makes any sense if you want to run it from an optical medium. Use a USB stick ffs!
A fresher USB stick happily preserved extensive changes, so that must have been it.
The only other problem I have found so far – and I suspect it has nothing to do with Live as such – is I can\’t get alsamixer to remember what my sound card is, so no sound. I can select it in the list with F6, but there is still no actual sound; when I run alsamixer again, it has reverted to the default.
Both mplayer and the browser appear to play video ok.
I even managed to install some stuff using slackpkg, but its config file seems to point to the 14.1 repositories, is this right? It\’s possible I\’ve got muddled about this, being (normally) a Salix user.
mimosa, the Beta 2 Live ISOs all have slackpkg configured to use a Slackware64-current repository using the following mirror:
http://ftp.osuosl.org/.2/slackware/slackware64-current/
Eric,
>> The one I did not take was the depmod patch…yours changes the original file in 0000-slackware_boot
You are right, my fault.
Nevertheless there is only a rc.modules-${KVER} in 0099-slackware_zzzconf-current-${SL_ARCH}.sxz instead of a plain rc.modules you are trying to operate on with sed.
Fixed by appending an asterisk to ${LIVE_ROOTDIR}/etc/rc.d/rc.modules to read ${LIVE_ROOTDIR}/etc/rc.d/rc.modules*.
Thus no $KVER definition has to be done.
Manfred
Running live-current and it’s nice to not have to reconfigure networking after every boot. Going from nothing a little over a week ago to a very functional “Slackware on a Stick” is awesome.
Manfred,
rc.modules is a symlink to rc.modules-${KVER}
@Willy:
are there any plans of creating csb/msb versions?
Manfred
Eric,
I know but nevertheless there must be something wrong because both
unsquashfs -l system/0099-slackware_zzzconf-current-i486.sxz | grep “rc.modules”
and unsquashfs -l 0020-slackware_min-current-i486.sxz | grep “rc.modules”
are only showing squashfs-root/etc/rc.d/rc.modules-4.1.13 but no additional squashfs-root/etc/rc.d/rc.modules as they should.
Could there be some magic regarding symlinks because I’m running the build script in a live environment?
Without adding the asterisk to rc.modules the build script stops because it can’t find rc.modules.
Manfred
alienbob, my mistake about the slackpkg mirrors file – I uncommented the wrong line myself! Also sound was a hardware problem fixed with .asoundrc.
It\’s nice to have the separate keyboard and locale setting. Can I suggest including Portuguese as well as Brazilian layout? As it happens, I use both, and they\’re quite dissimilar.
This will be one of the gifs for Christmas I will give to several people around me : a USB-stick with this Slackware. I suppose this works as well with USB3.
* UEFI boot needs to work (must have)
* Slackware installer as part of the ISO, perhaps even Didier’s polyglot installer
Both done (sort of).
I ended up putting in a directory, side by side, the content of a Slint “small” ISO installer (without the packages) and of a Slackware-live-xfce-current.iso.
That was easy, as there is no overlap.
Then all I had to do was to edit /EFI/BOOT/grub.cfg to include the relevant kernel parameters and update the paths to the kernel and the initrd.
Unintended side effect: at the moment, on UEFI the live Slacwkare starts, but on BIOS (aka Legacy for hybrid firmwares) the internationalized starts instead 😉
This doesn’t fulfill the requirements and the ISO is too heavy to fit on a CD as it weighs 784.334.848 bytes, so I consider this version only as a proof of concept.
Now I will remove the unneeded stuff so that the live Slackware starts in all firmware modes, upload an ISO for testing, document the hack and send the documentation to Eric, then propose a patch to make_slackware_live.sh if do not feel too lazy.
I will also provide the “hybrid” ISO as it is, just for fun.
I will post a comment again when that will be done (tomorrow if all goes well).
PS I made all tests after dd-ing to an USB stick. I will try from a CD when I will have a slimmed ISO.
mimosa, certainly. This discussion is meant to fix all the little things and get this ISO creator script out beta. Language support is important to those who are not living in the US and/or for whom english is hard to use.
What keyboard do you commonly use? There’s ‘pt-latin1’, ‘pt-latin9’ and also plain ‘pt’ keymaps.
Didier, it will be interesting to see what you did. If the XFCE ISO size gets a 50 MB hit, I wonder where that came from.
thanks alien, i’ve literally waited years for this sort of thing to come along.
looking forward to your script documentation
This time I downloaded the 3Gb Plasma 5 DVD image, and I used your iso2usb.sh script to write the image to an old USB stick that I use for live images. Boots in less than 2 mins on an X200 Thinkpad (core duo, 2Gig RAM USB 2 sockets). I’m posting this from Konqueror. Suspend to RAM works fine.
As others have suggested, if you add the Slackware installer to this I think that you will have a winner!
Feedback: Keyboard layout; I selected UK language and layout from the boot menu and UK is showing in the KDE Sytem Settings > Input Devices > Layouts menu but I’m getting US layout. Adding the gb layout has no effect until you remove the old uk layout. I’m used to this from xfce4 on Slackware so not a live image issue.
Eric, I added the Slint internationalized installer, hence the extra weigh.
I have been fighting several hours trying to understand why removing it leaded me to be stuck on UEFI with a screen displaying just “GRUB” as other have noticed. The reason is that bootx64.efi and efiboot.img have been built by Pat with /EFI/BOOT/make-grub.sh with the option of grub-mkimage “–config=grub-embedded.cfg”, but this file includes this line:
search –file –set=root /kernels/huge.s/bzImage
So removing /kernels/huge.s/bzImage (that also exists in the Slint installers) did stuck grub as it the can’t find it.
The solution was (and is also for you, by the way) to just write instead in grub-embedded.cfg:
search –file –set=root /boot/generic
and run make-grub.sh again (in a 64 bit Slackware else you will miss the grub modules).
Now I am going to continue stripping the ISO, stay tuned.
Didier, that’s positive news. I will see what you come up with.
Even better news, Eric: with this modification the ISO is now back to 727.711.744 bytes and, once put on an USB stick, can boot the live Slack XFCE both on BIOS/Legacy and UEFI. Now I am going to upload both ISO images for testing by folks who follow this thread, and in the meantime send you the technical details via email.
About Portuguese layout, I\’m actually not sure which mine is (setxkbmap pt probably would do it); but what matters is which version is most broadly used.
Another fun one to include would be dvorak (but not of course the Brazilian version).
Didier Spaier, great work on EFI boot – where can we find the ISOs you mention?
mimosa, you did not answer my question about which Portuguese keymap to use and instead nswered with a question of your own… not productive. And I am not that interested in Dvorak!
Tim, can you confirm that these settings are suitable?
For kernel keymap:
br-abnt2 for pt_BR
pt-latin1 for pt_PT
For XKeyboardLayout: always pt
Msb version is very possible to be added into this project.
I’m building GTK+3 based MATE 1.12 at this moment based on latest current update. A good moment for more public testing.
I handed over the ISOs to Eric as I do not have a suitable place where to make them public. He will decide when to upload them, or maybe just the “good” one, that just contains a live XFCE and fits on a CD.
Didier Spaier, the first two sound right, though as I said in my answer to alienbob, I\’m not sure about Portuguese. But XKeyboardLayout should be br for Brazil.
This output is from my running system (the Portuguese one is currently dismantled):
mimosa[~]$ cat /etc/X11/xorg.conf.d/10-keymap.conf
Section \”InputClass\”
Identifier \”Keyboard settings\”
MatchIsKeyboard \”yes\”
Driver \”evdev\”
Option \”XkbLayout\” \”br\”
Option \”XkbVariant\” \”\”
Option \”XkbOptions\” \”\”
EndSection
mimosa[~]$ cat /etc/rc.d/rc.keymap
#!/bin/sh
# Load the keyboard map. More maps are in /usr/share/kbd/keymaps.
if [ -x /usr/bin/loadkeys ]; then
/usr/bin/loadkeys -u br-abnt2.map
fi
Check out http://taper.alienbase.nl/mirrors/slackware-live/ – there’s a brand new MSB version of Slackware Live in there! A 1.6 GB ISO file with MATE 1.12 instead of KDE 4. Thanks to Willy Sudiarto Raharjo for packaging and providing a test repository.
People with UEFI machines will want to test this MSB ISO for me perhaps – it should boot properly on UEFI computers now.
I’m planning to build a new cinnamon packages for testing today. Hopefully it can be added too
Shoot… the msb worked fine on my MSI A88X desktop box, but not my MSI GT72 Q2D laptop… got a security error….
Still working on it
BUT… after entering “root/root” or “live/live” I got nowhere… if entering nothing I get an error which is good.
Sorry… more info:
the desktop is running a fresh copy of current in UEFI
I loaded the laptop with current in UEFI also but it is dual boot now with Win 8.1/64
Can you please give more information about “security error” ?
What a nice pack of extras in the 3Gb Iso (everything you need for a secure pocket os). About Brazilian portuguese keyboard its pt-br abnt2 map layout br. Would it be possible an option to use UTF-8 by default?
@Willy:
Pop up window “Secure Boot Violation” in red with white lettering:
Inside the box “Invalid signature detected. Check Secure Boot Policy in Setup”
Just tried disabling UEFI fast boot. No joy.
laitcg: did you get same problem when using other ISOs?
I’m suspecting it’s not just MATE version that had this problem.
@Willy
Correct… sorry for not saying but just burned plasma to the usb and same message… In the MSI BIOS it is set normal UEFI.
BUT… When it did boot correctly (got a login prompt) on my desktop, I could not get past the login prompt. It was in a loop asking for the login/password. But… entering for both fields did give me an error.
Try again…. Entering nothing for both fields gave me an error… So it is accepting the login/pwd then looping.
Hmm. i think we have to wait for Eric.
I personally haven’t tried the new ISO, but Eric seems to be able to login to desktop last night as he was able to launch xchat and ping me on IRC 🙂
laitcg: Did the same ISO worked on your desktop?
Willy, I can\’t get past the login screen witht he new ISO. I was able to log in successfully from tty2 as live – live.
I selected Brazilian layout, and it is correct for X (as I can tell on the login screen) but not console.
Fábio, that is right for Brazil, but not Portugal. I\’m just not sure whether in that case, latin1 or latin9 is best; but my hunch is the former.
I just tried again live MSB in both UEFI and Legacy modes and X doesn’t start . It complains:
/usr/libexec/Xorg: error while loading shared libraries: libnettle.so.6: cannot open shared object file: No such file or directory
xinit: giving up
xinit: unable to connect to X server: Network is unreachable
xinit: server error
Other than that I am now suspecting that when I start the live XFCE under UEFI, there is another reason for the double “login: “followed by a loop “Startup X11 …”: this could be due to the handover to efifb during startup:
Dec 1 09:25:49 darkstar kernel: efifb: probing for efifb
Dec 1 09:25:49 darkstar kernel: efifb: framebuffer at 0xe0000000, mapped to 0xffffc90000200000, using 1216k, total 1216k
Dec 1 09:25:49 darkstar kernel: efifb: mode is 640x480x32, linelength=2560, pages=1
Dec 1 09:25:49 darkstar kernel: efifb: scrolling: redraw
Dec 1 09:25:49 darkstar kernel: efifb: Truecolor: size=8:8:8:8, shift=24:16:8:0
Dec 1 09:25:49 darkstar kernel: Console: switching to colour frame buffer device 80×30
Dec 1 09:25:49 darkstar kernel: fb0: EFI VGA frame buffer device
Maybe the X driver that X tries to use later does not like efifb? I will make more tests to find out.
mimosa, when you add “3” to the boot commandline, you will end up in the console instead of XDM. If you login as “live/live” and then run “startx” what happpens next? Are you getting errors?
XDM has an error log too, can you check if anything is not right during startup of X.Org?
Indeed I was able to boot the MSB ISO in a qemu virtual machine and posted some lines of text on Freenode. So I know that the ISO is functional – I am thinking of X.Org incompatibilities.
Plasma 5 working OK here on my desktop, will try it later on my Thinkpad T410. Then a persistent USB stick.
Thanks, Eric.
Praise “Bob”!
I tried slackware64-live-xfce-current.iso in UEFI mode with Intel graphics / nouveau / optimus and all worked[1]. Now I am puzzled…
[1]Sometimes it hanged during startup at “ACPI: ” and once it suggested rootdelay=20 but I assume that’s due to hardware’s behavior.
Alien, booting into runlevel 3, it started just fine. Then when I rebooted into runlevel 4, the XDM screen didn\’t display correctly (only the background image was visible), but nonetheless, I was able to log in by typing live / Enter / live / Enter.
A minor point that is really about the Xfce version: in MSB, Network Manager works as expected, I select the ESSID from a list, am prompted for a password, then connection is automatic. But in Xfce, I click on the ESSID, and get a message saying (I think, from memory) I have been disconnected. To make it work I have to add and then edit the ESSID over in System / Settings, but it does not appear there unless I have first clicked on it in NM\’s list. This doesn\’t matter because you only have to do it once, but it is not the expected behaviour – which I do see in this ISO; and it did take me a few minutes to figure it out.
I tried again the msb ISO dd-ed on another USB stick under UEFI and Legacy and everything worked. Congrats Eric and Willy!
I should use only good quality USB devices…
PS Only caveat: I hate this blue/green background. But I assume that’s easy to fix 😉
Running the Plasma 5 edition now. Works great! The persistence is definitely a nice touch. Only issue is Plasma 5 sometimes segfaults and the only way to restart it is to ctrl+alt+backspace, but I chalk that up to a Plasma 5 issue and not a distro issue.
Anyway, thanks for this!
Based on the “success stories” on booting the Mate ISO on UEFI computers, I have updated the git repository at http://taper.alienbase.nl/cgit/liveslak/ and the mirror at http://www.slackware.com/~alien/liveslak/ with the latest sources.
The GRUB2 menu looks hideous (looking at Didier’s screenshots… I could not come up with a working setup for UEFI boot) so I must see to it that the GRUB configuration gets prettified to look more like the current Syslinux menu setup.
Just tested Plasma 5 edition on i3 8 GB RAM machine (my workstation at the office) and it went to plasma login screen instantly. It’s very fast.
But i noticed the default option is to use Plasma (Failsafe). Is that intentional?
The rest is great. Everything works fine here 🙂
Tested MATE version and i’m stuck at login loop as well, so i reboot and this time, i started using run level 3 and login manually using “live/live” and run startx and it works normally.
Eric: is it a good idea to keep the run level 3 just like Slackware by default?
Willy, regardless of the choice of runlevel by default I solved that issue changing USB stick and slot (see above). Just wondering if some choices regarding the quality of the device and the hardware (real compatibility USB3? or prefer using a slot USB2 ?) could help. It could help also to know how many people encounter this kind of issue and maybe have clues from people having much experience (like providers of other live distributions, developers of tails, etc.) in that matter there could help?
… I am also wondering if giving some time for the hardware to settle (rootdelay=10 in the command line by default) and/or in the startup sequence, e.g. sleep here or where, could help.
Would it be possible to specify the root directory of the install (default “/slaklive”) from the kernel command line, same for the “/persistence”) location? or a prefix under which these are located (instead of the root of the USB device)
This allows to use the same USB stick for multiple OS’s (or multiple versions of slaklive in the future…)
Didier: i use the same flash drive to test Plasma and Mate version. I got this problem on mate only.
I don’t know whether it’s caused by the flash drive or any other reason. I guess i have to try to use other flash drive for more testing
Hi lode. Yes, sensible request. I have added this functionality: http://taper.alienbase.nl/cgit/liveslak/commit/?id=af83560e632183112455ea9b89d558a8b952ffb3
The question is, Willy, what happens during execution of graphical login (runlevel 4) that is not happening when you are logging in at runlvel 3 (console). Issue with the xsession script? Does the X logging show any cause of the looping?
Note: I do not have that looping effect here at home so I can not test.
I have all four running in VirtualBox from the ISO’s. Nice. Each VM was give 2GB of memory and two CPU’s. Every thing seems to work. No issues at this point. Awesome job Eric. It was my first look and Mate in Slackware, nice job Willy.
Spoke to soon. I am now getting the log in loop with the Mate graphical login. I was able to login once from the login screen. It looped on the firs try, on the second it logged in. I thought it was a fluke. Now I can’t get in at all from the login screen at all. I am able to login an startx after booting to runlevel 3.
Looks like a respawning of /etc/rc.4 for some reason. I didn’t check why we are supposed to login first and this is repeated once in that case before launching /etc/rc.d/rc.4, but I would look in that direction (init processes).
I can’t reproduce now…
Chrisreturn, could you please start the Mate live system not changing the runlevel and make some checks:
– hurry up to login as root as soon as you see the login prompt, then check that /usr/bin/xdm be executable
– do you have a 30 seconds delay before the next display of:
Starting up X11 session manager?
_ just before that, do you see this message (I don’t remember if I did, but maybe it will show during a _very_ short time) before respawn:
Hey, you don’t have KDM, GDM, or XDM. Can’t use runlevel 4 without
one of those installed.
Thanks in advance.
I could reproduce something similar:
_ chmod 644 all the *dm listed in /etc/rc.d/rc.4
_ reboot at runlevel4
As expected /etc/rc.d/rc.4 runs every 30 seconds with the aforementioned messages showing as we have this line in /etc/inittab:
x1:4:respawn:/etc/rc.d/rc.4
and this one at the end of /etc/rc.d/rc.4:
sleep 30
So my assumption is that in some cases, for a reason unknown to me, /usr/bin/xdm is either absent or non executable when /etc/rc.d/rc.4 is started.
Also, in my Slackware 14.1 I then see the login prompt _after_ startup of /etc/rc.d/rc.4 and only once.
Maybe this can give a clue?
Forgot to say: I did that on my physical laptop with an installed Slackware.
I got rid of the looping XDM, after reading what’s written to ~live/.xsession-errors:
XDM authorization key matches an existing client!
cinnamon-session: Cannot open display: .
Found the following fix in http://freebsd.1045724.n5.nabble.com/Re-ports-154502-x11-xdm-authorization-failure-when-used-with-E17-window-manager-td5819660.html
Add the following lines to /etc/X11/xdm/liveslak-xdm/xdm-config :
! Mate and Cinnamon fail without this:
DisplayManager*authName: MIT-MAGIC-COOKIE-1
This will be added to the source scripts and git
Hello!
First of all, thank you for live version!
I have questions (probably stupid ones):
1)syslinux is working fine in “liveslak” directory. Why extra “boot” directory?
2) Don’t you want to add something to filename to differentiate beta1, beta2 and etc? Like current date or whatelse… To try to avoid version mismatch in the future.
Ideally to both iso and sxz, but this might be too much hassle.
3) What about splitting some of the modules to “mini” (xfce version) and “additional” so it will be possible to reuse them everywhere.
4)What about uploading sxz modules somewhere? Just a thought, because I had to DL full version to add nvidia driver to xfce version.
5)Empty folders for “optional” and other locations to hint where one should place necessary files.
6)Other video drivers (nvidia-legacy, fglrx) and some sort of auto-detection script (by vendor and model id), like the one in porteus.
Tested the new MATE ISO and confirmed that the login loop issue is fixed. The runlevel is now by default is set to 3 as well.
One more thing that still confusing. During second reboot, i noticed this on boot screen (can be seen using dmesg)
INFO: recovery required on readonly filesystem
[ 11.744559] EXT4-fs (sdg3): write access will be enabled during recovery
[ 12.074468] EXT4-fs (sdg3): recovery complete
this means that previous reboot process doesn’t do a clean procedure of un-mounting the filesystem.
Is this normal?
Thanks
Please add “from=” parameter (from=/path/to/liveslack-version-content) – no need to burn CD or use USB medium for trying.
@Kriss
ad 4) DL one file from iso – ArchView extension for Palemoon or Firefox-3.6.18)
Didier Spaier, I’ve been gone all day. It seems to be solved now AND I can see to reproduce the loop on log in problem, it’s working now.
Willy, Just a thought. I am one that prefers starting with runlevel 3, but for showcase purposes runlevel 4 would be a better choice. That said I do understand set default to runlevel 3 vice 4, as that is the default with Slackware.
Typo correction :
In the menus, “francais” is actually “français”.
Nolre: yes.
Side note: fortunately, this character is included in ISO-8859-1.
But, there is a caveat: some BIOS for historical reasons use as default the mapping of the code page 437, aka IBM437, cf: https://en.wikipedia.org/wiki/Code_page_437 because it was the original IBM PC and MS-DOS code page, so they could display other characters then those intended when the mapping differs from CP 1251.
To avoid any ambiguity I suggest to ship in /boot/syslinux ter-i6v.sf that uses the code page 437, is not heavy (5146 bytes) and ships graphical characters that allow to “prettify” the screen shown at boot time.
This font can be referred to in any *.cfg file for Syslinux with just one line in the heading:
FONT ter_i16*.psf.
If CP 1251 is preferred, instead just ship and refer to ter-116*.psf (* is the style, choose what you want).
chrisretusn: Yes, for showcases, runlevel 4 is better. For personal use, i still prefer 3 🙂
Kriss,
Stupid questions indeed. Next!
What you seem to want, is Porteus. So use that please.
Indeed, runlevel 4 will be the default for my publised ISOs. After all, everyone can re-spin their own customized version so I do not think that runlevel should be an issue to anyone.
Showcasing Slackware is indeed the purpose, and non-Slackware users the target audience.
While the boot ends with running a stock Slackware environment, I do think that some graphically oriented welcome is how these people have to be persuaded.
tome – I do not understand how such a “from” option should be used – or even _where_ it should be used.
Didier, ” FONT ter_i16*.psf “? Should that be ” FONT ter_i6*.psf “?
Actually sounds like a good idea, was looking at font support for a better GRUB menu anyway.
@alienbob
I already have customized version of porteus, thanks. =)
I didn’t have porteus in mind when asked those questions (except for the last one, but it was more about video card support).
Anyway, excuse me for the trouble…
Question (5) is the only one worth answering, and the answer is: the directories “optional” and “addons” are already part of the ISO – look inside the “liveslak” directory.
Other than that one, you are of course entitled to ask your questions but I don’t see any reason to answer the rest of them. What part of the texts “this is beta” and “todo:… documentation about how the scripts work” was not clear to you?
I am not getting paid for doing this, so it is my itch I am scratching, not yours.
Sorry for the typos Eric, see /usr/share/kbd/ter* to list those available, and /usr/doc/terminus*/README for the characteristics (but you know that I think, as IIRC you introduced these fonts in Slackware?) The font should be named as in the repository, see http://www.syslinux.org/wiki/index.php/SYSLINUX#FONT_filename.
I never used that in grub, but I assume that there is a similar feature.
I apologize once again.
I have everything I need, just wanted to ask questions or suggest some things.
Probably I said something inappropriate.
English isn’t my native language so excuse me.
Once again, thank you for live version!
Hi Alien,
1. Place the “/ tmp” directory in RAM (tmpfs) is not on a USB drive, so files will temporarily stay in RAM instead of on the USB Drive.
2. Why is there no 32-bit version.
3. Please make XFCE Full with VLC, Libre Office, FFMPEG, Chromium, Wine, etc (plasma 5 has it).
Thanks.
from” should be used like “load”, “swap”, … parameters. For example slackware64-live-current.iso is extracted to /mnt/sda2/testslack1, so from should be: from=(/mnt/sda2)/testslack1/liveslack.
Is it possible to boot slackware-live from hard drive by adding “kernel /path/to/generic append initrd=/path/to/initrd.img” to my current syslinux.cfg or another bootloader? And/or after extracting liveslack dir to /mnt/sdaY? Or hard drive is excluded now and CD, DVD, USB drives only allowed to boot from?
tome… still not getting it, but it sounds like something I will not do anyway.
babam, putting /tmp on a tmpfs is probably a good idea.
A 32-bit version of the ISO is not something I am considering for a Beta. The scripts are capable of creating a 32-bit ISO so why don’t you use that? I may never provide 32-bit ISO images anyway, because my server does not have the required disk space.
And a XFCE full with all my additional packages is never going to happen. The XFCE ISO will remain a 700 MB image. If download the Plasma 5 ISO, you will find that XFCE is part of that, as well.
Yes, good idea.
Place the “/tmp” directory in RAM (tmpfs) is not on a USB drive, so temporary files in the /tmp directory will stay in RAM instead of on the USB Drive (Persistence mode).
Decrease / reduces read/write on the USB Drive.
Thanks.
Kriss, thanks for explaining. I am always pissed of when people I never heard from before come barging in demanding that I do stuff for them. Too bad, but I determine my own agenda.
tome, I don\’t think it\’s exactly what you want to do, but one easy way of cutting out the USB / optical medium is to get grub to boot the ISO image directly from a partition on the hard disk:
http://www.howtogeek.com/196933/how-to-boot-linux-iso-images-directly-from-your-hard-drive/
As that page explains, be sure to look at Slackware Live\’s boot options and adapt the grub menu entry accordingly.
My boot failed:
…
mount: mounting /dev/sda3(and 1,2,4 also) on /mnt/media failed: Invalid argument
…
/boot/initrd_4.1.13.gz: No live media found… trouble ahead.
…
ls: /mnt/media/liveslak/system/*.sxz: No such file or directory
…
So I try manually mount:
mkdir -p /mnt/sda3
mount /dev/sda3 /mnt/sda3
but it also failed. Only read-only file systems could be mounted? I have tried your first xfce iso. What’s wrong?
Got it. I can boot from USB drive (ext4) by using rootdelay=3, but I can’t boot from hard drive (ntfs partition). Must be liveslak directory on posix file-system? Persistence dir must be on it of course.
Thanks
tome, I believe Porteus works around that POSIX fs issue by creating an image file, formatting that as ext4, loop-mounting it and placing the persistence directory inside.
I don’t think that my Live Edition will ever work on a FAT or NTFS fs – even though NTFS does know symlinks.
If you come up with a patch for make_slackware_live.sh that allows you to choose between placing the persistence directory in the liveslak partition or else inside a loop-mounted image with a ext4 partition, then I will review that patch and see if I can incorporate it.
Hi , i think need to block the kde caches if user goes to persistency , because caches are all time writing on persistency and system go slow.
Only “if” , start with persistency+kde , then , block the *.kcache files in
/var/tmp/kdecache-$USER/
BLOCK this is easy , create a folders with same name as *.kcache files, then kde CANT WRITE MORE CACHES.
If no persistency , no need block that caches.
I see that solution on slax , not nice way , but works.
Eric —
My first Q before I start …
Do you have a Min Size ( GB ) requirement for a Thumb Drive to run each of the .iso Images with persistence ?
Specifically, will a 4 GB Drive work for each ( or any ) ?
I looked around and couldn’t find any such info.
Thanks Eric, for all you’ve done for Slackware !
— kjh
Tried `iso2usb.sh` with a 4GB Thumb Drive.
Failed …
Added -v flags to the mv and rm commands around line 298.
Tried again. Below is my `uname -a` plus the output.
Any hints for me ?
Thanks again !
— kjh
################ cut here ############
# uname -a
# Linux kjhlt5 2.6.37.6 #2 SMP Sat Apr 9 13:24:51 CDT 2011 x86_64 Intel(R) Core(TM) i7 CPU X 980 @ 3.33GHz GenuineIntel GNU/Linux
#
# sh iso2usb.sh -i slackware64-live-plasma5-current.iso -o /dev/sdd
#
# We are going to format this device (erase all data) – ‘/dev/sdd’:
# Vendor :
# Model :
# Size : 3819 MB
#
# FDISK OUTPUT:
# GPT fdisk (gdisk) version 0.6.14
#
# Partition table scan:
# MBR: protective
# BSD: not present
# APM: not present
# GPT: present
#
# Found valid GPT with protective MBR; using GPT.
# Disk /dev/sdd: 7821312 sectors, 3.7 GiB
# Logical sector size: 512 bytes
# Disk identifier (GUID): 6958D044-DB77-439A-BA28-8C3C56D72C9F
# Partition table holds up to 128 entries
# First usable sector is 34, last usable sector is 7821278
# Partitions will be aligned on 2048-sector boundaries
# Total free space is 2014 sectors (1007.0 KiB)
#
# Number Start (sector) End (sector) Size Code Name
# 1 2048 4095 1024.0 KiB EF02 BIOS Boot Partition
# 2 4096 413695 200.0 MiB EF00 EFI System Partition
# 3 413696 7821278 3.5 GiB 0700 Slackware Linux
*** ***
*** If this is the wrong drive, then press CONTROL-C now! ***
*** ***
Or press ENTER to continue:
GPT data structures destroyed! You may now partition the disk using fdisk or
other utilities.
Creating new GPT entries.
The operation has completed successfully.
The operation has completed successfully.
The operation has completed successfully.
Disk /dev/sdd: 7821312 sectors, 3.7 GiB
Logical sector size: 512 bytes
Disk identifier (GUID): 0D6B1EFB-299F-46F6-AD8C-BB94B8200B7F
Partition table holds up to 128 entries
First usable sector is 34, last usable sector is 7821278
Partitions will be aligned on 2048-sector boundaries
Total free space is 2014 sectors (1007.0 KiB)
Number Start (sector) End (sector) Size Code Name
1 2048 4095 1024.0 KiB EF02 BIOS Boot Partition
2 4096 413695 200.0 MiB EF00 EFI System Partition
3 413696 7821278 3.5 GiB 0700 Slackware Linux
3:2:1 (legacy BIOS bootable)
mkdosfs 3.0.11 (24 Dec 2010)
mkdosfs 3.0.11 (24 Dec 2010)
mke2fs 1.41.14 (22-Dec-2010)
Filesystem label=LIVESLAK
OS type: Linux
Block size=4096 (log=2)
Fragment size=4096 (log=2)
Stride=0 blocks, Stripe width=0 blocks
231536 inodes, 925947 blocks
0 blocks (0.00%) reserved for the super user
First data block=0
Maximum filesystem blocks=952107008
29 block groups
32768 blocks per group, 32768 fragments per group
7984 inodes per group
Superblock backups stored on blocks:
32768, 98304, 163840, 229376, 294912, 819200, 884736
Writing inode tables: done
Creating journal (16384 blocks): done
Writing superblocks and filesystem accounting information: done
This filesystem will be automatically checked every 31 mounts or
180 days, whichever comes first. Use tune2fs -c or -i to override.
tune2fs 1.41.14 (22-Dec-2010)
Setting maximal mount count to -1
Setting interval between checks to 0 seconds
mount: warning: /mnt/alieniso.m4fqbP seems to be mounted read-only.
— Copying files from ISO to USB… takes some time.
— Extracting Slackware initrd and adding rootdelay for USB…
35536 blocks
— Compressing the initrd image again:
35536 blocks
/dld/alien/slackware-live
— Making the USB drive ‘/dev/sdd’ bootable using extlinux…
`/mnt/alienusb.plO4EP/boot/syslinux’ -> `/mnt/alienusb.plO4EP/boot/extlinux’
`/mnt/alienusb.plO4EP/boot/extlinux/isolinux.cfg’ -> `/mnt/alienusb.plO4EP/boot/extlinux/extlinux.conf’
removed `/mnt/alienusb.plO4EP/boot/extlinux/isolinux.bin’
removed `/mnt/alienusb.plO4EP/boot/extlinux/isolinux.boot’
/sbin/extlinux: cannot find device for path /mnt/alienusb.plO4EP/boot/extlinux
*** iso2usb.sh FAILED at line 300 ***
— Cleaning up the staging area…
[root@kjhlt5 slackware-live]#
################ cut there ############
kjhambrick: where did you run this script?
Looking at the kernel version, it seems that you don’t run in slackware-current?
Willy —
Yes, Good Eye !
My Production Laptop is Slackware 13.37.
I wondered if my13.37 tool set wasn’t too old and crusty ?
— kjh
What a wonderful tool Eric. I added multi lib and all my programs edited my tagfiles added all the extra packages I build now I have a complete studio on the go. Great.
Think the next one I make will be Myth TV DVD. This is just to much fun.
kjhambrick: it seems that you need to run this on a newer version of slackware than 13.37
kjhambrick – the only size requirement for a USB stick is that it is bigger than the size of the ISO you want to put on it.
If you want to use persistency then you will need more space depending on what you plan to do. By just using the Live OS, your homedirectory will start growing because of the cache files written there by the desktop environment. The OS will write log files to /var/log/ . You have to account for that.
Regarding the version of the Slackware OS where you run the iso2usb.sh script: I have only tested on SLackware 14.1 and Slackware-current, so it may or may not work on older versions. Especially extlinux needs to be recent probably.
Creating the ISO file will only be possible on Slackware-current – the kernel on older releases is just too old.
Willy and Eric —
I was able to enable USB in my Virtual Slackware-Current.
The iso2usb.sh script worked fine to make a 4GB image of the slackware64-live-plasma5-current.iso.
Easy Peasy ! thank you Eric !
So on with my adventures in UEFI Booting …
At first I thought the key on my new Windows 10 Laptop was broken — no matter how quickly I pressed , I couldn’t get at the BIOS to inspect the boot options or change the order of the devices.
After googling on the subject of UEFI Booting I finally figured out that I have to boot into WinDOS to access the UEFI boot menu or to access the BIOS.
Aside: how is THAT more secure than the way it used to be ???
Anyhow, I turned off Secure Boot in the BIOS, booted Windows, and then from Windows, Selected Boot from the USB and …
I got a nekkid grub2 prompt !
Woo Hoo !
I am a little familiar with grub2 due to working with CentOS 6 at work.
I typed at the grub2 prompts:
set root=(hd0,gpt3)
linux /boot/generic ro
initrd=/boot/initrd.img
boot
I saw the familiar Slackware boot messages but then I got what turned out to be a hard hang at the building fonts message.
Waited ~15 minutes ( someone else said they had a very slow boot ) but no joy.
It was a hard hang — I had to power off to reboot.
The second attempt, I tried to go runlevel 3 … navigated thrul the Windows 10 Booting dialogs then I added a 3 to boot into runlevel 3 on the linux line:
set root=(hd0,gpt3)
linux /boot/generic ro 3
initrd=/boot/initrd.img
boot
I got a Darkstar Login Prompt !
Logged in as root but as I started to type ifconfig, I only got the two letters ‘if’ before another hard hang ( ! dang ! ).
Anyhow, I saw that I can enable Legacy BIOS Mode in the AMI BIOS Interface.
That will be next.
Will let you know.
Question Would it help to add a grub.conf file as the /boot/ grub.conf ?
You should be able to add various boot options there …
It would save some typing …
Or is the fact that the LIVESLAK boot directory on (hd0,gpt3) an oddity of my particular Machine ?
Anyhow … Thanks again to all !
— kjh
oops …
I see in my post:
At first I thought the key on my new Windows 10 Laptop was broken — no matter how quickly I pressed , I couldn’t get at the BIOS to inspect the boot options or change the order of the devices.
I tried to say:
At first I thought the <F2> key on my new Windows 10 Laptop was broken — no matter how quickly I pressed <F2>, I couldn’t get at the BIOS to inspect the boot options or change the order of the devices.
sorry …
I have a cosmetical problem on the login screen:
when booting the XFCE version of Slackware 64 live on my UEFI based PC, started from UEFI-grub, I get the “login:”/”password:” prompt overlapping the top half of the “are” letters on the “slackware” logo.
when I booted on a virtualbox this was not the case.
there is also some visual clutter after switching to the xfce desktop, and sometimes I can also see the xfce mouse peeping just before the slackware-lige greeter…
(btw: it’s an nVidia graphics card, which loads the nouveau drivers)
dunno if this is something that can be fixed…
lode, can you tell me the resolution of your monitor? I might be able to fix the positioning of the login/password input fields.
There is probably nothing I can do about the graphical transitions from XDM to XFCE.
kjhambrick, a full and working GRUB configuration for UEFI mode is on my TODO for the next Beta release. I am just trying to figure out how GRUB works as I never had to mess with it before. Most importantly, trying to find a way to determine what drive my USB stick is so that I can define something along your line “set root=(hd0,gpt3)”. Probably, hd0 will not always be the boot device if the computer has several internal hard drives.
display size is 1680×1050.
yes, I figured that you would not be able to do much about the visual artefacts.
there’s also a kernel stacktrace during boot that seems harmless
btw, the “README.UEFI” refers to ELILO, but I think that’s been upgraded to use UEFI-GRUB now.
How does one report that to the slackware maintainers?
Thanks Eric.
Yes, I am sure the root device will change for others …
I wonder how say, fedora or Ubuntu overcome that ‘feature’ ?
I was able to boot the KDE Version just fine via syslinux.
I am re-burning the PLASMA5 version and then I’ll try installing the Killer Wireless 1535 Firmware into an ISO image to see if I can get it going with networking ( it sees neither eth0 nor wlan0 nor does it see bluetooth without the firmware ).
Thanks again !
I love it !
— kjh
p.s. no matter what I tried on the grub menu the system hangs hard somewhere between boot and the command line.
OTOH, syslinux works GREAT !
Probably doing something wrong at the grub2 commandline
@eric, @kjh
As a longtime user of GRUB, I just spent some time figuring out GRUB on UEFI…
The way to cope with the changing device name is the GRUB “search” command:
you need to search for a label or UUID or a file that you know is unique on that device.
I use “search –label LINUX root”, this does the same thing as the “set root=(hd2,gpt5)”. If my UEFI enabled USB stick is present, this becomes “set root=(hd3,gpt5)”.
You could use “search –file /slaklive/general root” to find the device that has the kernel 🙂
@kjh, depending on your bios version, you press F2 or DEL to enter the BIOS menu.
just hold the key before turning on the power.
typically F8 gives you a list of recognized EFI boot devices: in my case only 1 fixed disk is bootable (the SSD, not the HDD), along with and the cdrom and the usb stick
lode, the search option is what is being used by the “bootx64.efi” bootloader too – it has an embedded grub configuration that sets no more than the root parameter using the search feature.
But I still have to connect that to a working grub.cfg file that mimicks the syslinux boot menu.
I like the Debian installers. The 64-bit ones use grub for UEFI booting. I do not know how they can run whiptail so soon to choose the language etc. and that’s not exactly what you looking for, but still I think that can give some ideas for the grub setup.
Try this one, not heavy:
http://cdimage.debian.org/debian-cd/8.2.0/amd64/iso-cd/debian-8.2.0-amd64-netinst.iso
The layout of the firdt screen is almost the same under grub (UEFI) or isolinux (Legacy).
OT now listening:
@eric:
mind that “\EFI\BOOT\BOOTx64.EFI” is the default boot filename for efi bootloaders , so you should probably search for something else. btw: if you boot from EFI DVD, GRUB sets the “root” variable to the current device, so you may not need to set it at all for booting the live DVD…
my pc for example, on the first EFI partition, there is a file with the name “\EFI\BOOT\BOOTx64.EFI” that contains binary code from Microsoft to load the Windows bootloader, and on the other EFI partition there is a file by that same name that I downloaded from this thread http://ubuntuforums.org/archive/index.php/t-2276498.html, that contains code from grub2 that loads the boot menu from “\boot\grub\grub.cfg”
ps: let me know if this doesn’t help you and I’ll shut up 😉
@eric, after re-reading your post from “December 6, 2015 at 23:45” I think you should just ignore my previous post from “December 7, 2015 at 09:47″…
tome ..
If you still want a \’from=\’ option, this is what I\’m doing – http://alien.slackbook.org/blog/slackware-live-edition/
and see my post \”Comment from Ray Vine Posted: December 3, 2015 at 11:43\”.
I\’ve updated the init patch for beta2, which won\’t show clearly here, so I\’ve posted it here – http://rayv.16mb.com/init-beta2-patch
Note that I\’m using \’fromiso=\’ ..
The patch includes a \’wait\’ loop which I need because the .iso image is on a slow-to-register USB HDD; and I\’ve left in my debugging markers.
If you want to check it out beforehand, run this test – http://rayv.16mb.com/init-beta2-patch-test
Currently supported filesystems in the beta2 initrd.img are ext3/4, and vfat, so you\’ll have to put the .iso image in one of those, unless of course you add more filesystem modules to initrd.img.
@eric: for the cosmetic problem I reported earlier, maybe you could replace the “==” test with “>=” in the Xresources file.
lode, yes there should be a catch-all test. Now it appears that the LOGIN_POS_Y is set to zero in your case, because your resolution is not covered.
Only one hiccup for me so far… udisks mounted usb drives are in read-only mode. Is this the default intended behavior?
Otherwise this works GREAT as a rescue disk.
@eric: I meant replacing all the “==” tests with “>=” in the Xresources file, that way a non-listed resolution would fall in the highest fitting case…
lode – I understand now, and yes, it would probably be better to use “>=” .
About the Live Slackware, that is really Amazing Bob.
Long live to Slackware.
Hope have a good time soon, to help Slackware, coding too.
Cyah!
Thanks Eric for all your hard work on this very worthy project.
You have once again improved the lives of the Slackware faithful.
I was a bit disapointed however when i was rejected by the iso2usb.sh script
when attempting to install on a loop device. I know i could just dd out the usb
to a loop, but at the time I had no spare usb stick laying around. Besides it seemed
an unnecessary step when my end goal was a virtual disk anyway. So instead of complaining
about it I made some very minor adjustments to the the script.
I though it might be appropriate to post it here in case anyone is
interested in doing the same.
Ok for this to work the kernel must be configured to allow
automatic partition mapping for loop devices. This is accomplished by
the following:
rmmod loop
modprobe loop max_part=15
You can add the max_part=15 to rc.loop to make it permanent. This is such
a useful feature and so easy to implement, im not sure why Slackware does
not have this as a default setting.
Next look for the following lines and insert the Slackerson part as shown.
This section is a sanity check to avoid installing to just a partition
instead of using the whole device. It sees any TARGET with a numeric ending
as invalid. But as you know loop devices all have numeric endings ie: loop0 etc…
Now: if TARGET matches a loop device then add a p=p if not then do
sanity check. Of course you do not want to enter /dev/loop0p1 as then
there is no stopping the mayhem: but instead /dev/loop0. With a little
thought this can be improved, but I just threw it in to bypass the rejection
and get on with it.
if [ ! -b $TARGET ]; then
echo “*** Not a block device: ‘$TARGET’ !”
exit 1
# Slackerson ———————————
fi # <– don't forget to add
if [[ ${TARGET} =~ "loop" ]]; then
p="p"; # need to insert a 'p' as loop partitions all have a p# asignment ie: loop0p1
#———————————————
elif [ "$(echo ${TARGET%[0-9]})" != "$TARGET" ]; then
echo "*** You need to point to the USB device, not a partition ($TARGET)!"
exit 1
fi
Then every where there is a ${TARGET} with a partition number ie: ${TARGET}1 convert it to ${TARGET}${p}1 etc..
So if a loop is detected then a p will be inserted otherwise everything will run as before.
And thats it!!
As a personal choice I also changed the mount point from /mnt to /mnt/live as i have other things going on in there
and wanted to keep it tidy.
I think the blog editor “ate” some of your characters, because the proposed patch seems corrupted or incomplete.
In any case, the script is called “iso2usb.sh” with a reason, so the disappointment is all your own…
I appoloize profusely if i offended you with my impertinent use of the
word dissapointed. I assure you I am not in anyway dissapointed by
your contribution to the Slackware community and to me directly.
I should have been more careful with my verbage. I meant no disrespect.
I should have said:
Hey guys I found a way to get the iso2usb.sh script to install
to a loop device. If anybody is interested here is what i did.
Im afraid my ignorance precedes me…I never really collaborated on any
projects before so I am completely stupid on how to do so. I sent no patch
but just a cut and paste of the section of code i modified. And then a
breif description of changes later in the script…
again I am sorry for my rudeness.
No need to apologize slackerson, there’s nothing you did wrong.
Putting ‘/tmp’ on RAM (tmpfs) will decrease the read/write on USB Drive.
Old news babam: http://taper.alienbase.nl/cgit/liveslak/commit/?id=26fd811bf5dbfcab4c30886e647e9fd366e59e9c
I was running the script after downloading update on top of the DVD.
I tried to override the “SL_PATCHROOT” in make_slackware_live.conf, but this doesn’t work, even though there is a hint in “pkglists/alien.conf” that is should work.
The variable is set unconditionally later in the script…
btw: is this the proper channel to submit patches?
— a/make_slackware_live.sh
+++ b/make_slackware_live.sh
@@ -118,7 +118,9 @@ SL_REPO=${SL_REPO:-“/mnt/auto/sox/ftp/pub/Linux/Slackware”}
# Package root directory:
SL_PKGROOT=${SL_REPO}/slackware${DIRSUFFIX}-${SL_VERSION}/slackware${DIRSUFFIX}
# Patches root directory:
+if [ -z “$SL_PATCHROOT” ]; then
SL_PATCHROOT=${SL_REPO}/slackware${DIRSUFFIX}-${SL_VERSION}/patches/packages
+fi
# List of Slackware package series – each will become a squashfs module:
lode, the SL_PATCHROOT variable is configured early in the script, for the default Slackware repository the script is using.
If you have a custom repository, defined in a./pkglists/myrepo.conf , you will find that this .conf file is sourced in the “install_pkgs” function of the script. The value of SL_PATCHROOT will be set at that point, and it can be an empty value. The “install_pkgs” will check if the SL_PATCHROOT variable is empty.
I tried the new “livemain” startup parameter, and it didn’t work at first.
The usb stick is mounted with filesystem “msdos”, and so my directory name was mangled into “slackw~1” to fit into the 8.3 names. Is it possible to try to mount the usb stick with “vfat32” first instead of “msdos”?
I think this could be done by adding something like this in the make_slackware_live.sh script, except I don’t see where to put it…
echo “ntfs\nvfat\nmsdos\n” > ${SOMEWHERE}/etc/filesystems
lode, I do not understand your message. Explain what you did.
I went ahead and decided to try this out. The iso2usb.sh worked like a charm and made the Plasma 5 on my usb stick work perfectly.
I’ve got an ASUS M5A97 LE R2.0 mobo that I believe is uefi, but in the BIOS I had the choice of a uefi usb stick or a non-uefi. I chose the non-uefi and I started counting seconds.
It took 47 seconds from starting the bootup from the usb stick, then it took another 40 seconds from when I chose Plasma 5 desktop to get to the working desktop.
I played with it for around 5 or 6 hours or more getting things setup so I can take it to a friend and show him what Linux is like (he’s one of those who still thinks Linux is pure console, but he’s smart and very open-minded, so he’s wanting to see it very much as he hates his Microslop system).
The internet was slightly slow sometimes, but not so bad as dial-up. Some apps and system settings took a minute or so to finally ‘happen’, but they were few and far between. I decided to try a copy from my hdd to the usb stick of a 967MB .mkv movie. It took about two minutes, not bad considering.
My system is built by me, my friend’s system is a store-bought something-or-other, I forgot to look, but I’ll report how things went after I go there and try it out on his box.
Other than that, I liked it, and sure do appreciate what you’ve done Alienbob (and the other few who helped that I noticed in reading this whole blog, heh).
If anyone has any questions, just holler here, I’ll be back off and on checking for any new developments.
Until then, A Merry Christmas/Happy Channukah to everyone. Stay warm and happy.
Downloaded the cinnamon iso and created dvd first, then dd to usb stick. No problems getting either to run on my laptop or Compaq pc at work. Used usb on laptop to create 32 bit XFCE cd. When I tried to compile leafpad using the 32bit XFCE I created it complained that doctools was required by intltool and was missing. Appreciate all you do for slackware.
Hey Eric, nice project. I’ve been hacking away at my own little mini bootable slackware-ish distro for years now, but yours is much better as it wraps up a true slackware box and makes it bootable, complete with the GUI, super useful!
I thought I would offer some feedback and ask a question.
On my dell laptop the system won’t boot unless I put the bios in UEFI mode. Legacy boot returns “Invalid Partition Table!” From what I gather this is because my broken bios wants to see an active partition when legacy booting. Another thing I noticed is that the that I built from the script can’t be attached to a virtualbox virtual cdrom drive. It gives the error “Could not get the storage format of the medium ‘/tmp/slackware64-live-current.iso’ (VERR_NOT_SUPPORTED).”
Not sure anything can be done about my broken bios, but do you have any idea why virtualbox doesn’t like the iso? It’s really odd.
I plan on diving in a bit more as I would like to contribute, but I’m still not sure exactly how the boot process works, it’s going to take some time to parse through. I can take some notes, but I’m not sure what your preferred format for documentation is. Should I just post it here?
You can just post it here schu. Or if the story gets too long, and/or you want to include screenshots, patches or documentation, just send me an email.
There will be a “Beta 3” page soon enough, that would then become a better place to continue.
Try telling VBox that the ISO is a “Live ISO”. That may help.
Also, generating the ISO image has not been tested on anything else than Slackware64-current. It may well be that the software required to generate the ISO is just too old on previous Slackware (or other Linux) releases.
Have you tried booting the ISO I offer for download?
Eric,
I’m building the live iso on -current and it’s not reporting any errors for missing binaries or anything. Furthermore, the iso2usb.sh script works to convert that same ISO to a usb boot stick, so I’m reasonably sure that the ISO is fine.
I’ll download your precooked iso as well as burn it to a disk and play with it. I’ll work on this more on Monday and post what I’ve learned.
Thanks!
I don’t know how I forgot to mention this, but the one thing that did _not_ work while playing around with this, was sound. The Live Plasma 5 usb stick couldn’t even see my old sound blaster Live! card.
When I get around to playing with this again soon, I’ll turn on the mobo sound and see if that’s detected and works and report on it.
Great!
Although I ever used Slackware as a live-cd on CLI mode to fix some servers, now running a GUI it’s going to be awesome!
Thank you so much alienbob!
Another failure with a bug report I am afraid 🙁
–[[
tune2fs 1.42.8 (20-Jun-2013)
Setting maximal mount count to -1
Setting interval between checks to 0 seconds
mount: block device /project/9/slackware64-live-plasma5-current.iso is write-protected, mounting read-only
rsync: change_dir “/mnt/alieniso.LkJ7ar/EFI/BOOT” failed: No such file or directory (2)
rsync error: some files/attrs were not transferred (see previous errors) (code 23) at main.c(1165) [sender=3.1.0]
*** ./iso2usb.sh FAILED at line 320 ***
— Cleaning up the staging area…
root@darkstar:/project/9#
]]–
I think this is enough info… Oh, I am using Slackware 14.1 64bit (custom setup) and trying to install to a Lexar P20 32GB USB3 Flashdrive (aiming for a system with persistence, if you couldn’t tell by the larger # of GB 😉
Robinspi, a couple of remarks:
(1) Please only post your comments in the most recent of my posts regarding Slackware Live.
(2) What version of my scripts are you using? You are commenting to the Beta2 article, does that mean you are using my version Beta2 scripts?
(3) The “slackware64-live-plasma5-current.iso” file, was that downloaded from my server (or one of its mirrors) or did you create the ISO yourself?
(4) if you want to post script output, it would be better to see the full output even if you think the rest is not that important, *and* add the “-v” parameter to the iso2usb.sh script to get even more output.
Robinspi – I ran iso2usb.sh on a Slackware64 14.1 machine (but using the XFCE ISO as input, for speed) and the script finished without an error.
I have countless times used the PLASMA5 ISO image on Slackware64-current to create persistent USB sticks so I know that the PLASMA5 ISO is OK too.
Alienbob:
My apologies. I was having a long night, so I was a little bit out of it.
1) I was linked to this article by somebody else.
2) I clicked the link in the article above. (http://taper.alienbase.nl/cgit/liveslak/tree/iso2usb.sh)
3) rsynced off your server. (I am pretty sure… Download kept stopping in Firefox, I remember that much. But yes it was off your server.)
4) OK. I will try it again and grab the full thing and link it in a separate text document.
Good. I am happy to know the Plasma 5 is workable.
Thank you.
–robinspi
Here is the output. It appears to be the same as last time:
https://docs.google.com/document/d/18jZIUonucaQu26ZT0BOQz8Y-Sqy8zvbC7fwznmOuE3U/edit?usp=sharing
@Robinspi : -i should be followed with path to the ISO file
in your log:
./iso2usb.sh -v -i /project/9/slackware64-live-plasma5 -o /dev/sdb
i think it should be
./iso2usb.sh -v -i /project/9/slackware64-live-plasma5-current.iso -o /dev/sdb
My apologies. Something must have been cut off. I went back through my command history, and that is what was recorded. I only wish it was that simple…
Robinspi, the line that fails is when the script has loop-mounted the ISOP image and tries to copy the files in the ISO’s “/EFI/BOOT” directory. And apparently that directory is not found – which is strange if the ISO is the one you downloaded from me.
So there’s a few things you can do to provide additional troubleshooting information.
(1) check the integrity of the ISO by also downloading its .md5 and .asc files and then running:
# cd /project/9/
# md5sum –check slackware64-live-plasma5-current.iso
# gpg –verify slackware64-live-plasma5-current.iso.asc
(2) check the content of the ISO manually:
# mkdir /mnt/iso
# mount -o loop /project/9/slackware64-live-plasma5-current.iso /mnt/iso
# ls -la /mnt/iso/
# ls -la /mnt/iso/EFI/
# ls -la /mnt/iso/EFI/BOOT/
Curious about the results.
1)
root@darkstar:/project/9# md5sum –check slackware64-live-plasma5-current.iso
md5sum: slackware64-live-plasma5-current.iso: no properly formatted MD5 checksum lines found
root@darkstar:/project/9# gpg –verify slackware64-live-plasma5-current.iso.asc
gpg: Signature made Thu 24 Dec 2015 04:23:01 PM using DSA key ID A75CBDA0
gpg: BAD signature from “Eric Hameleers ”
root@darkstar:/project/9#
It appears to be yours… at least judging by the asc.
2)
root@darkstar:/project/9# mkdir /mnt/iso
root@darkstar:/project/9# mount -o loop /project/9/slackware64-live-plasma5-current.iso /mnt/iso/
mount: block device /project/9/slackware64-live-plasma5-current.iso is write-protected, mounting read-only
root@darkstar:/project/9# ls -la /mnt/iso
total 6
drwxr-xr-x 4 root root 2048 2015-11-27 21:46:47 .
drwxr-xr-x 1 root root 114 2015-12-31 00:34:09 ..
drwxr-xr-x 3 root root 2048 2015-11-27 21:46:54 boot
drwxr-xr-x 5 root root 2048 2015-11-27 14:49:26 liveslak
root@darkstar:/project/9#
Yeah… no EFI in the first place. I’m guessing rsync didn’t complete right?
Robinspi, one of the commands I suggested missed a few characters; try this instead:
# md5sum –check slackware64-live-plasma5-current.iso.md5
However the message “gpg: BAD signature from “Eric Hameleers ” already shows that your downloaded ISO file has been corrupted during download.
The directory listing from the loop-mounted ISO shows a similar picture: there is no directory /EFI at all.
If you used rsync to download the ISO, and the file was downloaded partially, then re-running the exact same rsync command may pick up where the previous one left off, saving you from a complete new download.
Hi Eric, and rest of Slackware people. I know this thread (post) is a bit old, but for the moment I cannot find a better place to ask my question. I am working with the current MATE version of Slackware Live. For a number of reasons I need to upgrade to latest avail kernel. I have tried to so this with upslack. I have tried inside a booted OS Live Slack, and from other slackware installation (having the USB stick connected as a media). In all the cases, after upgrading kernel and modules to 4.19.10, the live Slackware hangs in the login screen. I managed to arrive to the point where username and password are required, but the screen freezes at this point and the system becomes completely unresponsive. I have tried in different manners, but with not luck so far. Any advice guys? Any help will be hugely appreciated!