ZitatOriginal geschrieben von stendate
Gibt es für Suse nicht auch sowas wie 'apt-get' oder 'yum', um fehlende Pakete mit Abhängigkeiten *in einer aktuellen Version* aus dem Netz zu ziehen und zu installieren? Die Pakete auf den Datenträgern sind i.a. ja bereits obolete.
apt gibt es, das kann man nutzen:
http://linux-club.de/viewforum.php?f=62
Es ist allerdings nicht der offiziell unterstützte Weg, d.h. wenn man allzuviele externe Quellen einträgt und irgendwann nicht mehr durchblickt, dann hat man ein Problem, weil es dafür keinen Support gibt. Wenn man nur die Original-Updates installiert, dann sollte das nicht passieren, der offiziell unterstützte Weg besteht aber darin, dass man sich zuerst die ursprünglichen Pakete installiert und hinterher ein Komplettupdate mit YaST durchführt, und zwar über YaST -> Software -> Online-Update. Klingt vielleicht blöd, ist aber so.
ZitatOriginal geschrieben von stendate
Nachteil dieses Verfahrens ist, dass das paket nicht (im Fall von Suse, Fedora, Mdk) in die RPM-Datenbank aufgebommen wird, die Deinstallation muß folglich von Hand erfolgen, was, wenn es 'make uninstall' gibt kein Problem ist, da diese option jedoch häufig fehlt, geht das gesuche erstmal richtig los.
Es sei denn, man hat sich ein nettes RPM gemacht, was aber sicherlich keine Aufgabe für den dritten Tag ist.
Mit checkinstall geht es relativ einfach. Statt "make install" führt man einfach "/usr/sbin/checkinstall" aus, da werden dann interaktiv ein paar Fragen gestellt und am Ende kommt ein RPM heraus. checkinstall gehört allerdings nicht zur Standardinstallation und ist auch nicht auf den CDs, d.h. man muss es sich vom SuSE-FTP-Server holen. ![]()
ZitatOriginal geschrieben von AdministratorDr
Wieso bietet man eigentlich keine fertigen Programme an, wieso immer der Quelltext? Oder wenigstens paralell?
Das liegt daran, dass es zuviele verschiedene Distributionen mit zuvielen verschiedenen Paketverwaltungen gibt.
Der Reihe nach: Wenn man Binaries anbieten wollte, dann müsste das ja in einem bestimmten Format geschehen. Das einfachste wäre ein komprimiertes Archiv, das der Benutzer nur entpacken und irgendwohin kopieren müsste. Das hätte folgende Nachteile:
- Der Benutzer müsste selbst überprüfen, ob alle Abhängigkeiten erfüllt sind. Das wäre sehr unkomfortabel. Unter Windows umgeht man das Problem, indem jedes Programm alle seine Abhängigkeiten selbst mitbringt. Dadurch werden die Programme sehr groß und außerdem hätte man dann etliche DLLs in doppelter und dreifacher Ausführung auf dem System. Schon mal auf einem Windows-System die Exemplare der gdiplus.dll gezählt? Viel Spaß beim Aufsammeln im Falle einer Sicherheitslücke in dieser DLL. Sowas gab es neulich mal, da gab es dann sogar ein spezielles Tool, das die DLLs wieder aufsammelt. Ein weiterer netter Kandidat wäre die zlib.dll. Die dürfte auch jeder mehrfach auf dem System haben.
- Der Benutzer könnte, wenn er über eine Datei in seinem System stolpert, nicht ohne Weiteres feststellen, zu welchen Programm sie gehört. Demzufolge könnte er auch nicht ohne Weiteres feststellen, ob er sie noch braucht oder ob er sie löschen kann. Im ungünstigsten Fall würde er eine Datei löschen, die ein anderes Programm noch braucht, und dann ginge die Fehlersuche los. Das muss nicht sein. Umgekehrt könnte er auch nicht sicher sein, wie er ein Programm komplett wieder los wird, denn das Programm könnte seine Dateien ja sonstwohin geschoben haben.
- Der Benutzer müsste alle seine Programme selbst auf dem aktuellen Stand halten, weil ein automatisiertes Werkzeug wie beispielsweise YaST von den entpackten Programmen nichts weiß. Woher sollte es das auch wissen? Die Konsequenz wäre, dass man nicht einfach auf YaST -> Software -> Online-Update klicken könnte, um alle Programme auf einen Schlag auf den aktuellen Stand zu bringen, sondern man müsste die von Hand herunterladen und installieren. Darauf verzichten die meisten Leute wirklich sehr gerne. ![]()
Folglich muss man die Programme speziell verpacken, und zwar einem Format, welches in der Lage ist, alle Programme jeweils als Paket in eine zentrale Datenbank aufzunehmen, inklusive der Metainformationen wie beispielsweise der Abhängigkeiten und aller Dateien, die zu einem Programm gehören. Das macht jede Distribution, aber jede Distribution macht es ein klein wenig anders. Bei SuSE heißt dieses Format RPM, bei Mandrake und Fedora ist es auch RPM, aber die Installationspfade sind anders, bei Debian ist es ein komplett anderes Format usw. Ein Softwareautor hat in aller Regel sicherlich keine Lust, alle Formate anzubieten. Das ist die Aufgabe der Distribution. Dafür kauft man sich ja die 5 CDs, damit man erstmal mit Software eingedeckt ist, die dann auch zwei Jahre lang mit Updates von der Distribution versorgt wird. Es ist nicht unmöglich, Pakete zu machen, die auf mehreren Distributionen funktionieren, aber das ist auch nicht ganz einfach und deshalb überlässt man das den Distributionen selbst.
Es gibt auch Ausnahmen, wie beispielsweise OpenOffice.org. Das wird in Form eines selbstextrahierenden Installationsprogramms angeboten, welches so ähnlich wie die berühmte setup.exe funktioniert. Es ist aber nicht die Regel und außerdem hat es den Nachteil, dass der Benutzer darauf vertrauen muss, dass das zugehörige Deinstallationsprogramm wirklich alles wieder löscht. Bei Paketen kann man aber absolut sicher sein, die lassen sich immer sauber aktualisieren und deinstallieren, aber eben nur auf der Distribution, für die sie gemacht wurden. Außerdem legen die Pakete bei grafischen Programmen auch automatisch einen Menüeintrag an, und weitere Kleinigkeiten. Es lohnt sich also, die Pakete der Distribution zu verwenden.
Ein weiterer Aspekt ist, dass es Linux ja nicht nur für IBM-kompatible PCs gibt. Wer Linux auf der PowerPC-, Sparc- oder Alpha-Architektur einsetzt, der kann mit Binaries für IBM-kompatible PCs herzlich wenig anfangen, obwohl es sich um dasselbe Betriebssystem handelt, weil diese CPUs ja einen ganz anderen Befehlssatz haben. Außerdem soll es sogar Leute geben, die gar kein Linux, sondern Solaris oder BSD oder gar so exotische und vom Aussterben bedrohte Dinge wie AIX oder HP-UX einsetzen, habe ich mal gehört.
Wenn man auch denen Binaries anbieten würde, dann wäre das irgendwann mal zuviel des Guten. Aus diesem Grund bieten einige Projekte Binaries für die wichtigsten Plattformen an, die meisten tun das aber gar nicht erst.
ZitatOriginal geschrieben von AdministratorDr
Im übrigen, hab ich jetzt den Squid installiert und ich weiß auch, dass ich die Squid.conf bearbeiten muss.
Aber wie kann ich den Squid richtig nutzen? Irgendwie fehlt mir die Grafik
Ich möchte wenigstens wissen wie ich den Squid starte, beende, durchboote, wo überall Ordner liegen und und und...
Eine Liste der Dateien, die mit einem Paket installiert wurden, kannst Du Dir mit dem Befehl "rpm -ql <Name des Pakets>" ausgeben lassen. squid ist jetzt ein unangenehmes Beispiel, weil das knapp 1000 Dateien enthält, deswegen hier die Liste:
http://rpm.pbone.net/index.php3/stat/6/idpl/1692472
Derart lange Listen könntest Du Dir natürlich auch auf der Kommandozeile vernünftig anschauen, und zwar mit dem Befehl "rpm -ql <Name des Programms> | less". Verlassen kannst Du die Liste durch Drücken der Q-Taste, wie "quit".
Hilfe zu einem Programm findest Du
- in der "Manual Page" des jeweiligen Programms, das hatten wir schon
- in der Dokumentation, die mit jedem Paket unter "/usr/share/doc/packages/<Name des Pakets>" installiert wird
- im Internet auf der Webseite des jeweiligen Programms
Ein guter Ansatzpunkt wäre zum Beispiel "/usr/share/doc/packages/squid/QUICKSTART". Lies doch zuerst einmal das. ![]()
Was die mit einem Programm installierten Dateien betrifft:
- unter "/etc" liegen die Konfigurationsdateien
- unter "/usr/sbin" liegen die ausführbaren Dateien, die nur der Systemverwalter anfassen soll
- unter "/usr/share/<Name des Programms>" liegen architekturunabhängige nicht-ausführbare Dateien, in diesem Fall die Strings der Fehlermeldungen des Programms in allen möglichen Sprachen und diverse Grafiken, die musst Du ebenfalls nicht anfassen
- unter "/var" liegen Dateien, die im laufenden Betrieb des Programms zusammenkommen
Und so weiter.
o2neuling