diff --git a/README.md b/README.md index fc67b2d..ec5dc3e 100644 --- a/README.md +++ b/README.md @@ -189,38 +189,34 @@ ssh -o ProxyCommand='upterm proxy wss://TOKEN@upterm.ebesch.de' \ ## Windows Client -### Installation via Scoop (empfohlen) +### Voraussetzungen & Berechtigungen -**Scoop installieren** (PowerShell als Administrator): +PowerShell muss Skripte aus dem Internet ausführen dürfen. Standard-Installation blockiert dies. + +**Execution Policy setzen** (einmalig, PowerShell als Administrator): + +```powershell +Set-ExecutionPolicy -ExecutionPolicy RemoteSigned -Scope CurrentUser +``` + +> **Hinweis:** Der Log zeigt die Installation unter dem `Administrator`-Konto (`C:\Users\Administrator>`). +> Scoop installiert sich dabei in `%USERPROFILE%\scoop\` – also benutzerspezifisch, nicht systemweit. +> Auf normalen Benutzerkonten ist das Vorgehen identisch. + +--- + +### Installation via Scoop + +**1. Scoop installieren:** ```powershell Invoke-RestMethod -Uri https://get.scoop.sh | Invoke-Expression ``` -**Bekanntes Problem: 7zip-Extraktion schlägt fehl (Exit code 1640)** +Scoop fügt `~\scoop\shims` automatisch zum PATH hinzu. +**PowerShell nach der Installation neu starten**, damit der PATH wirksam wird. -7zip installiert sich via MSI und schlägt auf manchen Windows-Systemen mit folgendem Fehler fehl: - -``` -ERROR Exit code was 1640! -Failed to extract files from ...\7z2601-x64.msi. -``` - -**Workaround:** `lessmsi` als alternativen MSI-Extraktor verwenden: - -```powershell -# Fehlgeschlagene Installation bereinigen -scoop uninstall 7zip -scoop cache rm 7zip - -# lessmsi als MSI-Extraktor aktivieren -scoop config use_lessmsi true - -# 7zip erneut installieren – diesmal via lessmsi -scoop install 7zip -``` - -**upterm installieren:** +**2. upterm-Bucket hinzufügen und upterm installieren:** ```powershell scoop bucket add upterm https://github.com/owenthereal/scoop-upterm @@ -229,20 +225,61 @@ scoop install upterm --- +### Bekanntes Problem: 7zip Exit code 1640 + +Scoop installiert `7zip` als Abhängigkeit via MSI. Auf manchen Systemen schlägt die MSI-Extraktion fehl: + +``` +ERROR Exit code was 1640! +Failed to extract files from ...\7z2601-x64.msi. +``` + +Fehlercode 1640 bedeutet: Installation aus einer anderen Sitzungsebene heraus nicht erlaubt (UAC/Sitzungskonflikt bei MSI-Paketen). + +**Workaround – lessmsi als MSI-Extraktor verwenden:** + +```powershell +# Fehlgeschlagene Installation bereinigen +scoop uninstall 7zip +scoop cache rm 7zip +Remove-Item -Recurse -Force "$env:USERPROFILE\scoop\apps\7zip" -ErrorAction SilentlyContinue + +# lessmsi aktivieren (ersetzt den Windows Installer für MSI-Pakete) +scoop config use_lessmsi true + +# 7zip erneut installieren +scoop install 7zip +``` + +Danach läuft `scoop install upterm` ohne weitere Probleme durch. + +--- + ### Nutzung unter Windows **Session starten (PowerShell):** ```powershell -# Eigener Server, automatisch akzeptieren upterm host --server ssh://upterm.ebesch.de:2222 --accept - -# Beim ersten Verbinden: Host-Key bestätigen mit "yes" -# Danach erscheint der Token direkt: -# ➤ SSH: ssh TOKEN:HASH@upterm.ebesch.de -p 2222 ``` -> Unter Windows startet upterm standardmäßig eine `powershell -NoLogo` Session statt `bash`. +Beim **ersten Verbinden** erscheint eine Host-Key-Warnung – einmalig mit `yes` bestätigen: + +``` +The authenticity of host '[upterm.ebesch.de]:2222 ...' can't be established. +ED25519 key fingerprint is SHA256:nOHK++kJYUJz1bqUY1AM6defn36vTXsgWuSEhr3ltLk. +Are you sure you want to continue connecting (yes/no/[fingerprint])? yes +``` + +Danach erscheint der Token sofort: + +``` +Session: MCZoCPoVAz5uTINZkdNN +➤ SSH: ssh TOKEN:HASH@upterm.ebesch.de -p 2222 +➤ SFTP: sftp -P 2222 TOKEN:HASH@upterm.ebesch.de +``` + +> Unter Windows startet upterm eine `powershell -NoLogo` Session statt `bash`. **Client verbindet sich (nur SSH nötig):** @@ -254,8 +291,9 @@ ssh TOKEN:HASH@upterm.ebesch.de -p 2222 ### Troubleshooting -| Problem | Lösung | -|---------|--------| -| 7zip Exit code 1640 | `scoop config use_lessmsi true`, dann `scoop install 7zip` neu | -| Host-Key Warnung | Einmalig mit `yes` bestätigen; Fingerprint: `SHA256:nOHK++kJYUJz1bqUY1AM6defn36vTXsgWuSEhr3ltLk` | -| `upterm` nicht gefunden | PowerShell neu starten (PATH wird erst nach Neustart übernommen) | +| Problem | Ursache | Lösung | +|---------|---------|--------| +| `Skriptausführung deaktiviert` | Execution Policy zu restriktiv | `Set-ExecutionPolicy RemoteSigned -Scope CurrentUser` | +| 7zip Exit code 1640 | MSI-Sitzungskonflikt (UAC) | `scoop config use_lessmsi true`, dann 7zip neu installieren | +| Host-Key Warnung | Erster Verbindungsaufbau | Einmalig `yes` – Fingerprint: `SHA256:nOHK++kJYUJz1bqUY1AM6defn36vTXsgWuSEhr3ltLk` | +| `upterm` nicht gefunden | PATH noch nicht aktiv | PowerShell neu starten |