Schlagwort-Archive: Windows 10

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

Linux Bash on Windows

Linux Bash Shell kommt auf Windows

Ermöglicht durch die Zusammenarbeit zwischen Microsoft und Ubuntu Canonical. Bash kann über das Windows 10 Startmenü gestartet werden, damit ist man in der Lage eine vollständige Linux-Kommandozeilen-Umgebung zu erhalten.

Viele Entwickler bevorzugen Linux oder auch Mac OS X, da man aus der Bash Shell (Bourne-again shell) Zugriff auf ein ganzes Universum von Dienstprogrammen hat, was Windows oft nicht beinhaltet.

Bash on Windows ist keine virtuelle Maschine und auch kein Container, es basiert auch nicht auf Cygwin oder Wine.
Es bietet sich nun die alternative, Bash Scripts auf dem lokalen Windows Computer zu entwickeln und zu testen, Verbindungen zu Remote Linux Server oder einer virtuellen Maschine wie Virtualbox oder VMware Workstation sind nicht erforderlich.

Das Ziel ist es, Apps aus dem Windows Store die vollständig auf Ubuntu lauffähig sein werden und als Programm auf dem Desktop im Userspace laufen. Programme die für Linux kompiliert werden, können auch unter Windows kompiliert und lauffähig gemacht werden. Es können die Ubuntu apt-get Kommandos angewandt werden, um Programme herunterzuladen und sie zu installieren. Entwickler können Bash Skripte schreiben und diese auf Windows ausführen. Es ist angeblich so schnell wie die selben Dienstprogramme nativ auf Ubuntu Linux laufen.

Dies ist alles im neuen Subsystem von Windows 10 ab Build 14251 integriert. Die Dateien lxcore.sys und lxss.sys bilden das neue Windows Subsystem für Linux (WSL).

Canonical Dustin Kirkland ist begeistert von der Technologie, und erklärt es so: im Grunde eine Echtzeit-Übersetzung von Linux syscalls in Windows-Betriebssystem syscalls. Linux-Freaks betrachten es als eine Art inverse Wine-Ubuntu-Binärdateien die nativ in Windows ausgeführt werden können

Um Bash on Windows nutzen zu können ist Windows 10 als 64-bit Edition und min. Build 14251 erforderlich. Empfohlen wird auf das Windows 10 Anniversary Update zu gehen, damit ist man dann auf dem Build 14393 – Stand 2. Aug 2016.

Die Installation von Bash on Windows

Als erstes muss das Windows Subsystem für Linux (Beta) installiert werden. Mit den Tasten  +R das Ausführen Fenster öffnen, und mit dem Befehl:

control appwiz.cpl,,2

die mmc-Konsole, Windows-Features aufrufen.

control_appwiz

Windows-Features

Weiter muss der Entwicklermodus aktiviert werden, über Systemsteuerung – Update und Sicherheit – Für Entwickler.

entwicklerfunktionen

Nach einem neustart stehen die Funktionen zur Verfügung.

Ubuntu Linux Installation

Starten lässt sich die Bash Shell über Start und der Eingabe bash

start_bash

Bei dieser Installation war es erforderlich, die Legacykonsole zu deaktivieren, dies geschieht über das öffnen einer Eingabeaufforderung (CMD) und mit rechts klick im Fensterbalken auf Eigenschaften.

legacykonsole

Beim ersten ausführen von bash.exe wird man die Nutzungsbedingungen zu akzeptieren gefragt. Welche wir mit „J* quittieren. Die Bash Shell wird aus dem Windows Store heruntergeladen und Installiert, weiter wird man aufgefordert ein Benutzerkonto und Passwort zu erstellen, dieser Benutzer muss nicht der selbe wie der von Windows sein.

Möchte man die Installation automatisieren, kann folgender Befehl in einer Eingabeaufforderung ausgeführt werden. Dies wird automatisch allen Aufforderungen zustimmen und den Standardbenutzer „root“ ohne Passwort vergeben.

lxrun /install /y

Linux Software Installation

Sollen nun weitere Linux Pakete installiert werden, kann dies mit apt-get, dem Advanced-Packaging-Tool getätigt werden, als erstes sollten hier gleich alle Updates eingespielt werden.

