#!/bin/bash
KONTENER_NAME="srv-ad"
SCIEZKA_PROFILI="/home/LO"
echo "Podaj id klasy (a15, b16...):"
read -r search_id
if [ -z "$search_id" ]; then
echo "Błąd: ID klasy nie może być puste!"
exit 1
fi
# Pobranie listy loginów z kontenera
lxc-attach -n "$KONTENER_NAME" -- samba-tool user list | grep "$search_id" | tr -d '\r' > kasowane.txt
if [ ! -s kasowane.txt ]; then
echo "Nie znaleziono żadnych kont pasujących do frazy: $search_id"
rm -f kasowane.txt
exit 0
fi
echo "--- Konta do przetworzenia ---"
cat kasowane.txt
echo "------------------------------"
# 1. KASOWANIE KATALOGÓW PROFILOWYCH (na podstawie UID)
echo "Czy skasować katalogi profilowe użytkowników? (t/n)"
read -r odp_kat
if [ "$odp_kat" == "t" ]; then
while read -r u_login; do
[ -z "$u_login" ] && continue
u_login=$(echo "$u_login" | xargs)
# ODCZYTANIE UID Z KONTENERA
echo -n "Pobieranie UID dla $u_login... "
u_uid=$(lxc-attach -n "$KONTENER_NAME" -- id -u "$u_login" 2>/dev/null | tr -d '\r')
if [ -z "$u_uid" ]; then
echo "BŁĄD: Nie można znaleźć UID dla $u_login"
continue
fi
echo "UID: $u_uid"
# USUWANIE KATALOGU
# Zakładamy, że katalogi na Debianie nazywają się tak jak loginy,
# ale jeśli Debian ich "nie widzi", to i tak rm -rf zadziała po nazwie.
# Jeśli jednak katalogi są nazwane numerami UID, zmień ścieżkę poniżej.
KATALOG="$SCIEZKA_PROFILI/$u_login"
if [ -d "$KATALOG" ]; then
echo "Usuwanie katalogu: $KATALOG"
rm -rf "$KATALOG"
else
# Opcjonalnie: szukanie katalogu po UID, jeśli nazwa folderu jest inna
echo "Katalog o nazwie $u_login nie istnieje. Szukam katalogu należącego do UID $u_uid..."
find "$SCIEZKA_PROFILI" -maxdepth 1 -user "$u_uid" -type d -exec echo "Znaleziono i usuwam: " {} \; -exec rm -rf {} \;
fi
done < kasowane.txt
fi
echo "----------------------------------------"
# 2. KASOWANIE KONT Z SAMBA AD (w kontenerze)
echo "Czy skasować konta z bazy Samba AD? (t/n)"
read -r odp_samba
if [ "$odp_samba" == "t" ]; then
while read -r u_login; do
[ -z "$u_login" ] && continue
u_login=$(echo "$u_login" | xargs)
echo "Usuwanie konta Samba: $u_login"
lxc-attach -n "$KONTENER_NAME" -- samba-tool user delete "$u_login"
done < kasowane.txt
echo "Przeładowanie konfiguracji..."
lxc-attach -n "$KONTENER_NAME" -- systemctl reload samba-ad-dc
fi
rm -f kasowane.txt
echo "Zakończono."