# WSL .bash_profile



## Kirby.exe (9. Jul 2020)

Alsoo ist zwar keine Hausaufgabe, aber ich hatte keine Ahnung wo ich das reinposten soll xD

Ich habe mir WSL aufgesetzt (mit Kali) und würde mir gerne Path-Variablen festlegen xD (because i`m lazy as hell) xD Soweit ich das in Erinnerung habe geht das über .bash_profile, jedoch hat Kali nur .bashrc xD Muss ich jetzt ein .bash_profile erstellen und das irgendwie mit der CLI linken oder wie könnte ich sonst Path-Variables einführen?  

Danke für eure Hilfe im vorraus


----------



## kneitzel (9. Jul 2020)

Warum nutzt Du nicht die .bashrc?  .bashrc ist die Datei, die die Bash standardmäßig auswerten sollte. Ist also bei Debian und so auch nicht anders.

Da kannst Du also etwas rein bauen, das den Path anpasst, also sowas wie
export PATH=$PATH:/home/deinuser/bin
oder so.


----------



## Kirby.exe (9. Jul 2020)

Habs auch gerade erfahren xD Funktioniert  Danke


----------



## Kirby.exe (13. Jul 2020)

Ich hätte noch eine Frage bzgl. WSL2  Also ich habe alles aufgesetzt: Kernel runtergeladen xrdp installiert und xrdp gestartet  Wenn ich jetzt versuche über meine ip (in Kali im Terminal ip ad) versuche zu verbinden kommt diese wunderschöne Error Meldung und ich habe keinen Schimmer wie ich das lösen soll...Den  PC habe ich schon 4 mal neugestartet, Kali WSL gekillt im Taskmanager alles nochmal geduptdatet  

P.S. eine Verbindung zur WSL2 bestand noch nicht, falls das irgendwie relevant ist


----------



## Kirby.exe (13. Jul 2020)

Also ich habe einfach die Kali Distribution gelöscht und einen clean install gemacht...Jetzt komme ich zwar per Remote in XRDP rein aber dann kommt das:


----------



## kneitzel (13. Jul 2020)

Also was für eine Fehlermeldung bekommst Du? Ohne die Fehlermeldung wird man Dir kaum helfen können.

Dann ist X11 bei WSL2 in meinen Augen sehr problematisch. Denn bei WSL2 hat das System die gleiche IP Adresse wie der Windows Rechner. Wenn Du also auf Windows den Remote Desktop bereits aktiviert hast, dann ist der rdp Port bereits belegt. (==> ggf. auf anderen Port ausweichen, das ist unproblematisch).
Kritischer wird, dass Du bei WSL2 kein init.d / systemd hast. Es laufen also einige Dienste schlicht nicht. Das ist in so fern blöd, als das installierte Services nicht automatisch starten. (Also kein sshd, xrdp, .....)

Das ist aber auch unproblematisch. Ich selbst habe das bei mir so gelöst, dass ich Dienste, die laufen sollen, selbst starte. Dazu habe ich ich
- in der sudo Konfig eingetragen, dass ich zum Service start kein passwort eingeben muss.
- ich habe ein services.sh script geschrieben, welches auch aus der .bashrc aufgerufen wird, das ggf. Services startet.  => Öffnen einer wsl shell startet die services.
- Im Autostart habe ich noch ein wsl.exe bash ~/services.sh eingetragen, damit ein Windows Logon ausreicht und die Services gestartet werden.

Das Script selbst sieht so aus:

```
#!/bin/bash
# Start Services if not running

[ "`service ssh status | sed 's/.*not running.*/nok/'`" == "nok" ] && sudo service ssh start
[ "`service dbus status | sed 's/.*not running.*/nok/'`" == "nok" ] && sudo service dbus start
[ "`service cron status | sed 's/.*not running.*/nok/'`" == "nok" ] && sudo service cron start
```

Sprich: Ich prüfe einfach, ob der Status "not running" enthält um dann den Service zu starten.

Ich selbst nutze aber kein XRDCP oder RDP um auf Linux zu zu greifen. Das würde aus meiner Sicht nur dann Sinn machen, wenn man auch eine der ordentlichen Oberflächen zugreifen könnte (KDE, Gnome, ...). Das was aber bei mir relativ problematisch, da hier einiges mehr im Hintergrund benötigt wird. Du siehst noch den dbus Service - der ist da noch übrigen geblieben von meinen Versuchen....

Wenn man ein Linux System haben will, auf das man per rdp oder XDMCP zugreifen möchte, dann wäre meine Empfehlung ganz klar eine eigenständige VM. Der Vorteil bei der WSL ist ja eben, diese relativ nathlose Integration in das Windows System. Und die hat man bei diesen Lösungen ja explizit nicht.

Daher ist meine Lösung unter Windows: Ich habe den Windows Desktop, nur diesen nutze ich. X11 Applikationen werden normal gestartet und werden zusammen mit den Windows Applikationen angezeigt (Also kein Linux Desktop!). Dazu nutze ich den vcxsrv, welchen ich im Autostart mitstarte:

```
C:\Apps\vcxsrv\vcxsrv.exe :0 -clipboard -multiwindow
```
und in der .bashrc habe ich noch ein export DISPLAY=:0 drin.

Ich habe diese Vorgehensweise auch im Blog kurz umschrieben meine ich. Oder hatte ich den Punkt noch weggelassen? Egal....


----------



## kneitzel (13. Jul 2020)

Also diese Fehlermeldung sieht so aus, also ob User / passwort nicht stimmen. Das muss natürlich user/passwort des WSL sein und nicht dein Windows User....


----------



## Kirby.exe (13. Jul 2020)

JustNobody hat gesagt.:


> Also diese Fehlermeldung sieht so aus, also ob User / passwort nicht stimmen. Das muss natürlich user/passwort des WSL sein und nicht dein Windows User....


Das war schon klar xD nach erneutem Login lief es xD  Danke für deine Hilfe xD


----------

