[SOLVED] Slackware live unable to Transfer ISO content to USB stick
SlackwareThis Forum is for the discussion of Slackware Linux.
Notices
Welcome to LinuxQuestions.org, a friendly and active Linux Community.
You are currently viewing LQ as a guest. By joining our community you will have the ability to post topics, receive our newsletter, use the advanced search, subscribe to threads and access many other special features. Registration is quick, simple and absolutely free. Join our community today!
Note that registered members see fewer ads, and ContentLink is completely disabled once you log in.
If you have any problems with the registration process or your account login, please contact us. If you need to reset your password, click here.
Having a problem logging in? Please visit this page to clear all LQ-related cookies.
Get a virtual cloud desktop with the Linux distro that you want in less than five minutes with Shells! With over 10 pre-installed distros to choose from, the worry-free installation life is here! Whether you are a digital nomad or just looking for flexibility, Shells can put your Linux machine on the device that you want to use.
Exclusive for LQ members, get up to 45% off per month. Click here for more info.
Slackware live unable to Transfer ISO content to USB stick
Hey all, Im not very good at linux at all. I have been messing around with Slackware for about 15 years.
Im trying to make my usb drive persistant.
Im trying to transfer ISO content to USB stick. Im running the live version of Slackware64-live-plasma-current from a USB stick. From there i am trying to run the ./iso2usb.sh -i slackware64-live-plasma5-current.iso -o /dev/sdc -c 40% -P command. I get the following error
./iso2usb.sh: line 561: /usr/bin/mktemp: Input/output error
FAILED at line 561
--- Cleaning up the staging area...
Shot in the dark: isn't /dev/sdc the device name of the USB stick from which you are running Slackware Live, instead of the name of the target USB drive?
Forget it. Line #561 has nothing to do with the target. Sorry for the noise.
PS I didn't see your answer before editing.
Last edited by Didier Spaier; 07-08-2017 at 08:07 AM.
Reason: Two last lines added.
Shot in the dark: isn't /dev/sdc the device name of the USB stick from which you are running Slackware Live, instead of the name of the target USB drive?
I am running live from /dev/sdc. I was under the impression that I could run from the dev usb and then run the .sh. to wipe the usb and make it persistent. I'm sure this has something to do with it.
Last edited by Hooks123; 07-08-2017 at 08:42 AM.
Reason: Auto correct
I'm pretty sure it doesn't work that way. If you wipe the drive while the OS is running off it, you won't have an OS anymore. You will either need another USB drive or another Slackware install to be able to create a persistent install.
Let me do another guess. You transfered the ISO to your USB stick using 'dd' or something similar. Your resulting USB stick contains a Slackware Live on a read-only medium, because the filesystem of the ISO was also transfered to the USB stick. The ISO filesystem is iso9660 which is a read-only filesystem (used for CDROM and DVD).
If that is true, that USB stick can not be made writable by the iso2usb.sh script. You need to re-create the USB Live OS, on a computer running Linux. You can not o this when running the Live OS on the USB stick, because you would attempt to wipe that what you want to use.
You need the ISO image, plus the iso2usb.sh script, and use the iso2usb.sh script to transfer the content of the ISO file to the USB stick. That action will add persistence to the USB stick automatically (persistent data written to a directory called "/persistence") but using the parameter "-P" like you showed will create a persistence file instead, which is equally fine.
Running off a iso9660 filesystem would explain the input/output error of the mktemp command.
Maybe it is run as isoscan from custom grub2 menu in the usb as iso container,If you have a choice for grub menu in slackware, That's how I run them most distributions to testing
Ok, I loaded Slackware 14.2 on my computer which works great as always. Im not sure how to prepare the USB drive to be able to run the iso2usb.sh
I have iso2usb.sh and the .iso in my downloads directory logged in as root. im getting the Permission Denied error when trying to run the iso2usb.sh.
The permission denied error is probably caused by the fact that the script is not marked executable. That happens when you download scripts from the internet.
Solution:
Code:
chmod +x iso2usb.sh
And then you can write the USB stick again, making it persistent:
I used "/dev/sdb" in the commandline example above because that is what your cfdisk shows. In your original post you mentioned "/dev/sdc" so please double-check before continuing. The 'iso2usb.sh' script will show you the characteristics of the device before it starts overwriting stuff, and you will get the chance to Ctrl-C and abort the script if you picked the wrong device.
Quote:
I did a cfdisk /dev/sdb and here are the results
free space
/dev/sdb1 100M EFI ssystem
/dev/sdb2 29.8G Linux filesystem
Is this corret.
Again, Sorry for not understanding.
Brian
This is correct for the read-only USB Live version which you created by simply 'dd'-ing the ISO to the USB stick.
I've seen it happen that the USB stick is not perfectly wiped by the script, if previously the USB stick contained Slackware Live that was 'dd'-ed to the stick directly from the ISO file.
What I did in such a case was: use 'dd' to wipe the beginning of the USB stick. The iso2usb.sh script may be confused by the remnants of the previous Slackware Live Partition and this 'dd' command will wipe the first 10 MB of the USB stick, hopefully enough to wipe all partition data (something that gdisk should have done in the script but which it apparently fails to do):
Code:
dd if=/dev/zero of=/dev/sdb bs=1M count=10
Note that this will irrevocably write 10 MB of zeroes to the device /dev/sdb so please check in advance if /dev/sdb is indeed your USB stick.
After executing this 'dd' command, try your iso2usb.sh command again.
I tried the dd if=/dev/zero of=/dev/sdb bs=1M count=10 code and then reran the iso2usb.sh command. Im getting the same error. Too many clusters for filesystem. FAILED at line 547.
Is there a way to completely wipe out my usb and run the iso2usb.sh again?
thanks
Can you try editing that line and change it to (adding "-F12" to indicate a 12bit FAT):
Code:
mkdosfs -F12 -s 2 -n "DOS" ${TARGET}1
And then try running the iso2usb.sh commandline again?
If that does not make any difference, could you try this line instead (leaving out some instead of adding some)?
LinuxQuestions.org is looking for people interested in writing
Editorials, Articles, Reviews, and more. If you'd like to contribute
content, let us know.