I (think I) just succeeded in getting past an update to the nVidia driver on my Lenovo ThinkPad W510 with the NVIDIA GT216GLM [Quadro FX 880M] graphics card, running LM 17.3 Cinnamon. A week or so ago, I let the Update Manager apply updates for the first time in perhaps a month or maybe a little longer. The result was booting up through login finally to reach a black desktop with just the mouse pointer showing. Everything seemed to be working, just no capability of visibly rendering the view of the desktop. (Update was intended to get everything up-to-date preparing to move to LM 18.)
Anyone getting stuck in that condition knows the initial anxiety and all that follows. Fortunately, I already had a LM 18 Live USB¹ to boot from, and it worked well. That allowed me to make backups of my files that were completely current and do (many) searches for remedies.
It did not, however, tell me which of the (many) remedies would actually work nor what the consequences of trying various ones might be. In the end, it was a slightly customized sequence that got my Cinnamon desktop back and let me undo some of the suggested fixes that apparently not only did nothing to help but also caused seemingly serious problems. It's been an educational six-day experience.
First issue was that booting to LM 18 via USB didn't give me authority to access my normal files. It took a while to learn that I could use 'Open as root...' or sudo, etc., to get needed authority.² It's not obvious to a (Linux) newbie that that works so easily to access files that effectively are from a different "system". I knew in theory from years of experience with other OSes that physical access is the biggest key, but doing it for the first time with Linux took motivation.
Anyway, with backups out of the way³, I could start poking at things to see what happened. The (many) searches told me that nobody knew how to "fix" the problem. There were only numerous possibilities that had worked (more or less) for different users, or that didn't work.
One problem is that a "black screen" is mentioned over and over, but there are (at least) two separate and distinct nVidia "black screen" problems. One of them appears before any login is even shown; it has only a blinking "cursor" in the upper left corner. Another shows up after an apparently normal login; the desktop just never shows behind the "mouse pointer".⁴
I had the second problem so that many of the suggested "fixes" were not only useless but also caused extra problems later. A big trouble there is that you likely won't know about them (until later) because you can't see their results since they have no visible effect. You make the "fix", reboot, and nothing seems to have changed. Nothing easily visible has changed, that is. The original problem is still there.
Still, with backups, a Live USB and plenty of authority, I tried "fix" after "fix". Each time, I tried to match against whatever symptoms were described in whatever post had whatever "fix". It took a few tries before realizing that some users will say "cursor" or "mouse pointer" interchangeably as well as not clearly describing when the "black screen" appears.
Most of these posts seem to draw a couple suggested "fixes". That seems to be because of the mentions of possible problems with nVidia cards in all of the latest Linux Mint Release Notes. Be very careful there. The suggestions for trying "nomodeset" first and then "nouveau.noaccel=1" are only appropriate if your nVidia graphics card/driver supports them. If it doesn't, you stand a good chance of running into the dreaded:
Code: Select all
E: grub-pc: subprocess installed post-installation script returned error exit status 127
But to get that far, I still had to get a useful desktop back. None of "fixes" that I had tried had helped in the slightest. Yet, in trying things, I got more and more familiar with finding my way around. The first very useful thing that became well known to me was accessing the various "tty" sessions. Even though there was no desktop (no GUI), I could get a number of things done via command line.⁶
My eventual fix for the missing desktop started with jumping to tty1 by pressing Ctrl-Alt-F1. After logging on in that session, I ran:
Code: Select all
killall -HUP "cinnamon "
I clicked to select the nVidia 340-level driver that was available and rebooted. And... all is well.
That is, until some future update, I suppose. At least, now I have some things to try to clear it up when that day comes. I'll try to remember to deselect any future nVidia updates as long as this laptop continues to serve me well.
¹ Always have a Linux-based Live USB (or CD) available. (One for Linux Mint works here.) Best might be one that matches your installed version.
² Even with a Live USB/CD, authority is needed to access many useful files for problem solving. The root password is null for Linux Mint Live USBs, so you can either leave any input prompt empty and simply press 'Enter' or there will be no prompt for password at all. With root, you can make changes to configuration files. The files to change are ones for the installed Linux Mint and not for the Live USB.
³ Use backups before making changes that you don't understand. Having a Live USB plus root access makes it easy to mount any needed drives and to use any files you'll want backed up.
⁴ Technically, the "mouse pointer" is a type of "cursor" in a limited sense. But be careful in discussions. Try to stay clear in understanding when there can be a difference. This is true no matter what a discussion is about -- understand the terms as well as how they're being used by others who might not know differences.
⁵ The "nomodeset" and "nouveau.noaccel=1" attribute items refer to configuration changes that are commonly mentioned in discussions about fixing "black screen" booting problems. They can be appropriate for nVidia GeForce graphics cards and probably for the Nouveau driver if that's what you're running. Suggested changes are to a "grub" file that affects how a PC or laptop boot up. The suggested action is to make a manual change that affects "grub" and that is detected during (at least) some updates. If the installed graphics card (i.e., the driver) doesn't support the configuration changes, the update process doesn't know what to do with either of the attributes and throws the noted error. Without a GUI desktop, though, it can be tricky learning what drivers might be running or installed. (Backing those attribute "fixes" out would be a separate topic, but it was little other than simply reversing the steps of putting them in.)
⁶ A "command line" is the input area of a terminal. There are multiple "terminals" that are available to you when Linux Mint is running. From a normal desktop session, pressing Ctrl-Alt-T is the default keyboard shortcut to access a terminal. You probably can also right-click on the desktop and select 'Open in terminal'. Also, you can probably left-click the terminal icon near the beginning of the desktop Menu panel (or "taskbar"). All of those open a terminal in your desktop session. You can access terminals in other sessions by pressing Ctrl-Alt-F1, Ctrl-Alt-F2, up through Ctrl-Alt-F6. The Cinnamon desktop session is reached with Ctrl-Alt-F8, and Ctrl-Alt-F7
⁷ Run "man killall" for some detail. The "-HUP" identifies a signal to be sent; SIGHUP in this case. You can run a Google search for "SIGHUP" to see that it sends a Hang-UP signal to any processes that match the provided name. SIGHUP essentially tells a Cinnamon process that its terminal has disconnected. That makes the Cinnamon desktop process come to an end. For this "black screen" problem, that's no big deal because no meaningful apps are likely to be running upon startup of the desktop. Killing Cinnamon seems like a handy way to force the "fallback mode" desktop to appear.