Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add persistence option #413

Open
timtjtim opened this issue May 16, 2016 · 38 comments
Open

Add persistence option #413

timtjtim opened this issue May 16, 2016 · 38 comments

Comments

@timtjtim
Copy link

I can't remember which app does it (perhaps usb-creator-gtk) but I remember being able to choose the free space for writing files when booting a Live USB such as Ubuntu.

Is this supported / could this be supported?

@jviotti
Copy link
Contributor

jviotti commented May 16, 2016

Hi @timtjtim ,

I don't think I understand the feature request very well. What do you mean by writable space? USB drives written by Etcher shouldn't be read-only, so you could mount it back and put any other files you want.

@miniShrooms
Copy link

miniShrooms commented May 19, 2016

Hi @jviotti,

I believe @timtjtim is speaking about the option for persistent storage when creating a live USB for Linux OS's like Ubuntu, Mint, and more. What it does is allow the live USB to have files written and stored on it (like a normal OS) and actually allow for the files and changes to be saved when closing, disconnecting, and rebooting back into the live USB. Additionally, UNetbootin is the application that has this feature; and honestly, I'm a big fan of it myself. I'd really like to see a feature like this implemented into Etcher if possible.

@timtjtim
Copy link
Author

@jviotti Yes, @miniShrooms is correct. That's the idea.

@jviotti
Copy link
Contributor

jviotti commented May 22, 2016

Hey there,

Thanks for the very detailed explanation. I'll play around with UNetbootin and try to research how this is implemented, and if it'd be reasonable to include it in Etcher.

@jviotti jviotti modified the milestone: Backlog May 26, 2016
@m4gn3to
Copy link

m4gn3to commented Jun 16, 2016

I'm too interested in persistent storage, so I can install some packages in my usb only once, and also only have to disable the screensaver once 👍
Thanks

@jviotti jviotti changed the title Cannot chose writable space for Live Ubuntu USB Add persistence option Oct 4, 2016
jviotti pushed a commit that referenced this issue Oct 31, 2016
See: #413
See: #783 (comment)
Signed-off-by: Juan Cruz Viotti <jviotti@openmailbox.org>
jviotti pushed a commit that referenced this issue Oct 31, 2016
…#805)

See: #413
See: #783 (comment)
Signed-off-by: Juan Cruz Viotti <jviotti@openmailbox.org>
@Shou
Copy link
Contributor

Shou commented Nov 25, 2016

Reading UNetbootin's source, the approach it takes is to create a casper-rw file in the root directory by padding it with \NUL to the user specified size—limited to 4GB by FAT32—and then running mke2fs on said file. On Windows, it ships with a mke2fs.exe executable. Another approach is to make an EXT2 partition labelled casper-rw which doesn't have the 4GB limitation. In order to facilitate persistence it also seems to enable a kernel option for persistence which it then adds to the GRUB config.

@alexandrosm
Copy link
Contributor

alexandrosm commented Nov 26, 2016 via email

@lurch
Copy link
Contributor

lurch commented Nov 28, 2016

It sounds like we should curate a list of "post-write interventions" people may want to make to their images, and then see how we can encode these in the etcher format.

👍 I was thinking along exactly the same lines after @petrosagg 's LKL talk.

@Nokia808
Copy link

Nokia808 commented May 2, 2017

Hi. I'm not sure whether the following could assists you about adding this feature or not. Please look for this program:

https://www.pendrivelinux.com/

it is for Windows only. But look to it, my be of benefit.

Look to last change log for Universal USB Installer - Easy as 1 2 3:
https://www.pendrivelinux.com/universal-usb-installer-easy-as-1-2-3/

it say: Universal-USB-Installer-1.9.7.7.exe – March 21, 2017 – Changes
Added casper-rw creation progress banner. Corrected casper slider max size relative to fat32 vs ntfs selection. Add Windows to Go VHD option. Added more info for syslinux warning. Add NTFS format option. Add filesystem type to drivelist. Include message box to notify of NTFS filesystem requirement for Windows to Go option. Add larger than 4GB casper-rw support for Ubuntu if filesystem is NTFS (creates 4th partition table) – Note removes EFI boot option. Correct broken Ubuntu and Linux Mint installer options when no format option is chosen.

Also, there is other program:
https://www.linuxliveusb.com/

But 1st program (Universal USB Installer - Easy as 1 2 3)

Best.

@jo-chemla
Copy link

Hi, is this feature still planned on the todo list ? Would be a great addition to etcher, for example compared to Rufus.

@casearis
Copy link

casearis commented Sep 4, 2018

Not sure if persistence will be added to etch.. for ubuntu distro's, unetbootin and liveusb cover that.. however, needs to be fat32/16 filesystem. Try multiboot-usb, good for testing live iso's. Can also handle persistence for deb/ubu , also supports ext4 fs.

Most live iso's have persistence built in. But that's another story...

@alichtman
Copy link

This would be an awesome feature. Etcher is second to none in terms of ease of use, but not being able to enable persistence makes it unusable for most of my purposes.

@ohbus
Copy link

ohbus commented Aug 2, 2019

