Schlagwort-Archive: Windows 10

Windows-Betriebssysteme sind vor allem auf Personal Computern und Servern verbreitet.

Druckaufträge bleiben in Windows Print Spooler

Druckaufträge bleiben im Print Spooler (Druckwarteschlange) hängen. Der Drucker kann nicht drucken, da ein Druckauftrag in der Windows-Druckwarteschlange hängen geblieben ist.

Dieser hängengebliebene Druckauftrag kann nicht abgebrochen oder gelöscht werden und verhindert das Drucken weiterer Druckaufträge. Durch Klicken auf Abbrechen des Auftrags in der Warteschlange geschieht nichts.

Lösung

Der Grund dafür sind in der Regel Treiberfehler. Sie können lästige Störungen deim Drucken verursachen, die dann die weitere Druckausgabe blockieren. Um sie wieder loszuwerden, beendet man den Dienst für die Druckwarteschlange und löscht die Aufträge manuell. Folgender Batch Script beendet die Druckwarteschlange, löscht sämtliche Printjobs und startet den Print Spooler neu.

@echo off
echo stop print spooler...
net stop Spooler
echo remove jobs...
dir %SystemRoot%\system32\spool\printers\
ping localhost -n 2 > nul
del /q %SystemRoot%\system32\spool\printers\*.*
net start Spooler
echo done!
ping localhost -n 2 > nul

Print Spooler Dienst in der PowerShell

Wer den Print Spooler Dienst aus der PowerShell zurücksetzen möchte, dem hilft das folgende PS Script.

Write-Host "stop print spooler..."
Get-Service spooler | where {$_.status -eq 'running'} | Stop-Service -pass
Write-Host "remove jobs..."
Get-ChildItem -Path $env:SystemRoot\system32\spool\printers\
Start-Sleep -s 2
Remove-Item $env:SystemRoot\system32\spool\printers\*.*
Start-Service spooler
Get-Service spooler
Write-Host "done!"
Start-Sleep -s 2

Beide Scripts machen dasselbe, zur Ausführung muss die Scriptdatei als Administrator ausgeführt werden.

Print Spooler Status

Überprüfen lässt sich der Print Spooler Status aus Windows Dienste, mit Win+R und der Eingabe services.msc und Klick auf OK startet die MMC-Konsole. Etwas nach unten scrollen zu Druckwarteschlange.

Abbildung: Dienste – Druckwarteschlange

Was ist eine Druckwarteschlange?

Druckwarteschlange oder auch Druck-Spooler ist der Windows-Dienst, der für das Starten von Druckaufträgen verantwortlich ist. Unter Spooling wird das Abfangen eines Druckjobs auf dem Weg zum Drucker verstanden. Stattdessen wird der Druckjob auf einem Speichermedium gespeichert. Dadurch ermöglicht es der Spooler mehrere Druckaufträge nacheinander abzuarbeiten, indem er im Speicher Druckaufträge sammelt, um diese dann für eine Druckausgabe zu einem späteren Zeitpunkt zu laden.

Wenn das bisherige Vorgehen nicht zum Erfolg geführt hat, sollte die Druckwarteschlange geleert werden und alle sich im Spooling befindlichen Druckaufträge abgebrochen werden.

Neuinstallation

Helfen die vorgestellten Maßnahmen alle nicht, dann ist meistens der Spooler defekt. Um herauszufinden, ob dies der Fall ist, überprüfe vor einer Neuinstallation bitte folgendes:

Kann mit irgendeinem anderen Drucker noch drucken?

Werden noch Druckersymbole angezeigt?

Kann mit dem Druckerinstallations Assistenten einen neuen Drucker hinzufügen und installieren?

Ist das Spooling deaktiviert und wird nach einem Neustart des PC’s wieder aktiv?

Erscheint keine Fehlermeldung, versuchen den Spooler manuell zu starten?

OpenSSH für SSH unter Windows

OpenSSH ist die führende Remote-Anmeldung über SSH Protokoll in Linux, nun auch für Windows.

OpenSSH verschlüsselt den Datenverkehr, darüber hinaus bietet OpenSSH eine große Auswahl an sicheren Tunneling-Funktionen, mehrere Authentifizierungsmethoden und anspruchsvolle Konfigurationsoptionen.

