[lug-ld] Voneinander lernen, ohne Überheblichkeiten
Christian Boltz
lug-ld at cboltz.de
So Jul 21 00:25:43 CEST 2019
Hallo Heinz, hallo zusammen,
Am Samstag, 20. Juli 2019, 20:53:16 CEST schrieb Pahle Heinz:
> Nochmal, mein Vorgehe bezüglich Mint:
> ZU 100% GELUNGEN, die Installation von Mint!!!
> ZU 100% GELUNGEN, Herrichtung Desktop nach meiner Art!!!
> [Letzteres war mir mit allen Vorgängern unmöglich, z.B. Ubuntu]
Das ist schonmal gut :-)
> ZU 0% GELUNGEN (in Windows-Sprache) das Upgraden.
> [Das will/muss ich lernen]
Den "technischen" Ablauf dazu (welche Programme und was Du machen musst)
darf Dir jemand anders erklären - ich kenne hauptsächlich openSUSE, und
das benutzt eine andere Paketverwaltung (ja, ich weiß, schon wieder so
ein unbekannter Begriff - die Erklärung folgt weiter unten ;-)
Ich werde aber immerhin mal eine allgemeine Erklärung versuchen.
Soweit ich irgendwas zu Windows schreibe, basiert das großteils auf 20
Jahre alten, eingerosteten Kenntnissen - falls also irgendwas inzwischen
nicht mehr stimmt, bitte ich um eine Korrektur ;-)
> Was vermisse ich?
> Es wurde mir beim Studium vom Mathe-Prof "eingeprügelt", das habe ich
> als Lehrender übernommen und im Folgeleben immer angewendet:
> Definitionen an den Beginn einer Publikation stellen. Ich habe
> nirgends eine Definiton von Paketen gefunden, das vermisse ich, kann
> mir nur etwas zusammenreimen (halt zum Namen passend). Zum
> verständnisvollen Erklären gilt es aber ausdrücklich(!) zu beachten,
> dass auf der einen Seite tiefgehende "Linux-Schrauber" sitzen (die
> sich wunschgemäß ein BS zusammen compilieren können), auf der anderen
> Windows-Anwender, die Fertigprogramme einschl. des BS vorfinden. Das
> sollte ein Erklärer der Linux-Fraktion beachten, wenn er einen
> Windows-Anwender schlau machen will. In diesem Punkt haben zumindest
> die "Mintler" und andere versagt. Ich jedenfalls, kapier(t)e
> punktuell nix.
Ich versuche mal eine Definition:
Ein Paket besteht aus
- zusammengehörigen Dateien (z. B. ein Programm)
- Abhängigkeiten, z. B. "benötigt die openssl-Bibliothek"
- diverse Metadaten (Name, Beschreibung, Version etc. - siehe [1] für
ein Beispiel)
Das alles zusammen steckt in einer Datei, und diese Datei ist das Paket.
Konkrete Beispiele für Pakete sind z. B.
- "MozillaFirefox" - Firefox
- "libreoffice" - LibreOffice
- "libopenssl1_1" - die Bibliothek "openssl", das "1_1" ist die
Versionsnummer, weil grundsätzlich mehrere Versionen einer Bibliothek
gleichzeitig installiert werden können
Als ganz grobe Erklärung probiere ich mal zwei Definitionen eines
Pakets. Beide sind nicht 100% technisch korrekt, helfen aber vermutlich
beim Verständnis.
a) Ein Paket ist eine Art ZIP-Archiv + ein paar zusätzliche Infos
b) Ein Paket ist ähnlich einer setup.exe unter Windows, mit zwei
Ausnahmen:
- das Paket enthält keine grafische Oberfläche o. ä., um sich selbst
zu installieren - das übernimmt die Paketverwaltung
- Bibliotheken werden grundsätzlich in eigene Pakete verpackt (+
Vermerk der Abhängigkeit im Programmpaket), während eine setup.exe
(meines Wissens, Stand von vor 20 Jahren ;-) üblicherweise alle
nötigen Bibliotheken mitbringt.
Diese zwei Ausnahmen (und ein paar andere Dinge) werden von der
Paketverwaltung abgedeckt.
> Noch etwas habe ich beim Studium gelernt. Wenns der
> Student nicht versteht, dann kann es am Prof liegen. Und das hat sich
> 1000fach bewahrheitet. Die richtigen Worte wählen, dazu Definitionen
> und jeder normal Bemittelte sollte verstehen.
Da werde ich nicht widersprechen ;-)
> Zuletzt: Ich widerspreche C.B., wie am Beginn angedeutet, denn ich
> muss beim Anwenden von Windows gar nichts über (ominöse) Pakete(?)
> wissen, hatte nie Probleme, kann auch nichts z.B. per Parameter
> beeinflussen.
Als ich das letzte Mal eine setup.exe benutzt habe (lang ist's her),
konnte ich da schon ein paar Dinge beeinflussen:
- Installationsverzeichnis
- Auswahl optionaler Programmbestandteile, Plug-Ins etc.
- Desktop-Icon ja oder nein?
Das aber nur am Rand - ich weiß schon, dass Du unter Windows nichts über
Pakete wissen musst und es trotzdem funktioniert.
(Auch wenn mich jetzt vermutlich ein paar Leute schlagen - sogar unter
Linux müsstest Du ohne Kenntnisse, was ein Paket ist, arbeiten können.
Im Zweifelsfall installierst Du eben ein Programm und kein Paket ;-)
> Linuxler vs. Windows-Menschen:
> Was ich immer wieder bei Linuxlern antreffe, ist, oft zwar gering
> dosiert, Häme gegenüber Windows-Betreibern. Konkret lese ich z.B.:
> "...mehr oder weniger schönen setup.exe". Die bisher funktionierenden
> Windos-Setups habe ich noch nie nach Schönheit bewertet. Keine
> Verbitterung meinerseits über kleine Häme, ich lächele (und denke mir
> etwas), lieber Christian.
Diesen Seitenhieb auf setup.exe sollte ich wohl erklären ;-)
Als "Abfallprodukt" erkläre ich dann auch gleich, was die
"Paketverwaltung" so macht - anders kann ich den Seitenhieb auf
setup.exe nicht erklären ;-)
Also: Unter Windows kommt jedes Programm mit einer setup.exe mit eigener
grafischer Oberfläche, unterschiedlich vielen Einstellmöglichkeiten
während der Installation etc. - auch wenn sich eine gewisse
Grundrichtung eingebürgert hat, kann jede setup.exe anders aussehen und
funktionieren.
Mit "mehr oder weniger schön" habe ich übrigens nicht das
Hintergrundbild in der setup.exe gemeint ;-) sondern die teils
unterschiedlichen Funktionen und Optionen. Beispielsweise lässt sich
eine "dumme" Anleitung ("klicke x, dann klicke y"), wie man z. B.
Firefox installiert, wegen der unterschiedlichen setup.exe nicht 1:1 auf
die Installation von LibreOffice übertragen.
Unter Linux bekommst Du die Programme in Form von Paketen geliefert.
Diese Pakete enthalten wie oben erklärt "nur" Dateien und Metadaten,
aber keinen Installer.
Deshalb brauchst Du ein Programm, um Pakete zu installieren, updaten
oder zu löschen. Dieses Programm ist die Paketverwaltung, und existiert
wahlweise in Form einer grafischen Oberfläche und eines
Befehlszeilentools.
Ich sehe das als großen Vorteil, weil man unabhängig vom zu
installierenden Programm immer den gleichen "Installer", eben die
Paketverwaltung, benutzt und daher für alle Pakete exakt die gleiche
Benutzeroberfläche hat - egal, ob man gerade Firefox, LibreOffice oder
einen Webserver installiert.
Die Paketverwaltung unterscheidet sich zwischen den Linux-Distributionen
trotz großteils identischer Aufgaben und Ziele teilweise ziemlich stark
(ja, ich bin mir der Ironie bewusst, dass das dem vorherigen Absatz in
gewisser Weise widerspricht ;-)
Unter openSUSE gibt es "YaST" als grafische Oberfläche und "zypper" auf
der Kommandozeile. Die Programmnamen für Mint darf Dir jemand anders
sagen.
Die Paketverwaltung macht im Wesentlichen folgende Dinge:
- dem Benutzer die Liste der verfügbaren und installierten Pakete
anzeigen und Benutzerwünsche (Installation, Upgrade, Löschen eines
oder mehrerer Pakete) entgegennehmen
- den eigentlichein Inhalt der Pakete (also die Dateien) installieren
- in der Paketdatenbanken mitschreiben
- welche Pakete in welcher Version installiert sind
- welche Abhängigkeiten ein Paket hat
- welche Datei zu welchem Paket gehört
- die Prüfsumme aller Dateien eines Pakets
- die Metadaten des Pakets auswerten und
- die in den Abhängigkeiten genannten Pakete, z. B. Bibliotheken,
installieren
- sicherstellen, dass sich alle Pakete vertragen - z. B. verhindern,
dass ein zweites Paket eine schon vorhandene Datei installiert/
überschreibt
- eine saubere Deinstallation ermöglichen, also alle zu einem Paket
gehörigen Dateien löschen und sicherstellen, dass die Abhängigkeiten
der verbleibenden Pakete immer noch erfüllt sind
(diese Liste ist garantiert unvollständig, sollte Dir aber schonmal
einen Überblick verschaffen ;-)
Ein weiterer Unterschied: Linux-Distributionen kommen immer mit einem
großen "Repository" (auf DVD und/oder online), in dem tausende Pakete/
Programme enthalten sind, die Du in der Paketverwaltung einfach
auswählen und installieren kannst.
(Auch wenn der Vergleich böse ist - unter Windows werden nur Paint,
Minesweeper und Notepad mitgeliefert. Ernsthafte Programme muss man dann
einzeln mit der jeweiligen setup.exe installieren.)
Sogar ich brauche nur sehr selten Pakete aus externen Repositories -
99,9% meiner Pakete/Programme werden direkt mit openSUSE ausgeliefert
[2].
Ganz salopp erklärt: Unter Linux sagst Du der Paketverwaltung
"installiere Firefox, Thunderbird und LibreOffice", und kurz danach sind
diese Programme installiert - und zukünftige Sicherheitsupdates bekommst
Du aus dem Repository der Distribution auch frei Haus geliefert.
Unter Windows musst Du erstmal die passende Downloadseite (für jedes
Programm eine andere) finden, die jeweilige setup.exe runterladen und
jedes Programm damit installieren.
Wenn Du Glück hast, prüft jedes Programm beim Start, ob es eine neue
Version / Sicherheitsupdates gibt, und bietet ein Update an - aber das
ist dann programmspezifisch und nicht zentral an einer Stelle.
> Die Frage hier beantwortet: Warum komme ich zu LUG?
> Und weiter: Warum interessiert mich Linux und welches Linux hätte ich
> gerne? a)
> Das Letzte zuerst, was ich mir wünsche: Ein fertiges Linux, das ich
> nicht zusammenstricken muss/will, das von der Anwenderseite(!), nicht
> intern, funktioniert wie Windows. Das hieße im speziellen
> Upgrade-Fall: Ich kriege mitgeteilt, dass Neues vorhanden ist und ich
> habe einen Start-Button (drücke, wann es mir passt).
Das müsstest Du mit allen aktuellen Linux-Distributionen bekommen.
Im Idealfall mit einem kleinen Popup auf dem Desktop, wenn es neue
Updates gibt - incl. Knopf zum Installieren.
> Das
> tabellarische Wissen um irgendwelche Abhängigkeiten, das soll mal
> klammheimlich und mir total verborgen die Software machen.
Genau das ist der Job der Paketverwaltung, und die macht das erstaunlich
gut ;-) (Ich spreche hier mal aus openSUSE-Sicht, mangels Erfahrung mit
anderen Distributionen.) Als "normaler Benutzer" musst Du also nicht
wissen, was Abhängigkeiten sind - das läuft automatisch unter der Haube.
Apropos "normaler Benutzer" - ich zähle da wohl nicht mehr dazu ;-) weil
ich u. a. ein paar Pakete in openSUSE "baue". Wenn man sowas macht,
sollte man natürlich wissen, was Abhängigkeiten sind und sie ggf. beim
Erstellen des Pakets mit angeben. Aber sogar beim Paketbau muss ich das
nicht alles von Hand machen - Abhängigkeiten zu Bibliotheken werden
automatisch erkannt und in den Paket-Metadaten hinterlegt.
> b)
> Linux interessiert mich, um ein wenig sicherer als unter Windows im
> web unterwegs zu sein. Ich weiß aber, dass die Linux-Programmierer
> nicht schlauer als die der Win-Fraktion sind. Der Vorteil liegt in
> den vielen, leicht unterschiedlichen Linux-Distributionen, die, ob
> der
> Unterschiedlichkeit (und mangels Verbreitung) uninteressant für
> Netz-Gauner sind. Offener Quellcode von Linux, der garantiert (fast)
> frei von Hintertürchen, wenn da auch einer mal nachschaut, wobei man
> halt, zu dumm, Heartbleed übersah. Es menschelt - überall.
Ich wage zu behaupten, dass die Menge und Schwere der Fehler unter
Windows (oder allgemein bei kommerzieller Software) größer ist - aber
ich stimme Dir auch zu, dass es überall Bugs gibt. Fehlerfreie Software
schreiben hat leider noch niemand geschafft ;-)
Wenn Du die Zahlen vergleicht, behalte bitte im Hinterkopf, dass bei
einer Linux-Distribution immer tausende Programme enthalten sind, und
bei Windows gern mal nur die "Windows-Updates" des reinen
Betriebssystems (fast) ohne Programme gezählt werden.
Mal als konkretes Beispiel: openSUSE Leap 42.3 hat im Lauf von zwei
Jahren 901 Sicherheitsupdates und gut 800 andere Updates (z. B. nicht
sicherheitsrelevante Bugfixes) bekommen [7], also 37,5
Sicherheitsupdates und 33,3 sonstige Updates pro Monat - für alle
Programme zusammen. Sogar wenn ich die Anzahl der gefixten CVEs [5] und
Bugs einzeln rechne, komme ich "nur" auf 132 bzw. 223 pro Monat.
Wie viele Patches gibt es beim monatlichen Windows Patchday - nur fürs
Betriebssystem und die damit ausgelieferten Basis-Bibliotheken? ;-)
> c)
> Die LUGer sind alles nette Menschen, man fühlt sich wohl im Club. Es
> geht da ja nicht nur um Linux mit Vorträgen dazu, was sich alles tut,
> sondern auch um allgemeines Computer- und Netzwerkwissen und immer
> wieder mal, um interessante technische Beiträge, so über'n Tisch
> geplaudert. Soweit die LUG-Treffen-Werbung, z.B. an Matthias
> gerichtet.
:-)
> Mit diesen positiven Worten, liebe Grüße von
> Heinz
>
> PS, kann mir es doch nicht verkneifen:
> An meinem letzten Arbeitsplatz saß neben mir ein netter Linuxler. An
> der Hochschule wurden Linux und Windows parallel gebraucht/gelehrt.
> Als ich ausschied, länger her, hatte ich viel Linux vom Kollegen
> gelernt, der Kollege aber null Windows von mir (null Interesse bei
> ihm). Jedoch: Er wunderte sich immer wieder, dass ich alle Probleme
> mit Windows genauso gut/schnell löste, wie er unter Linux.
> Gibt es dazu nicht Parallelen? Einige LUGer werden im Büro mit Windows
> konfrontiert, könnten vielleicht auch noch dazu lernen oder sich das
> Leben mit Programmen eines gewissen hp erleichtern (wenn sie mögen).
> So z.B. für Backup: Bei Linux rsync, bei Windows mein BUX anwenden
> und total zwanglos vieles, vieles andere mehr.
Kein Widerspruch, aber ;-) ich erkläre aber trotzdem mal, wie es bei mir
aussieht:
Ich habe jahrelang mit Windows (3.11 bis 98) gearbeitet und gebastelt
(u. a. Programmierung mit Visual Basic [6]).
Irgendwann hat mir dann mal ein Bekannter Linux gezeigt und ich habe es
parallel zu Windows installiert. Anfangs habe ich noch großteils Windows
benutzt, aber innerhalb von ein paar Monaten hat sich das komplett
umgedreht und auf Windows lag eine dicke Staubschicht. Inzwischen müsste
meine erste Linux-Installation volljährig sein ;-) und ich lebe seit
(geschätzt) 17 Jahren Windows-frei.
Falls ich tatsächlich mal auf einem fremden Rechner Windows benutzen
muss, fluche ich jedesmal und frage mich, wie man sowas freiwillig
verwenden kann ;-) [3] [4]
Natürlich lässt sich das auch durch Gewohnheit erklären (so wie Windows-
User eben Windows und seine Eigenheiten gewohnt sind) - aber Du müsstest
mir schon ein sehr hohes Schmerzensgeld zahlen, um mich zur Benutzung
von Windows zu, äh, überreden ;-)
(Dazu kommen noch Nettigkeiten wie die automatische und nicht / extrem
schwer abschaltbare Übertragung von Daten an Microsoft, aber das ist
nochmal ein ganz anderes Thema.)
Und jetzt noch das Wort zum Sonntag - gilt für alle meine Mails, auch
wenn ich es nur selten erwähne:
Falls irgendwas in meiner Mail unklar, unverständlich, zu technisch, ...
ist, frag nach. Es gibt keine dummen Fragen, nur dumme Antworten ;-)
Gruß
Christian Boltz
PS: Die Fußnoten habe ich teilweise nachträglich eingebaut, daher ist
die Nummerierung nicht fortlaufend.
[1] Metadaten des Pakets "MozillaFirefox" unter openSUSE:
# rpm -qi MozillaFirefox
Name : MozillaFirefox
Version : 67.0.4
Release : 1.2
Architecture: x86_64
Install Date: Do 04 Jul 2019 14:20:22 CEST
Group : Productivity/Networking/Web/Browsers
Size : 180963901
License : MPL-2.0
Signature : RSA/SHA256, Di 02 Jul 2019 14:36:40 CEST,
Key ID b88b2fd43dbdc284
Source RPM : MozillaFirefox-67.0.4-1.2.src.rpm
Build Date : Di 02 Jul 2019 14:06:22 CEST
Build Host : lamb78
Relocations : (not relocatable)
Packager : https://bugs.opensuse.org
Vendor : openSUSE
URL : http://www.mozilla.org/
Summary : Mozilla Firefox Web Browser
Description :
Mozilla Firefox is a standalone web browser, designed for standards
compliance and performance. Its functionality can be enhanced via a
plethora of extensions.
Distribution: openSUSE Tumbleweed
[2] Der Vollständigkeit halber: Es gibt _sehr seltene_ Ausnahmen, in
denen Linux-Programme nicht als Paket kommen. Das kommt höchstens
bei irgendwelcher propietären Software vor, wenn (sorry für die böse
Formulierung) der Hersteller zu blöd ist, ein "richtiges" Paket zu
bauen. In diesen Fällen bekommt man dann etwas, das einer setup.exe
ähnelt und sich an der Paketverwaltung vorbei installiert.
[3] Mal als ein kleines Beispiel von vielen: Copy&Paste.
Unter Linux bin ich gewohnt, dass ein Text in der Zwischenablage
landet, sobald ich ihn markiere, und sich per Klick der mittleren
Maustaste einfügen lässt.
Dass das unter Windows so nicht geht (und ich entsprechend fluche),
muss ich wohl nicht extra erwähnen ;-)
[4] Ich habe auch schon mehr als einmal langjährige Windows-Nutzer nach
dem Update auf Windows 10 fluchen gehört - neben "Linux vs. Windows"
gibt es also auch Dinge wie "Windows 7 vs. Windows 10" oder, noch
schlimmer, "XP vs. Windows 10" ;-)
[5] Ein CVE ist die Beschreibung und Nummer einer einzelnen
Sicherheitslücke, siehe
https://de.wikipedia.org/wiki/Common_Vulnerabilities_and_Exposures
[6] Will sonst noch jemand seine Jugendsünden beichten? ;-)
[7] Quelle: https://lists.opensuse.org/opensuse-security-announce/
2019-07/msg00000.html
--
Es gibt einen alten chinesischen Fluch, Captain:
Mögest Du in interessanteren Zeiten leben!
Inzwischen ist es höchst interessant, wenn Neelix in der Küche brutzelt.
["Harry Kim" in Star Trek: Voyager - Der mysteriöse Nebel]