I have been researching during my free time to contribute and make this feature available in balena, but my point is I have figured this out for Debian/Ubuntu Systems already but not sure how to implement it for other Distros.

Would love to have some help.

@alichtman
Copy link

@ohbus Can you describe your solution for Debian/Ubuntu?

@lurch
Copy link
Contributor

lurch commented Aug 5, 2019

I have figured this out for Debian/Ubuntu Systems already but not sure how to implement it for other Distros.

@ohbus I'd assume that https://unetbootin.github.io/#distros and https://github.com/unetbootin/unetbootin/ and https://github.com/unetbootin/unetbootin/wiki/howitworks would be good starting points?

@ohbus
Copy link

ohbus commented Aug 5, 2019

Yes

I have figured this out for Debian/Ubuntu Systems already but not sure how to implement it for other Distros.

@ohbus I'd assume that https://unetbootin.github.io/#distros and https://github.com/unetbootin/unetbootin/wiki/howitworks and https://github.com/unetbootin/unetbootin/wiki/howitworks would be good starting points?

Yes you are absolutely right.

They are the starting point, but need to implement it for different OS and archtype.

I'm a little busy right now, will surely get back to this once I get some time.

Thank you.

@At-Heal
Copy link

At-Heal commented Sep 2, 2019

Ohbus, is there a way to make it with ParrotOS. If you can make a secondary application that has that option. It may greatly enhance your solutions because errors would pop up.

@ulidtko
Copy link

ulidtko commented Dec 27, 2019

Ah yes. Quarter Gig of an app to do what a 0.000075 Gig dd tool does — but with eyecandy.

What a waste of my SSD capacity!

The app so beautifully displays the 16 GiB flash capacity I picked to boot from — only to put a measly 1.3G of casper-rw free space on it.

What a waste of my flash capacity!

Honestly guys? I'm disappointed. Four orders of magnitude bloat is not okay. My SSD space is not that cheap as you'd like to think. My time is not that cheap, to start over with a tool that doesn't suck, and can produce a usb stick which can boot and store another ISO image on it.

Keep not caring.

@Forage
Copy link

Forage commented Dec 28, 2019

Honestly guys? I'm disappointed. Four orders of magnitude bloat is not okay. My SSD space is not that cheap as you'd like to think. My time is not that cheap, to start over with a tool that doesn't suck, and can produce a usb stick which can boot and store another ISO image on it.

Keep not caring.

This is just an utterly useless and highly disrespectful post.
We are here to suggest and discuss improvements to make the application better, not to cry and bitch about something that had not even been implemented yet.

You sound as if you are being forced to use this application that has been made available to all of us for free.
Go make an effort to look for an alternative that actually promises to do what you want. It is not until you actually put some time, effort and/or money into it and it does not live up to its promises that you have some form of right to complain about it.

@timtjtim
Copy link
Author

timtjtim commented Dec 28, 2019 via email

@ulidtko
Copy link

ulidtko commented Nov 17, 2021

not to cry and bitch about something that had not even been implemented yet.

Dying to see the plans to implement that. (Considering it's an Electron app.)

With all due respect, I simply don't buy that presumed promise that bloat reduction will ever be implemented here.

Also, the fact that the previous commenter had promptly deleted their criticism — is a stellar indication that honest feedback is not taken well in this community.

Respectfully, I'll let you draw your own conclusions.

@ulidtko
Copy link

ulidtko commented Nov 18, 2021

... I apologize as well, my original rant has obscured the real point I was making:

  • the program puts just 1.3G of casper-rw persistent space — on a 16G flash stick.
    As a result, the live USB cannot even fit ~1.5G file on it (which very well could be another ISO image to transfer between machines) — leaving 10+ GiB of space unused.

That should make it clear why I posted that in this issue specifically.

@Gipper925
Copy link

Rufus supports persistence.

@pythlang
Copy link

Rufus supports persistence.

We know this already. Rufus doesn’t run on Unix platforms

@casearis
Copy link

"gufw", supports persistence. Do usb stuff

@casearis
Copy link

Apologies " dusb "do usb stuff

@casearis
Copy link

casearis commented Mar 5, 2022

Sorry was away from home when i commented, the software i was referring to is "mkusb". A GUI for linux - supports persistence. Have only used etcher for raspberry pi images, I do however pre format SD to FAT32 before i use any writing applications.

@jsmdy
Copy link

jsmdy commented Feb 3, 2023

was expecting this functionality on etcher also :(

@nileshtrivedi
Copy link

nileshtrivedi commented Mar 29, 2024

This feature would be great.

It's 2024 and I can't believe I am unable to set up a bootable linux USB thumbdrive with persistence without already having a Linux or Windows machine around.

  • Etcher runs on Mac OS but does not provide persistent volume feature
  • Rufus has persistent volume feature but does not run on Mac OS.
  • Unetbootin supports persistent volumes and runs on mac OS but has not been updated since 2021 and therefore does not offer modern versions of Linux desktop OS
  • Fedora Media Writer runs on Mac OS but does not support persistent volume feature.
  • livecd-iso-to-disk supports persistent volume but does not run on mac OS.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests