SQL Formatierungen, Linux erweitert um SNMP
This commit is contained in:
+105
-7
@@ -49,11 +49,11 @@ mkdir -p ~/src
|
||||
|
||||
### Für mehrere Benutzer
|
||||
|
||||
| Verzeichnis | Zweck |
|
||||
|-------------|-------|
|
||||
| `/srv/` | Gemeinsam genutzte Projekte oder Dienste |
|
||||
| `/usr/local/src/` | Systemweiter Quellcode |
|
||||
| `/opt/` | Installierte Drittanbieter-Software (nicht für eigenen Quellcode) |
|
||||
| Verzeichnis | Zweck |
|
||||
| ----------------- | ----------------------------------------------------------------- |
|
||||
| `/srv/` | Gemeinsam genutzte Projekte oder Dienste |
|
||||
| `/usr/local/src/` | Systemweiter Quellcode |
|
||||
| `/opt/` | Installierte Drittanbieter-Software (nicht für eigenen Quellcode) |
|
||||
|
||||
---
|
||||
|
||||
@@ -137,7 +137,7 @@ find ~/Downloads -name "*.zip" -delete
|
||||
|
||||
---
|
||||
|
||||
# `xargs` erklärt
|
||||
# xargs erklärt
|
||||
|
||||
## Was macht `xargs`?
|
||||
|
||||
@@ -307,11 +307,13 @@ find . -name "*.log" -print0 | xargs -0 rm
|
||||
### `find`
|
||||
|
||||
- Dateien suchen:
|
||||
|
||||
```bash
|
||||
find . -name "*.txt"
|
||||
```
|
||||
|
||||
- Direkt löschen:
|
||||
|
||||
```bash
|
||||
find . -name "*.txt" -delete
|
||||
```
|
||||
@@ -334,4 +336,100 @@ Wenn möglich:
|
||||
find . -exec <befehl> {} +
|
||||
```
|
||||
|
||||
Diese Variante ist oft einfacher und ebenso effizient.
|
||||
Diese Variante ist oft einfacher und ebenso effizient.
|
||||
|
||||
# SNMP: MIB-Auflösung und OID-Übersetzung mit net-snmp
|
||||
|
||||
## OIDs werden trotz eingehängter MIB nicht textuell aufgelöst
|
||||
|
||||
### Mögliche Ursachen
|
||||
|
||||
**MIB wird nicht geladen**
|
||||
|
||||
- MIB liegt nicht in einem durchsuchten Verzeichnis. Prüfen mit `net-snmp-config --default-mibdirs`; übliche Pfade sind `~/.snmp/mibs`, `/usr/share/snmp/mibs`.
|
||||
- MIB nicht per `-m` oder Konfiguration aktiviert. Test: `snmpwalk -m ALL ...` oder in `~/.snmp/snmp.conf` bzw. `/etc/snmp/snmp.conf`: `mibs +MEIN-MIB`.
|
||||
- net-snmp lädt standardmäßig nur ein Minimalset. `mibs :` deaktiviert alles.
|
||||
|
||||
**Dateiname passt nicht zum MIB-Namen**
|
||||
|
||||
- net-snmp löst Module über den Dateinamen auf; der interne Modulname (vor `DEFINITIONS ::= BEGIN`) muss stimmen.
|
||||
|
||||
**Fehlende IMPORTS / Abhängigkeiten**
|
||||
|
||||
- Importierte MIBs (z. B. `SNMPv2-SMI`, `SNMPv2-TC`, herstellereigene Basis-MIBs) fehlen → Parsen schlägt still fehl. Sichtbar machen mit:
|
||||
|
||||
```bash
|
||||
snmptranslate -M+/pfad -m ALL -Dparse-mibs OID
|
||||
```
|
||||
|
||||
**Parse-/Syntaxfehler in der MIB**
|
||||
|
||||
- Diagnose:
|
||||
|
||||
```bash
|
||||
snmptranslate -Le -m ALL -M /pfad -On MEIN-MIB::objekt
|
||||
```
|
||||
|
||||
Fehler werden auf stderr ausgegeben.
|
||||
|
||||
**Numerische OID gehört zu keinem geladenen Zweig**
|
||||
|
||||
- Die abgefragte Enterprise-OID liegt außerhalb dessen, was die MIB definiert (falsche/unvollständige MIB).
|
||||
|
||||
### Schneller Prüfweg
|
||||
|
||||
1. `snmptranslate -m +MEIN-MIB -IR meinObjekt` → gibt es einen Treffer?
|
||||
2. `snmptranslate -Le -M /pfad/zu/mibs -m ALL .1.3.6.1.4.1.<enterprise>` → Fehler beim Laden?
|
||||
3. Fehlende Import-MIBs nachlegen.
|
||||
|
||||
Meist ist es eine fehlende Import-Abhängigkeit oder ein falscher Suchpfad/Modulname.
|
||||
|
||||
---
|
||||
|
||||
## Umgekehrt: von `MIB::objekt` auf die OID schließen
|
||||
|
||||
Textuellen Namen statt numerischer OID übergeben (MIB muss geladen sein):
|
||||
|
||||
```bash
|
||||
snmpget -v2c -c public host MEIN-MIB::meinObjekt.0
|
||||
snmpwalk -v2c -c public host MEIN-MIB::meinObjekt
|
||||
```
|
||||
|
||||
### Vorher ohne Gerät prüfen (Name → OID)
|
||||
|
||||
```bash
|
||||
snmptranslate -On MEIN-MIB::meinObjekt
|
||||
```
|
||||
|
||||
`-On` erzwingt die numerische Ausgabe, also die zugehörige OID.
|
||||
|
||||
Umgekehrt (OID → Name):
|
||||
|
||||
```
|
||||
snmptranslate .1.3.6.1.4.1.xxx
|
||||
```
|
||||
|
||||
### Nützliche Varianten
|
||||
|
||||
- Objektname allein suchen (ohne `MIB::`-Präfix):
|
||||
|
||||
```
|
||||
snmptranslate -IR -On meinObjekt
|
||||
```
|
||||
|
||||
- Vollständigen symbolischen Pfad anzeigen:
|
||||
|
||||
```
|
||||
snmptranslate -Of MEIN-MIB::meinObjekt
|
||||
```
|
||||
|
||||
- Objektdetails (Typ, Zugriff, Beschreibung):
|
||||
|
||||
```
|
||||
snmptranslate -Td MEIN-MIB::meinObjekt
|
||||
```
|
||||
|
||||
### Hinweise
|
||||
|
||||
- Scheitert `snmpget MEIN-MIB::meinObjekt.0` mit „Unknown Object Identifier", ist die MIB nicht geladen → mit `-m +MEIN-MIB` bzw. `-M /pfad` ergänzen.
|
||||
- Bei skalaren Objekten die `.0`-Instanz nicht vergessen.
|
||||
Reference in New Issue
Block a user