- PowerShell 100%
|
Paul Berz
0fa6e6d83a
docs: README mit vollstaendigem Konzept und Verwendung
Erklaert S3-Katalog-Infrastruktur, beide Printer-Skripte mit allen Parametern und Beispielen, Ordner-Migration. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> |
||
|---|---|---|
| export-angeheftete-ordner.ps1 | export-angeheftete-ordner.ps1 aktualisiert | |
| import-angeheftete-ordner.ps1 | import: ParseName + pintohome + Toggle-Bug Fix | |
| ISSUES.md | ISSUES.md hinzugefügt: bekannte Probleme beim Export/Import | |
| prepare-driver.ps1 | feat: Driver-Katalog-Infrastruktur (S3 + prepare-driver.ps1) | |
| README.md | docs: README mit vollstaendigem Konzept und Verwendung | |
| setup-printer.ps1 | feat: Driver-Katalog-Infrastruktur (S3 + prepare-driver.ps1) | |
windows-migrater
PowerShell-Skripte für die automatisierte Windows-Einrichtung im MSP-Umfeld. Kein Active Directory, kein Print-Server, kein manueller Aufwand.
Skripte
| Skript | Zweck | Läuft auf |
|---|---|---|
setup-printer.ps1 |
Druckertreiber installieren, Port + Drucker anlegen | Client |
prepare-driver.ps1 |
Treiber-EXE → ZIP → S3 + Katalog updaten | Admin-Maschine (einmalig) |
export-angeheftete-ordner.ps1 |
Angeheftete Explorer-Ordner exportieren | Client (Alt-System) |
import-angeheftete-ordner.ps1 |
Angeheftete Explorer-Ordner importieren | Client (Neu-System) |
Drucker-Infrastruktur
Konzept
Druckertreiber-EXEs von Herstellern sind oft nicht skriptfähig entpackbar. Die Lösung: Treiber einmalig vorbereiten und zentral in S3 speichern. Ein JSON-Katalog verbindet Treibernamen mit Download-URLs. Der Client lädt nur eine ZIP und braucht keinen manuellen Schritt.
Admin-Maschine S3-Bucket Client
────────────── ───────── ──────
prepare-driver.ps1 catalog.json setup-printer.ps1
↓ EXE herunterladen →→→ Brother MFC-L5750DW: url/v... ↓ Katalog laden
↓ 7-Zip entpacken drivers/brother/mfc-l5750dw/ ↓ ZIP laden
↓ driver.zip erstellen →→→ driver.zip ↓ pnputil installieren
↓ S3 hochladen ↓ Port + Drucker anlegen
↓ catalog.json updaten
S3-Struktur
s3://mein-bucket/
catalog.json
drivers/
brother/mfc-l5750dw/driver.zip
hp/laserjet-p3015/driver.zip
kyocera/ecosys-m2040dn/driver.zip
catalog.json
{
"Brother MFC-L5750DW series": {
"url": "https://mein-bucket.s3.eu-central-1.amazonaws.com/drivers/brother/mfc-l5750dw/driver.zip",
"version": "1.1.0",
"updated": "2026年03月23日"
}
}
S3-Bucket einrichten (einmalig)
aws s3 mb s3://mein-bucket --region eu-central-1
echo "{}" | aws s3 cp - s3://mein-bucket/catalog.json --content-type application/json
Empfohlenes Zugriffsmodell: Bucket und catalog.json öffentlich lesbar —
Treiber sind ohnehin public verfügbar, keine IAM-Keys auf den Clients nötig.
setup-printer.ps1
Richtet einen Netzwerkdrucker vollautomatisch ein: Treiber, TCP-Port (9100), Druckerobjekt.
Erfordert: Administrator-Rechte
Parameter
| Parameter | Pflicht | Default | Beschreibung |
|---|---|---|---|
-Hostname |
✓ | — | IP oder Hostname des Druckers |
-Name |
✓ | — | Anzeigename in Windows |
-DriverName |
✓ | — | Exakter Treibername (wie in INF/Windows) |
-CatalogUrl |
S3-URL | URL zur catalog.json |
|
-DriverUrl |
— | Direkte ZIP-URL (überschreibt Katalog) | |
-DriverPath |
— | Lokaler Ordner mit INF-Dateien | |
-ForceUpdate |
— | Treiber neu installieren auch wenn vorhanden | |
-SetDefault |
— | Als Standard-Drucker setzen |
Priorität der Treiber-Quelle
1. Treiber bereits installiert + kein -ForceUpdate → sofort weiter
2. -DriverPath → INF lokal/Netzwerk
3. -DriverUrl → ZIP direkt herunterladen
4. -CatalogUrl → automatisch per DriverName nachschlagen
Verwendung
# Minimal — Katalog liefert die URL automatisch:
.\setup-printer.ps1 `
-Hostname "192.168.1.10" `
-Name "Brother MFC-L5750DW" `
-DriverName "Brother MFC-L5750DW series"
# Treiber-Update auf dem Client erzwingen:
.\setup-printer.ps1 `
-Hostname "192.168.1.10" `
-Name "Brother MFC-L5750DW" `
-DriverName "Brother MFC-L5750DW series" `
-ForceUpdate
# Anderer Hersteller:
.\setup-printer.ps1 `
-Hostname "10.0.0.5" `
-Name "HP LaserJet Buchhaltung" `
-DriverName "HP LaserJet P3010 Series PCL 6"
# Als Standard + lokaler Treiberpfad (kein Internet nötig):
.\setup-printer.ps1 `
-Hostname "192.168.1.10" `
-Name "Bürodrucker" `
-DriverName "Brother MFC-L5750DW series" `
-DriverPath "\\server\treiber\brother" `
-SetDefault
prepare-driver.ps1
Läuft einmalig pro Druckermodell auf der Admin-Maschine. Automatisch: herunterladen → entpacken → zippen → S3 → Katalog.
Erfordert: winget, AWS CLI konfiguriert (aws configure)
7-Zip und AWS CLI werden per winget automatisch installiert falls nicht vorhanden.
Parameter
| Parameter | Pflicht | Default | Beschreibung |
|---|---|---|---|
-DriverUrl |
✓ | — | Download-URL der Treiber-EXE vom Hersteller |
-Vendor |
✓ | — | Herstellername für S3-Pfad (z.B. brother) |
-Model |
✓ | — | Modellname für S3-Pfad (z.B. mfc-l5750dw) |
-DriverName |
✓ | — | Exakter Treibername (wie in Windows angezeigt) |
-S3Bucket |
✓ | — | S3-Bucket-Name |
-S3Region |
eu-central-1 |
AWS-Region | |
-Version |
Datum | Versions-Tag im Katalog |
Verwendung
# Neuen Treiber hinzufügen:
.\prepare-driver.ps1 `
-DriverUrl "https://download.brother.com/.../Y15C_C1-hostm-K1.EXE" `
-Vendor "brother" `
-Model "mfc-l5750dw" `
-DriverName "Brother MFC-L5750DW series" `
-S3Bucket "mein-bucket"
# Treiber updaten (gleicher Befehl mit neuer URL):
.\prepare-driver.ps1 `
-DriverUrl "https://download.brother.com/.../Y15C_C2-hostm-K1.EXE" `
-Vendor "brother" `
-Model "mfc-l5750dw" `
-DriverName "Brother MFC-L5750DW series" `
-S3Bucket "mein-bucket" `
-Version "1.2.0"
Output am Ende:
Fertig!
Treiber : https://mein-bucket.s3.eu-central-1.amazonaws.com/drivers/brother/mfc-l5750dw/driver.zip
Katalog : https://mein-bucket.s3.eu-central-1.amazonaws.com/catalog.json
Setup-Befehl auf dem Client:
.\setup-printer.ps1 -Hostname <IP> -Name "<Name>" -DriverName "Brother MFC-L5750DW series"
Treiber-Updates
Windows aktualisiert Druckertreiber nicht selbst. Treiber sind jedoch sehr stabil — in der Regel kein Handlungsbedarf für Jahre. Update nur bei konkretem Bedarf (Fehler, neue Windows-Version, Sicherheitslücke):
prepare-driver.ps1mit neuer Hersteller-URL ausführen → ZIP + Katalog werden überschrieben- Auf betroffenen Clients:
setup-printer.ps1 -ForceUpdate
Angeheftete Ordner
Migriert angeheftete Schnellzugriff-Ordner von einem Windows-System auf ein anderes.
# Alt-System: exportieren
.\export-angeheftete-ordner.ps1
# → Angeheftete_Ordner.csv
# Neu-System: importieren (CSV übertragen)
.\import-angeheftete-ordner.ps1
Standard-Windows-Ordner (Desktop, Downloads, Dokumente etc.) werden automatisch übersprungen um Konflikte mit OneDrive/Seafile zu vermeiden.
Kompatibilität
- Windows: 10 (1903+) / 11
- Drucker: Alle Hersteller mit INF-basierten Treibern — Brother, HP, Xerox, Kyocera, Ricoh, Canon, Konica Minolta, Lexmark u.v.m.
- Infrastruktur: Kein Active Directory, kein Print-Server erforderlich