PC

Funktionsweise von Linux Bash Shell unter Windows 10

Funktionsweise von Linux Bash Shell unter Windows 10

Mit der Veröffentlichung des Jubiläums-Updates für Windows 10 kündigte Microsoft das an Windows-Subsystem für Linux (WSL) - Eine Möglichkeit, echten, nativen Bash unter Windows 10 auszuführen, der die Ausführung nativer Linux-Binärdateien unterstützt. Dazu wird ein Ubuntu Linux-Image im Benutzermodus über Windows ausgeführt.

Dies bedeutet, dass Sie Linux-Befehlszeilentools wie z ls, grep, oben und chmod. Da läuft echtes Ubuntu darunter, läuft lsb-release -a gibt Ihnen die folgende Ausgabe:

Sie können verwenden apt-get und Freunde, um Dienstprogramme wie zu installieren vim, git, Bildschirm, tmux, oder sogar eine Partie spielen Nethack:

Beachten Sie jedoch, dass sich dieses System in der Beta-Phase befindet und nicht bestimmt für Server-Workloads. Es ist nur ein Tool für Entwickler (und Enthusiasten), um ihre Linux-zentrierten Anwendungen unter Windows ohne Änderungen zu testen. Dies ist auch kein Tool zum Ausführen von Linux-GUI-Anwendungen oder -Umgebungen wie Gnome oder KDE, obwohl dies auch mit bestimmten Hacks möglich ist. Nachdem wir das geklärt haben, schauen wir uns an, wie die Linux-Shell in Windows 10 funktioniert.

Windows Subsystem für Linux (WSL)

Laut der offiziellen Dokumentation ist „WSL eine Sammlung von Komponenten, mit denen native Linux ELF64-Binärdateien unter Windows ausgeführt werden können“. Dazu wird eine virtualisierte Linux-Kernelschnittstelle über dem Windows NT-Kernel implementiert. Das heißt, es wird kein Code aus dem eigentlichen Linux-Kernel verwendet. Wenn eine Anwendung einen Linux-spezifischen Systemaufruf (Syscall) ausführt, übersetzt WSL ihn in den entsprechenden Windows-Syscall, der dann das ganze schwere Heben übernimmt.

Unterschiede zu virtuellen Maschinen und Cygwin

Schauen wir uns nun an, wie sich Linux Bash Shell unter Windows 10 von virtuellen Maschinen und Cygwin unterscheidet.

Virtuelle Maschinen

Sie denken vielleicht: „Warum sollten Sie das verwenden? Warum nicht einfach eine Linux-VM unter Windows verwenden? “

Im Vergleich zu einer virtuellen Maschine, Die WSL verbraucht weniger Ressourcen. Außerdem können Sie mit Ihren Dateien wie unter Linux arbeiten und gleichzeitig vollständigen Zugriff auf das zugrunde liegende Windows-Dateisystem erhalten, ohne sich auf freigegebene Ordner oder Netzwerkfreigaben verlassen zu müssen.

Cygwin

Eine weitere beliebte Methode zum Ausführen beliebter Linux / Unix-ähnlicher Tools unter Windows ist Cygwin. Der größte Unterschied zwischen den beiden Ansätzen besteht darin, dass Cygwin ist keine Möglichkeit, native Linux-Binärdateien auszuführen unter Windows. Es bietet nur eine Reihe von GNU- und Open Source-Tools, die Funktionen bereitstellen ähnlich zu einer Linux-Distribution unter Windows.

Andererseits, WSL-Tools sind natives Linux ELF-64 kompilierte Binärdateien, die unter Windows ausgeführt werden. Beispiel: Ausführen eines apt-get install emacs Mit dem Befehl in der WSL werden dieselben Dateien wie bei einer Ubuntu 14.04-Installation aus den offiziellen Ubuntu-Repositorys heruntergeladen und installiert.

Benutzer, Berechtigungen und Dateisysteme in WSL

Dateisystemhierarchie

WSL wird unter dem aktuellen Benutzer installiert % LocalAppData% \ lxss \ rootfs Verzeichnis. Dies ist als die bekannt WSL-Umgebung und fungiert als Linux “/."(Wurzelverzeichnis. Zum Beispiel, wenn Ihr Benutzername unter Windows ist Beebom, Das Linux-Stammverzeichnis befindet sich in C: \ Benutzer \ beebom \ AppData \ Local \ lxss \ rootfs. Dies bedeutet, dass jeder Windows-Benutzer seine eigene WSL-Umgebung haben und Änderungen vornehmen kann, wie z apt-get installieren Softwarepakete, ohne andere Windows-Benutzer zu beeinträchtigen.

