Hallo
für alle mit dem gleichen Problem kann das Script die E-Mails korrekt verschieben und dann werden auch die E-Mails wieder angezeigt:
Bash
#!/bin/bash
BASE="/var/mail"
for kdir in "$BASE"/*; do
[ -d "$kdir" ] || continue
for subdir in "$kdir"/*; do
[ -d "$subdir" ] || continue
maildir="$subdir/Maildir"
# Maildir anlegen falls fehlt
if [ ! -d "$maildir" ]; then
echo "Erstelle $maildir"
mkdir -p "$maildir"
fi
# Alle Unterordner (auch .versteckte), außer Maildir selbst
find "$subdir" -mindepth 1 -maxdepth 1 -type d ! -name "Maildir" | while read -r d; do
target="$maildir/$(basename "$d")"
if [ -d "$target" ]; then
echo "Füge Inhalte von $d → $target zusammen"
# Dateien/Unterordner rüberkopieren
rsync -a "$d"/ "$target"/
rm -rf "$d"
else
echo "Verschiebe $d → $maildir/"
mv "$d" "$maildir/"
fi
done
# Besitzer/Gruppe setzen
if ! chown -R mail:mail "$maildir" 2>/dev/null; then
chown -R 8:8 "$maildir"
fi
done
done
Alles anzeigen
Lediglich die Benutzer & Gruppen ID anpassen.
Mit freundlichen Grüßen
Martin Krüger