One of the great strengths of the open source movement is its grassroots tradition. Historically, few corporate or institutional supports have been offered for Linux software. Hardware manufacturers did not provide Linux drivers, Internet Service Providers did not support Internet access to computers running Linux, and few businesses sold support services to users wishing to run Linux. As a result, Linux users (and open source users in general) took on the responsibility of helping their movement grow. Although the popularity (and business support) of Linux has grown, this tradition continues. Linux users organize user groups, run online forums, and continue to write and share software.
The grassroots nature of open source software influences the way you can most effectively access help for your computer. Instead of calling a technical support line, you might post a message to a web forum or mailing list. Instead of looking to centralized knowledge bases for troubleshooting information, you might conduct a web search to see whether other users have run into the same problem you have.
Although it is certainly possible to pay others to support and maintain your computer, many people find that freely-available resources are sufficient to keep their systems running. This "free" support has a cost, however: in order for grassroots support to work regular users have to spend time and energy to support each other. As your Linux experience and knowledge grows, you may find opportunities to support other Linux users. Embracing these opportunities is an excellent way to "pay forward" the support and knowledge other Linux users have donated to your benefit.
In this section we will describe some of the help and documentation resources available. Many of these resources require Internet access, but a few are available offline.
A Linux User Group (LUG) is made of users who discuss, provide support for, and discuss Linux. LUGs are usually locally-based. Often a LUG will hold regular in-person meetings where people have discussions, make presentations, and support fellow users. Many LUGs also run online discussion and support forums, such as mailing lists or web forums.
Joining a LUG is a great way to meet other people who use Linux. You can make new friends and contacts, share information with people, and get personalized help with your problems. Participating in a LUG can also help you learn more about Linux in particular and computers in general.
There may already be a LUG operating in your area. To find it, you might ask the person who installed the software on your computer. You might also search on the World Wide Web, using the search term "LUG" and then your city, town, or geographic area. Finally, you might consult an Internet directory of worldwide LUGs. Two websites that maintain LUG lists are http://www.linux.org/groups and http://lugww.counter.li.org .
If no LUG exists in your area, you might consider organizing your own. The User-Group-HOWTO is good guide to organizing and running a LUG. You can access it on the Internet at http://en.tdlp.org/HOWTO/User-Group-HOWTO . [WHY IS THIS NOT IN THE HOWTO DIRECTORY?]
Just as the Internet has made it easy for people to distribute software across the globe, the Internet has made it easy for people to search for information across the globe. In the open source world, the humble web search is by far the most common form of technical support. In fact, in many circles it is considered rude to ask a question before spending time searching for the answer on the Internet first. It is well worth learning how to conduct effective web searches for this reason alone.
Conducting good web searches is not hard, but it takes some practice. The key is to find search terms that are as specific to your problem as possible. To that end, here are some tips:
Jul 5 11:19:23 headache kernel: Unable to handle kernel NULL pointer dereference at virtual address 00000005To turn this message into a set of search terms, I would strip out the parts of the error message specific to my machine (in this case the date and "headache", the name of my computer) and use the following as my search term:
"kernel: unable to handle kernel NULL pointer dereference at virtual address"If other users have run into a similar problem, they might have reproduced the same error message in their cries for help.
zip 100 linux
If you have Internet access, you can take advantage of the many Linux support forums that exist. In this section, we will discuss asynchronous support forums, where users are not required to be logged in simultaneously to communicate with each other. Forums that fall under this category include:
All of these forms of communication have advantages and disadvantages. Web forums are probably the most straightforward for many users, but people have to remember to visit them, which sometimes reduces the quality of help available. Web forums generally require that you have good Web access, which makes them hard to use if your Internet access is very slow or very expensive.
Mailing lists are very popular, but large mailing lists can overwhelm your e-mail account with hundreds of messages a day.
Newsgroups have declined in popularity as a means of support. One of the biggest problem of newsgroups is that they are prone to e-mail address harvesting -- spammers collect lists of e-mail addresses used on newsgroups and send those people spam. [REF Spam]
In some ways there are too many support forums out there. Finding one or two effective forums you feel comfortable using can be difficult. Here are some tips to get you started: [FINISH ME]
A good starting point for your questions might be the WCLP mailing list. You can subscribe to that list at http://lists.sourceforge.net/lists/listinfo/wclp-user .
The web forums at LinuxQuestions are another good place to ask general Linux questions.
Sometimes a new user will post a question to a help forum and get no response. This can be frustrating, especially when other questions posted later generate lots of replies. It's easy to conclude that the forum members are snooty or that they just don't appreciate questions from newbies, but this is not always the case. Sometimes nobody on the forum has an answer to the question, and sometimes nobody on the forum understands what the question is asking.
Although you cannot do much if people do not have an answer to your question, there is a lot you can do to ensure that your questions are clear and understandable. It is especially important to provide good information when you participate in asynchronous forums such as web boards or mailing lists, because the communication is rather slow; your helper cannot log into your machine directly and look around for information, and giving you directions on what to look for is time-consuming and error prone. Here are some tips to asking better questions:
Before asking your question, be sure to do some research on your own. Look for FAQs and other postings on the same topic. Perform web searches using the error messages you find as search terms. Read the manuals and documentation associated with the hardware or software in question. Others will be more willing to help you if you have demonstrated that you have put some effort into finding a solution yourself.
To learn more about the art of asking effective questions, you might consult the following documents:
How to Ask Good Questions, by Eric S. Raymond and Rick Moen, available from http://www.catb.org/~esr/faqs/smart-questions.html . The tone of this document is somewhat arrogant, but it is loaded with good advice, and it is frequently cited.
As requested by the authors, we remind you that this document is a reference; please do not contact Raymond or Moen for troubleshooting help on the basis of this document.
Realtime internet communications such as instant messaging services and chatrooms can be effective ways to get support. Since messages are exchanged more quickly than e-mail, those providing support can troubleshoot problems in realtime, which can make fixing much faster than e-mail, mailing list or web forum communication.
The most popular form of realtime support in the open source world is IRC, which stands for "internet relay chat". In order to participate in IRC you need to know a server and a channel. Your local LUG may run IRC support channels. In addition, the Debian project runs a (rather busy) support channel called #debian on the server irc://irc.debian.org .
In order to use IRC you need to use a client program that suppports the protocol. Gaim is one such application; for instructions on how to configure it, see [WHERE?]