sudo apt-get update
sudo apt-get upgrade

Nach einigen Minuten ist Bash on Windows up-to-date, mit folgendem Befehl aus der Bash Shell oder direkt aus Windows ist das installieren der Linux Pakete möglich.

sudo apt-get install mc
sudo apt-get install nautilus

bash_ausfuehren

Das Windows Dateisystem kann so wohl von Bash on Windows erreicht werden, wie auch das Linux Dateisystem aus Windows.

bash_ls

explorer_lxss
%appdata%\local\lxss\rootfs

Grafische Anwendungen sind ausführbar sobald ein X Server zur Verfügung steht, ein solcher ist von Xming verfügbar, der X Window System Server for Windows lässt sich hier herunterladen und kann für Windows installiert werden.

xming

Damit das rendering einer grafischen Anwendung möglich wird, kann folgender Befehl aus der Bash Shell ausgeführt werden.

export DISPLAY=:0

Nun können Bash Kommandos abgesetzt werden, dies auch aus Windows oder aus der PowerShell.

bash Befehle ausführen
bash Befehle ausführen

X Windows Applikationen wie nautilus oder gvim können ebenfalls direkt ausgeführt werden.

Bash on Windows Unity
Bash on Windows Unity

Eingabeaufforderung als Administrator Kontextmenü

Eingabeaufforderung als Administrator Kontextmenü hier öffnen in Windows Explorer

Eingabeaufforderung als Administrator Kontextmenü

Eingabeaufforderung mit Administratorenrechte

Die Eingabeaufforderung mit Administratorenrechte zu öffnen ist für viele System Administratoren ein alltäglicher Vorgang, hierzu sind bereits viele Lösungsansätze im Netz zu finden, eine schnelle und einfache Anwendung bietet das Windows OnBoard Kommandozeilentool REG. Die Eingabeaufforderung „Command Prompt als Administrator“ in einem Verzeichnis zu öffnen, dieses aus dem Explorer Kontext Menu selektiert ist, kann mittels folgenden Registrierungsschlüssel erzielt werden.

REG Kommandozeilentool

REG DELETE HKCR\Directory\shell\cmd /v Extended /f
REG ADD HKCR\Directory\shell\runas /ve /t REG_SZ /d "CMD hier als Administrator" /f
REG ADD HKCR\Directory\shell\runas /v HasLUAShield /t REG_SZ /d " " /f
REG ADD HKCR\Directory\shell\runas\command /ve /t REG_SZ /d "cmd.exe /s /k pushd \"%V\"" /f
REG DELETE HKCR\Directory\Background\shell\cmd /v Extended /f
REG ADD HKCR\Directory\Background\shell\runas /ve /t REG_SZ /d "CMD hier als Administrator" /f
REG ADD HKCR\Directory\Background\shell\runas /v HasLUAShield /t REG_SZ /d " " /f
REG ADD HKCR\Directory\Background\shell\runas\command /ve /t REG_SZ /d "cmd.exe /s /k pushd \"%V\"" /f
REG ADD HKCR\Drive\shell\runas /ve /t REG_SZ /d "CMD hier als Administrator" /f
REG ADD HKCR\Drive\shell\runas /v HasLUAShield /t REG_SZ /d " " /f
REG ADD HKCR\Drive\shell\runas\command /ve /t REG_SZ /d "cmd.exe /s /k pushd \"%V\"" /f
REG ADD HKCR\LibraryFolder\background\shell\runas /ve /t REG_SZ /d "CMD hier als Administrator" /f
REG ADD HKCR\LibraryFolder\background\shell\runas /v HasLUAShield /t REG_SZ /d " " /f
REG ADD HKCR\LibraryFolder\background\shell\runas\command /ve /t REG_SZ /d "cmd.exe /s /k pushd \"%V\"" /f

Zum Standard von Windows 10 gehört es das die Eingabeaufforderung als Administrator mit gedrückter <Ctrl>+<Shift> Taste gestartet werden muss.

Mittels Registrierungsschlüssel steht der Eintrag im Kontextmenü direkt zur Verfügung.

Eingabeaufforderung als Administrator Kontextmenü
Eingabeaufforderung als Administrator öffnen

