Uwaga! To tłumaczenie jest przestarzałe, prosimy przejść do oryginału.
Jak zgłosić błąd w Debianie przy użyciu reportbug
Usilnie zalecamy raportowanie błędów w Debianie przy użyciu programu
reportbug
.
Aby go zainstalować i wystartować, wywołaj po prostu:
# apt-get install reportbug
$ reportbug
Program poprowadzi krok po kroku procedurę zgłaszania błędu.
Jeśli masz problemy, których nie rozwiązuje interaktywny interfejs reportbug, przejdź do dalszej części tej dokumentacji lub zapytaj na liście debian-user (w języku polskim na debian-user-polish).
Jak zgłosić błąd w Debianie przy użyciu poczty elektronicznej (oraz zaawansowane użycie reportbug)
Co trzeba wiedzieć przed wysłaniem raportu
Którego pakietu dotyczy raport
Powinieneś wiedzieć, którego pakietu raport dotyczy. Zobacz przykład, który ilustruje, jak zdobyć tę informację. Będziesz jej używał do sprawdzenia, czy Twój problem nie został już zgłoszony.
Jeśli nie potrafisz określić, do którego pakietu należy wysłać raport, wyślij maila na listę debian-user (po polsku na debian-user-polish) z zapytaniem o radę.
Jeśli Twój problem nie dotyczy jednego pakietu, ale ogólnie jakiejś funkcjonalności Debiana, możesz użyć różnych pseudopakietów lub list dyskusyjnych, aby go opisać.
Czy Twój problem nie został już zgłoszony?
Powinieneś sprawdzić przed wysłaniem raportu, czy Twój problem nie został już wcześniej zgłoszony. Możesz zobaczyć, jakie błędy zostały już zgłoszone do tego pakietu za pomocą opcji dotyczących pakietów formularza przeszukiwania systemu zgłoszeń błędów. Jeśli jest już raport odpowiadający Twojemu zgłoszeniu, z błędem o numerze #<numer>, powinieneś wysłać swój komentarz poprzez przesłanie maila na adres <numer>@bugs.debian.org, zamiast raportować nowy błąd.
Wysyłaj oddzielne raporty do kilku błędów
Prosimy nie raportować kilku niepowiązanych ze sobą błędów jednocześnie — zwłaszcza, jeśli dotyczą różnych pakietów — w pojedynczym raporcie.
Nie wysyłaj raportów autorom pierwotnym (upstream)
Jeśli zgłaszasz błąd w Debianie, nie wysyłaj kopii zgłoszenia do pierwotnego autora oprogramowania, gdyż być może ten błąd istnieje tylko w Debianie. Jeśli jest to konieczne, opiekun pakietu przekaże informację o błędzie autorowi.
Wysyłanie zgłoszenia błędu pocztą elektroniczną
Możesz raportować błędy w Debianie przez wysłanie maila na adres
[email protected]
,
przy użyciu specjalnego formatu opisanego poniżej. reportbug
(patrz powyżej) prawidłowo sformatuje Twojego
maila; prosimy go używać!
Nagłówki
Jak każdy inny, mail powinien zawierać odpowiedni nagłówek Subject
(temat). Podany przez Ciebie temat będzie początkowym tytułem
zgłoszenia błędu, więc niech niesie ze sobą użyteczną informację!
Jeśli chcesz wysłać kopię raportu do innych odbiorców (np. na listę dyskusyjną), nie powinieneś używać zwykłych nagłówków pocztowych, ale innej metody, opisanej poniżej.
Pseudonagłówki
Początkową częścią raportu są pseudonagłówki, które zawierają informacje o pakiecie i jego wersji, której dotyczy raport. Pierwsza linia ciała wiadomości musi zawierać pseudonagłowek. Powinna ona wyglądać następująco:
Package: <nazwa_pakietu>
W miejsce napisu <nazwa_pakietu>
wstaw
nazwę pakietu, w którym znalazłeś błąd.
Druga linia wiadomości powinna wyglądać następująco:
Version: <numer_wersji>
W miejsce napisu <numer_wersji>
wstaw wersję pakietu.
Prosimy nie podawać tutaj żadnego innego tekstu, niż numer wersji,
ponieważ System Śledzenia Błędów używa tego pola do ustalenia,
do których wydań odnosi się błąd.
Należy podać poprawną nazwę pakietu w pseudo-nagłówku Package
,
aby system śledzenia błędów mógł dostarczyć wiadomość do opiekuna danego
pakietu. Możesz zobaczyć przykład ilustrujący,
jak odnaleźć nazwę odpowiedniego pakietu.
Inne możliwe pseudonagłówki są opisane w sekcji Dodatkowe pseudonagłówki.
Ciało raportu
W zgłoszeniu prosimy zamieścić:
- Dokładne i kompletne komunikaty błędów zarówno wypisywanych na ekranie jak i zapisywanych do plików dziennika (logi). Jest to bardzo ważne!
- Dokładny opis tego, co wpisałeś lub zrobiłeś, co spowodowało problem.
- Opis niepoprawnego zachowania: czego dokładnie się spodziewałeś, a co zaobserwowałeś. Dobrym sposobem na pokazanie tego jest zamieszczenie zapisu przykładowej sesji.
- Sugerowana poprawka, lub nawet łata, jeśli taką posiadasz.
- Szczegóły konfiguracji programu, który sprawia problem. Zamieść kompletną treść jego plików konfiguracyjnych.
- Wersje wszystkich pakietów, których wymaga pakiet z błędem.
- Wersje używanego przez Ciebie jądra (wpisz
uname -a
), biblioteki współdzielonej języka C (wpiszls -l /lib/*/libc.so.6
lubapt show libc6 | grep ^Version
) oraz inne szczegóły na temat Twojego systemu Debian, jeśli wydają się one istotne. Jeśli masz na przykład problem z błędnym skryptem języka Perl, dobrze będzie podać wersję programu interpreteraperl
(wpiszperl -v
lubdpkg -s perl | grep ^Version:
). - Istotne szczegóły na temat sprzętu w Twoim systemie. Jeśli zgłaszasz problem ze sterownikiem, zamieść listę wszystkich urządzeń, ponieważ problemy często sprawiają konflikty przerwań lub adresów wejścia/wyjścia.
- Jeśli masz zainstalowany reportbug,
polecenie
reportbug --template -T none -s none -S normal -b --list-cc none -q <pakiet>
przekazuje opiekunowi użyteczne informacje o specyficznych skryptach i wersjach.
Zamieść wszystkie szczegóły, które wydają się związane z daną sprawą — bardzo mało prawdopodobne jest, że Twoje zgłoszenie będzie za długie z powodu zbyt dużej ilości informacji. Jeśli pliki, których można by użyć w celu odtworzenia błędu są niewielkie, zamieść je również. (Jeśli są duże, rozważ zamieszczenie ich w internecie, w miejscu publicznie dostępnym.).
Przeczytaj dokument Jak zgłaszać błędy efektywnie, aby dowiedzieć się więcej o tym, jak pomóc deweloperom w rozwiązywaniu problemów.
Przykładowy raport o błędzie
Zgłoszenie błędu, razem z nagłówkiem i pseudonagłówkiem, powinno wyglądać mniej więcej tak (w języku angielskim):
To: [email protected] From: [email protected] Subject: Hello says `goodbye' Package: hello Version: 1.3-16 When I invoke `hello' without arguments from an ordinary shell prompt it prints `goodbye', rather than the expected `hello, world'. Here is a transcript: $ hello goodbye $ /usr/bin/hello goodbye $ I suggest that the output string, in hello.c, be corrected. I am using Debian GNU/Linux 2.2, kernel 2.2.17-pre-patch-13 and libc6 2.1.3-10.
Uwaga tłumacza: jeśli tylko to możliwe, postaraj się napisać zgłoszenie błędu w języku angielskim (chyba że wiesz, że opiekun pakietu zna język polski). Jeśli nie będziesz w stanie tego zrobić, poproś o pomoc, na przykład na liście [email protected].
Wysyłanie kopii zgłoszeń błędów na inne adresy
Czasem konieczne jest wysłanie kopii zgłoszenia błędu gdzieś indziej niż na
listę debian-bugs-dist
i do opiekuna pakietu (zgłoszenie zwykle tam
właśnie jest przekazywane).
Można by zrobić to wpisując pozostałe adresy do nagłówka CC
zgłoszenia, ale wtedy w nagłówku Reply-To
ani Subject
pozostałych kopii nie pojawiłby się numer zgłoszenia. Przy odpowiedzi na
zgłoszenie adresaci kopii prawdopodobnie zostawiliby jako adresata adres
[email protected]
, co spowodowałoby zapisanie ich listu jako
nowego zgłoszenia. Prowadzi to do wielu zduplikowanych zgłoszeń.
Właściwym sposobem na wysłanie kopii jest użycie nagłówka
X-Debbugs-CC
. Dodaj linię podobną do następującej do nagłówków
listu nowego zgłoszenia:
X-Debbugs-CC: [email protected]
Spowoduje to, że system śledzenia błędów wyśle kopię Twojego zgłoszenia na
adres [email protected]
a także na listę
debian-bugs-dist
.
Jeśli chcesz wysłać wiadomość na kilka adresów, dodaj je w jednej
linii X-Debbugs-CC
rozdzielone przecinkami.
Unikaj wysyłania takich kopii na adresy innych zgłoszeń błędów, ponieważ
zostaną one wyłapane przez oprogramowanie, które zapobiega zapętlaniu się
wiadomości. Poza tym właściwie nie ma powodu, by używać
X-Debbugs-CC
w tym celu, ponieważ numer błędu nadawany przez
ten mechanizm i tak będzie zastąpiony nowym; w zamian używaj zwykłego
nagłówka CC
.
Cechę tą można często wykorzystać w użyteczny sposób wysyłając zgłoszenie na
adres quiet
— patrz niżej.
Dodatkowe pseudonagłówki
Stopnie ważności
Jeśli zgłoszenie dotyczy szczególnie poważnego błędu lub jest tylko prośbą o nową opcję, możesz ustawić stopień ważności błędu przy jego zgłaszaniu. Nie jest to jednak konieczne, a opiekun pakietu ustawi odpowiedni, jeśli Ty tego nie zrobisz (lub zmieni błędnie podany).
Aby ustawić stopień ważności błędu, dodaj następujący pseudonagłówek:
Severity: <stopień_ważności>
W miejsce <stopień_ważności> wstaw angielską nazwę stopnia ważności. Są one opisane w dokumentacji dla zaawansowanych.
Dodawanie etykiet (tagów)
Możesz dodać do raportu tak zwaną etykietę
- ang. tag Na przykład, jeśli
dodajesz poprawkę do swojego raportu, mógłbyś dodać etykietę typu
patch
. Nie jest to jednak wymagane a deweloperzy dodadzą etykiety
do Twojego raportu, gdy to będzie wymagane.
By dodać etykiety, dodaj linię taką jak ta do pseudo-nagłówka:
Tags: <tags>
Zastąp <tags> jedną z możliwych etykiet, tak jak opisano to w dokumentacji dla deweloperów. Rozdzielaj etykiety spacjami, przecinkami lub i spacją i przecinkiem (oboma).
User: <nazwa użytkownika> Usertags: <tagi użytkownika>
Zastąp <usertags> przez jeden lub więcej tagów użytkownika. Separatorem może być przecinek, spacja lub oba. Jeśli podasz <user> (nazwę użytkownika), tagi zostaną zdefiniowane. W przeciwnym razie zostanie użyty aders maila jako nazwa.
Ustawianie stanu przekazany
Forwarded: [email protected]
zaznaczy nowo zgłoszony błąd jako przesłany (forward) do [email protected]. Zobacz Recording that you have passed on a bug report w dokumentacji dla deweloperów.
Deklarowanie odpowiedzialności
Owner: [email protected]
zaznaczy, że [email protected] jest teraz odpowiedzialny za naprawienie tego błędu. Szczegóły w Changing bug ownership w dokumentacji deweloperów.
Pakiet źródłowy
Source: foopackage
równoważnik Package:
dla reprezentacji błędów w pakiecie
źródłowym dla foopackage; dla większości błędów w większości pakietów
nie trzeba używać tej opcji.
Komendy kontrolne
Control: komendy kontrolne
umożliwia zawarcie komend normalnie wysyłanych na adres
[email protected]
także przy wysyłaniu wiadomości do
[email protected]
lub
[email protected]
. -1 wskazuje na bieżący błąd
(dokładnie to błąd utworzony przez maila wysłanego na adres submit@
lub błąd opisany numerem nnn@). Więcej informacji na temat
dopuszczalnych komend w
dokumentacji serwera kontroli.
Na przykład następujący pseudonagłówek w wiadomości wysłanej na adres
[email protected]
:
Control: retitle -1 this is the title Control: severity -1 normal Control: summary -1 0 Control: forwarded -1 https://bugs.debian.org/nnn
spowoduje, że błąd 12345 będzie miał zmieniony tytuł, stopień ważności, podsumowanie oraz będzie oznaczony jako przekazany.
Nagłówki X-Debbugs-
I wreszcie, jeśli Twój MUA
(klient poczty) nie pozwala na edycję nagłówków, możesz ustawić rozmaite
nagłówki X-Debbugs-
w
pseudonagłówkach.
Informacje dodatkowe
Różne adresy zgłoszeń (zgłoszenia drobnych błędów lub zgłoszenia masowe)
Jeśli zgłaszany błąd jest drobny (na przykład literówka w dokumentacji lub
trywialny błąd w budowie pakietu) prosimy ustawić odpowiednio stopień ważności
błędu oraz przesłać zgłoszenie na adres
[email protected]
zamiast [email protected]
.
Wysłanie na adres maintonly
spowoduje, że zgłoszenie zostanie
przekazane tylko do opiekuna, a nie zostanie wysłane na żadną z list systemu
śledzenia błędów.
Jeśli zgłaszasz wiele błędów na raz, z pewnością powinieneś użyć
adresu [email protected]
, aby nie powodować
zbędnego ruchu na listach systemu śledzenia błędów. Przed zgłoszeniem
wielu podobnych błędów należy też
wysłać podsumowanie na listę debian-bugs-dist
.
Jeśli chcesz zamieścić w systemie śledzenia zgłoszenie wysłane wcześniej do
opiekuna, możesz użyć adresu [email protected]
. Zgłoszenia
wysłane na ten adres nie zostaną nigdzie przekazane, jedynie zapisane
w systemie.
Jeśli danego adresu zgłoszenia, system śledzenia błędów ustawi nagłówek
Reply-To
w przekazywanych wiadomościach tak, aby odpowiedzi na nie
były przetwarzane w taki sam sposób jak oryginalne zgłoszenie. Znaczy to na
przykład, że odpowiedzi na zgłoszenie maintonly
trafią na adres
nnn[email protected]
zamiast na
nnn@bugs.debian.org
, chyba że ktoś ręcznie
zmieni adres.
Potwierdzenie
Normalnie system śledzenia błędów po zgłoszeniu błędu lub przesłaniu
dodatkowych informacji odeśle do Ciebie potwierdzenie. Żeby zapobiec
przesłaniu tego potwierdzenia umieść w swoim liście nagłówek lub pseudo-nagłówek
X-Debbugs-No-Ack
(zawartość tego nagłówka nie ma znaczenia).
Jeśli
użyjesz tego nagłówka przy zgłaszaniu nowego błędu, by dowiedzieć się jaki
numer mu przyznano konieczne będzie sprawdzenie stron WWW.
Zwróć uwagę na to, że nie można wyłączyć potwierdzenia z serwera
[email protected]
, ponieważ te wiadomości mogą zawierać informacje
o błędach, a po ich przeczytaniu należy podjąć odpowiednie kroki w celu ich
wyeliminowania.
Walka ze spamem i brakujące wiadomości
System śledzenia błędów stosuje dość szeroki wachlarz reguł mający na celu
zablokowanie napływu spamu. Mimo że próbujemy ograniczyć ilość wiadomości
nieprawidłowo zaklasyfikowanych jako spam, czasem się to jednak zdarza. Jeśli
podejrzewasz, że Twoją wiadomość spotkał taki los, możesz poprosić o pomoc
[email protected]
. Inny częsty powód dla którego wiadomość
może nie dotrzeć do systemu śledzenia błędów to adres nadawcy pasujący do
reguły FROM_DAEMON programu procmail - na przykład [email protected]
. W
procmailrc(5)
możesz sprawdzić, czy Twój adres podpada pod tą regułę i ewentualnie wysłać
wiadomość z innego adresu.
Zgłoszenia błędów w nieznanych pakietach
Jeśli system śledzenia błędów nie wie kto jest opiekunem danego pakietu,
przekaże zgłoszenie na listę debian-bugs-dist
nawet jeśli użyto
adresu maintonly
.
Przy wysyłaniu na adres [email protected]
lub
nnn[email protected]
należy zwrócić uwagę na to, aby
zgłoszenie było przyporządkowane do właściwego pakietu, dodając odpowiedni
pseudo-nagłówek Package
na początku zgłoszenia, lub używając
usługi [email protected]
w celu zmiany ustawienia odpowiedniego pakietu.
Używanie dpkg
w celu znalezienia pakietu i
wersji do zgłoszenia
Jeśli używasz reportbug
do wysłania raportu o błędzie w
jakimś poleceniu, powiedzmy grep
, następujące polecenie
wybierze właściwy pakiet i pozwoli wysłać raport o błędzie w prawidłowy
sposób: reportbug --file $(which grep)
Możesz też dowiedzieć się, który pakiet zainstalował to polecenie używając
dpkg --search
. Która wersja danego pakietu jest zainstalowana
można sprawdzić przy pomocy dpkg --list
lub
dpkg --status
.
Na przykład:
$ which apt-get /usr/bin/apt-get $ type apt-get apt-get is /usr/bin/apt-get $ dpkg --search /usr/bin/apt-get apt: /usr/bin/apt-get $ dpkg --list apt Wybór=U=Nieznany/I=Instalacja/R=Usunięcie/P=Wyczyszczenie/H=Zatrzymanie | Stan=N=Brak/I=Zainst./C=Skonfig./U=Rozpakowany/F=Nieskonfig./H=Wpół-zainst. |/ Błędy?=(brak)/H=Wstrzym./R=Do przeinst./X=Obydwa (Stan,Błędy:wielk.lit.=źle) ||/ Nazwa Wersja Opis +++-==================-==================-==================================================== ii apt 0.6.46.4-0.1 Advanced front-end for dpkg $ dpkg --status apt Package: apt Status: install ok installed Priority: important Section: admin Installed-Size: 4312 Maintainer: APT Development Team <[email protected]> Architecture: i386 Version: 0.6.46.4-0.1 Replaces: libapt-pkg-doc (<< 0.3.7), libapt-pkg-dev (<< 0.3.7) Provides: libapt-pkg-libc6.3-6-3.11 Depends: libc6 (>= 2.3.6-6), libgcc1 (>= 1:4.1.1-12), libstdc++6 (>= 4.1.1-12), debian-archive-keyring Suggests: aptitude | synaptic | gnome-apt | wajig, dpkg-dev, apt-doc, bzip2 Conffiles: /etc/cron.daily/apt f947beb92d709affb1cea7de275bea10 Description: Advanced front-end for dpkg This is Debian's next generation front-end for the dpkg package manager. It provides the apt-get utility and APT dselect method that provides a simpler, safer way to install and upgrade packages. . APT features complete installation ordering, multiple source capability and several other unique features, see the Users Guide in apt-doc.
Inne użyteczne polecenia i pakiety
Narzędzie querybts dostępne razem z pakietem reportbug, jest przyjaznym interfejsem tekstowym do systemu śledzenia błędów.
Użytkownicy Emacsa mogą używać polecenia debian-bug oferowanego przez
pakiet debian-el
. Wywołuje się go M-x debian-bug i pozwala ono
podać wszelkie niezbędne informacje, podobnie jak reportbug
.
Inne strony WWW systemu śledzenia błędów:
- Główna strona systemu śledzenia błędów.
- Jak zgłosić błąd.
- Dostęp do zgłoszonych błędów.
- Instrukcje użycia systemu dla rozwijających.
- Instrukcje dla rozwijających dotyczące manipulacji na zgłoszeniach przy pomocy poczty elektronicznej.
- Polecenia serwera pocztowego.
- Otrzymywanie zgłoszeń pocztą elektroniczną.
Debian BTS administrators <[email protected]>
Debian bug tracking system
Copyright © 1999 Darren O. Benham, 1997, 2003 nCipher Corporation Ltd,
1994-1997 Ian Jackson.