README.md hinzugefügt
parent
8ac9f85cd4
commit
44da896483
|
|
@ -0,0 +1,132 @@
|
||||||
|
# speedcheck.sh -- Ordner-Durchsatz messen & Kopierdauer hochrechnen
|
||||||
|
|
||||||
|
`speedcheck.sh` ist ein Bash-Tool, das die Schreibgeschwindigkeit eines
|
||||||
|
Ordners misst, indem es ihn für einen konfigurierbaren Zeitraum
|
||||||
|
überwacht und anschließend berechnet, wie lange ein Kopiervorgang von
|
||||||
|
**80 GB** dauern würde.
|
||||||
|
|
||||||
|
Das Skript zeigt während der Messung **live** an:
|
||||||
|
|
||||||
|
- wie viele Daten bereits hinzugekommen sind\
|
||||||
|
- die aktuelle Gesamtgröße\
|
||||||
|
- einen **Fortschrittsbalken**
|
||||||
|
|
||||||
|
Am Ende erfolgt eine Zusammenfassung sowie die Hochrechnung für 80 GB.
|
||||||
|
|
||||||
|
------------------------------------------------------------------------
|
||||||
|
|
||||||
|
## ✨ Features
|
||||||
|
|
||||||
|
- 📡 **Live-Überwachung** des Datenzuwachses\
|
||||||
|
- ⏱ **Konfigurierbare Beobachtungsdauer** (Standard: 300 Sekunden / 5
|
||||||
|
Minuten)\
|
||||||
|
- 📊 **Fortschrittsbalken**\
|
||||||
|
- 🔍 Messung der Schreibgeschwindigkeit (Bytes/s)\
|
||||||
|
- 🧮 Hochrechnung: Zeit zum Kopieren von **80 GB**\
|
||||||
|
- 💡 Funktioniert mit jedem Ordner (lokal, SMB, USB, NFS, ...)
|
||||||
|
|
||||||
|
------------------------------------------------------------------------
|
||||||
|
|
||||||
|
## 📥 Installation
|
||||||
|
|
||||||
|
Skript ausführbar machen:
|
||||||
|
|
||||||
|
``` bash
|
||||||
|
chmod +x speedcheck.sh
|
||||||
|
```
|
||||||
|
|
||||||
|
Optional in `/usr/local/bin` installieren:
|
||||||
|
|
||||||
|
``` bash
|
||||||
|
sudo mv speedcheck.sh /usr/local/bin/speedcheck
|
||||||
|
```
|
||||||
|
|
||||||
|
------------------------------------------------------------------------
|
||||||
|
|
||||||
|
## 🚀 Verwendung
|
||||||
|
|
||||||
|
### Standard (5 Minuten Messdauer)
|
||||||
|
|
||||||
|
``` bash
|
||||||
|
./speedcheck.sh /pfad/zum/ordner
|
||||||
|
```
|
||||||
|
|
||||||
|
### Eigene Messdauer in Sekunden
|
||||||
|
|
||||||
|
``` bash
|
||||||
|
./speedcheck.sh /pfad/zum/ordner 120
|
||||||
|
```
|
||||||
|
|
||||||
|
Beispiel: Ordner für 2 Minuten überwachen:
|
||||||
|
|
||||||
|
``` bash
|
||||||
|
./speedcheck.sh /mnt/backup 120
|
||||||
|
```
|
||||||
|
|
||||||
|
------------------------------------------------------------------------
|
||||||
|
|
||||||
|
## 📤 Beispielausgabe
|
||||||
|
|
||||||
|
Überwache Ordner: /mnt/backup
|
||||||
|
Dauer: 300 Sekunden
|
||||||
|
|
||||||
|
[#########################-------------------------] 50% | Gesamt: 12G | Zuwachs: 4.1G
|
||||||
|
...
|
||||||
|
|
||||||
|
Überwachung abgeschlossen.
|
||||||
|
|
||||||
|
Neue Daten: 8.2G
|
||||||
|
Durchsatz: 28M/s
|
||||||
|
|
||||||
|
Zeit für 80 GB:
|
||||||
|
≈ 0.8 Stunden
|
||||||
|
oder ≈ 48 Minuten
|
||||||
|
|
||||||
|
------------------------------------------------------------------------
|
||||||
|
|
||||||
|
## ⚙ Voraussetzungen
|
||||||
|
|
||||||
|
- Linux oder Unix-System\
|
||||||
|
- Tools:
|
||||||
|
- `du`
|
||||||
|
- `numfmt`
|
||||||
|
- `bash`
|
||||||
|
- `bc`
|
||||||
|
|
||||||
|
Unter Debian/Ubuntu bei Bedarf installieren:
|
||||||
|
|
||||||
|
``` bash
|
||||||
|
sudo apt install coreutils bc
|
||||||
|
```
|
||||||
|
|
||||||
|
------------------------------------------------------------------------
|
||||||
|
|
||||||
|
## 🔧 Konfiguration im Skript
|
||||||
|
|
||||||
|
Oben im Skript kann folgende Variable angepasst werden:
|
||||||
|
|
||||||
|
``` bash
|
||||||
|
TARGET_GB=80 # Zielgröße für die Hochrechnung
|
||||||
|
```
|
||||||
|
|
||||||
|
------------------------------------------------------------------------
|
||||||
|
|
||||||
|
## 📌 Hinweise
|
||||||
|
|
||||||
|
- Das Skript misst den **realen Datenzuwachs**, daher sind die Werte
|
||||||
|
beim Kopieren sehr praxisnah.\
|
||||||
|
- Ideal für Netzwerkshares (SMB/NFS), USB-Laufwerke oder große
|
||||||
|
Datenmigrationen.\
|
||||||
|
- Je länger die Messung, desto präziser die Hochrechnung.
|
||||||
|
|
||||||
|
------------------------------------------------------------------------
|
||||||
|
|
||||||
|
## 🧩 Erweiterungsmöglichkeiten
|
||||||
|
|
||||||
|
Wenn du möchtest, kann das Skript erweitert werden um:
|
||||||
|
|
||||||
|
- automatische Erkennung, wenn der Kopiervorgang beendet ist\
|
||||||
|
- Export als JSON\
|
||||||
|
- Logging in Datei\
|
||||||
|
- Telegram/Mattermost/Discord-Benachrichtigungen\
|
||||||
|
- GUI-Version (zenity/whiptail)
|
||||||
Loading…
Reference in New Issue