- 1 Presentation
- 2 Diagnose the problem
- 2.1 First, collect the Information
- 2.2 Is it a known problem?
- 2.3 Is the problem reproducible?
- 2.4 Is it a hardware problem?
- 2.5 Read the software documentation
- 2.6 Search for the error message on the Internet
- 2.7 Gather information about the problem
- 2.8 Now, ask for help
- 3 Getting help
Linux is a very complex operating system, and even those of us who have been using/supporting Unix and Linux for many years have trouble identifying a problem, purely on a basic description of a problem.
To avoid wasting time and losing one's composure, it is important to follow some rules before asking help on the forum or mailing lists. Here are some suggestions.
Diagnose the problem
First, collect the Information
If the software crashes or doesn't act as expected, stay cool and use your brain. In your favourite word processor open a new document called "Report" and write down what you were doing when the problem arose and all the error messages. These messages must be copied exactly as given by the system. If possible, use the copy/paste tool. In a console, you may have to use the menu Edit/Copy.
If the system hangs before the boot ends, press <Escape> key during boot, that way you'll see verbose boot messages instead of the bootsplash graphic. And then copy the last messages before it hangs into the report.
If the boot is fine, wait for the problem to appear, and then, in a console with the Root rights, type tail /var/log/messages. This will display the last 10 lines of the system logs. If you can see some lines linked to your problem, write them down as well in the report.
The graphic applications errors are generally in the file /home/<user>/.Xsession-errors or /home/<user>/.xsession-errors. Don't forget the point before the X, or x, that means the file is hidden and you have to allow the hidden files viewing in the file manager (View/Show hidden file for example in Dolphin). Then, the last 10 lines of the logs can be seen with the command tail /home/<user>/.xsession-errors. Again, write down the lines linked to your problem.
If any information can be found in these files, launch the application from a terminal (Konsole in KDE for example), when the bug arises, some relevant lines may appear.
Is it a known problem?
Perhaps the problem is already detected by Mageia teams and a workaround is explained in the release errata. For example, see here for Mageia 6.
Have also a look on Bugzilla. You can not only have help here but also bring your experience to feed the reflection.
Is the problem reproducible?
Try to find out if the problem is easily reproducible and the way to make it appear. Protect your files by making a copy of any files that may be affected. Perform tests on a copy of the data, to avoid damage.
Is it a hardware problem?
Non-reproducible problems are often hardware related. If you think it is the case, see the following commands:
Mageia 1 and Mageia 2
With the Root rights, have a look in the file /var/log/boot, /var/log/kernel/errors.log and /var/log/kernel/warnings.log to check the good hardware detection by the kernel. For these very long files, the command tail is useless, use less instead. For example less /var/log/kernel/warnings.log. Skim the pages to find out a message linked to the problem. Paste this message in the report.
Mageia 3 and over
It uses systemd and for logmessages journalctl is now the right tool. Here are some examples:
gives everything, a very, very large output. Use "space" to reach the next page and "enter" for a new line. You can choose to only see the last 500 lines, for instance, with
it creates in the actual directory a new file called output.txt that contains the last 500 lines, you can read it with any text editor.
gives the last lines, and adds new lines for new things that are being logged.
gives a short help
Read the software documentation
If a piece of software seems not react correctly, find and read its documentation on the Internet or in the man pages (in a console type man program_name), failing which you risk an answer RTFM* like.
*Read the fine manual!
Search for the error message on the Internet
Copy/paste the error message into a search engine (like Ixquick or Google) and add the program name. You will certainly find forum messages from people having the same problem. Read the whole thread, you may find a solution.
Gather information about the problem
If, once here, you have an idea about the problem, you may wish to do some more probing. The following commands can help you to fetch more information about the system and the problem.
- lspcidrake -v to list the hardware
- lsusb (with Root rights) to list the usb devices
- cat /proc/cpuinfo to see the cpu features
- free -m to know the memory load
Here are some other helpful commands (with Root rights):
- lsmod a list of modules that have automatically loaded in response to kernel devices detection
- modinfo modulenamefromlsmod will list details of a module
- dmesg this lists recent kernel and system messages, including failure to load or identify a bit of hardware.
- ethtool a command to list lots of info about network
- ethtool -I eth0 will list the version and details of your nic.
- ethtool -S eth0 will list just about every counter related to an Ethernet card.
- dmidecode equivalent to MS system info gives lots of info about your hardware.
- rpm –qa will list all packages on a system, pipe it through grep to reduce this to relevant packages.
- ifconfig -a lists the tcpip settings set on your network cards.
- Linux more often will тще label each ethernet card eth0, eth1, eth2, eth3 in the order it finds them so if you have more that one network card check out the rest.
In Mageia 3 you will have a new tool called inxi (you have to install the package), here are the main commands :
- inxi -F to have generalities
- inxi -n to provide the network card only
- inxi -uo the mounted and unmountend partitions only
- inxi -xG the graphic card
- inxi -t m5 to have a snapshot of your 5 biggest memory users
- inxi -t c5 to have a snapshot of your 5 biggest CPU users
Also, have a look on the directory /etc/sysconfig where many config files live, relating to network services etc, and in the config file for the Xdisplay server: /etc/X11/xorg.conf
Now, ask for help
If you haven't found a solution to the problem, it is time to ask help on the Mageia forum. Keep in mind that you will meet users like yourself. They aren't paid nor indemnified to answer your questions, they will try to help you find a solution on their personal time and they deserve respect and patience.
First, become familiar with the Mageia Forum
It is important to follow the rules if you want to get answers.
Don't be off-topic
Find the right sub-forum, the one which matches the problem. Don't post your message in several sub-forums, it is bad form to do that.
Choose a descriptive title
Don't write a general title such as "Help needed" or "I got a problem". It doesn't encourage members to read the post. The title should describe the problem in a concise way, so any reader who knows something about this problem will be inclined to read the entire message and post an answer.
Be as precise as possible, for example, "Impossible to get an IP address" is better than "Internet isn't working".
In the message text, give the distribution name, version and architecture you are using (eg: Mageia 2 i586); the program name and version that seems to be the problem; and if necessary, a short listing of hardware information ( eg: HP DC5000). Copy the error messages you may have collected in the report file (the file created at the beginning of this page), always in code tags, which makes your post(s) easier to read & will avoid a comment from the etiquette police. Screenshots can be helpful to show some errors. Describe exactly what you have done just before the problem arises and what you have done to attempt to solve it and the obtained results.
Once you have answers, post the information, files, etc.
No SMS (text speak) language
It's ambiguous & confusing! Nobody will read your message.
Don't miss an opportunity to learn
Don't follow any advice blindly, try to understand and learn something. If you are asked to use some command in a console, or to post a file; read the manual pages to discover what the purpose of this command or file (if any). Write somewhere (in a copybook or email to yourself) the problem, all the actions you are trying to resolve the problem and the results obtained, so :
- you will be able to give accurate information to your helpers in the forum
- you will know what to do if the problem arises again, after a re-installation for example, without wasting time or disturbing people
- you will be able, to help others people with a similar problem.
Say Hello and Thank You
Free Software is mainly based on the community. By Mageia, all the people are volunteers and they freely help other people to promote the Free Software and because they been helped themselves, we are all part of the FOSS [free open source software] community.
Here are the Mageia community code of conduct :
- Be considerate,
- Be respectful,
- Be collaborative,
- Be pragmatic,
- Support others in the community,
- Get support from others in the community.