Was genau macht das Terminal beim install Befehl?

4 Antworten

Vom Fragesteller als hilfreich ausgezeichnet

Hallo

Was genau macht das Terminal beim install Befehl?

  • Zunächst sei gesagt dass das Terminalprogramm (Terminal, Konsole, xterm, LXTerm, Terminator, Terminology ect.) welches Du unter einer grafischen Oberfläche ausführst kein Terminal ist sondern nur eine Art "Terminalemulation".
  • Stelle es Dir vor wie eine Durchreiche zwischen Küche (Terminalemulation) und Esszimmer (Shell)

sudo apt-get install vlc

Ein bisschen aufgedröselt ungefähr so:

  1. Die eingegebene Zeile wird mit der Bestätigung durch Return/Enter an die Shell weiter gereicht die für den Benutzer vom Administrator festgelegt wurde.
  2. Die Shell (sh, bash, zsh, ksh ect.) ruft das Programm /usr/bin/sudo auf.
  3. sudo seinerseits schaut nun in die Datei /etc/sudoers ob der Benutzer der es ausführen will überhaupt als berechtigtes Mitglied  eingetragen ist und ob der Benutzer auch für dieses Programm eine Genehmigung hat es auszuführen.
  4. Wenn das positiv ausfällt wird sudo ausgeführt und verlangt das User- Passwort als Zugriffsberechtigung.
  5. Wurde das korrekte Passwort eingegeben versucht sudo ein Programm mit dem Namen apt in einem der Pfade  aus der Variablen $PATH zu finden und startet es wenn es vorhanden ist.
  6. apt liest aus der Datei /etc/sources.list auf welche Paketquellen (Repositories) es zugreifen soll.
  7. nun liest apt die Inhaltsverzeichnisse der Repositories ein (Die liegen ebenfalls auf der Festplatte und werden durch apt-get update aktualisiert) und sucht nach einem Paket mit dem angegebenen Namen (Das tut es sowohl im Dateinamen als auch in der Beschreibung des Paketes vlc.
  8. Weiterhin wird anhand der Paketbeschreibung nachgesehen ob das verlangte Paket, also vlc noch Abhängigkeiten hat die es braucht um laufen zu können. Diese werden nun ebenfalls im Inhaltsverzeichnis gesucht und in die, zum herunterladen vorgesehene, Liste eingetragen.
  9. Wurden alle gewünschten Programmpakete gefunden, so wird eine online Verbindung zu dem Repository aufgebaut in dem die Dinge alle liegen.
  10. Es wird nun wget, curl oder ähnliches (wenn es nicht schon im Code des Paketmanagers steckt) aufgerufen und bekommt als Parameter den Pfad für den Download und auch einen Zielpfad zum abspeichern wo apt es erwartet zu finden.
  11. Das Zepter geht nun wieder zurück an apt welches die technischen Beschreibungen durchsucht um zu sehen wohin welche Datei genau kopiert werden soll und setzt die darin verankerten Berechtigungen.
  12. Das alles wird natürlich mit mehr oder weniger Rückmeldungen in der "Durchreiche" angezeigt

Das alles ist jetzt aber immer noch sehr grob und lässt sich noch sehr viel detaillierter ausführen, wobei ich denke das Dir diese Liste reichen dürfte :-)

Linuxhase

-------------------------------------------------------------------------------------------------

  1. bzw. dem Distributor wenn man es übernimmt wie der es eingerichtet hat

mal wieder die verständlichste Antwort auf eine Frage, die eigentlich banal klingt. Ich widerspreche ungern, aber wenn es noch ausführlicher geht wie du sagst, dann bitte die extended version:) ich möchte es ja von Grund auf verstehen. Da du mir nicht ersr zum ersten mal die beste Antwort auf eine Linux frage lieferst würde mich nun schon mal interessieren was du beruflich machst, bzw woher du dein Linux/EDV wissen hast und was du interessierten außer google und informatik studium rätst um auf den selben Kenntnisstand zu kommen?

0
@DerChacker

@DerChacker

wenn es noch ausführlicher geht wie du sagst, dann bitte die extended version:)

Dafür empfehle ich ein gutes Buch:

https://www.rheinwerk-verlag.de/lpic-1_3781/

würde mich nun schon mal interessieren was du beruflich machst

Ich bin überhaupt nicht im IT-Bereich tätig sondern verdiene meinen Lebensunterhalt mit harter körperlicher Arbeit.

woher du dein Linux/EDV wissen hast

Aus Büchern wie diesem, einer dazugehörigen Schulung (LPIC Prüfung) auf die ich mich, unter anderem damit, vorbereitet habe und natürlich mit Erfahrung gepaart mit großem Interesse.

außer google und informatik studium rätst um auf den selben Kenntnisstand zu kommen?

  • Google hilft ja nur beim auffinden von interessanten Seiten auf denen es die gesuchten Informationen gibt, ist darin aber sehr gut.
  • Das einzige was besser (im Sinne von "nach meinen Werten gefiltert") ist YACY als Suchmaschine zu verwenden.
  • Dabei ist richtiges suchen schon die halbe Miete, also analysieren was man braucht, was man nicht braucht und die Kriterien entsprechend setzt.
  • Ein ebenso wichtiger Teil dabei ist die Offenheit gegenüber allem neuen. Windows-Wissen ist IMHO eher hinderlich als förderlich.
  • ausprobieren, ausprobieren, ausprobieren, in sämtliche Verzeichnisse abtauchen und sich alles genau ansehen und immer wieder installieren, am besten mehrere Distributionen in verschiedenen Umgebungen und mit wechselnden Desktops.

Linuxhase

1

P.S.: hast du auch eine Antwort auf meine Multibootsystem frage?

0

