balena-io / etcher

Flash OS images to SD cards & USB drives, safely and easily.
https://etcher.io/
Apache License 2.0
29.94k stars 2.11k forks source link

Etcher broken on macOS Catalina #2833

Closed ghost closed 5 years ago

ghost commented 5 years ago
coreyasmith35 commented 5 years ago

Having this same issue.

ghost commented 5 years ago

Workaround: Moving your image inside balenaEtcher.app seems to do the trick. You can do this by selecting "Show Package Contents" on balenaEtcher.app and dragging your image inside of it. Then you can select your image as usual from Finder and the flashing will go ahead. Make sure you select the image inside balenaEtcher.app

willswire commented 5 years ago

Workaround listed above works for me as well. I think this error is in part to the recent changes made by apple (see here) regarding disk access permissions. "... apps must now get your permission before directly accessing files in your Documents and Desktop folders, iCloud Drive, and external volumes, so you’re always in control of your data."

CallMeTuesday commented 5 years ago

@nathfreder suggestion worked for me as well.

RefineryX commented 5 years ago

@nathfreder Suggestion worked for me too! Times like these, I realise there really is no alternative to Etcher!

DG12 commented 5 years ago

related to #2843

xcvista commented 5 years ago

Maybe Balena should codesign the app with disk access? Apple as been tightening the sandbox.

ghost commented 5 years ago

@xcvista That would be a good idea. It's required for Catalina.

cameroncooke commented 5 years ago

Above approaches didn't work for me, what did:

sudo /Applications/balenaEtcher.app/Contents/MacOS/balenaEtcher

Hope this helps.

ghost commented 5 years ago

@cameroncooke That's way simpler than my approach. 😀

livefeed commented 5 years ago

@cameroncooke Thank you, this worked for me.

MiroHibler commented 5 years ago

macOS Catalina 10.15 Beta (19A526h) doesn't even allow the app (>= v1.5.51 as far as I know) to start due to "check against the malicious software".

v1.5.33 can start, but sudo hack doesn't work anymore.

ghost commented 5 years ago

@micopiira so the app doesn't start at all, or doesn't start with the sudo hack?

thehappydinoa commented 5 years ago

Launching with sudo currently works with v1.5.52 on 10.15 Beta (19A512f)

thundron commented 5 years ago

For macOS Catalina 10.15 I believe we'll have to notarise the Etcher application package as it'll be a requirement for all applications from 10.15 on, which we're already preparing for

Betabao commented 5 years ago

Above approaches didn't work for me, what did:

sudo /Applications/balenaEtcher.app/Contents/MacOS/balenaEtcher

Hope this helps.

this works for me.

kaushaltrivedi commented 5 years ago

Above approaches didn't work for me, what did:

sudo /Applications/balenaEtcher.app/Contents/MacOS/balenaEtcher

Hope this helps.

this worked for me!!!

ucdailoi commented 5 years ago

Wont work for my mac..... What started out as an attempt to load Home Assistant onto a SD card has become a nightmare of chasing shadows. I have to give up after 3 hours of stuffing around... What now is the question

iglesias294 commented 5 years ago

Moving images inside the etcher package not working on Catalina Beta 8. Launching with SUDO does work. Log below:

Sandbox: balenaEtcher Hel(9055) System Policy: deny(1) file-read-data /dev/rdisk2 Violation: System Policy: deny(1) file-read-data /dev/rdisk2 Process: balenaEtcher Hel [9055] Path: /Applications/balenaEtcher.app/Contents/Frameworks/balenaEtcher Helper.app/Contents/MacOS/balenaEtcher Helper Load Address: 0x1098a9000 Identifier: io.balena.etcher.helper Version: 1.5.56 (???) Code Type: x86_64 (Native) Parent Process: bash [9054] Responsible: /System/Library/Frameworks/Security.framework/authtrampoline

ghost commented 5 years ago

@cameroncooke thank you, launching with SUDO works for me

kapong commented 5 years ago

@cameroncooke @kschembri thank you, sudo works for me too

netyrk commented 5 years ago

Above approaches didn't work for me, what did:

sudo /Applications/balenaEtcher.app/Contents/MacOS/balenaEtcher

Hope this helps.

10.15 Beta (19A558d)

sudo solution works for me. Other potential solutions provided did not work.

zaltal commented 5 years ago

Workaround fixed it for me swell on OS X Catalina. Thanks nathfreder!

Hansaplast commented 5 years ago

I bumped into this "issue" while looking for a solution for my own application (ApplePi-Baker). Since we're all here with the same goal in mind (writing SD cards for RaspberryPi), I thought I'd help out and post my fix.

