---
title:  "Documentatie"
excerpt: "Documentatie is niet de meest sexy bezigheid maar helpt ons wel om efficient en vlot problemen op te lossen. Waar en hoe je opgaat daarmee bepaalt hoe goed jij je job kan doen."
date:   "2023-08-01T12:00:00.000Z"
author: Eli Winderickx
hero_image: /Documentation_Cover.png
category: Documentatie,RPM,Linux
---
## Problemen?
Een van de basis eigenschappen van een goede systeembeheerder is veel kennis hebben. Kennis over de systemen waarmee je werkt alsook de software die je wilt gebruiken om problemen te troubleshooten. Het is echter heel moeilijk om alles 100% van buiten te kennen. Beter kan je dus weten waar je bepaalde zaken kan terugvinden. Dat moet natuurlijk vlot gebeuren. Je moet goed vertrouwd zijn met je bronnen om zo snel Problemen te kunnen tackelen. Een Zoekmachine helpt je al goed op weg maar als je onderstaande tools kan gebruiken, zal je veel efficiënter worden in je job.

## `Man`-pages
De meest gekende documentatie op het toestel zelf, zijn de `man`-pages. Vol met duidelijke informatie over wat een tool doet en welke opties beschikbaar zijn. Bepaalde pagina's zullen ook uitstekende voorbeelden hebben. Die voorbeelden zijn belangrijk om een beter besef te krijgen van wat er gaande is.

Moest je toch nog niet doorhebben je kan man pages uitvoeren met `man` gevolgd door het topic. Een interessante pagina om zo te bekijken is `man selinux`.

### `Apropos`
Een mooie aanvulling op de `man`-pages is `apropos`. Hiermee kan je eenvoudig zoeken naar inhoud binnen de `man`-pages. Als je dus `apropos selinux` zou ingeven, krijg je alle `man`-pages te zien die te maken hebben met `SELinux`. Handig, toch?

## `Info`
`Info` is ook een krachtige en misschien minder gekende tool. Wat `info` interessanter maakt is dat de `info` linken binnen pagina's kan volgen als hyperlinks. Verplaats de cursor met de pijltjes en druk op `<enter>` om naar de nieuwe pagina te gaan. Je kan die links makkelijk herkennen doordat ze onderlijnd zijn met een cijfer tussen haakjes. Probeer gerust `info selinux` om te vergelijken met de `man`-pages.

## RPM
Een andere minder gekende manier om documentatie terug te vinden is RPM. RPM heeft een interne database die alle informatie bijhoudt van de pakketten die geïnstalleerd worden. Uiteraard weet RPM welke bestanden waar staan en welke rechten deze bestanden moeten hebben. Maar naast de uitvoerbare bestanden en libraries, wordt er vaak ook documentatie geïnstalleerd. We weten nu ondertussen al dat we documentatie kunnen lezen met `man` en `info`. Als je niets van een bepaalde software kent, kan de volgende truc je op weg helpen om die documentatie uit te spitten.

```bash
# Zoek met een commando
rpm -qd <pakket>
# zoek met een bestand
rpm -qdf </pad/naar/bestand>
# Als je het pad naar een executable niet weet
rpm -qdf $(which <executable>)
```

### Waarom met RPM werken?
Als je met een volledig nieuwe software werkt, is het niet altijd even duidelijk hoe je daaraan moet beginnen of tot waar je best leest om een software te leren kennen. Als je rpm gebruikt om de `man`-pages te zoeken, krijg je in één zicht al een beter beeld over de software. Meestal kan je dan ook meteen kapstokken krijgen met de verschillende bestanden (lees: onderdelen van de software) om jou de juiste kennis en inzicht te geven.

## Markdown
Het beste wat je echter kan doen is zelf ook documentatie schrijven. Op die manier train je opnieuw de kennis van de verschillende bronnen en kan je zelf de kennis neerschrijven op een manier die je zelf goed begrijpt. Hiervoor is een eenvoudige markup taal bedacht die zelfs als platte tekst goed leesbaar is. Deze blog wordt ook gemaakt met pagina's geschreven in markdown.

```markdown
---
metadata:aanwezig
---

# Titel
## Eerste hoofdding
> opmerking

### oplijsting
- item 1
- item 2

Deze tekst is **vet**. [Dit is een link](http://hyperlink)
![alt tekst voor afbeelding](/pad/naar/afbeelding)

| tabel hoofd |
| --- |
| data |
```