mirror of
https://github.com/samba-team/samba.git
synced 2024-12-27 03:21:53 +03:00
3878085eca
(This used to be commit cc02d3bc17
)
120 lines
9.9 KiB
HTML
120 lines
9.9 KiB
HTML
<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Chapter 35. Reporting Bugs</title><link rel="stylesheet" href="samba.css" type="text/css"><meta name="generator" content="DocBook XSL Stylesheets V1.60.1"><link rel="home" href="index.html" title="SAMBA Project Documentation"><link rel="up" href="troubleshooting.html" title="Part V. Troubleshooting"><link rel="previous" href="problems.html" title="Chapter 34. Analysing and solving samba problems"><link rel="next" href="Appendixes.html" title="Part VI. Appendixes"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">Chapter 35. Reporting Bugs</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="problems.html">Prev</a> </td><th width="60%" align="center">Part V. Troubleshooting</th><td width="20%" align="right"> <a accesskey="n" href="Appendixes.html">Next</a></td></tr></table><hr></div><div class="chapter" lang="en"><div class="titlepage"><div><div><h2 class="title"><a name="bugreport"></a>Chapter 35. Reporting Bugs</h2></div><div><div class="author"><h3 class="author"><span class="firstname">Jelmer</span> <span class="othername">R.</span> <span class="surname">Vernooij</span></h3><div class="affiliation"><span class="orgname">The Samba Team<br></span><div class="address"><p><tt class="email"><<a href="mailto:jelmer@samba.org">jelmer@samba.org</a>></tt></p></div></div></div></div><div><div class="author"><h3 class="author"><span class="surname">Someone; Tridge or Karl Auer perhaps?</span></h3></div></div><div><p class="pubdate"> 27 June 1997 </p></div></div><div></div></div><div class="toc"><p><b>Table of Contents</b></p><dl><dt><a href="bugreport.html#id3012269">Introduction</a></dt><dt><a href="bugreport.html#id3012491">General info</a></dt><dt><a href="bugreport.html#id3012528">Debug levels</a></dt><dt><a href="bugreport.html#id3012670">Internal errors</a></dt><dt><a href="bugreport.html#id3012778">Attaching to a running process</a></dt><dt><a href="bugreport.html#id3012825">Patches</a></dt></dl></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="id3012269"></a>Introduction</h2></div></div><div></div></div><p>Please report bugs using
|
||
<a href="https://bugzilla.samba.org/" target="_top">bugzilla</a>.</p><p>
|
||
Please take the time to read this file before you submit a bug
|
||
report. Also, please see if it has changed between releases, as we
|
||
may be changing the bug reporting mechanism at some time.
|
||
</p><p>
|
||
Please also do as much as you can yourself to help track down the
|
||
bug. Samba is maintained by a dedicated group of people who volunteer
|
||
their time, skills and efforts. We receive far more mail about it than
|
||
we can possibly answer, so you have a much higher chance of an answer
|
||
and a fix if you send us a "developer friendly" bug report that lets
|
||
us fix it fast.
|
||
</p><p>
|
||
Do not assume that if you post the bug to the comp.protocols.smb
|
||
newsgroup or the mailing list that we will read it. If you suspect that your
|
||
problem is not a bug but a configuration problem then it is better to send
|
||
it to the Samba mailing list, as there are (at last count) 5000 other users on
|
||
that list that may be able to help you.
|
||
</p><p>
|
||
You may also like to look though the recent mailing list archives,
|
||
which are conveniently accessible on the Samba web pages
|
||
at <a href="http://samba.org/samba/" target="_top">http://samba.org/samba/</a>.
|
||
</p></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="id3012491"></a>General info</h2></div></div><div></div></div><p>
|
||
Before submitting a bug report check your config for silly
|
||
errors. Look in your log files for obvious messages that tell you that
|
||
you've misconfigured something and run testparm to test your config
|
||
file for correct syntax.
|
||
</p><p>
|
||
Have you run through the <a href="diagnosis.html" title="Chapter 33. The Samba checklist">diagnosis</a>?
|
||
This is very important.
|
||
</p><p>
|
||
If you include part of a log file with your bug report then be sure to
|
||
annotate it with exactly what you were doing on the client at the
|
||
time, and exactly what the results were.
|
||
</p></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="id3012528"></a>Debug levels</h2></div></div><div></div></div><p>
|
||
If the bug has anything to do with Samba behaving incorrectly as a
|
||
server (like refusing to open a file) then the log files will probably
|
||
be very useful. Depending on the problem a log level of between 3 and
|
||
10 showing the problem may be appropriate. A higher level gives more
|
||
detail, but may use too much disk space.
|
||
</p><p>
|
||
To set the debug level use the <i class="parameter"><tt>log level</tt></i> in your
|
||
<tt class="filename">smb.conf</tt>. You may also find it useful to set the log
|
||
level higher for just one machine and keep separate logs for each machine.
|
||
To do this use:
|
||
</p><pre class="programlisting">
|
||
log level = 10
|
||
log file = /usr/local/samba/lib/log.%m
|
||
include = /usr/local/samba/lib/smb.conf.%m
|
||
</pre><p>
|
||
then create a file
|
||
<tt class="filename">/usr/local/samba/lib/smb.conf.<i class="replaceable"><tt>machine</tt></i></tt> where
|
||
<i class="replaceable"><tt>machine</tt></i> is the name of the client you wish to debug. In that file
|
||
put any <tt class="filename">smb.conf</tt> commands you want, for example
|
||
<i class="parameter"><tt>log level</tt></i> may be useful. This also allows you to
|
||
experiment with different security systems, protocol levels etc on just
|
||
one machine.
|
||
</p><p>
|
||
The <tt class="filename">smb.conf</tt> entry <i class="parameter"><tt>log level</tt></i>
|
||
is synonymous with the parameter <i class="parameter"><tt>debuglevel</tt></i> that has
|
||
been used in older versions of Samba and is being retained for backwards
|
||
compatibility of <tt class="filename">smb.conf</tt> files.
|
||
</p><p>
|
||
As the <i class="parameter"><tt>log level</tt></i> value is increased you will record
|
||
a significantly increasing level of debugging information. For most
|
||
debugging operations you may not need a setting higher than
|
||
<tt class="constant">3</tt>. Nearly
|
||
all bugs can be tracked at a setting of <tt class="constant">10</tt>, but be
|
||
prepared for a VERY large volume of log data.
|
||
</p></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="id3012670"></a>Internal errors</h2></div></div><div></div></div><p>
|
||
If you get a <span class="errorname">INTERNAL ERROR</span> message in your log files
|
||
it means that Samba got an unexpected signal while running. It is probably a
|
||
segmentation fault and almost certainly means a bug in Samba (unless
|
||
you have faulty hardware or system software).
|
||
</p><p>
|
||
If the message came from smbd then it will probably be accompanied by
|
||
a message which details the last SMB message received by smbd. This
|
||
info is often very useful in tracking down the problem so please
|
||
include it in your bug report.
|
||
</p><p>
|
||
You should also detail how to reproduce the problem, if
|
||
possible. Please make this reasonably detailed.
|
||
</p><p>
|
||
You may also find that a core file appeared in a <tt class="filename">corefiles</tt>
|
||
subdirectory of the directory where you keep your samba log
|
||
files. This file is the most useful tool for tracking down the bug. To
|
||
use it you do this:
|
||
</p><pre class="screen">
|
||
<tt class="prompt">$ </tt><b class="userinput"><tt>gdb smbd core</tt></b>
|
||
</pre><p>
|
||
adding appropriate paths to smbd and core so gdb can find them. If you
|
||
don't have gdb then try <b class="userinput"><tt>dbx</tt></b>. Then within the debugger
|
||
use the command <b class="command">where</b> to give a stack trace of where the
|
||
problem occurred. Include this in your report.
|
||
</p><p>
|
||
If you know any assembly language then do a
|
||
<b class="command">disass</b> of the routine
|
||
where the problem occurred (if its in a library routine then
|
||
disassemble the routine that called it) and try to work out exactly
|
||
where the problem is by looking at the surrounding code. Even if you
|
||
don't know assembly, including this info in the bug report can be
|
||
useful.
|
||
</p></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="id3012778"></a>Attaching to a running process</h2></div></div><div></div></div><p>
|
||
Unfortunately some unixes (in particular some recent linux kernels)
|
||
refuse to dump a core file if the task has changed uid (which smbd
|
||
does often). To debug with this sort of system you could try to attach
|
||
to the running process using
|
||
<b class="userinput"><tt>gdb smbd <i class="replaceable"><tt>PID</tt></i></tt></b> where you get
|
||
<i class="replaceable"><tt>PID</tt></i> from <span class="application">smbstatus</span>.
|
||
Then use <b class="command">c</b> to continue and try to cause the core dump
|
||
using the client. The debugger should catch the fault and tell you
|
||
where it occurred.
|
||
</p></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="id3012825"></a>Patches</h2></div></div><div></div></div><p>
|
||
The best sort of bug report is one that includes a fix! If you send us
|
||
patches please use <b class="userinput"><tt>diff -u</tt></b> format if your version of
|
||
diff supports it, otherwise use <b class="userinput"><tt>diff -c4</tt></b>. Make sure
|
||
you do the diff against a clean version of the source and let me know
|
||
exactly what version you used.
|
||
</p></div></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="problems.html">Prev</a> </td><td width="20%" align="center"><a accesskey="u" href="troubleshooting.html">Up</a></td><td width="40%" align="right"> <a accesskey="n" href="Appendixes.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top">Chapter 34. Analysing and solving samba problems </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right" valign="top"> Part VI. Appendixes</td></tr></table></div></body></html>
|