Programm direkt aufrufen (ohne Pfadangabe)

C-H

Erfahrenes Mitglied
Hallo!

Ich habe xampp auf einem Linux-Server installiert und möchte mysql ohne Eingabe des Pfads aufrufen. Wo kann ich das einrichten?

Ein weiteres Problem ist, dass schon mysql installiert war und bei Eingabe von mysql Linux immer versucht auf die alte instalaltion zuzugreifen. Ich müsste also den Pfad ändern.
Nur bin ich in Linux nicht so fit, dass ich weiss wo man dies ändert.

Danke schon Mal!
 
Du hast also ein neues MySQL zusaetzlich zur vorhandenen Version installiert?
Also eigentlich haettest Du die alte Version erst entfernen sollen, oder aber die neue drueber installieren.

Naja, da es dafuer ja jetzt schon zu spaet ist empfehle ich Dir die alten Binaries von MySQL zu loeschen oder umzubenennen, und durch Links auf die neuen Versionen zu ersetzen.
 
Hallo,

danke für deine Antwort. Wie erstell' ich so einen "Link"?

Lieber wäre mir allerdings (und ich denke das ist auch "sauberer") die alten Dateien zu löschen und die Verknüpfungen zu ändern, die auf diese alten Dateien zeigen.
 
Also erstmal: Unter Linux installiert man in der Regel kein XAMPP. Man baut sich das brav alles selbst. Ist auch eigentlich ganz einfach, wenn man gewillt ist Dokumentationen zu lesen.
Ausserdem ist unter Linux in der Regel eh schon alles Noetige installiert, sodass dort XAMPP im Grunde genommen sogar ziemlicher Unsinn ist.
Und mal ganz ehrlich, wer keine Dokus lesen will sollte dann doch eher bei Windows bleiben. ;)

Aber nun zurueck zum Thema: Es gibt keine zentrale Stelle an der solche Links erstellt werden koennen.
Im Konqueror kann man solche Links auch per Drag&Drop erstellen, aber trotzdem ist die Shell da eigentlich das Mittel zum Zweck.

Wie sollte eine solche zentrale Stelle ueberhaupt Deiner Meinung nach aussehen? Denn ich kann mir im Moment absolut kein Bild davon machen wie sowas ablaufen sollte.
 
Naja, erstens macht xammp unter Linux schon Sinn. Alles ist schön zusammen installiert und es ist eben alles schön aufeinander abgestimmt. Aber da dies in eine endlose Diskussion ausarten kann würde ich sagen, belassen wir es dabei das hier Jeder seine Meinung haben kann ;-)

Um zu deiner Frage zu kommen: Irgendwie muss Linux doch wissen, wenn ich z.B. "mysql" eintippe (ohne einen Pfad), was es damit anfangen soll. Ich könnte mir vorstellen das Linux z.B. das Verzeichnis durchsucht, wo normalerweise Programme installiert werden sollen. Oder das Home-Verzeichnis des angemeldeten Benutzers. Irgendwie muss Linux doch wissen was es mit dem eingetippten "mysql" anfangen soll. Hinter "mysql" steht soch solange keine Bedeutung, bis der User Linux die Bedeutung mitteilt. Und dies müsste doch so ein Link machen. Und dies muss an einer zentralen Stelle geschehen, so wie z.B. die "Autostarts" ja auch an einer zentralen Stelle stehen. Oder die Konfiguration von Linux muss doch auch an einem bestimmten Ort gespeichert sein. Ich kann mir beim besten Willen nicht vorstellen, dass wenn ich z.B. das Verzeichnis "etc" in "etc2" umbenenne, dass Linux dann noch läuft, da dort ja einige wichtige Dateien gespeichert sind. Irgendeine Auswirkung muss das haben. Linux wird vielleicht noch laufen, aber irgendwas wird nicht funktionieren.

 
Es gibt unter Linux, wie auch unter Windows, die Umgebungsvariable $PATH.
Darin sind Pfade enthalten worin Programme liegen die ohne direkte Pfadangabe ausgefuehrt werden koennen.

Es gibt ja unter Linux nicht ein Verzeichnis wo die Binaries liegen, sondern mindestens 6.
In der Regel mehr.
Die Standard-Verzeichnisse sind:
/bin
/sbin
/usr/bin
/usr/sbin
/usr/local/bin
/usr/local/sbin

Dazu koennen noch beliebig viele andere kommen, wie z.B.
/usr/X11R6/bin
/usr/local/kde/bin

Du siehst, es gibt unter Linux nicht das eine Verzeichnis wo alles zu finden ist.
Je nachdem wie ich eine Software/Library installiere liegt sie woanders.
Wenn ich lustig bin kann ich das ja auch beeinflussen.
Und Links sind ja nicht nur Links auf Programme.
Man kann ja auch Links auf Verzeichnisse oder andere, beliebige, Dateien legen.
Unter Linux gibt es so viele Links.
Falls Deine Distribution das SysFS nutzt, schau mal da rein. Allein da findest Du schon einen riesen Haufen Links.
 
Genau das wollte ich wissen :)

Es kann ja sein, dass es mehrere Verzeichnisse gibt, /opt/lammp (wo xammp lt. Doku installiert werden soll) gehört halt nicht dazu. Also durchsucht Linux die genannten Verzeichnisse nach z.B. "mysql" und führt den ersten Treffer aus (Mal ganz einfach ausgedrückt).

Alles andere würde keinen Sinn machen. Unter Windows kannst du ja Programme (z.B. mysql) auch installieren wo du willst. Machst du das so wie im Setup-Programm vorgegeben in C:\mysql\ kannst du mysql über die Konsole nicht direkt aufrufen, sondern musst in das Verzeichnis gehen. Du kannste es natürlich auch in C:\Windows\ installieren, dann findet Windows mysql automatisch, oder du fügst den Pfad der PATH-Variable hinzu, dann durchsucht Windows auch diesen Pfad.

Auch wenn die Archiekturen von Linux und Windows sich unterscheiden, eines bleibt: beides sind "Computerprogramme", denen der Mensch sagen muss "was es machen soll". So schlau ist auch Linux nicht ;).

Um nicht falsch verstanden zu werden: Ich bin kein "Linux-Hasser" (sonst würde ich wohl kaum damit arbeiten). Linux ist in seinen Bereichen toll (z.B. Server), genauso wie Windows es ist (z.B. Dekstop).
Aber da ich die "Windows-Welt" gewohnt bin, kommt mir bei Linux einiges sehr komplizert vor, was aber nur Gewöhnungssache ist. Ich betrachte beides als Werkzeug. Und Werkzeug war bei mir noch nie eine Glaubensfrage (ausser mein Schraubenzieher. Wer was gegen den sagt bekommt Ärger :))

In diesem Sinne vielen Dank für deine Antwort!

Aber noch eine Frage: wo finde ich dieses SysFS (und was ist das überhaupt?) Also, auf dem Server ist Suse installiert. Hab aber keine Ahnung ob das das SysFS benutzt.
 
Ich hab jetzt mal versucht im Verzeichnis /var/lib/mysql einen link zu erstellen (bin im Verzeichnis /var/lib/):

ln /var/lib/mysql /opt/lampp/var/mysql

Dann bekomm ich aber die Meldung: "hard link not allowed for directory". Was mache ich falsch?
 
Zurück