Linux problems? I’ve got answers. I've been answering Linux related questions for years. During my time offering others assistance, I've found one thing to be a constant roadblock – most newbies don't really ask for help effectively. This isn't a negative comment about newbies, as I've seen this same issue on other platforms and their related support channels.
The goal of this article is simple - I'm going to give you a walk-through explaining how to troubleshoot, fix or otherwise effectively seek help for common Linux problems.
Fixing Linux Problems: Video
Let's face it, if you can't get to a desktop environment, your Linux application usage is going to be pretty limited. This usually comes down to two specific issues: the display server is not playing nicely or perhaps the video driver isn't doing its job for some reason.
One of the most commonly experienced issues is seeing the splash of a logo then a black screen. It's understandable how frustrating this can be. Most of the time, this happens when you're first installing the distro or perhaps it takes place from a "Live" USB boot. In either case, there are some work-a-rounds that will allow you to get past this. Understand however, the first step is to get to the desktop, from there you can explore a better way to make your desktop look right.
Note: Windows users reading this, don't think this is a Linux only issue. If I had a dollar for every instance where Windows resolution blew out or a video driver update went south, I could buy serious stock in Google. Just want to clear the air on that. Point being, bugs affect all operating systems. Moving on…
Rather than duplicating other video work-around guides, I'm going to link to this guide for fixing the "Black Screen" issue found with some graphic cards. I would also point out that this is less of an issue than it used to be.
Unlike other operating systems where your options are to use an older version of said driver or video settings, Linux affords us solid work-around solutions that have stood the test of time. As Wayland becomes the new display server in the future, it'll be interesting to see how things progress from there. But for now, the above link will solve 99% of the issues experienced.
To be clear, most people only need to set a boot parameter to get into a graphical interface. From there, the next step below will usually resolve your problems.
Intel - With the exception of dual-graphic environments, I've never had a black screen or resolution issue with Intel graphics. If you do, it's worth trying a system update (from the command line or GUI if you can get to it). If it's still not working, try doing a Live USB test with a slightly older version of the distro in question (for fixed release distros).
NVIDIA – Once you're able to get past the black screen issue mentioned above, check and the resolution options under your monitor settings. If you're experiencing an odd issue with only seeing low resolutions (800*600, or worse), try the following with the command line tool called xrandr and remove the bad settings.
Removing bad configuration:
Reboot and see if your resolution is looking better. If it's not, then you're going to need to see what resolutions are available with the existing drivers installed. Let's run xrandr from the command line and see what resolutions are available.
And on my monitor, this confirms the resolutions available found in my display settings as:
Screen 0: minimum 8 x 8, current 2560 x 1080, maximum 16384 x 16384 DVI-I-0 disconnected (normal left inverted right x axis y axis) DVI-I-1 disconnected (normal left inverted right x axis y axis) DP-0 disconnected (normal left inverted right x axis y axis) HDMI-0 connected primary 2560x1080+0+0 (normal left inverted right x axis y axis) 798mm x 334mm 2560x1080 60.00*+ 1920x1080 60.00 59.94 50.00 29.97 60.05 60.00 50.04 1680x1050 59.95 1600x900 60.00 1280x1024 75.02 60.02 1280x720 60.00 59.94 50.00 1152x864 75.00 1024x768 75.03 60.00 800x600 75.00 60.32 720x576 50.00 720x480 59.94 640x480 75.00 59.94 59.93
The number x number represents my available resolutions. And the * represents the current resolution being used right now. If you're stuck at a poor resolution and see greater or ideal resolutions available in the xrandr list, you can try changing it with the following. In my example, I'll be changing to 1920x1080.
xrandr - -output HDMI-0 - -mode 1920x1080
(Note, the dashes need to be right next to each other without a space, but I had to space them for formatting reasons)
Once I hit enter, the screen will flash and it should change the resolution to my new selection. Using xrandr is a fantastic alternative for those instances where using the GUI tools aren't cooperating due to some odd resolution issues or other monitor out of range headaches.
Truth be told, if the resolution appears in your xrandr output, odds are good that your monitor GUI settings will show the same. But this is a good fall back just in case.
So what should you try if both xrandr and your GUI monitor settings show only limited resolutions? I recommend trying to install the NVIDIA proprietary driver. If you're running any sort of decent newbie friendly distro, it will come with an installer tool for this. Ubuntu and Mint for example offer this in the Updates tool. Install the "recommended" proprietary video driver and reboot. Then recheck your available resolutions and odds are the problem will be resolved.
Note: For those of you with "hybrid" graphic setups running Intel and NVIDIA, you're going to want to install the proprietary NVIDIA driver. It will install a package called nvidia-prime. This allows you to effectively choose which video card you wish to use at any given moment. For example, run this in the command line after the proprietary NVIDIA driver are installed:
sudo prime-select query
This will likely output something like nvidia. This means at that moment, this is the video card your hybrid laptop is using. To switch it over to Intel, do the following:
sudo prime-select intel
This will switch you back over to your Intel graphics card. You can verify it by using the above verify command. If you prefer to use something automatic instead, you can explore your options with the Bumblebee project. You should be aware it's degree of success will vary greatly and may not work as smoothly as prime-select.
AMD/ATI – Despite statements claiming AMD video card support has improved over the years for Linux users, I'm still of the mind to just avoid using these cards altogether. That said, if you choose to, follow the same guide as NVIDIA...with one notable exception – you're looking at open source video drivers only with Ubuntu LTS 16.04. Other distros and future releases may differ here, but I think they have the right idea as AMD drivers are historically, pretty bad.
This means you can still use xrandr or your monitor settings to change resolutions. However if you're looking to game with an AMD video card, I recommend checking out this guide on getting proprietary AMD video drivers working on Ubuntu. There you will find options such as Optimized Open Graphics Drivers and AMDGPU-PRO based solutions. Personally, I recommend either running Ubuntu 14.04 on the affected system or simply buying a better (NVIDIA) graphics card.
Fixing Linux Problems: Sound
Most Linux based audio issues come from the widespread adoption of the PulseAudio server. At one time, the sound server caused a lot of bugs ranging from crashing to audio just sounding completely wrong at some level. In 2017 however, most issues simply come down to not effectively controlling multiple sound cards.
Now some of you might be thinking that you don't have more than one sound card. I'm here to tell you that you most likely do. Do you have a video card that supports HDMI? Perhaps a USB headset or a USB audio mixer? If you have any of these along with any modern computer motherboard with onboard audio, you have more than one sound card.
The core issue here is that your audio is most likely working just fine. What's actually happening is that you may be seeing audio routed to the wrong device. Sadly, many volume control applets are really useless in this situation. They feature Output, Input and Applictation tabs (with volume sliders). But these same applets lack the ability to control Playback or Recording functionality. So even if my default sound card is setup as the default output device, I may be sending my music over to a USB headset and not even realize it.
Enter pavucontrol – the PulseAudio Volume Control tool. This application is usually available from your software repositories and is a must have software title in my opinion. To use it effectively, run pavucontrol and then play some audio. With the sound actively playing, browse to the Playback tab and verify the sound is being sent to the correct device from the pull down menu. This will fix 95% of the issues I see out there.
Another 4% of the sound issues comes down to the audio device in question being muted. Verify you have a command line application called alsamixer installed. Then run it as alsamixer.
Use the F6 key to select the problem sound card, navigating with your arrows. If you notice the channels for said device have MM in the box instead of 00, then you have a muted channel. Correct this by clicking on the terminal with alsamixer open, and hitting the M key.
The final 1% of issues such as crackling sound, no audio and related can be explored here.
Fixing Linux Problems: Networking
If you're using a wired connection to a router, odds are you're not ever going to experience any networking hassles with regard to basic Internet connectivity. If you're using wireless however, yes, this can be a problem in some rare cases. When dealing with wifi, you'll be hard pressed to beat my previous article on wifi troubleshooting. It covers everything from diagnosing the issue to finding workable solutions.
The second challenge some users may face with networking is regarding sharing samba directories. As a rule, there are two ways to setup a usable samba share – the secure way or the easy way. The secure samba way is to limit access to a specific user or to a specific group only. That said, samba isn't that secure to begin with. So if the file sharing is on a LAN that you trust, you could just do samba the easy way.
Fixing Linux Problems: Asking for Help with Linux
This last section is a bit of a "catch all" for everything not covered above. Meaning if you have a question not addressed already, you can use the following tips to get the answer you need. Ready? Here we go.
1) Provide useful information about your affected hardware when seeing assistance. For example, which do you think is more useful? "I can't seem to load any webpages with my Atheros wifi card even though I'm told that the connection is successful." vs "My wifi isn't working." Guess which question is more likely to be solved? The first one, any day of the week.
2) Google for a solution before asking. Look, most of the issues people experience with Linux, Windows or OS X has been examined at length. So use a search engine and try finding a solution before flooding the forums with a redundant question that may have already been answered.
That's it. If more people would just do those two things, we'd see a lot less frustrated users out there who swear the Linux community is mean. In reality, we just want to see new users make some basic effort and perhaps offer us needed details about their system before asking questions.
What say you? Do you have some great Linux tips to fix common issues? Hit the comments, let's hear about it.