Kontextmenü Eingabeaufforderung als Administrator

Eine weitere Möglichkeit ein Kontextmenü mit Untermenü für eine Eingabeaufforderung und ein Command Prompt als Administrator zu öffnen, kann wie folgt in die Registry eingefügt werden.

REG ADD "HKCR\Directory\shell\01MenuCmd" /v "MUIVerb" /t REG_SZ /d "Eingabeaufforderung" /f
REG ADD "HKCR\Directory\shell\01MenuCmd" /v "Icon" /t REG_SZ /d "cmd.exe" /f
REG ADD "HKCR\Directory\shell\01MenuCmd" /v "ExtendedSubCommandsKey" /t REG_SZ /d "Directory\ContextMenus\MenuCmd" /f
REG ADD "HKCR\Directory\background\shell\01MenuCmd" /v "MUIVerb" /t REG_SZ /d "Eingabeaufforderung" /f
REG ADD "HKCR\Directory\background\shell\01MenuCmd" /v "Icon" /t REG_SZ /d "cmd.exe" /f
REG ADD "HKCR\Directory\background\shell\01MenuCmd" /v "ExtendedSubCommandsKey" /t REG_SZ /d "Directory\ContextMenus\MenuCmd" /f
REG ADD "HKCR\Directory\ContextMenus\MenuCmd\shell\open" /v "MUIVerb" /t REG_SZ /d "Eingabeaufforderung" /f
REG ADD "HKCR\Directory\ContextMenus\MenuCmd\shell\open" /v "Icon" /t REG_SZ /d "cmd.exe" /f
REG ADD "HKCR\Directory\ContextMenus\MenuCmd\shell\open\command" /ve /t REG_SZ /d "cmd.exe /s /k pushd \"%%V\"" /f
REG ADD "HKCR\Directory\ContextMenus\MenuCmd\shell\runas" /v "MUIVerb" /t REG_SZ /d "Eingabeaufforderung (Administrator)" /f
REG ADD "HKCR\Directory\ContextMenus\MenuCmd\shell\runas" /v "Icon" /t REG_SZ /d "cmd.exe" /f
REG ADD "HKCR\Directory\ContextMenus\MenuCmd\shell\runas" /v "HasLUAShield" /t REG_SZ /d "" /f
REG ADD "HKCR\Directory\ContextMenus\MenuCmd\shell\runas\command" /ve /t REG_SZ /d "cmd.exe /s /k pushd \"%%V\"" /f

Mit  Copy und  Paste in einer
Eingabeaufforderung als Administrator ausführen.

Eingabeaufforderung als Administrator Kontextmenü
Eingabeaufforderung (Administrator)

Kontextmenü für PowerShell

Ein Kontextmenü Open PowerShell Here kann mit folgender Registrierung angelegt werden.

REG ADD HKCR\Directory\shell\powershellmenu /ve /t REG_SZ /d "Open PowerShell Here" /f
REG ADD HKCR\Directory\shell\powershellmenu\command /ve /t REG_SZ /d "C:\\Windows\\system32\\WindowsPowerShell\\v1.0\\powershell.exe -NoExit -Command Set-Location -LiteralPath '%L'" /f
REG ADD HKCR\Directory\shell\powershellmenu /v Icon /t REG_SZ /d "C:\\Windows\\system32\\WindowsPowerShell\\v1.0\\powershell.exe" /f

Die Eingabeaufforderung von Windows, auch cmd.exe, umfasst mehr als 280 Befehle.

Die Windows-Eingabeaufforderung kann ein sehr nützliches und vor allem mächtiges Tool sein – wenn Sie denn wissen, wie Sie damit umgehen. Es gibt unzählige Befehle, die man sich unmöglich alle merken kann. Daher haben wir hier die 20 wichtigsten Befehle in unserem tipps+tricks-Artikel für Sie zusammengestellt.

Um Befehle eingeben zu können, müsse Sie erst die Eingabeaufforderung öffnen. Dazu drücken Sie einfach gleichzeitig die Tasten [Windows] + [R] und geben „cmd“ ein. Drücken Sie anschließend [Enter] und schon kann es losgehen.