Vielen, vielen Dank! An dir ist ein Informatiker, bzw Linux admin verloren gegangen

1

ein Terminal macht dabei praktisch nichts, es ist lediglich ein Fenster, in das man etwas eingeben kann und das dann auch u.U. etwas anzeigt.

Ein Terminal ist auch nur ein Programm wie sudo oder apt-get oder ls ...
Für ein Terminal ist apt-get ein Parameter, so wie install einer für apt-get ist.

Manche Programme benötigen viele solche Parameter, manch keine, zumindest keine, die man schreiben muss.

Der Befehl ls geht auch ohne Parameter, er benutzt, wenn z.B. kein Verzeichnis angegeben wird das aktuelle Verzeichnis ( das ist sein "Hintergrundwissen").

Genau ein solches "Hintergrundwissen" hat apt-get. Es kennt die Webseite ( besser die URL) auf der zu holende Programme zu finden sind.

Bei Windows musst du das selbst wissen.

und woher stammt dieses Hintergrundwissen?

0
@DerChacker

"Hintergrundwissen" kann man hier auch als "wenn nichts anderes angegeben ist"  betrachten, auch unter Default bekannt.
Woher stammt das?
Das hat der Programmierer oder der, der so ein Programm in Auftrag gegeben hat, so festgelegt.
Dafür gibt es genügend Beispiele:

ls  ohne Parameter ist das Gleiche wie ls ./ oder ls $PWD ,
das Programm erkennt, wenn keine Werte übergeben wurden und nimmt dann das aktuelle Verzeichnis.

Bei  id wird ähnlich verfahren.
id ohne Parameter zeigt die Identifikations-Daten des aufrufenden Benutzers an, währen
id ein-anderer  dann die von "ein-anderer"  anzeigt.

Die einzelnen Distributionen (Debian, Ubuntu , openSuSE ...) kennen selbstverständlich die Web-Adresse  (URL's) bzw. Repositories in  denen zu installierende Programme gespeichert sind und "brennen" die in die Programme fest ein.
Die URL's werden, üblicherweise in eine Datei geschrieben und deren Adresse im Computer ( z.B. /etc/lib/..... ) ist dann das "Hintergrundwissen" des betreffenden Programms (apt-get, zypper , ..)

0

Was von wo installiert werden soll, steht in den Paketlisten. Dafür ist der

apt update

Befehl. Dieser aktualisiert alle Paketlisten im System. In der Paketliste steht dann z.B. unter dem Punkt VLC die dazugehörigen Bibliotheken und Skripte und wo diese liegen (auf welchem Server). Von dort werden die Daten dann heruntergeladen und installiert.

PS.: du kannst statt apt-get auch einfach nur apt benutzen, geht etwas schneller und macht das gleiche.

und was genau machen die Bibliotheken und Skripte?

0
@DerChacker

Nun in etwa das gleiche was eine .exe bei Windows macht, ein Programm starten. Irgendwo muss stehen, was das Programm machen soll. Dazu sind die Bibliotheken da. Die Skripte starten das Programm und geben Parameter mit, die vorher, entweder automatisch oder vom User, definiert wurden. 

0

ah. ok.

0

openSUSE oder Debian?

juhu.....

Ich habe noch einen etwas älteren Laptop stehen und neben XP möchte ich noch Linux installieren. Ich möchte gerne ein relativ stabiles System mit relativ guter Optik und guter unterstützung bzw. Community - zurZeit schwanke ich stark zwischen openSUSE und Debian. Welches system würdet ihr mir empfehlen und welche oberfläche (KDE Gnome)? und wie sind eure erfahrungen? Dazu müsste ich noch sagen dass ich kein Linux Guru bin sondern bisher ein eingefleischter Windows nutzer war und immernoch (auf desktop-PC) bin - aber es ist ja auch mal interessant sich ans andere ufer zu bewegen.

...zur Frage

einem Programm den User vortäuschen?

Ich möchte über das Terminal ein Programm starten, welches root Rechte braucht.

Ich könnte also den sudo Befehl verwenden. Allerdings prüft das Programm unter welchem Benutzer es läuft und bricht ab wenn es nicht der richtige ist.

Wie löse ich das Problem?

Einerseits braucht das Programm root Rechte,

andererseits will es nur laufen wenn es unter einem bestimmten User läuft (der mir bekannt ist).

Ich danke vielmals im Voraus !!

lg,

profi

...zur Frage

Linux Paket installieren (Paketname)

Ich versuche unter Linux etwas manuell zu installieren mit sudo apt-get install + hier solll der paketname rein, aber er findet es nicht. ich habe den programmnamen mit und ohne .exe eingegeben aber er sagt Mittels regulärem ausdruck konnte kein Paket gefunden werden? also im terminal

...zur Frage

Linux Python Spyder3 installieren GEHT NICHT?

Hey, wie installiere ich auf Linux Mint 16 Python Spyder3 (Also die Netwiklungsumgebung Spyder3)

Der sudo apt-get install spyder3 oder sudo apt-get install spyder funktiniert nicht!

...zur Frage

Kali Linux - sudo reinstall?

Hey,

Ich hab' unabsichtlich sudo und all seine packages deinstalliert. Wenn ich versuche "apt-get install sudo" auszuführen, bekomme ich die Meldung "Package 'sudo' has no installation candidate".

Kann mir jemand helfen? Oder weiß jemand die repository des sudo?

Danke!

...zur Frage

Linux lernen. aber wo?

Hi, ich möchte mich etwas mit Linux beschäftigen. Also mit Mint und Ubuntu. Hat jemand irgendwo ein paar tips für mich? Vielleicht app oder youtube channel. (Bitte kein buch :3)

...zur Frage

Was möchtest Du wissen?