User Tools

Site Tools


linuxbog:admin:fejlfinding
Linux – Friheden til systemadministration: Version 2.8.20060113 – 2021-01-07
forrige Kapitel 3. Filsystemer næste

3.8. Fejlfinding

Nogle gange er programmer ret dårlige til at forklare, hvorfor det gik galt. Kommandoen strace er god til at fejlsøge med. Det gælder specielt ved fejl som:

  • Segmentation fault (core dumped)
  • File not found
  • Access denied

Her vil strace ofte kunne give dig en idé om, hvad der skete lige inden fejlen indtrådte, og med lidt held kan du ud af dette gætte, hvad der gik galt. Måske mangler du en fil eller måske bruger programmet den forkerte version af et library.

strace står for system trace og viser alle de kald, der er til library-rutiner. Hvis man vil se, hvilke kald ls laver, så skriver man:

[tyge@hven ~]$strace ls

Det går hurtigt op for een, at der kommer ret meget output. Da problemerne ofte er fil-relateret, så kan man nøjes med at få vist de fil-relaterede systemkald:

[tyge@hven ~]$strace -e trace=file ls

Hvis programmet starter andre processer (f.eks. ved at kalde andre programmer), så kan man strace disse med '-ff'. Prøv at se forskellen på disse to:

[tyge@hven ~]$strace time ls[tyge@hven ~]$strace -ff time ls

Hvis du strace'r programmer, der kører under X, så vil du ofte få utroligt meget output. Du kan proppe det i en fil ved at redirigere stderr:

[tyge@hven ~]$strace -ff time ls 2>/tmp/fil

En anden mulighed er at starte strace fra en shell i emacs :

[tyge@hven ~]$emacsM-x shell[tyge@hven ~]$strace ...

Herved får du mulighed for at bladre i outputtet med det samme.


forrige hjem næste
Hvilke filer har programmet åbne? op Linux-kernen
linuxbog/admin/fejlfinding.txt · Last modified: by 127.0.0.1

Except where otherwise noted, content on this wiki is licensed under the following license: CC Attribution-Share Alike 4.0 International
CC Attribution-Share Alike 4.0 International Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki

Brug af AI : Al tekst kán være uddrag af AI genereret tekst og kan være fejlbehæftet.
AI kan lave fejl og det kan mennesker også, men al tekst er gennemgået af et menneske for fejl, og personlig bias kan være tilføjet.