Linux Distributionstyp ermitteln

Targion
Beiträge: 688
Registriert: Mi 3. Okt 2007, 21:00
OS, Lazarus, FPC: Linux (L 0.9.29 FPC 2.4.2)
CPU-Target: x86_64

Linux Distributionstyp ermitteln

Beitrag von Targion »

Hallo und frohe Weihnachten!
Wie kann ich mit Lazarus den Distributionstyp (Debianbasierend, RedHat usw.) und den Distri-Namen (Ubuntu, SuSe, Fedora usw.) ermitteln?

hanibal
Beiträge: 369
Registriert: Sa 3. Mär 2007, 16:03
OS, Lazarus, FPC: Winux (L 0.9.xy FPC 2.2.z)
CPU-Target: xxBit
Wohnort: Bramsche (Emsland)

Beitrag von hanibal »

gib mal ins terminal "lsb_release -a " ein.
vilkleicht kann man die asugabe irgendwie abfangen, oder so.

Targion
Beiträge: 688
Registriert: Mi 3. Okt 2007, 21:00
OS, Lazarus, FPC: Linux (L 0.9.29 FPC 2.4.2)
CPU-Target: x86_64

Beitrag von Targion »

Ja, das könnte gehen. Funktioniert diese Methode auf allen Linux-Systemen? Wie komme ich an den Distri-Typ?

creed steiger
Beiträge: 958
Registriert: Mo 11. Sep 2006, 22:56

Beitrag von creed steiger »

das ist verschieden

cat /proc/version

oder

/etc/issue geht auch

eine Übersicht:
http://www.unixboard.de/vb3/showthread.php?t=26568" onclick="window.open(this.href);return false;

pluto
Lazarusforum e. V.
Beiträge: 7192
Registriert: So 19. Nov 2006, 12:06
OS, Lazarus, FPC: Linux Mint 19.3
CPU-Target: AMD
Wohnort: Oldenburg(Oldenburg)

Beitrag von pluto »

Wie die Ausgabe im Programm gepasst werden kann steht hier:
http://wiki.lazarus.freepascal.org/Exec ... rograms/de" onclick="window.open(this.href);return false;
MFG
Michael Springwald

monta
Lazarusforum e. V.
Beiträge: 2809
Registriert: Sa 9. Sep 2006, 18:05
OS, Lazarus, FPC: Linux (L trunk FPC trunk)
CPU-Target: 64Bit
Wohnort: Dresden
Kontaktdaten:

Beitrag von monta »

Aber soweit ich weiß, sind diese ganzen Möglichkeiten alle nicht 100% vorhanden, bzw. müssen nicht immer eindeutig ein Betriebssystem identifizieren, Soweit ich weiß, wurde es mit der genauen Version schwierig.
Johannes

creed steiger
Beiträge: 958
Registriert: Mo 11. Sep 2006, 22:56

Beitrag von creed steiger »

monta hat geschrieben:Aber soweit ich weiß, sind diese ganzen Möglichkeiten alle nicht 100% vorhanden, bzw. müssen nicht immer eindeutig ein Betriebssystem identifizieren, Soweit ich weiß, wurde es mit der genauen Version schwierig.
Sicher.
lsb_release gibts nur bei neueren Distros.

Auch das könnte Ansatzpunkte geben wo nach den Versionsinfos gesucht werden kann:
http://www.reductivelabs.com/trac/puppe ... nameRecipe" onclick="window.open(this.href);return false;

pluto
Lazarusforum e. V.
Beiträge: 7192
Registriert: So 19. Nov 2006, 12:06
OS, Lazarus, FPC: Linux Mint 19.3
CPU-Target: AMD
Wohnort: Oldenburg(Oldenburg)

Beitrag von pluto »

müsste es den keine Umgebeungs Variable geben wo das drin steht ?
MFG
Michael Springwald

creed steiger
Beiträge: 958
Registriert: Mo 11. Sep 2006, 22:56

Beitrag von creed steiger »

pluto hat geschrieben:müsste es den keine Umgebeungs Variable geben wo das drin steht ?
Warum?

