setup.sh hinzugefügt
commit
0de210d07c
|
|
@ -0,0 +1,92 @@
|
|||
#!/bin/bash
|
||||
|
||||
# === Schritt 1: System aktualisieren und Pakete installieren ===
|
||||
echo "System wird aktualisiert..."
|
||||
sudo apt update && sudo apt upgrade -y
|
||||
|
||||
echo "Pakete werden installiert..."
|
||||
sudo apt install --no-install-recommends \
|
||||
xserver-xorg \
|
||||
xinit \
|
||||
openbox \
|
||||
yad \
|
||||
freerdp2-x11 \
|
||||
xautolock \
|
||||
xscreensaver \
|
||||
ifupdown \
|
||||
curl \
|
||||
-y
|
||||
|
||||
# === Schritt 2: Hostname setzen anhand der MAC-Adresse ===
|
||||
echo "Ermittle MAC-Adresse der ersten Netzwerkkarte..."
|
||||
IFACE=$(ip -o link show | awk -F': ' '{print $2}' | grep -v lo | head -n1)
|
||||
MAC=$(cat /sys/class/net/$IFACE/address)
|
||||
HOSTNAME="rdp-$(echo $MAC | tr -d ':')"
|
||||
|
||||
echo "Setze Hostnamen auf: $HOSTNAME"
|
||||
sudo hostnamectl set-hostname "$HOSTNAME"
|
||||
|
||||
# === Schritt 3: .xinitrc mit RDP-Login (inkl. Domäne) ===
|
||||
echo "Erstelle .xinitrc für den Benutzer..."
|
||||
cat <<'EOF' > ~/.xinitrc
|
||||
#!/bin/bash
|
||||
|
||||
# Bildschirm-Timeouts setzen
|
||||
xset s 300 300
|
||||
xset +dpms
|
||||
xset dpms 300 300 300
|
||||
|
||||
# Automatische Sperre nach Inaktivität
|
||||
xautolock -time 10 -locker "xscreensaver -lock" &
|
||||
|
||||
# Starte Fenstermanager
|
||||
openbox &
|
||||
|
||||
# Login-Fenster
|
||||
while true; do
|
||||
FORM=$(yad --form --center \
|
||||
--title="RDP Login" \
|
||||
--field="Benutzername" \
|
||||
--field="Passwort:HP" \
|
||||
"" "" "")
|
||||
|
||||
[ $? -ne 0 ] && break
|
||||
|
||||
USER=$(echo "$FORM" | cut -d'|' -f1)
|
||||
PASS=$(echo "$FORM" | cut -d'|' -f2)
|
||||
HOST="172.19.1.5"
|
||||
|
||||
yad --info --title="Verbindung" --text="Verbinde zu $HOST als $DOMAIN\\$USER..." --timeout=2
|
||||
|
||||
xfreerdp /u:"$USER" /p:"$PASS" /v:"$HOST" /f +auto-reconnect /rfx
|
||||
|
||||
# Nach Trennung: Rückfrage
|
||||
yad --question --text="Verbindung beendet. Erneut verbinden?" --timeout=10
|
||||
[ $? -ne 0 ] && break
|
||||
done
|
||||
|
||||
#poweroff
|
||||
EOF
|
||||
|
||||
chmod +x ~/.xinitrc
|
||||
|
||||
# === Schritt 4: Autologin für den Benutzer ===
|
||||
echo "Aktiviere Autologin für rdpuser..."
|
||||
sudo mkdir -p /etc/systemd/system/getty@tty1.service.d
|
||||
cat <<EOF | sudo tee /etc/systemd/system/getty@tty1.service.d/override.conf
|
||||
[Service]
|
||||
ExecStart=
|
||||
ExecStart=-/sbin/agetty --autologin root --noclear %I \$TERM
|
||||
EOF
|
||||
|
||||
# === Schritt 5: X automatisch bei Anmeldung starten ===
|
||||
echo "Setze automatischen Start von X..."
|
||||
cat <<EOF >> ~/.bash_profile
|
||||
if [ -z "\$DISPLAY" ] && [ "\$(tty)" = "/dev/tty1" ]; then
|
||||
startx
|
||||
fi
|
||||
EOF
|
||||
|
||||
# === Abschluss ===
|
||||
echo "Setup abgeschlossen. Starte das System neu:"
|
||||
echo " sudo reboot"
|
||||
Loading…
Reference in New Issue