katalina
Goto Top

Ausführen von VMware Player auf OpenSuse 42.3

Hallo,
ich habe mir mittlerweile auf meinen PC OpenSuse42.3 als Betriebssystem geladen und habe
auch einen VMware Player installiert, jedoch kommt die Meldung:
Before you can run VMware several modules must be compiled and loaded into the running kernel.

Unter dieser meldung ist ein Button zum Installieren, das bringt mir auch nichts.
Im folgenden der Log dazu:

2018-04-07T13:25:34.243+02:00| vthread-4| I125: Log for VMware Workstation pid=2951 version=12.5.9 build=build-7535481 option=Release
2018-04-07T13:25:34.243+02:00| vthread-4| I125: The process is 64-bit.
2018-04-07T13:25:34.243+02:00| vthread-4| I125: Host codepage=UTF-8 encoding=UTF-8
2018-04-07T13:25:34.243+02:00| vthread-4| I125: Host is Linux 4.4.120-45-default openSUSE Leap 42.3
2018-04-07T13:25:34.242+02:00| vthread-4| I125: DictionaryLoad: Cannot open file "/usr/lib/vmware/settings": Datei oder Verzeichnis nicht gefunden.  
2018-04-07T13:25:34.242+02:00| vthread-4| I125: PREF Optional preferences file not found at /usr/lib/vmware/settings. Using default values.
2018-04-07T13:25:34.242+02:00| vthread-4| I125: DictionaryLoad: Cannot open file "/home/katalina/.vmware/config": Datei oder Verzeichnis nicht gefunden.  
2018-04-07T13:25:34.242+02:00| vthread-4| I125: PREF Optional preferences file not found at /home/katalina/.vmware/config. Using default values.
2018-04-07T13:25:34.242+02:00| vthread-4| I125: PREF Unable to check permissions for preferences file.
2018-04-07T13:25:34.242+02:00| vthread-4| I125: DictionaryLoad: Cannot open file "/home/katalina/.vmware/preferences": Datei oder Verzeichnis nicht gefunden.  
2018-04-07T13:25:34.242+02:00| vthread-4| I125: PREF Failed to load user preferences.
2018-04-07T13:25:34.251+02:00| vthread-4| W115: Logging to /tmp/vmware-katalina/vmware-2951.log
2018-04-07T13:25:34.256+02:00| vthread-4| I125: System distribution is SuSE
2018-04-07T13:25:34.256+02:00| vthread-4| I125: System version is 42.3
2018-04-07T13:25:34.256+02:00| vthread-4| I125: Obtaining info using the running kernel.
2018-04-07T13:25:34.256+02:00| vthread-4| I125: Created new pathsHash.
2018-04-07T13:25:34.256+02:00| vthread-4| I125: Setting header path for 4.4.120-45-default to "/lib/modules/4.4.120-45-default/build/include".  
2018-04-07T13:25:34.256+02:00| vthread-4| I125: Validating path "/lib/modules/4.4.120-45-default/build/include" for kernel release "4.4.120-45-default".  
2018-04-07T13:25:34.256+02:00| vthread-4| I125: Failed to find /lib/modules/4.4.120-45-default/build/include/linux/version.h
2018-04-07T13:25:34.256+02:00| vthread-4| I125: /lib/modules/4.4.120-45-default/build/include/linux/version.h not found, looking for generated/uapi/linux/version.h instead.
2018-04-07T13:25:34.256+02:00| vthread-4| I125: using /usr/bin/gcc-4.8 for preprocess check
2018-04-07T13:25:34.262+02:00| vthread-4| I125: Preprocessed UTS_RELEASE, got value "4.4.120-45-default".  
2018-04-07T13:25:34.262+02:00| vthread-4| I125: The header path "/lib/modules/4.4.120-45-default/build/include" for the kernel "4.4.120-45-default" is valid.  Whoohoo!  
2018-04-07T13:25:34.438+02:00| vthread-4| I125: found symbol version file /lib/modules/4.4.120-45-default/build/Module.symvers
2018-04-07T13:25:34.438+02:00| vthread-4| I125: Reading symbol versions from /lib/modules/4.4.120-45-default/build/Module.symvers.
2018-04-07T13:25:34.454+02:00| vthread-4| I125: Read 18193 symbol versions
2018-04-07T13:25:34.454+02:00| vthread-4| I125: Reading in info for the vmmon module.
2018-04-07T13:25:34.454+02:00| vthread-4| I125: Reading in info for the vmnet module.
2018-04-07T13:25:34.454+02:00| vthread-4| I125: Reading in info for the vmblock module.
2018-04-07T13:25:34.454+02:00| vthread-4| I125: Reading in info for the vmci module.
2018-04-07T13:25:34.454+02:00| vthread-4| I125: Reading in info for the vsock module.
2018-04-07T13:25:34.454+02:00| vthread-4| I125: Setting vsock to depend on vmci.
2018-04-07T13:25:34.454+02:00| vthread-4| I125: Invoking modinfo on "vmmon".  
2018-04-07T13:25:34.456+02:00| vthread-4| I125: "/sbin/modinfo" exited with status 256.  
2018-04-07T13:25:34.456+02:00| vthread-4| I125: Invoking modinfo on "vmnet".  
2018-04-07T13:25:34.458+02:00| vthread-4| I125: "/sbin/modinfo" exited with status 256.  
2018-04-07T13:25:34.458+02:00| vthread-4| I125: Invoking modinfo on "vmblock".  
2018-04-07T13:25:34.459+02:00| vthread-4| I125: "/sbin/modinfo" exited with status 256.  
2018-04-07T13:25:34.459+02:00| vthread-4| I125: Invoking modinfo on "vmci".  
2018-04-07T13:25:34.462+02:00| vthread-4| I125: "/sbin/modinfo" exited with status 256.  
2018-04-07T13:25:34.462+02:00| vthread-4| I125: Invoking modinfo on "vsock".  
2018-04-07T13:25:34.464+02:00| vthread-4| I125: "/sbin/modinfo" exited with status 0.  
2018-04-07T13:25:34.478+02:00| vthread-4| I125: to be installed: vmmon status: 0
2018-04-07T13:25:34.478+02:00| vthread-4| I125: to be installed: vmnet status: 0
2018-04-07T13:25:34.499+02:00| vthread-4| I125: Obtaining info using the running kernel.
2018-04-07T13:25:34.499+02:00| vthread-4| I125: Setting header path for 4.4.120-45-default to "/lib/modules/4.4.120-45-default/build/include".  
2018-04-07T13:25:34.499+02:00| vthread-4| I125: Validating path "/lib/modules/4.4.120-45-default/build/include" for kernel release "4.4.120-45-default".  
2018-04-07T13:25:34.499+02:00| vthread-4| I125: Failed to find /lib/modules/4.4.120-45-default/build/include/linux/version.h
2018-04-07T13:25:34.499+02:00| vthread-4| I125: /lib/modules/4.4.120-45-default/build/include/linux/version.h not found, looking for generated/uapi/linux/version.h instead.
2018-04-07T13:25:34.499+02:00| vthread-4| I125: using /usr/bin/gcc-4.8 for preprocess check
2018-04-07T13:25:34.509+02:00| vthread-4| I125: Preprocessed UTS_RELEASE, got value "4.4.120-45-default".  
2018-04-07T13:25:34.509+02:00| vthread-4| I125: The header path "/lib/modules/4.4.120-45-default/build/include" for the kernel "4.4.120-45-default" is valid.  Whoohoo!  
2018-04-07T13:25:34.684+02:00| vthread-4| I125: found symbol version file /lib/modules/4.4.120-45-default/build/Module.symvers
2018-04-07T13:25:34.684+02:00| vthread-4| I125: Reading symbol versions from /lib/modules/4.4.120-45-default/build/Module.symvers.
2018-04-07T13:25:34.699+02:00| vthread-4| I125: Read 18193 symbol versions
2018-04-07T13:25:34.699+02:00| vthread-4| I125: Kernel header path retrieved from FileEntry: /lib/modules/4.4.120-45-default/build/include
2018-04-07T13:25:34.699+02:00| vthread-4| I125: Update kernel header path to /lib/modules/4.4.120-45-default/build/include
2018-04-07T13:25:34.699+02:00| vthread-4| I125: Validating path "/lib/modules/4.4.120-45-default/build/include" for kernel release "4.4.120-45-default".  
2018-04-07T13:25:34.699+02:00| vthread-4| I125: Failed to find /lib/modules/4.4.120-45-default/build/include/linux/version.h
2018-04-07T13:25:34.699+02:00| vthread-4| I125: /lib/modules/4.4.120-45-default/build/include/linux/version.h not found, looking for generated/uapi/linux/version.h instead.
2018-04-07T13:25:34.699+02:00| vthread-4| I125: using /usr/bin/gcc-4.8 for preprocess check
2018-04-07T13:25:34.706+02:00| vthread-4| I125: Preprocessed UTS_RELEASE, got value "4.4.120-45-default".  
2018-04-07T13:25:34.706+02:00| vthread-4| I125: The header path "/lib/modules/4.4.120-45-default/build/include" for the kernel "4.4.120-45-default" is valid.  Whoohoo!  
2018-04-07T13:25:34.708+02:00| vthread-4| I125: Found compiler at "/usr/bin/gcc"  
2018-04-07T13:25:34.712+02:00| vthread-4| I125: Got gcc version "4.8".  
2018-04-07T13:25:34.712+02:00| vthread-4| I125: The GCC version matches the kernel GCC minor version like a glove.
2018-04-07T13:25:34.713+02:00| vthread-4| I125: Using user supplied compiler "/usr/bin/gcc".  
2018-04-07T13:25:34.717+02:00| vthread-4| I125: Got gcc version "4.8".  
2018-04-07T13:25:34.717+02:00| vthread-4| I125: The GCC version matches the kernel GCC minor version like a glove.
2018-04-07T13:25:34.719+02:00| vthread-4| I125: Trying to find a suitable PBM set for kernel "4.4.120-45-default".  
2018-04-07T13:25:34.719+02:00| vthread-4| I125: No matching PBM set was found for kernel "4.4.120-45-default".  
2018-04-07T13:25:34.719+02:00| vthread-4| I125: The GCC version matches the kernel GCC minor version like a glove.
2018-04-07T13:25:34.719+02:00| vthread-4| I125: Validating path "/lib/modules/4.4.120-45-default/build/include" for kernel release "4.4.120-45-default".  
2018-04-07T13:25:34.719+02:00| vthread-4| I125: Failed to find /lib/modules/4.4.120-45-default/build/include/linux/version.h
2018-04-07T13:25:34.719+02:00| vthread-4| I125: /lib/modules/4.4.120-45-default/build/include/linux/version.h not found, looking for generated/uapi/linux/version.h instead.
2018-04-07T13:25:34.719+02:00| vthread-4| I125: using /usr/bin/gcc-4.8 for preprocess check
2018-04-07T13:25:34.729+02:00| vthread-4| I125: Preprocessed UTS_RELEASE, got value "4.4.120-45-default".  
2018-04-07T13:25:34.729+02:00| vthread-4| I125: The header path "/lib/modules/4.4.120-45-default/build/include" for the kernel "4.4.120-45-default" is valid.  Whoohoo!  
2018-04-07T13:25:36.088+02:00| vthread-4| I125: The GCC version matches the kernel GCC minor version like a glove.
2018-04-07T13:25:36.088+02:00| vthread-4| I125: Validating path "/lib/modules/4.4.120-45-default/build/include" for kernel release "4.4.120-45-default".  
2018-04-07T13:25:36.088+02:00| vthread-4| I125: Failed to find /lib/modules/4.4.120-45-default/build/include/linux/version.h
2018-04-07T13:25:36.088+02:00| vthread-4| I125: /lib/modules/4.4.120-45-default/build/include/linux/version.h not found, looking for generated/uapi/linux/version.h instead.
2018-04-07T13:25:36.088+02:00| vthread-4| I125: using /usr/bin/gcc-4.8 for preprocess check
2018-04-07T13:25:36.099+02:00| vthread-4| I125: Preprocessed UTS_RELEASE, got value "4.4.120-45-default".  
2018-04-07T13:25:36.099+02:00| vthread-4| I125: The header path "/lib/modules/4.4.120-45-default/build/include" for the kernel "4.4.120-45-default" is valid.  Whoohoo!  
2018-04-07T13:25:36.099+02:00| vthread-4| I125: Relaunching with /usr/bin/vmware-gksu '/usr/bin/vmware-modconfig' --icon='vmware-player' --appname='VMware'  
Danke im Vorraus für die Antworten ;)

Viele Grüße,
Katalina

Content-Key: 370479

Url: https://administrator.de/contentid/370479

Printed on: July 19, 2024 at 09:07 o'clock

Member: Lochkartenstanzer
Solution Lochkartenstanzer Apr 07, 2018 at 12:45:57 (UTC)
Goto Top
please use code tags
Member: Katalina
Katalina Apr 07, 2018 at 12:49:39 (UTC)
Goto Top
Hi, was meinst du damit?
Member: Katalina
Katalina Apr 07, 2018 at 12:58:28 (UTC)
Goto Top
Also was code tags sind weiß ich und arbeite auch damit aber welche brauche ich, also was genau meinst du?
Member: Katalina
Katalina Apr 07, 2018 at 13:11:09 (UTC)
Goto Top
also wenn ich versuche vmware vom terminal aus zu starten kommt zum Schluss
die Meldung:
Virtual ethernet failed
Virtual machine monitor failed

der rest geht...wie kann ich das Problem beheben?
Member: Lochkartenstanzer
Solution Lochkartenstanzer Apr 07, 2018 updated at 14:05:11 (UTC)
Goto Top
Zitat von @Katalina:

Hi, was meinst du damit?

Du sollst Deinen Logauszug in code-Tags packen, damit Deine Frage leserlicher wird und potentille Antwortgeber nicht abgeschreckt werden, weil sie sich durch Buchstabenwüsten quälen müssen.

lks
Member: Alchimedes
Solution Alchimedes Apr 07, 2018 at 14:35:08 (UTC)
Goto Top
Hallo Katalina,

der default Kernel von OpenSuse ist nicht fuer virtuelle Maschinen geeignet.
Du musst entsprechende Tools fuer den Kernel kompilieren.
Schau mal ob Dir das hier weiter hilft.

https://communities.vmware.com/thread/568566


##################################

# How to fix the problem : summary

##################################

In the netif.c file (which is in the vmnet.tar), you should have the following line:

compat_netif_trans_update(dev);

My solution was to change compat_netif_trans_update(dev);

to

netif_trans_update(dev);

 

Then run:

vmware-modconfig --console --install-all

 

 

##################################

# How to fix the problem : long

##################################

Login as root

cd /usr/lib/vmware/modules/source/

cp -p vmnet.tar vmnet.old.tar

tar xf vmnet.tar

 

cd vmnet-only

vi netif.c

 

Open netif.c and find the line: compat_netif_trans_update(dev);

 

It should look like this

   netIf->stats.tx_packets++;

   compat_netif_trans_update(dev);

 

Change compat_netif_trans_update(dev);

to

netif_trans_update(dev);

 

After the change - I have this

   netIf->stats.tx_packets++;

   netif_trans_update(dev);

 

Close and save the netif.c file

Close and save

 

Now recompile VMware kernel modules using this command

vmware-modconfig --console --install-all


Gruss
Member: Pjordorf
Solution Pjordorf Apr 07, 2018 at 20:51:33 (UTC)
Goto Top
Hallo,

Zitat von @Katalina:
Hi, was meinst du damit?
Na, diese hier links von dein Editorfeld hier im Forum.
Alles was hier drin steht ist in Code Tags
Das geht auch noch nachträglich durch dich zu machen.

codetags

Gruß,
Peter
Member: Katalina
Katalina Apr 08, 2018 at 12:35:20 (UTC)
Goto Top
Danke, mache ich das nächste mal, das Problem hat sich jetzt erstmal gelöst. Bin jetzt auch doch auf Ubuntu umgestiegen, brauch halt nur ein Linux Betriebssystem weil ich im Rahmen eines Praktikums jetzt die Programmiersprache C lerne um in einem Unternehmen hier in Aschaffenburg ein Projekt umzusetzen. Ich soll mit C es irgendwie umsetzen das die Log files(bisher nur in Deutsch) auch in Englisch verfügbar sind.
Naja mal Sehen, muss ich mich rantasten.
Member: Pjordorf
Pjordorf Apr 08, 2018 at 18:17:01 (UTC)
Goto Top
Hallo,

Zitat von @Katalina:
Bin jetzt auch doch auf Ubuntu umgestiegen, brauch halt nur ein Linux Betriebssystem weil ich im Rahmen eines Praktikums jetzt die Programmiersprache C lerne
Geht auch unter Windows, C zu lernen. Oder soll es doch besser C++ sein? face-smile

Ich soll mit C es irgendwie umsetzen das die Log files(bisher nur in Deutsch) auch in Englisch verfügbar sind.
Soso, wusste gar nicht das man mit C sich eine Übersetzer Software fertig holen kann. Ich würde mir eher an sache nwie Datenbank und übersetzte Begriffe stürzen, wobei die Log Einträhe natürlich speziell auf das unbekannte Programm abgestimmt sind. Eigentlich würde man es direkt im Quellcode des Programms einbauen statt anschließend die Log Ausgabe zu übersetzen. Viel Spass mit dein C. face-smile

Gruß,
Peter
Member: Katalina
Katalina Apr 09, 2018 at 06:49:37 (UTC)
Goto Top
Hi, danke für deinen hilfreichen Tip, obwohl ich es ja nur quasi beiläufig erwähnt hatte...naja ein bisschen Hoffnung auf Hilfe war schon da ;)
Ich kenne mich da ja noch nicht so gut aus aber kann man es nicht irgendwie so programmieren das wenn der Anwender "German" eingibt das deutsche genommen wird und bei "English" das englische( mit einfachen zahlen als Ausgabe habe ich das ja schon gemacht). Und über die englische Variante irgendeine Funktion laufen lassen die das einfach übersetzt? Ich meine ich bin auch Fremdsprachenkorrespondentin und könnte das theoretisch übersetzen, aber wäre einfacher wenn das sich irgendwie vermeiden lässt.
Member: Pjordorf
Pjordorf Apr 09, 2018 at 07:42:57 (UTC)
Goto Top
Hallo,

Zitat von @Katalina:
Ich kenne mich da ja noch nicht so gut aus aber kann man es nicht irgendwie so programmieren das wenn der Anwender "German" eingibt das deutsche genommen wird und bei "English" das englische( mit einfachen zahlen als Ausgabe habe ich das ja schon gemacht).
So wie das Wort Taxi von Deutsch ins Englische übersetzt wird? face-smile Oder eine 1 zu einer 1 Übersetzt? face-smile

Und über die englische Variante irgendeine Funktion laufen lassen die das einfach übersetzt?
Sieh doch mal selbst was Google oder Microsoft dort bisher an Aufwand getrieben haben und wie deren Ergebnisse aussehen.z. B. Rechtsanwalt = Rightatwood oder Give me the Black Aktentasch.

Ich meine ich bin auch Fremdsprachenkorrespondentin und könnte das theoretisch übersetzen
Dann weisst du ja welcher Aufwand nötig ist bis ein Satz übersetzt ist und das wiedergibt was der Ersteller sich in seiner Sprache dachte. Natürlich kannst du jetzt eine Wortweise Übersetzung irgendwelcher Fehlermeldungen aus einem Log machen, aber ob dann die bedeutung erhalten bleibt? Aus dass nachschlagen in Wörterbücher führt nicht zum gewünscten ziel. Schau dir doch einfach an was Microsoft mit ihrer Knowledgebase treibt. Gut das ich auch Endglishsprachig in down under groß geworden bin. Da ist es doch gleich sinniger das der Quellcode schon je nach gewünschter Sprache oder grundsätzlich in Englisch das Log schreibt, oder? Ansonsten sich mit dem gestammel aus dem Internet begnügen, denn ein Log kann ja jederzeit neu erstellt werden. Ansonsten nach der Nummer eine Deutsc - Englische Übersetzung anfertigen welche jederzeit neu übersetzt.

Gruß,
Peter
Member: Katalina
Katalina Apr 09, 2018 updated at 08:17:10 (UTC)
Goto Top
Nein ich meine was ganz anderes, also das der Anwender gefragt wird welche Sprache er braucht und je nachdem was er eingibt erscheint dann der passende Log in der passenden Sprache.
Ja du hast recht solch eine Übersetzung macht kaum Sinn, kenn ja schon die Google Übersetzungen, echt schlimm was da manchmal raus kommt.
Ok ich mach ja gerade eine Fernschule zur FISI, und da kommt jetzt ziemlich bald das Thema Datenbanken und Programmierung mit PHP und MySQL, muss ich wohl schauen das ich da zügig hin komme.
Hoffentlich wird das nicht so eine Sache: "Och eigentlich kann sie ja das mal eben kostenlos übersetzen(Praktikum ist unbezahlt) und Ende August ist sie eh wieder weg, da sagen wir halt das wir sie nicht mehr brauchen."

Hoffe ja insgeheim auf eine Anstellung nach dem Praktikum, mal schauen ob was daraus wird.

Schwierig wird es nur wenn sie das in weiteren Sprachen brauchen.
Member: Katalina
Katalina Apr 09, 2018 updated at 08:23:35 (UTC)
Goto Top
Also wenn ich das jetzt richtig verstehe brauche ich nur ein "kleines" Programm schreiben, wenn überhaupt, das auf die Datenbank zugreift auf der die Übersetzungen sind die ich erstelle.
Member: Katalina
Katalina Apr 09, 2018 at 08:29:03 (UTC)
Goto Top
Und wie nennt sich meine Position dann?
Übersetzerin für die internationale IT?

Ist zwar nicht Fachinformatikerin für Systemintegration,
aber wenns einigermaßen bezahlt wird und besser als das Gehalt einer Kinderpflegerin ist(ja ich hab auch als Kinderpflegerin gearbeitet ;D) ist mir das fast egal.
Member: Alchimedes
Alchimedes Apr 09, 2018 at 21:56:29 (UTC)
Goto Top
Hallo.

Ich soll mit C es irgendwie umsetzen das die Log files(bisher nur in Deutsch) auch in Englisch verfügbar sind.

Also irgendwie kommst Du mir hier doch sehr suspekt vor.
Erst Suse um vmware zu installieren, dann doch nicht lieber wieder Ubuntu, dann wohl doch nicht besser mit Fedora oder was ?

Sorry , aber dann oeffne den Thread nicht wenn es Dir eh egal ist.
Und das Du jetzt C Programmierst halte ich mal fuer Spinnerei, denn C ist Hardware nahe Programmierung und C benutzt man bestimmt nicht fuer Sprachuebersetzung.

weil ich im Rahmen eines Praktikums

Hast Du die Praktikanten Stelle bekommen ?
Wenn ja Gratulation, aber lass Dich nicht verarschen.

Ich soll mit C es irgendwie umsetzen das die Log files(bisher nur in Deutsch) auch in Englisch verfügbar sind.

Musste ich nochmal bringen.......

Gruss
Member: Katalina
Katalina Apr 10, 2018 at 07:23:03 (UTC)
Goto Top
Ja ok ich hab verstanden, das war blöd, hab mit Programmierung usw. noch nie was am Hut gehabt.
Bisher waren in meinem Lernpaket auch nur Netzwerke das Thema.
Ich finde die Tipps hier immer sehr hilfreich und bin sehr dankbar dafür das es dieses Forum gibt.
Ja hab die Praktikanten Stelle bekommen, und weiß ja jetzt auch grob wie ich die Aufgabe lösen soll.
Die machen sich halt einen Nutzen daraus das ich Englisch kann und ich bekomme dafür den Einblick in den Beruf,
bin ja hoffentlich auch bei Teammeetings mit dabei etc.
Nur komisch das mir mein "Tutor" dort in der Firma gesagt hat das ich mich ein wenig mit C auseinander setzen soll,
jetzt wo ich darüber noch informierter bin macht das auch für mich keinen Sinn.
Und wie gesagt, vielleicht brauchen Sie mich ja auch für länger.
Selbst wenn ich erstmal quasi "nur" übersetze.

Der Wechsel kam weil mein Mann Erfahrung mit Ubuntu hat und mir da mehr helfen kann.
Man muss auch bedenken das ich das was andere in mehreren Jahren machen versuche in einem Jahr zu schaffen,
da wechsel ich halt oft die Themen mit denen ich mich beschäftige, aber hab bisher in der Fernschule durchweg gute bis sehr gute Noten.
Ich beschäftige mich gerade z.B. mit der Replikation eines AD-Domänencontrollers und dem Routing und versuche mich auch ein bisschen auf
das Praktikum vorzubereiten ;). Am 18. beginnt das Praktikum und versuche bis dahin noch dazu mindestens das Thema Webserver(bei mir 1 Heft) zu schaffen, oder zumindest zum großen Teil, weil ich danach endlich mich mit komplett anderen Themen beschäftige (PHP und MySQL).
Bin dafür aber auch im Schnitt 8-10 Stunden täglich am Lernen im Moment.