Mein Subnet wird demnächst umziehen und ich muss daher meinen Homeserver auf die neue IP umstellen. Wie kann ich korrekt mittels grep nach einer bestimmten IP suchen und dabei einen oder mehrere Ordner, hier alle logs - und hier besonders owncloud im Verzeichnis und gemounteten Sicherungsmedien - rekursiv ausschließen, da die Ergebnisse zu umfangreich sind? Ich habe gesehen, dass man mit -I Binaries ausschließen kann, sowas muss es doch auch für einen Pfad geben. Lasse ich es ohne Einschränkung laufen, geht das minutenlang über gefühlt hunderte Seiten, verursacht durch owncloud.
Korrekte Verwendung von grep
Anmeldungsdatum: Beiträge: 190 |
|
||||||
Anmeldungsdatum: Beiträge: 4378 Wohnort: Göttingen |
Hm, gib doch eher andersherum eine Positivliste an Ordnern, die Du durchsuchen möchtest. Die IP sollte ja eigentlich nur in /etc, /opt und /usr/local auftauchen... |
||||||
Ehemalige
Anmeldungsdatum: Beiträge: 4403 Wohnort: Sachsen |
Ich machs immer so: grep -ri "1.2.3.4" /etc/* Nur unter /etc sollten Konfigurationen liegen. /opt und /usr/local kann man mit dazunehmen, dort sollte imho aber nichts zu finden sein. |
||||||
(Themenstarter)
Anmeldungsdatum: Beiträge: 190 |
In der config.php zu owncloud unter /var ist z. B. auch eine ip versteckt, daher dachte ich mir ich scanne alles. Primär wird sicherlich der Großteil unter /etc liegen, aber ich wollte halt auf Nummer sicher gehen, siehe config.php. Wenn es nicht geht, dann scanne ich eben jedes Verzeichnis einzeln, problematisch ist halt der log Bereich, und der ist auch unter /var. |
||||||
Ehemalige
Anmeldungsdatum: Beiträge: 4403 Wohnort: Sachsen |
Wozu soll die gut sein? Normalerweise kanns dort maximal eine IP für den Datenbankzugriff geben, das ist aber meistens localhost. Ansonsten kann sich Owncloud nicht selbst raussuchen unter welcher IP es läuft, es ist ja kein eigenständiger Dienst, sondern nur eine Applikation, die durch den Webserver bereitgestellt wird. |
||||||
Anmeldungsdatum: Beiträge: 965 Wohnort: Österreich |
Ein naiver Ansatz:
Mit Edit: Noch besser: Ich zitiere mal aus der man page von grep: --exclude=GLOB Skip any command-line file with a name suffix that matches the pattern GLOB, using wildcard matching; a name suffix is either the whole name, or any suffix starting after a / and before a +non-/. When searching recursively, skip any subfile whose base name matches GLOB; the base name is the part after the last /. A pattern can use *, ?, and [...] as wildcards, and \ to quote a wildcard or backslash character literally. --exclude-from=FILE Skip files whose base name matches any of the file-name globs read from FILE (using wildcard matching as described under --exclude). --exclude-dir=GLOB Skip any command-line directory with a name suffix that matches the pattern GLOB. When searching recursively, skip any subdirectory whose base name matches GLOB. Ignore any redundant trailing slashes in GLOB. |
||||||
(Themenstarter)
Anmeldungsdatum: Beiträge: 190 |
Ich habe keine Ahnung, vielleicht will man Zugang über unsichere Netze wie einem hotspot vermeiden. Jedenfalls dachte ich mir, wenn da eine IP hinterlegt ist, kann es auch an anderer Stelle hinterlegt sein, und unter trusted domains war eben meine statische IP des Servers hinterlegt. @senden Ich werde das mal testen. Schon mal danke an alle für die Hilfe |
||||||
Projektleitung
Anmeldungsdatum: Beiträge: 12801 |
Eine Variante ist ja, dass Du erst einmal nur die Dateien ermittelst und dann gezielt nachschaust. Das geht z.B. so:
oder auch mit Anzahl der Fundstellen:
Oder Du suchst gleich selektiver mit
|