Under Catalina one must add the application to the security exceptions: Go to “System Preferences” -> “Security & Privacy” -> “Privacy“. Add the application to the list of “Full Disk Access“ items, and you should be good to go. No need to run as sudo.

cameroncooke commented 5 years ago

I had tried this in the betas and it still didn't work.

Also shouldn't the system prompt you to allow this as soon as it [Etcher] attempts to make full-disk access?

On Wed, 25 Sep 2019 at 12:50, Hansaplast notifications@github.com wrote:

I bumped into this "issue" while looking for a solution for my own application (ApplePi-Baker https://www.tweaking4all.com/software/macosx-software/applepi-baker-v2/ ). Since we're all here with the same goal in mind (writing SD cards for RaspberryPi), I thought I'd help out and post my fix.

Under Catalina one must add the application to the security exceptions: Go to “System Preferences” -> “Security & Privacy” -> “Privacy“. Add the application to the list of “Full Disk Access“ items, and you should be good to go. No need to run as sudo.

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/balena-io/etcher/issues/2833?email_source=notifications&email_token=AAEZ6SJNEZ75DH5EEN4LXBLQLNGAJA5CNFSM4H27SRX2YY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOD7RTONA#issuecomment-534984500, or mute the thread https://github.com/notifications/unsubscribe-auth/AAEZ6SOKKUNBW5MSECY7YEDQLNGAJANCNFSM4H27SRXQ .

Hansaplast commented 5 years ago

Sorry to hear that, I just tested it again with Catalina beta 9 (19A573a) and it worked on my Mac. I noticed that I had to reboot Mac (since I use a Privileged Helpertool, which needs to be restarted as well and keeps being "available" in the background, so the changes may not have affected it yet - I suspect).

I'm sure the Etcher devs would agree with me that it would be appropriate if the system would actually prompt the user (either asking for permission, or pointing out why it didn't work). But it doesn't seem to do it for "Full Disk Access". Still looking for a solution though ...

I've been looking for info all day long already and have not been able to find a proper answer.

ReubenBTalbott commented 5 years ago

EDIT: This does not work for some reason. Should have tested before posting.

As a temporary solution for anyone wanting to run etcher on Catalina easily, I made an Apple script to run etcher with administrator privileges. You can just run the script or turn it into an app which is what I have done personally.

~~display dialog "Start balinaEtcher with Admin Privilages?" buttons {"Start", "Cancel"} do shell script "Applications/balenaEtcher.app/Contents/MacOS/balenaEtcher" with administrator privileges~~

idoodler commented 5 years ago

@thundron You are right. macOS Catalina requires applications to be notarized, we are facing a similar issue. Have you had success with notarization yet?

Hansaplast commented 5 years ago

I managed to notarize ApplePi-Baker successfully, but it will not resolve the disk access issue, as it only notarizes the distribution DMG or ZIP file (reference).

You will need to get an application specific password at https://appleid.apple.com/. This app specific password can be reused for following versions of the application.

Then with that code you have to notarize with:

xcrun altool --notarize-app --primary-bundle-id "com.compay.appname" -u "yourappleid@email.com" -p "app-specific-password" -t osx -f "yourappdmg.dmg"

This will produce a Request UUID.

Once notarized, you will get an email confirming that it has been notarized. You can also check your status from Terminal:

xcrun altool --notarization-history 0 -u "yourappleid@email.com" -p "app-specific-password"

After being notarized you will need to "staple" your DMG (or ZIP) before you can distribute it.

xcrun stapler staple “yourappdmg.dmg"

This is how it worked out for me, and does not seem to be sensitive to using non X-Code development tools. Hope this is helpful.

ReubenBTalbott commented 5 years ago

MacOS Catalina was released today, is there any update on getting balinaEtcher running properly?

p-i- commented 5 years ago

Just trying this out on Catalina.

It works with the sudo trick (above).

My guess is that devs need to add a couple of permissions to the info.plist

EricGoodrich commented 5 years ago

I was having trouble flashing an image while running the Official Release of macOS Catalina (10.15.0).

I tried the: "Go to “System Preferences” -> “Security & Privacy” -> “Privacy“. Add the application to the list of “Full Disk Access“ items" from above and that didn't work either.

Then I did the "sudo /Applications/balenaEtcher.app/Contents/MacOS/balenaEtcher" and I was able to flash my image just fine.

Perhaps balenaEtcher app needs to be updated. In the meantime, the sudo workaround seems to work fine.

Thank you everyone for the discussion and I will be following this thread for future developments.

