How to ask questions
in Linux IRC help channels

Updated: 2007-05-28
Created: 2005-04-14

Licensing and disclaimer of warranty

These are suggestions, not rules.

Answering questions is a purely volunteer effort, for charity, and just as you are free to ask questions, and to ask them how you like, everybody else is similarly free to ignore your questions or to answer them how they like.

These suggestions are meant to maximize the chances that you will get some replies, and useful replies.

As a side note, people asking questions should always remember that for those that offer help on IRC channels the upside is only ethical, and there can be and there are often significant practical downsides, on top of the time spent.

A user or administrator question?
Some questions are about how to use a program, or sometimes how to do simple configuration. Some other questions however are about how to use or configure some core system feature. The latter usually cannot be answered in a simple, unambiguous fashion, unless the person asking the question already understands the topic pretty well.
Unfortunately system administration is usually intrinsically hard and it can take one to several years of study just to learn the concepts and terminology to discuss it properly and to understand the answers.
System administration topics are those related for example to: disk and filesystem configuration, driver installation, multiple booting, network and firewall configuration, font systems, sound libraries, DNS service, mail transport.
Most distributions have interfaces that present as options the more accessible tasks of system administration, just like other operating systems. This makes it easier to perform some actions, even if it does not make any easier understanding them or their consequences.
Don't ask if you can ask a question
Support channels are there precisely to ask questions, and there is no need to ask permission or other introductions.
Just ask your question straight away, make it specific, give details (up to 3-5 lines of text), and don't address them to anybody specific.
Example of bad question: I have got a question about browsers, can anybody help?
Example of good question: Which text based browsers have tabbed browsing if any?
Don't ask does not work type of questions
Please state exactly what you have done and exactly what the error message is. Programs and computers can go wrong in very many ways, and each way can have many very different causes.
Example of bad question: FTP does not work, anybody know how to fix it?
Example of good question: When I connect by FTP to ftp.kernel.org using Mozilla I get this error: "ftp.kernel.org could not be found. Please check the name and try again"; what possible causes there might be?
Don't ask anyone/someone knows questions
Always ask instead direct questions about technical matters to the channel (to nobody in particular). This is both because such questions are dumb (answering them literally may require global telepathy), and because the obvious aim of the question is to find someone to be your bitch.
Help is provided by the channel, not by anybody in particular. Don't assume anybody is there to be your personal helper.
Example of bad question: Can anybody help with setting up Apache?
Example of good question: Which step-by-step Apache setup tutorial are recommended, apart from those on Apache.org?
Don't ask questions to someone specific
However much you may wish to get a personal help bitch, attempts to treat the more helpful and useful volunteers in the channel as if they were will just drive them away.
Support is always and only provided by the channel as a whole, and answering a question is always purely voluntary. Addressing questions to specific people puts them under pressure to reply, and of course you may love it, but is counterproductive in the long term.
It is particularly counterproductive to use private messages, which should not be sent unless explicit permission is given.
However once someone has replied, it is quite helpful to address further discussions to the person who has replied, as that helps them keep track of specific threads of conversation.
Example of bad question: helpfulguy: given that you seem to know a lot about Linux, tell me how to install it on 200 servers over 10 different networks, in simple step-by-step instructions. It should be easy for you.
Example of good question: What should I start reading to get an idea of the issues in installing 200 Linux servers over 10 different networks?
Don't chat if the channel is busy
Support channels are not for chat, for entertainment. The tone of discussion is usually dry and impersonal, about specific technical issues, and in the busier channels it is already difficult to follow threads.
Avoid idle chat (which is the main purpose of most other social IRC channels) unless the channel is indeed idle, and stop it if there if it interferes with help traffic.
Do some research before asking a question
Before asking a question you should have tried to search for it on your local documentation, or the WWW, or USENET, with some search engine or at the GNU Linux documentation sites, for example http://WWW.TLDP.org/ and http://WWW.GNU.org/doc/.
Locally you can search all manual page by keyword with man -k keyword, use the info command to look at the table of contents of manuals of GNU packages, and look at the user manuals and HOWTOs in per-package directories under /usr/share/doc/.
To find software packages or other information by specific topic, use a directory site like http://WWW.DMOZ.org/, http://WWW.LinuxLinks.com/, or the software project databases at http://WWW.FreshMeat.net/ and http://directory.FSF.org/; if your distribution is Debian based, you can use apt-cache search keyword to search the available package list for packages related to that keyword.
Ask in the right channel
There is a searchable database of channels for Freenode and similar networks like OFTC.
##Linux is for generic, distribution independent questions, but usually, questions about booting, package management, configuration of peripherals are distribution dependent. Thus there are channels for help specific to various distributions, for example: #Ubuntu, #Kubuntu, #Fedora, #RHEL, #SUSE, #Mandriva, #Knoppix, #Debian, #Gentoo, ##Slackware.
There are also topic specific but distribution independent channels, such as #ALSA (sound drivers), #Apache, #aMule, #ATI (Radeon drivers), #BASH (CLI/shell), #GNOME, #hardware, #iptables (firewalls), #KDE, #Konversation, #Linux-kernel, #NVIDIA (mostly X drivers for NVIDIA graphics cards), #Web (HTML etc.), #wireless (both WiFi and Bluetooth), #X-Chat, #XFree86 (older X system), #Xorg (newer X system). and there are many programming language specific channels too (with the obvious names).
For Mozilla and Firefox the help channel is not on Freenode and it is, for both of them, irc://IRC.Mozilla.org/#MozillaZine.
There is also a nice introduction to IRC and Linux.
Example of bad question: How to force loading a module at boot?
Example of good question: Which filesystems are best for a flash memory stick?
Use English in most channels
Most channels are international, and most people can answer only in English. There are channels for asking questions in other languages, like Spanish, French, German, and a few others. Usually these channels have a suffix consisting of an optional . or - followed by the two letter language code.
The searchable database of channels can help locating channels in many languages.
Examples of non english language channels: #Linux-FR, #SELinux-ES, #Debian.SE, #Gentoo.DE.
Ask questions with some context including the purpose
The context should includes the distribution you are using, the kernel version, the program version.
It is often very important also to say what you are trying to achieve, not just what does not work, because in many cases what you want to do can be achieved in other and often impler ways, thus avoiding whatever problem you are experiencing.
Example of a bad question: How can I copy some blocks of a disk drive over the network?
Example of a good question: How can I backup a partition to a remote server?
Wait at least 5-10 minutes for an answer or to repeat a question
It can take a while for someone to notice your question, or to stop doing what they are already doing and start typing an answer. Also, the more narrow the question is, the longer you should wait. This also means that you should repeat a question only if you wait at least 5-10 minutes.
Example of a bad question: [16:01] <prema> Where to find a good introduction to installing a GNU Linux on a PDA? [16:03] <prema> nobody is answering, leaving!!!!
Example of a good question: [16:06] <l33t> Which WiFi devices are recommended for easy installation? [16:27] <B00t> Easy installation is by chipset, and consider the Atheros or ZyDAS ones for example