Es ist möglich, in WSL auf das zugrunde liegende Windows-Dateisystem zuzugreifen. Alle Laufwerke sind unter montiert / mnt. Beispielsweise, C: \ ist unter montiert / mnt / c, D: \ ist unter montiert / mnt / d, usw.

Benutzer und Berechtigungen

Wenn Sie WSL zum ersten Mal installieren, werden Sie aufgefordert, einen neuen Standard-Linux-Benutzer zu erstellen. Dieser Benutzer muss nicht denselben Namen wie der aktuelle Windows-Benutzer haben und wird im Allgemeinen als separate Entität behandelt. Sie können sogar mehrere Linux-Benutzer erstellen, die von einem einzelnen Windows-Benutzer gesteuert werden.

Es ist möglich zu erhalten Wurzel Privilegien mit dem sudo Befehl. Denken Sie daran Wurzel in WSL wirkt sich nur auf die Benutzerrechte in der Linux-Umgebung und im Dateisystem aus - sie haben keinen Einfluss auf die gewährten Windows-Berechtigungen. Beispielsweise kann eine WSL-Sitzung mit Windows-Administratorrechten ausgeführt werden cd / mnt / c / Benutzer / Administrator Bei einer Bash-Sitzung ohne Administratorrechte wird die Berechtigung verweigert. Tippen sudo cd / mnt / c / Benutzer / Administrator gewährt keinen Zugriff auf das Administratorverzeichnis, da die Berechtigungen von Windows eingeschränkt werden.

Linux-spezifische Dateisystemfunktionen

Linux ist ein Groß- und Kleinschreibung beachten System. Das bedeutet, dass photo.png und Photo.png werden als zwei verschiedene Dateien behandelt. Während Windows nicht der Fall ist empfindlich Standardmäßig ist dies immer noch der Fall bewusst. Was bedeutet, dass während photo.png und Photo.png werden nicht als zwei verschiedene Dateien behandelt, das ist es sicherlich bewusst des Unterschieds im Fall.

Die WSL behandelt die Groß- und Kleinschreibung genau wie unter Linux. Es ist sogar möglich, zwei Dateien zu erstellen, deren Name außerhalb der WSL-Umgebung nur von Fall zu Fall unterschiedlich ist. Beachten Sie jedoch, dass viele Windows-Anwendungen solche Situationen nicht bewältigen können und möglicherweise nicht in der Lage sind, eine oder beide Dateien zu öffnen.

Ähnlich, symbolische Links werden unterstützt, sofern Sie ein NTFS-Dateisystem ausführen. Symbolische Links funktionieren jedoch nur innerhalb der WSL und können von anderen Windows-Anwendungen nicht aufgelöst werden.

Linux unterstützt auch fast alle spezielle Charaktere innerhalb von Dateinamen, während Windows restriktiver ist. Die WSL erlaubt jedoch die Verwendung solcher Sonderzeichen, sofern sie auf die Umgebung des Linux-Systems beschränkt sind.

SIEHE AUCH: So synchronisieren Sie Ihr OneDrive-Konto auf einem Linux-Computer

Bereit zum Ausführen der Linux-Befehlszeile unter Windows?

So funktioniert Ubuntu Bash oder Linux Bash Shell, auch bekannt als Windows Subsystem für Linux, unter Windows 10 (mit dem Jubiläums-Update). Neben seiner Arbeitsweise haben wir auch gelernt, wie es anders und besser ist als die herkömmlichen Methoden zum Ausführen von Linux-spezifischen Befehlen unter Windows. Wenn Sie schon immer Linux-Befehle verwenden wollten, legen Sie los und lassen Sie uns im Kommentarbereich wissen, wenn Sie Fragen, Kommentare oder Tipps haben.

Was passiert, wenn wir Mädchen erziehen? Humaira ist die Antwort
Humaira Bachal, Ein 27-jähriges Mädchen aus Karachi, Pakistan, ist ohne Zweifel ein Spielveränderer in ihren eigenen Rechten. Sie begann zu unterrich...
Top 5 Missverständnisse über die Wiederherstellung gelöschter Dateien
Viele von uns haben sich der Situation gestellt, als wir versehentlich eine Datei oder sogar einen ganzen Ordner gelöscht und uns dann die Haare herau...
So beheben Sie Batterieprobleme im iPhone 7
Sie haben also ein brandneues iPhone 7 und spielen Tag für Tag damit. Es ist frisch und neuartig und Sie können einfach nicht genug von all den neuen ...