I am new to this platform and hope that you can help me out with this one. I had this common GPU issue on a 2011 MBP that I was able to solve with the super detailed post by the user "LаngLаngС" (thanks so much!) as found here: GPU problem - Boot Hangs on Grey Screen

Unfortunately a new problem occured that prevents me from running the script. I'll explain:

To solve the GPU issue I everything as written in LangLangC's post and I also had the executable sh script on my desktop – so when I had to boot the Mac again, I did this in single user mode with CMD + S, and then typed "sh /force-iGPU-boot.sh" and then reboot. This would boot my machine always as normal with the internal GPU.

So far so good – until yesterday. When trying to reboot again from Single User Mode, I got this new prefix "sh 3.2#" and the lines looked different. It says that the volume is "read only"-. When I try to execute "sh /force-iGPU-boot.sh" it says, file or directory not found. I cant run "sudo" commands as it says "command not found". When I try to remount with "mount -uw" it doesn't work – it always says "device is write locked.

When I type exit or reboot the system actually seems to boot "normal" – if there wasn't the GPU issue! Meaning that if I cannot run the script "force-iGPU-boot.sh" from the single user mode, I cannot boot the GUI Mac OSX properly. Unfortunately I also cannot execute the sudo commands. I also tried to boot the Mac in target mode and "repair" the drive with the disk utility of another Mac, but that never worked either.

I was googling a lot and tried a lot but nothing worked yet. Since I am not very familiar with these kinds of issues, I was hoping to find an answer here, where I found the first answers to my GPU problem.

Basically my "new problem" is that I cannot run the automated script that I saved on the desktop or the sudo commands from the single user mode.

Hope you can help me! Many thanks in advance.

This is the output of sw_vers: https://ibb.co/g41TtQQ

Best, Alex

  • Did you happen to upgrade macOS between the day before yesterday and yesterday?
    – jksoegaard
    Mar 14 at 20:10
  • Hey – no I did not upgrade, at least not willingly. I remember that the problem occured after I heard the chime up sound when the lid was actually closed, and then, when trying to reboot with the procedure above, I ended up in this loop of not being able to execute the .sh file from the single user mode.
    – meltphace
    Mar 14 at 20:14
  • Coould you include a screenshot or paste of how the "lines looked different"?
    – jksoegaard
    Mar 14 at 20:18
  • When booting in single user mode I recall that I usually got another "prefix" where I typed my "force-iGPU-boot.sh" command. Now, I get the prefix "sh 3.2#" and I am not able to run any sudo or sh command (it says either command not found or no such file and directory). The "new thing" seems to be that there is a problem with the write / read permissions, but I could't fix that after trying out many different suggestions found on the internet. Tomorrow I can make a picture from the bootup and upload it. Basically I somehow need to execute that .sh file from my desktop.
    – meltphace
    Mar 14 at 20:33
  • Which version of macOS do you have installed?
    – jksoegaard
    Mar 14 at 21:46

I would suggest disabling SIP (System Integrity Protection) by rebooting your laptop into Recovery Mode by holding down Cmd+R while booting, and then opening the Terminal and running the following command:

csrutil disable

Now close the Terminal window and reboot into single-user mode, and try your commands again.

  • Hey – thanks a lot – but the "extra" problem here is that I cannot access the GUI recovery mode without running the commands to disable the malfunctioning GPU before.
    – meltphace
    Mar 15 at 13:16
  • I tried to run the command in Single User mode and it said that the SIP was disabled, but after rebooting I had the same problems as described above unfortunately.
    – meltphace
    Mar 15 at 13:18
  • Hello again – any other ideas how I can run the script or even sudo commands in SUM? The problem still appears to be some write/read permissions. Many thanks! :)
    – meltphace
    Mar 17 at 9:23

In Part 2 of the solution you've linked to, there is the step

sudo nano /force-iGPU-boot.sh

which creates a script at the root directory of your boot volume (NOT on your Desktop) and allows you to later re-execute the workaround by running

sh /force-iGPU-boot.sh

From your question, it sounded like you saw a "file not found" error after mentioning that you saved the script to your Desktop, which is the wrong location if you're following the steps exactly.

However, I can see no need to keep the script at the root directory, which is protected by SIP, other than convenience. You can just as well keep it on your Desktop and modify the procedure:

# in normal macOS
sudo nano /Users/YOUR_USERNAME/Desktop/force-iGPU-boot.sh
sudo chmod a+x /Users/YOUR_USERNAME/Desktop/force-iGPU-boot.sh

# in recovery macOS
sh /Users/YOUR_USERNAME/Desktop/force-iGPU-boot.sh

where you'd replace YOUR_USERNAME with your short username. (If you don't know it, run whoami when booted into normal macOS.)

  • Hello pion and many thanks for your answer! I just mounted the drive in Target-Mode and checked: I actually did put the force-iGPU-boot.sh in the root folder AND on the desktop, for whatever reasons. I just tried to execute the file from the desktop with the path you wrote down above, but tha also gave me "no such file or directory". Somehow I suspect that the write/read permissions must cause an issue here? I also can't run sudo as it says "command not found". Any further suggestions are welcome. Many many thanks for taking your time, this is really appreciated.
    – meltphace
    Mar 16 at 9:40
  • If I understand you correctly, you placed your MBP in Target Disk Mode, attached it to a second computer, then ran the above commands on that second computer without modification? If so, then of course they aren't going to work. The paths will be different.
    – pion
    Mar 17 at 4:36
  • Hey – no I did not do that. :) I just said that I checked with target-mode that the file was in the correct folder (root). The commands were executed on the computer itself. I ran the commands as described in the post I linked to, many many months ago. Everything went smooth until a few days ago – the complete problem is described above. The problem is still, that I can not execute the .sh file from the Single User Mode due to some write/read permissions I guess: ibb.co/hXkJp3v ibb.co/pWJDpGV ibb.co/X3xB0w3 It always says "device is write locked" or "file not found". Any ideas? :)
    – meltphace
    Mar 17 at 9:20
  • @meltphace It looks like you’re booted into your Recovery OS, not normal macOS, so I’m assuming you’re on the 3rd step of my instructions above. If so, then you do not need to mount the filesystem read-write (and you can’t, because it’s on a read-only disk image), as the shell script does not need to write anything to it. It only modifies nvram. So skip the mount command and just run the sh ... invocation.
    – pion
    Mar 19 at 0:17
  • Many thanks again for taking your time. Actually I wasn't able to run the sh command (still saying "file or directory not found") BUT I was able to run the nvram commands and then reboot and "reach the GUI". Now I am booted into the normal GUI but the system appears to be slow and a bit flaky so I am not really sure what happens next time when I have to reboot – do you know how I can NOT boot into recovery on startup with SUM?
    – meltphace
    Mar 22 at 10:51

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .