Karolinger: Bitte um Tipps für Arbeitsumgebung angular, eclipse, gitlab, xampp

Hallo Forum, ich hoffe auf ein paar Empfehlungen zur Auswahl und Kombination geeigneter Programme, besonders im Bereich PHP Entwicklung, für verschiedene PCs / Notebooks.

Idealerweise sollte das Ganze dann auf Windows 10, notfalls Windows 7, und Linux ähnlich ausschauen.

Linux-Variante ist noch offen, Fedora (womöglich Atomic?) oder wenn es Zeit spart (bin kein Linuxexperte) vielleicht Ubuntu?

Einfach jeweils Xampp, Lampp, oder was anderes (z.B. UniServerZ)?

Bei Xampp und Windows 10 klappt es meist nicht mit localhost, UniServerZ macht da weniger Probleme. Soll ich nun doch Xampp nehmen, dann Windowsdienste suchen und abstellen, Firewall überprüfen, oder besser gleich einen anderen Port eingeben und den dann auf allen Rechnern anpassen?

Eclipse oder Netbeans ist wohl Geschmackssache, oder gibt es Vorteile bei weiteren nötigen Sachen wie Git Repository, Docker?

Und noch eine Frage zu Angular, da ist wohl jQuery-light o.ä. bereits enthalten, oder brauch ich dafür noch irgendwelche Pakete/Plugins?

Danke schonmal Karolinger

    1. Ubuntu oder Debian, meinetwegen centOS. Grund: Beste Unterstützung bei Problemen durch Community. Fedora oder openSuse sind zu sehr "testing" für das Enterprice-Zeug von RedHat bzw. SuSE. Du willst aber entwickeln, vermutlich also nicht die Enterprice-Hersteller unterstützen und für diese Probleme finden (also über solche stolpern und also haben), sondern bei Problemen vielmehr selbst unterstützt werden. Meide schwergewichtiges Zeug wie KDE/Plasma als Desktop

    2. Vergiss Xamp, also Windows - es sei denn Du hast Gründe, z.B. Intranetprogrammierung mit Authentifizierungen durch Windows-Server oder andere M$-Ressourcen.

    3. Vergesse aber nicht, php-xdebug zu installieren. Wenn Du willst dann installiere: Visual Studio Code. Man kann viel über den Laden schimpfen, aber Microsoft kann "Entwicklungsumgebung". Ansonsten vielleicht geany, falls gewohnt: Eclypse.

    4. Halte Dich von allzu sehr spezialisierten oder selten verwendeten Linux-Distries fern. Du tust Dir damit wirklich keinen Gefallen. (Siehe 1.)

    1. 1., 4. Danke, die Überlegungen sind nachvolziehbar. Nur zu Ubuntu finde ich keine Live-DVD iso.

      Windows-Server berücksichtigen kann nötig sein, ausserdem habe ich derzeit halbwegs funktionierende Windows-PCs und muß da derzeit nicht so dringend Linux versuchen, dafür wollte ich zunächst nur einen PC nehmen.
      
      xdebug ist auf einem Xampp drauf, wenn nicht von vornherein dann hab ich es wohl nachträglich wegen Eclipse, Netbaens (oder neard?) drauf. Debug war bislang aber eh nicht so nötig oder hilfreich.
      
      1. Nur zu Ubuntu finde ich keine Live-DVD iso.

        Bei Ubuntu sind die "normalen DVD-Images" diejenigen für die Live-"DVD". Genauer für den USB-Stick. Du kannst Dich zur Installation vor oder nach dem Start entschließen.

        1. Ja danke, ich hab jetzt trotz deiner Empfehlung auch Fedora angeschaut und Fedora mit Ubuntu (Live, DVD) erstmal recht oberflächlich verglichen. Die Hardwareerkennung scheint schonmal auf den ersten Blick zu gehen.

          Bei Fedora hatte ich beim ersten Mal Fehler, danach nicht - wohl die DVD unsauber, HD oder gar UEFI sollte ja wohl nicht verändert werden. Beides sehr ähnlich, nur bei Fedora scheint die Anmeldung als (nicht) admin wichtiger zu werden, da kann ich eigentlich sehr gut drauf verzichten.

          Aber der Dateimanager zeigt bei Fedora mehr, also DVD-Laufwerk mit Live-Medium, an, bei Ubuntu ist es wohl unter dem Punkt 'Computer' aufgelistet:

          Dateimanger Fedora

          vs.:

          Dateimanager Ubuntu

          Ist womöglich nur einem unterschiedlichen Verständnis der LiveDVD zu verdanken, also egal, oder ist Fedora da aus Prinzip einfach immer ordentlicher bzw. gründlicher?

          Bei den angebotenen Programmen sind einfache Dinge wie Mail und Office schon drauf; Schriftglättung o.ä Einstellungen habe ich auf die Schnelle aber nicht gefunden. Wine oder wohl WineHQ ist mir wichtig, das kann bei beiden Distribrutionen wahrscheinlich einfach nachinstalliert werden?

          Gibt es irgendwo Enegiesparoptionen, beide Linuxe stellen (zumnindest beim Live-Betrieb) offenbar nur den Bildschirm auf Standby, ein richtiger Sparmodus wäre doch m.E. schon bei ausreichendem Arbeitsspeicher möglich?

          Ach ja, vielleicht viel wichtiger, muß ich mich irgendwie mit den verschiedenen package- managern und dnf, apt usw. beschäftigen, oder ist das für meine gewünschten Programme wie eclipse oder symfony letztlich egal bzw. aus den schon genannten Gründen bei Ubuntu verläßlicher?

          1. Vorab: Ich mache genug Linux-Seminare mit allen möglichen Distributionen bzw. deren kostenlosen Derivaten (hier: CentOs weil die geringe Zahl an Red-Hat-Seminaren den Kauf der Subskriptionen für mein Laptop-Rudel wirtschaftlich nicht rechtfertigt) um jedenfalls für mich entscheiden zu können, was ich will und was nicht.

            Dateimanager

            Beide gezeigte Dateimanger sind nach meinem Ermessen nicht besonders tauglich, die sind mehr oder weniger an Windows-Benutzer adressiert, die sich wohl eher mit funktionalen Beeinträchtigungen abzufinden vermögen als mit einem großen Funktionsumfang. Ich verwende aus diesem Grund Nautilus. Dolphin von KDE ist mir nämlich wiederum zu schwergewichtig und in dem Wollen, den, die Gängelung gewohnten Windows-Benutzern zu gefallen, auch immer mehr darum bemüht, diese zu bevormunden.

            … ist Fedora da aus Prinzip einfach immer ordentlicher bzw. gründlicher?

            Nö. Schon die Tatsache, dass (nicht nur) /bin und /usr/bin sowie /sbin und /usr/sbin unter Fedora identische, weil verlinkte Ordner sind…

            …gefällt mir gar nicht. Denn die Ordner haben auch bestimmte Bedeutungen bezüglich dessen, was sich darin befinden soll. RedHat schafft hier, um seinen wenigen Großkunden wie Oracle (Oracle-Linux ist ein rebranded RedHat) zu gefallen, eigene Normen - das wirst Du schnell merken, z.B. wenn die Standard-Vorgehensweisen anderer Linuxe auf einmal nicht funktionieren, eben weil die Rotkappen irgendwas umbenannt haben. Vermutlich damit man deren Support braucht - der selbst im Web schnell kostenpflichtig wird, weil die Antwort auf manch wichtige Frage nur mit Subscription abrufbar ist. Bei allen RedHat-Derivaten habe ich zu dem den Ärger, dass ich selbst für einfache Sachen wie htop ein Dritt-Repo einbinden muss. Dies dann mit dem Effekt, dass RedHat die Gewährleistung ausschließt.

            Und, wie gesagt, Fedora mag die allerneueste Software haben, ist aber sehr "Testing", (in meinem Augen) nicht für "Produktion" geeignet. Ich hab für den Fall, dass Du ein RedHat-Derivat haben willst, nicht grundlos auf CentOs verwiesen. Das ist ein rockstabiler RedHat-Nachbau, der sich sogar auf die Originalpakete stützt, 1:1 wie RedHat funktioniert - aber eben kein Geld kostet. Und wegen des verzögerten Erscheinens gegenüber dem entsprechenden RedHat sogar Bugs vermeidet.

            Nicht umsonst ist Debian "Administrators Liebling". Wenn Du was Produktives aufsetzen willst, dann nimm "stable". Wenn Du sehen willst, was die Zukunft bringt, dann "testing". Mit entprechenden Einstellungen unter /etc/apt/sources* kannst Du da sogar Rolling-Updates über Haupt-Versionsnummern hinweg haben (nicht in jedem Fall eine gute Idee).

            Für Windows-Umsteiger gibts dann noch ubuntu. Beruht auf Debian Testing, ist als schon sehr modern. einer der Hauptgründe es zu benutzen ist die weitreichende Hardwareunterstützung (allerdings auch durch Benutzung auch unfreier Komponenten) aber vor allem deren Community und die Webseiten (Forum, Blog, Wiki) auf denen ich - anders als bei RedHat oder SuSE - noch nie keine (brauchbare) Antwort fand. Mir erscheint es optimal, den XFCE4-Desktop und ggf. Gnome-Software (wie geany) zu benutzen.

            muß ich mich irgendwie mit den verschiedenen package- managern und dnf, apt usw. beschäftigen,

            Du willst Software installieren und Dein System aktuell halten? Dann kommst Du nicht um Paketmanager herum. Es gibt zu dem Zeug aber grafische Oberflächen. z.B. Synaptic für apt.

            nur bei Fedora scheint die Anmeldung als (nicht) admin wichtiger zu werden, da kann ich eigentlich sehr gut drauf verzichten.

            Schwer zu verstehen was Du nun meinst. Es ist wichtig, sich nicht als Admin (root), sondern normaler anzumelden und sich ggf. root-Rechte zu verschaffen. Ansonsten sind, wegen der gottgleichen Rechte des root, Katastrophen durch Fehlbedienungen vorprogrammiert.

            1. Mir erscheint es optimal, den XFCE4-Desktop und ggf. Gnome-Software (wie geany) zu benutzen.

              Geany reicht nicht, also Eclipse, Netbeans etc..

              Du willst Software installieren und Dein System aktuell halten? Dann kommst Du nicht um Paketmanager herum. Es gibt zu dem Zeug aber grafische Oberflächen. z.B. Synaptic für apt.

              Die gewünschte Software ist ja irgendwo wichtiger als das OS, also Eclipse usw, Symfony, Apache, PHP 7, MariaDB, Angular...

              Schwer zu verstehen was Du nun meinst. Es ist wichtig, sich nicht als Admin (root), sondern normaler anzumelden und sich ggf. root-Rechte zu verschaffen. Ansonsten sind, wegen der gottgleichen Rechte des root, Katastrophen durch Fehlbedienungen vorprogrammiert.

              Bei Windows kann ich -selbst als nicht_Admin- z.B. bei etwas unsauberer Mausbewegung ganze Ordner, womöglich sogar unbemerkt, verschieben oder verschwinden lassen, das finde ich äusserst ätzend.

              Dafür aber fragt Windows mich ggf. bei anderen Dingen, ob ich etwas wirklich als Admin machen möchte, und dann kann ich das derzeit relativ einfach bestätigen. Bei Suse Linux hingegen bin ich vor ein paar Jahren bald verzeifelt wegen der dauernden Umanmelderei wegen jedem Pipifax, so eine Bevormundung und Nerverei wie da brauch ich eigentlich überhaupt nicht, auch wenn es noch so "professionell" gewesen sein mag.

              1. Man kommt also aus und vom dem See zurück (erfrischend kühl, um es im Pressesprecherdeutsch zu sagen) und liest sowas:

                Bei Suse Linux hingegen bin ich vor ein paar Jahren bald verzeifelt wegen der dauernden Umanmelderei wegen jedem Pipifax,

                Tja. Die richtigen Bücher lesen. Auch SuSE kennt schon mehrere Jahrzehnte "su" und "sudo".

                Die gewünschte Software ist ja irgendwo wichtiger als das OS, also Eclipse usw, Symfony, Apache, PHP 7, MariaDB, Angular...

                "Gutegüte" hätte mein Welli dazu gesagt. Ist bei Ubuntu alles im Repo. Für die anderen müsste ich es erst nachsehen.

                1. Tja. Die richtigen Bücher lesen. Auch SuSE kennt schon mehrere Jahrzehnte "su" und "sudo".

                  Automatisch und ohne verschiedene Passwörter? Wahrscheinlich hätte ich mir dafür etwas wie ein Script schreiben müsssen wie es, wenn ich es recht erinnere, bei den frühen Suse-Versionen fürs Energiesparen und Idle-Erkennen nötig war.

                  Die gewünschte Software ist ja irgendwo wichtiger als das OS, also Eclipse usw, Symfony, Apache, PHP 7, MariaDB, Angular...

                  "Gutegüte" hätte mein Welli dazu gesagt. Ist bei Ubuntu alles im Repo.

                  Ok, danke, "Wat mutt, dat mutt". Und also wahrscheinlich erstmal einfach Ubuntu. XFCE4-Desktop hattest du wohl auch grundsätzlich empfohlen. CentOS-iso schau ich der Vollständigkeit halber noch an wenn es mal fertig lädt, Debian-iso war irgendwie fehlerhaft angekommen.

                  Eins möchte ich gerne noch fragen, falls du da Informationen/Erfahrungen hast: Die modernen Linux-Kernel sind doch gegen die letzten Intel-Lücken halbwegs gesichert? Wenn ich auf ein aktuelles Bios-Update mit Microcode verzichte, halten sich Performanceprobleme und Sicherheitsrisiko vermutlich in Grenzen, auch wenn es offenbar beim Hochfahren m.E. drei damit zusammenhängende Meldungen dazu gibt - oder doch unbedingt ein aktuelles Bios?

                  1. Automatisch und ohne verschiedene Passwörter?

                    Das will man ja gerade nicht.

                    • su verlangt das Root-Passwort. Bei SuSE muss der Benutzer, der es dürfen können soll, in der Gruppe wheel sein. Merkhilfe: "Am großen Rad drehen dürfen". su öffnet eine shell mit root-Rechten.
                    • sudo verlangt das Passwort des Benutzers. Der Benutzer, der das können dürfen soll, muss entweder selbst in /etc/sudoers stehen oder in einer Gruppe, die dort steht. Bei vielen Linuxen ist das die Gruppe sudo. Wenn sudo verwendet wurde kann man für ca. 5 Minuten (oder bis man sudo -k tippt) weitere Befehle mit sudo absetzen ohne das Passwort neu einzugeben. Will man eine root-shell, so sind sudo su oder auch sudo -s mögliche Wege. sudo su versaut aber keine Rechte an versteckten Dateien im Benutzerordner...
                    • Mit sudo können auch ein oder mehrere Benutzer die in /etc/sudoers entsprechend konfigurierten Befehle ohne Passwort ausführen.

                    Was davon sicherer oder unsicherer ist, ist Gegenstand von Glaubenskriegen. In beiden Fällen hängt die Sicherheit letztendlich vom Benutzer ab.

                    Nichtzuletzt sollte man die SETUID/SETGUID-Bit erwähnen. Man kann binären, ausführbaren Dateien das Bit setzen und so dafür sorgen, dass es stets mit den Rechten des Benutzers bzw. der Gruppe ausgeführt wird, denen die Datei gehört. Will man das für ein Skript, dann kann man mit einem in CPP geschriebenen und kompiliertem Wrapper dafür sorgen, dass das funktioniert.

                    Den "Vogel abschießen" kann man dann noch mit setfacl.

                    Das Windows-Konzept mit der Rückfrage an den ("Haupt")-Benutzer, ob er dieses oder jenes mit Admin-Rechten tun möchte, und nur auf einen Klick zu warten ist bestenfalls verwerflich. Denn gerade diese klicken wegen der häufigen Rückfragen gewohnheitsmäßig auf alles, was wie Ja, Hurra oder Weiter aussieht und behaupten dann "Ich habe gar nichts gemacht!"

                    1. Den "Vogel abschießen" kann man dann noch mit setfacl.

                      Wo es nötig ist sicher schön. Aber im Alltag ist Rechteverwaltung m.E. doch oft eher nervig. Klar, da kommen die bösen Kollegen im Büro und legen alles in Klump, oder zuhause Ehefrau und Blagen.. Und der dume User muß vor sich selbst beschützt werden, unbedingt. Nach einem Bildschirmsaver (das Netzteil hier bei meinem Ubuntu-Aufbau rödelt dann noch, also wird beim PC erstmal, wenn das NT sich normal verhält, wohl keine Energie gespart) jedesmal wieder anmelden? Umweltschutz geht anders, da wird ja sonst wohl in der Praxis notfalls in vielen Fällen einfach der Sreensaver deaktiviert damit die Anmelderei unterbleiben kann.

                      Ich würde gerne den ganzen Kram weghaben, automatische Anmeldung hatte ich wohl sogar bei der Installation ausgewählt, nützt offenbar hier -admin Tätigkeiten?- nichts. Leere oder kurze Passwörter gehen vermutlich auch nicht.

                      Aber vielleicht viel wichtiger und zielführender: Ich kann für meinen Einsatzzweck wohl eigentlich damit anfangen: sudo tasksel install lamp-server Allerdings steht hier: https://help.ubuntu.com/lts/serverguide/lamp-overview.html.en

                      After installing it you'll be able to install most LAMP applications in this way:

                      // 1. - 6. //

                      Fortunately, a number of LAMP applications are already packaged for Ubuntu, and are available for installation in the same way as non-LAMP applications. Depending on the application some extra configuration and setup steps may be needed, however.

                      Was bedeutet das? Ich weiß nicht was ich mit sudo tasksel install lamp-server tatsächlich bekomme, und es ist kein install, sondern nur ein download, den ich dann von Hand entpacken, an die richtigen Orte bringen, einrichten und später noch anpassen muß, oder ("Fortunately") doch einfacher? An die Ordner mit den MySQL Datenbanken wie auch htdocs/localhost möchte ich dabei später z.B. auch per Dateimanager möglichst ohne irgendwelche admin-Klimmzüge rankommen und ggf. einfach kopieren, löschen, einfügen und bearbeiten können.

                      1. Nachtrag:

                        Abgesehen vom wichtigen ersten Schritt der Installation eines lamp-server muß ich doch erstmal grundsätzlich soweit möglich das Linux anpassen (oder eine andere Distri suchen). Das Gekachel etc. vom Desktop nervt mich, ausserdem stört mich die sehr lange Bootzeit und etwas die unklaren oder fehlenden Energiesparoptionen, auch wenn der PC äusserst sparsam ist. Power management, suspend, hibernate, fast-boot etc., vielleicht muß da im Bios noch was anpassen oder es fehlt oder ist bei Linux schwieriger einzuschalten - sudo pm-hibernate ?- bzw. ich habs noch nicht gefunden.

                        Zumindest den XFCE4-Desktop kann ich versuchen. Synaptic, evtl Nautilus. Die 4GB CentOS-iso konnte ich übrigens nicht zu einem Live-Betrieb bewegen, da wurde immer gleich installiert.

                        1. Die 4GB CentOS-iso konnte ich übrigens nicht zu einem Live-Betrieb bewegen, da wurde immer gleich installiert.

                          Du hast das falsche Image ausgewählt.

                      2. sudo tasksel install lamp-server

                        Installiert PHP, (wohl) MariaDB, Apache. Das Zeug funktioniert - insbesondere der Datenbankserver braucht aber noch Einstellungen. Das DBMS hat nämlich eine eigene Nutzerverwaltung. Der Apache läuft mit einer Minimalkonfiguration.

                        Aber im Alltag ist Rechteverwaltung m.E. doch oft eher nervig.

                        Tja. Isso.

                        Power management, suspend, hibernate

                        Einfach mal auf das Batterie-Symbol klicken...

                        Nach einem Bildschirmsaver (das Netzteil hier bei meinem Ubuntu-Aufbau rödelt dann noch, also wird beim PC erstmal, wenn das NT sich normal verhält, wohl keine Energie gespart)

                        Richtig. Bildschirmschoner heißt nicht automatisch: Pennen gehen. Weil ja im Hintergrund der Apache läuft und Webseiten servieren soll. Außerdem das DBMS.

                        jedesmal wieder anmelden?

                        Tja. Isso. Deckel zu oder lange nichts gemacht ist halt ein Zeichen dafür, dass Du weg bist. Und wenn dann die Plagen kommen...

                        Im Übrigen: Einfach mal auf das Batterie-Symbol klicken...

                        1. Im Übrigen: Einfach mal auf das Batterie-Symbol klicken...

                          Ich habe die gesuchten Funktionen jetzt zum Teil unter Datenschutz gefunden, eben nicht bei Energieverwaltung o.ä..

                          Den anderen XFCE Desktop bekomme ich offenbar bei den eigenen Ubuntu Paketen auch nicht angeboten, muß ich nochmal (wohl mit Synaptic) schauen . Dafür habe ich von Fedora nochmal die Security Lab 28 Live iso angeschaut und finde das alles deutlich besser, liegt wohl auch am von dir empfohlenen XFCE.

                          Screenshot Fedora Security Live

                          Der Fehler kommt vmtl. entweder durch den Betrieb als Live-DVD oder wegen einer besonderen Absicherung, ansonsten schaut das im Ganzen bis jetzt m.E. besser aus als die anderen Distributionen.

                          Kann ich da, Fedora Security, was draus machen, oder sollte ich als Linux-Ungeübter eher Ubuntu entsprechend anpassen statt Fedora Security für meine Wünsche nutzbar zu machen?

                          1. Kann ich da, Fedora Security, was draus machen, oder sollte ich als Linux-Ungeübter eher Ubuntu entsprechend anpassen statt Fedora Security für meine Wünsche nutzbar zu machen?

                            Selbstbeschreibung von "Fedora Security Lab":

                            The Fedora Security Lab provides a safe test environment to work on security auditing, forensics, system rescue and teaching security testing methodologies in universities and other organizations.

                            Was willst Du als "Linux-Ungeübter" mit einem Linux, welches speziell ein "sicheres Testumfeld für Sicherheitsprüfungen, kriminaltechnische Untersuchung, Systemrettung und das Lehren von Sicherheitstestmethoden an Universitäten und anderen Organisationen" als dessen Sinn und Zweck beschreibt und deshalb mit Sicherheit etlichen Einschränkungen und Besonderheiten unterliegt, die Du als "Linux-Ungeübter" gerade nicht erkennst, oft nicht zu umgehen weißt und deshalb nicht willst?

                            Wenn Du einen gut funktionierenden Linux-Desktop mit wirklich breiter Hardwareunterstützung und einfacher Bedienung willst ist Ubuntu oder eines seiner Derivate sicherlich eine bessere Lösung.

                            Brauchst Du die hardwareunterstützung nicht, dann ist ein normaler Debian-Desktop eine Lösung. Willst Du ein Red-Hat-Derivat nimm einfach Cent-Os, denn Fedora wirkt auf mich immer etwas "unfertig". Auch gegen openSuSE ist wenig einzuwenden - aber "Fedora Security" ist definitiv kein Linux für "Linux-Ungeübte". Das ist quasi ein ultraschwerer Kranwagen für jemanden, der eigentlich nur rasch zwei Kästen Bier holen will.

                  2. Wenn ich auf ein aktuelles Bios-Update mit Microcode verzichte, halten sich Performanceprobleme und Sicherheitsrisiko vermutlich in Grenzen, auch wenn es offenbar beim Hochfahren m.E. drei damit zusammenhängende Meldungen dazu gibt - oder doch unbedingt ein aktuelles Bios?

                    Also. Der von Linux installierte Microcode und das BIOS-Update spielen zusammen.

                    Aber Vorsicht!

                    Ich hab neulich ein W530 bestellt und bekommen. Die größere SSD war noch nicht da... Einfach mal angeschaltet, ergo Win10 gebootet und ins WLAN gebracht - schon kam das Lenovo-Zeug und meinte:* "He! Da gibt es ein neues BIOS."*

                    Hab es installieren lassen. Irgendwann kam die Box mit "Alles prima, jetzt müssen wir mal neu booten." Danach war das Laptop ein Brick (Stein), denn der BIOS lässt sich nicht extern flushen (aufspielen).

                    Das Laptop habe ich zurück geschickt. Begründung: Ich hab das fehlerhafte Lenovo-Zeug nicht installiert. Und ich vermute auch, die haben ein Image für ein anderes Modell installiert, weshalb das Lenovo-Zeug sich auf einem anderen Motherboard wähnte, also das falsche BIOS installierte.

                    Wenn Du ein Bios-Update machen willst, dann dreh das Ding rum, schreib Dir die Seriennummer auf, gehe bei Lenovo auf die Produktsuche und hol Dir die komplette BIOS-Update-CD.

                    Oder lass es von Lenovo machen...

                    1. Der von Linux installierte Microcode und das BIOS-Update spielen zusammen. Oder lass es von Lenovo machen…

                      Lenovo war das Teil mit dem Windows10; das Biosupdate hat jetzt geklappt auf einem ASRock J3455M Board und der PC hat jetzt Ubuntu drauf.

  1. Tach!

    Einfach jeweils Xampp, Lampp, oder was anderes (z.B. UniServerZ)?

    Xampp oder Einzelkomponenteninstallation ist für den Entwicklungsrechner eine brauchbare Lösung.

    Bei Xampp und Windows 10 klappt es meist nicht mit localhost, UniServerZ macht da weniger Probleme. Soll ich nun doch Xampp nehmen, dann Windowsdienste suchen und abstellen, Firewall überprüfen, oder besser gleich einen anderen Port eingeben und den dann auf allen Rechnern anpassen?

    Der localhost ist nicht das Problem, aber vielleicht der Port. Wenn Port 80 belegt ist, dann läuft vielleicht ein IIS. Wenn du den nicht brauchst, deaktivier ihn, oder deaktivier die Sites in ihm, die auf Port 80 laufen. Auch Skype ist bekannt dafür, Port 80 in Beschlag zu nehmen (kann man ausschalten).

    Zum Entwickeln in Angular wirst du aber Port 4200 benötigen (Standardport, änderbar) und unter welchem Port der REST-Server läuft, sollte sowieso konfigurierbar gestaltet werden.

    Eclipse oder Netbeans ist wohl Geschmackssache, oder gibt es Vorteile bei weiteren nötigen Sachen wie Git Repository, Docker?

    Die Vorteile braucht man weniger im Drumherum, denn dafür benötigt man nur einen kleinen Teil der Zeit. Viel länger sitzt man am Code und beim Debugging. Dafür sollte die IDE hauptsächlich eine gute Unterstützung bieten. Ich mag die Jetbrains-Produkte, die sind aber nicht kostenlos.

    Und noch eine Frage zu Angular, da ist wohl jQuery-light o.ä. bereits enthalten, oder brauch ich dafür noch irgendwelche Pakete/Plugins?

    Wenn du mit Angular (> Version 2) arbeitest, bauchst du kein jQuery. Das ist da auch nicht mehr enthalten. Man braucht es nur, wenn man Komponenten verwendet, die nicht für den Betrieb mit Angular angepasst sind und auf jQuery aufbauen. Aber in jedem Fall steht dir der NPM zur Verfügung, der für nahezu alles Pakete hat.

    dedlfix.

    1. Der localhost ist nicht das Problem, aber vielleicht der Port. Wenn Port 80 belegt ist, dann läuft vielleicht ein IIS. Wenn du den nicht brauchst, deaktivier ihn, oder deaktivier die Sites in ihm, die auf Port 80 laufen.

      Vielleicht ist auf dem einen Notebook auch noch irgendein versteckter Lenovo-Murks. Letztlich egal, oder lohnt es sich später doch, auf z.B. localhost:12345 zu verzichten und nur localhost zu erreichen?

      Die Vorteile braucht man weniger im Drumherum, denn dafür benötigt man nur einen kleinen Teil der Zeit. Viel länger sitzt man am Code und beim Debugging. Dafür sollte die IDE hauptsächlich eine gute Unterstützung bieten. Ich mag die Jetbrains-Produkte, die sind aber nicht kostenlos.

      Soll nichts kosten, und die Verbidnung zu weiteren Modulen soll klappen. Auf die Schnelle scheinen mir Eclipse und Netbeans brauchbar, etwas Komfort wäre gut wie genutzte Variablen anzeigen usw.. Irgendwas wie Versionsverwaltung gibt es wohl bei beiden, landet bei Windows bei C..user. Die lokale Git-Geschichte, war wohl bei Eclipse, muß ich auch nochmal gründlicher ausprobieren.

      1. Tach!

        Vielleicht ist auf dem einen Notebook auch noch irgendein versteckter Lenovo-Murks. Letztlich egal, oder lohnt es sich später doch, auf z.B. localhost:12345 zu verzichten und nur localhost zu erreichen?

        Für den Testbetrieb ist es ziemlich egal, auf welchem Port die Dinge laufen, zumindest wenn alles konfigurierbar und richtig eingestellt ist.

        Zum Finden, wer die Ports belegt, kann man unter windows netstat -ban -p tcp nehmen. Das b wird aber nur funktionieren, wenn die Eingabeaufforderung als Administrator gestartet wurde. Es zeigt den Prozess zum Eintrag an. a heißt alles auflisten, n unterlässt die Nummern auflösen zu wollen. Das -p tcp lässt den ganze UDP-Krams außen vor. Du musst die Zeilen untersuchen, die auf Listen (oder Abhören auf Deutsch) stehen.

        dedlfix.

        1. Zum Finden, wer die Ports belegt, kann man unter windows netstat -ban -p tcp nehmen. Das b wird aber nur funktionieren, wenn die Eingabeaufforderung als Administrator gestartet wurde. Es zeigt den Prozess zum Eintrag an. a heißt alles auflisten, n unterlässt die Nummern auflösen zu wollen. Das -p tcp lässt den ganze UDP-Krams außen vor. Du musst die Zeilen untersuchen, die auf Listen (oder Abhören auf Deutsch) stehen.

          Ja danke, es geht um Lokale Adresse und die Remoteadresse?

          Es konnten keine Besitzer ...

          92.168.178.(eigene):504..7 und Remote 40.67...:443 HERGESTELLT

          WpnService

          [svchost.exe]

          92.168.178.(eigene):504..8 und Remote 40.67...:443 HERGESTELLT

          Dann nach allen möglichen (40-50) Adressen für WpnService /svchost.exe

          WpnService

          [svchost.exe]

          192.168.178.(eigene):507nn und Remote nn.nnn.nn.nnn:80 "WARTEND" oder nn.nnn.nn.nnn:443 "WARTEND"

          192.168.178.(eigene):507nn 13.107...:80 "HERGESTELLT".

          Ist das irgendwie relevant?

          1. Tach!

            Du musst die Zeilen untersuchen, die auf Listen (oder Abhören auf Deutsch) stehen.

            Ja danke, es geht um Lokale Adresse und die Remoteadresse?

            Was auf Listen/Abhören steht, hat keine Remote-Adresse, weil das nur ein geöffneter Port ist. Das sind eigentlich die, die wir suchen. Wenn dorthin von anderswo eine Verbindung besteht, dann hat die ihre eigene Zeile. Es geht nur darum, herauszufinden, welche Anwendung den Port offen hat. Wenn da Verbindungen offen sind, dann ist das unter Umständen so gewollt und ein Schließen nicht folgenlos. Wenn du (gegebenenfalls zuzüglich Administratoren) diese Verbindungen nicht einordnen kannst, dann ist vielleicht die Firewall und noch mehr kaputt.

            svchost.exe ist ein Windows-Programm, das für andere Dienste die Ports verwaltet. svchost.exe sollte man leben lassen und die eigentlichen Dienste ermitteln. Im Zweifelsfall steht das im Internet geschrieben, was da potentielle Kandidaten sind.

            dedlfix.

            1. Was auf Listen/Abhören steht, hat keine Remote-Adresse, weil das nur ein geöffneter Port ist. Das sind eigentlich die, die wir suchen.

              ?Also so etwas:

              Screenshot netstat

              Da scheinen :80 oder :443 nicht aufzutauchen.

              1. Tach!

                ?Also so etwas:

                Screenshot netstat

                Da scheinen :80 oder :443 nicht aufzutauchen.

                Wenn sie da nicht stehen, dann sind sie nicht verwendet.

                dedlfix.

                1. Ja vielen Dank, damit bin ich bei "Vielleicht ist auf dem einen Notebook auch noch irgendein versteckter Lenovo-Murks." Mal schauen ob ich noch was finde, sonst Xampp durchgucken neu installieren oder so, notfalls werd ich doch für alle PCs einen brauchbaren gleichen Port anpassen damit es einheitlich wird.

                  1. Ja vielen Dank, damit bin ich bei "Vielleicht ist auf dem einen Notebook auch noch irgendein versteckter Lenovo-Murks."

                    Ich nicht.

                    Wenn Dein Programm "wasweisich" beim Start mit einer Fehlermeldung abbricht, dass es nicht auf Port 80, 443 oder einem anderen unterhalb 1024 lauschen kann obwohl der eigentlich frei ist, dann liegt das daran, dass das Programm beim OS (svchost.exe) nachfragt, ob dieses bitte mal Port 80…, und das OS dann rückfragt, wer es denn bitteschön geschickt habe.

                    Für Ports unter 1024 braucht es Admin-Rechte. Also wie hast Du versucht, den Webserver zu starten und wie ist der in der Systemsteuerung/Diensteverwaltung konfiguriert?

                    Im Fall des Apache-Webservers startet normalerweise zuerst einen Vaterprozess mit Systemrechten und dieser setzt dann eine konfigurierbare Anzahl an Kindprozessen in die Welt, die eben nicht mit Admin/Root-Rechten laufen, aber "die ganze Arbeit" machen. Unter Linux kann man sich davon überzeugen, in dem man mal

                    ps -elF | grep apache2
                    

                    in ein Terminal eintippt.

                    1. Danke schonmal, werd ich morgen nochmal gründlich angehen.

      2. Vielleicht ist auf dem einen Notebook auch noch irgendein versteckter Lenovo-Murks.

        Nein. Der hat mit Port 80 TCP nichts zu tun.

  2. Mahlzeit,

    ich hoffe auf ein paar Empfehlungen zur Auswahl und Kombination geeigneter Programme, besonders im Bereich PHP Entwicklung, für verschiedene PCs / Notebooks.

    Wenn du für ein spezielles System entwickeln willst, installier dir genau das als Testsystem, wenn du allgemein entwickeln willst, nimm am besten das, was am Häufigsten benutzt wird.

    Ich kann nicht genau sagen, ob es noch so ist aber bei meiner letzten Recherche dürfte das beste Testsystem Debian, Apache (evtl. nginx), MariaDB (alternativ MySQL) und PHP 7 sein.

    Ich persönlich setzte aktuell auf MariaDB 10.3 und PHP7.0 weil es noch einige Server gibt, die keine höhere Version zur Verfügung haben. Kenne ich das Zielsystem, arbeite ich direkt nach diesen Vorgaben.

    Was sich bei mir seit einigen Monaten bewährt: Win7 als Host und Debian als Gast unter Virtualbox, wobei die Entwicklung komplett unter Linux erfolgt (Editor, Apache, MariaDB, PHP)

    --
    42
    1. Wenn du für ein spezielles System entwickeln willst, installier dir genau das als Testsystem, wenn du allgemein entwickeln willst, nimm am besten das, was am Häufigsten benutzt wird.

      In den meisten Fällen ist als Server Xampp mit sicher MariaDB ok, dann brauche ich für PHP schon mehr als einen Editor, und finde Eclipse oder Netbeans schonmal brauchbar (GIT, Symfony muß ich mich auch noch gründlicher mit beschäftigen).

      Erstmal möchte ich eine möglichst gleiche Entwicklungsumgebung unter verschiedenen PCs/Laptops und OS, also Linux, Windows 10, evtl Win7, und dann die Projekte auch untereinander synchronisieren können.

      1. Erstmal möchte ich eine möglichst gleiche Entwicklungsumgebung unter verschiedenen PCs/Laptops und OS, also Linux, Windows 10, evtl Win7,

        Es ist zwar nicht viel, aber in einigen Punkten hat PHP und der Apache unter Windows ein anderes Verhalten als unter Linux. Wenn der Produktionsserver unter Linux oder BSD läuft, dann solltest Du auch unter Linux oder einem Unixoid entwickeln. Wenn der Produktionsserver unter Windows läuft, dann visa versa.

      2. Mahlzeit,

        dann brauche ich für PHP schon mehr als einen Editor,

        Na dann nenn es IDE, es bleibt trotzdem ein Editor

        und finde Eclipse oder Netbeans schonmal brauchbar

        Geschmacksache. Ich halte nichts von solchen Codemonstern die mehr Ressourcen brauchen als ein 3D-Shooter

        (GIT, Symfony muß ich mich auch noch gründlicher mit beschäftigen).

        Naja, Symphony ist lediglich ein PHP-Framework, bevor du dich damit befasst, solltest du PHP schon recht gut beherrschen. Ausserdem solltest du dich nicht drauf versteifen weil ein Programmierer der "nur" Symphony kann, am Markt gnadenlos untergeht.

        Erstmal möchte ich eine möglichst gleiche Entwicklungsumgebung unter verschiedenen PCs/Laptops und OS, also Linux, Windows 10, evtl Win7, und dann die Projekte auch untereinander synchronisieren können.

        Vielleicht solltest du erstmal das Entwickeln lernen. Scheint mir, du zäumst das Pferd von hinten auf. Um Programmieren zu lernen ist die Umgebung völlig zweitrangig, weil die Grundlagen auf praktisch jeder Umgebung laufen.

        --
        42
        1. Na dann nenn es IDE, es bleibt trotzdem ein Editor

          Nein, 'es' kann allerdings, ggf. mit Einschräkungen, so benutzt werden.

          Im Moment interessiert mich, welche IDE besser für (Git) Dokumentation und Versionsverwaltung oder auch Synchronisation etc. geeignet ist.

          Scheint mir, du zäumst das Pferd von hinten auf.

          Nein, du hast meine Intention offenbar nicht verstanden. Es geht nicht ums "Programmieren zu lernen", sondern darum eine brauchbare Entwicklungsumgebung zu haben, die ausserdem noch den möglichen z.B. agilen Erfordernissen mancher Kunden, Auftrag- und Arbeitgeber entsprechen kann. Und da komme ich vorrangig z.B. zu Git, Paketmanager, Symfony, Angular, Docker usw..

          1. Mahlzeit,

            Na dann nenn es IDE, es bleibt trotzdem ein Editor

            Nein, 'es' kann allerdings, ggf. mit Einschräkungen, so benutzt werden.

            Na wenn du das sagst. Schätze mal, die Tasache, dass Millionen von Entwicklern es anders sehen als du, zeigt nur, dass die alle falsch liegen 😂

            Im Moment interessiert mich, welche IDE besser für (Git) Dokumentation und Versionsverwaltung oder auch Synchronisation etc. geeignet ist.

            Das kann jeder bessere Editor. Wenn eine IDE das nicht kann, ist sie per Definition unbrauchbar.

            Nein, du hast meine Intention offenbar nicht verstanden. Es geht nicht ums "Programmieren zu lernen", sondern darum eine brauchbare Entwicklungsumgebung zu haben, die ausserdem noch den möglichen z.B. agilen Erfordernissen mancher Kunden, Auftrag- und Arbeitgeber entsprechen kann. Und da komme ich vorrangig z.B. zu Git, Paketmanager, Symfony, Angular, Docker usw..

            Aha, du sucht also eine IDE die die Grundanforderungen an eine IDE erfüllt. Wenn du zu viel Geld hast, nimm PHPStorm, wenn du auch mal andere Programmiersprachen nutzt und nicht monatlich Geld abdrücken willst, nimm SublimeText.

            Verdammt, das sind aber beides nur Editoren mit Extra-Funktionalität. Liegt vermutlich daran, dass Jede IDE nur ein Editor mit Zusatz ist 😉

            --
            42