Für die SSH Remoteverwaltung in heterogenen Netzwerken, haben Windows und Linux nicht viel gemeinsames. Unter Unix/Linux ist der Remote-Zugriff per OpenSSH ein Standard für Datentransfer, Remote-Terminal sowie Port-Forwarding für Remote-X. Unter Windows ist ein wirklicher SSH Standard mit OpenSSH noch nicht erreicht, neben WinRM, PowerShell-Remote, RDS und RSAT gibt es einige mehr. Hinzugekommen ist nun auch ein Port des freien OpenSSH Client/Server Tools, dies ermöglicht weitere Integration und Verwaltung von Windows und Linux Umgebungen.

OpenSSH Installation in Windows PowerShell

Als erstes öffnen wir PowerShell als Administrator. Klicke hierzu auf Start und gib powershell ein. Wenn der Eintrag zu sehen ist, klicke auf Als Administrator ausführen und dann auf Ja. Bevor wir die Installation durchführen, müssen wir herausfinden, welche Versionen der Software verfügbar sind, was mit dem folgenden Befehl erledigt werden kann.

Get-WindowsCapability -Online | Where-Object Name -like 'OpenSSH*'

Erscheint die Ausgabe: State : NotPresent

Installiere zunächst den OpenSSH-Client mit.

Add-WindowsCapability -Online -Name OpenSSH.Client~~~~0.0.1.0

Falls gewünscht, installiere als nächstes den OpenSSH-Server.

Add-WindowsCapability -Online -Name OpenSSH.Server~~~~0.0.1.0

Sowohl der SSH Client als auch SSH Server sollten Installiert sein. Als nächstes müssen wir den OpenSSH-Server mit dem Befehl starten.

Start-Service sshd

Jetzt müssen wir nur noch den OpenSSH-Server so einstellen, dass er beim Booten startet.

Set-Service -Name sshd -StartupType 'Automatic'

OpenSSH auf Github

Die OpenSSH Suite ist auf Github verfügbar und besteht aktuell aus folgenden Tools:

  • Remote-Operationen werden mit ssh, scp und sftp durchgeführt
  • Key Management mit ssh-add, ssh-keygen
  • Die Service-Seite besteht aus sshd, sftp-server und ssh-agent

Win32 OpenSSH Windows Installation

Nach dem Download das Zip-Archive in C:\Program Files\OpenSSH entpacken.

Starte PowerShell als Administrator und wechsle in den Pfad C:\Program Files\OpenSSH und führe folgende Aktion aus.

cd "C:\Program Files\OpenSSH"
powershell -executionpolicy bypass -file install-sshd.ps1

Die SSH Host-Schlüssel generieren mit allen Schlüssel die sshd für Key-auth erwartet.

.\ssh-keygen.exe -A

Die Firewall auf Windows Server für SSH erweitern.

New-NetFirewallRule -Protocol TCP -LocalPort 22 -Direction Inbound -Action Allow -DisplayName SSH

Bei der Windows Workstation werden eingehende SSH Verbindungen wie folgt erlaubt.

netsh advfirewall firewall add rule name='SSH Port' dir=in action=allow protocol=TCP localport=22

Der SSH-Agent hält den privaten Schlüssel im Arbeitsspeicher.

Start-Service ssh-agent

SSH Verbinden mit Windows

Nun können SSH Verbinden aufgebaut werden.

./ssh user@10.10.10.10
./ssh -i privkey.pem user@10.10.10.10
./scp file user@10.10.10.10:/tmp

Den SSH Daemon Auto-start (Boot) aktivieren.

Set-Service sshd -StartupType Automatic
Set-Service ssh-agent -StartupType Automatic

Ein Schlüsselpar wird wie folgt generiert.

PS C:\Program Files\OpenSSH> ssh-keygen -t rsa -b 4096 -C "user@mydomain.com"
Generating public/private rsa key pair.
Enter file in which to save the key (C:\Users\user/.ssh/id_rsa): user
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in user.
Your public key has been saved in user.pub.
The key fingerprint is:
SHA256:lbPo7eEQFzaS3GFBImQG/X4H963KEOwrc3xPWeBj2Wc user@mydomain.com
The key's randomart image is:
+---[RSA 4096]----+
|    .+= ..=.     |
|     o.o = o     |
|       .+ O   .  |
|        .*.=.. + |
|       .S =o .=.E|
|       ..=.....=o|
|        oo=.  o. |
|        o+o=...  |
|         ++.oo.  |
+----[SHA256]-----+