pluto
Lazarusforum e. V.
Beiträge: 7192
Registriert: So 19. Nov 2006, 12:06
OS, Lazarus, FPC: Linux Mint 19.3
CPU-Target: AMD
Wohnort: Oldenburg(Oldenburg)

Beitrag von pluto »

Ich habe einige Variablen gesehen, aber nirgend steht drin was ich nutze...

Ich kann dir die Desktop Engine nennen mach mal ein env..... in der Commandoline !
MFG
Michael Springwald

Targion
Beiträge: 688
Registriert: Mi 3. Okt 2007, 21:00
OS, Lazarus, FPC: Linux (L 0.9.29 FPC 2.4.2)
CPU-Target: x86_64

Beitrag von Targion »

Das ist ja schlimmer als die Ermittlung der Windows-Version!
Ich bräuchte für mein Programm:
1.) Den Distributionsnamen (mit cat /proc/version ermittelt)
2.) Den Distributions"kern", also Debian, RedHat oder andere
3.) Linux-Version (mit cat /proc/version geht das schon)
4.) Das Packetsystem, RPM oder APT (.deb oder .rpm)
Gibt es wenigstens für Punkt 4 eine Lösung? Vielen Dank schon mal und frohes neues Jahr! :)

monta
Lazarusforum e. V.
Beiträge: 2809
Registriert: Sa 9. Sep 2006, 18:05
OS, Lazarus, FPC: Linux (L trunk FPC trunk)
CPU-Target: 64Bit
Wohnort: Dresden
Kontaktdaten:

Beitrag von monta »

Seh ich das Richtig, den Distributionsnamen kannst du schon ermitteln?

Ne Lösung wäre eventuell, eine Liste der entsprechenden Distributionen und deren Paketsystem. Das ganze deckt dann die gebräuchlichen ab und sollte eine Distributionnicht in der Liste sein, könntest du doch einfach den User fragen, was er benutzt?
Johannes

Targion
Beiträge: 688
Registriert: Mi 3. Okt 2007, 21:00
OS, Lazarus, FPC: Linux (L 0.9.29 FPC 2.4.2)
CPU-Target: x86_64

Beitrag von Targion »

Hmm. Könnte man natürlich so machen, das ist do aber sehr umständlich. Wenn es aber keine andere Lösung gibt, dann schreibe ich gleich eine Bibliothek dafür, sodass man die Informationen in jedem Programm verwenden kann.

Targion
Beiträge: 688
Registriert: Mi 3. Okt 2007, 21:00
OS, Lazarus, FPC: Linux (L 0.9.29 FPC 2.4.2)
CPU-Target: x86_64

Beitrag von Targion »

Hallo! Ich bin's wieder.
Könntet ihr mir, damit ich ein Script bauen kann, welches die Linux-Distribution ermittelt, den Inhalt der Datei /proc/version (vorher Rechte setzen) per PN oder über das Forum senden?
Für SuSe Linux und Ubuntu habe ich die Daten schon, interessant wäre es, wenn ihr eine andere Distribution nutzt.

monta
Lazarusforum e. V.
Beiträge: 2809
Registriert: Sa 9. Sep 2006, 18:05
OS, Lazarus, FPC: Linux (L trunk FPC trunk)
CPU-Target: 64Bit
Wohnort: Dresden
Kontaktdaten:

Beitrag von monta »

ich send dir gleich mal für Xubuntu und Debian die Datei.

Debian (etch):

Code: Alles auswählen

Linux version 2.6.18-5-k7 (Debian 2.6.18.dfsg.1-13etch4) (dannf@debian.org) (gcc version 4.1.2 20061115 (prerelease) (Debian 4.1.1-21)) #1 SMP Wed Oct 3 00:47:27 UTC 2007
Xubuntu (7.10):

Code: Alles auswählen

Linux version 2.6.22-14-generic (buildd@palmer) (gcc version 4.1.3 20070929 (prerelease) (Ubuntu 4.1.2-16ubuntu2)) #1 SMP Sun Oct 14 23:05:12 GMT 2007
Zuletzt geändert von monta am Do 3. Jan 2008, 18:31, insgesamt 1-mal geändert.
Johannes

Antworten