~e 🍻

boltomli commented 5 years ago

It also has to have the access to removable media. When running inside a terminal, the access request window can pop up correctly then it'll work well.

tymoteuszrogalewski commented 5 years ago

Yesterday update MacBook to Catalina. BalenaEther 1.5.56 stops work ;) Terminal gives popup with access to Downloads folder and ok, but balena not. Just writing error message. Adding full access to disk under Privacy preferences gives nothing. This workaround with sudo /Applications/balenaEtcher.app/Contents/MacOS/balenaEtcher ...works great for now. But must run with this method every time. Access privileges in remembered only via terminal run and not work with later common app running by mouse clicking. Hope soon will be balena update with fix.

fortyKnoxy commented 5 years ago

Above approaches didn't work for me, what did:

sudo /Applications/balenaEtcher.app/Contents/MacOS/balenaEtcher

Hope this helps.

This method worked for me, thanks a lot.

tgwaste commented 5 years ago

Worked for me as well. Thanks!

magiconair commented 5 years ago

The workaround is two-fold: (tested with 1.5.58 on macOS 10.15)

  1. Go to Security & Privacy and allow etcher to run. There should be a warning that etcher was blocked but you can allow to run it anyway. This will get rid of the initial warning that the app has to be updated. However, then flashing still fails with the error message that the image is corrupt.
  2. Run etcher with sudo /Applications/balenaEtcher.app/Contents/MacOS/balenaEtcher allows you to flash as before.
alexmuntean commented 5 years ago

I didn't see this post when I tried flashing: I managed to flash by copying inside balenaetcher app itself and selecting it from there and disabling system integrity protection (command+r while restarting -> terminal -> csrutil disable)

magiconair commented 5 years ago

The system integrity protection is there for a reason. I don’t think it is a good idea to disable it and to explain this as a way to work around the problem if there are other alternatives.

So try all the other approaches first and only if they all fail try the system integrity approach.

stacywebb commented 5 years ago

sudo /Applications/balenaEtcher.app/Contents/MacOS/balenaEtcher

works on version 10.15.1 Beta (19B68f)

Black0wI commented 5 years ago

Sudo workaround works on macOS 10.15 (19A583) with balenaEtcher 1.5.57. Thank's

Hammid commented 5 years ago

Yes. God bless the sudo /Applications/balenaEtcher.app/Contents/MacOS/balenaEtcher workaround!

CallMeTuesday commented 5 years ago

Still having this issue. Running 1.5.58 on OS X 10.15 Beta (19A582a)

fraban commented 5 years ago

Hi all - I build a 2-line shell command and put this into "Automator" ... a simply Wrapper - now I can start it by mousclick. its easy:

  1. Build a shell-script with using your password for "sudo - command" and Balena Etcher standard install.

Open your Textedit and type ( replace with your password

#!/bin/zsh
echo <YOURPASSWORD> | sudo -S /Applications/balenaEtcher.app/Contents/MacOS/balenaEtcher

Save it as "WrapperBalena.sh" in your $HOME directory Applications folder ($HOME/Applications)

  1. make the scrip executable - Open "Terminal" and type cd $HOME/Applications chmod a+x WrapperBalena.sh

  2. Now open Automator and look for "Shell-Script Execution" and insert - s.Screenshot Bildschirmfoto 2019-10-14 um 13 02 23

  3. Save it on your desktop as e.x. Belena-starter and your done ... Doubleclick the new automator-file and BelenaEtcher starts as "root" and works on Catalina...

It´s only a fix - not a final solution ! -frank

gh0st commented 5 years ago

Sudo trick now does not work with macOS 10.15 (19A602).

GiuseppeLaurenza commented 5 years ago

Sudo trick now does not work with macOS 10.15 (19A602).

Same problem, with sudo flash starts, but at the end it says that checksum of image and usb is different

leonkoum commented 5 years ago

For me 'sudo solution ' is working for now but the have to fix it !!! (Etcher 1.5.59)

muddydev commented 5 years ago

Above approaches didn't work for me, what did:

sudo /Applications/balenaEtcher.app/Contents/MacOS/balenaEtcher

Hope this helps.

Still working

mi11y commented 5 years ago

Sudo trick is working on Catalina 10.15 and Etcher 1.5.59

user34756361233 commented 5 years ago

Just updated to MacOS Catalina (10.15 (19A602) ). When I start balenaEtcher (1.5.59) I get the following message:

“balenaEtcher” can’t be opened because Apple cannot check it for malicious software.

the sudo command just ends in: Killed and nothing happens.

So I can't use balenaEtcher anymory