Linuxversion von Symcon

Hallo,

ich wollte mal fragen ob es einen bestimmten Grund für die Verzeichnisstruktur unter Linux gibt. Diese sieht für mich extrem chaotisch aus und nicht den üblichen Standards entsprechend. Warum hat man nicht wie unter Windows alles zusammen in einem Ordner unter /opt/symcon gepackt. Alternativ wäre natürlich eine saubere Aufteilung nach FHS gut.

Könnte man übrigens auch das Startscript um einen Respawn ergänzen? Das ist meiner Meinung nach für einen solchen Dienst sinnvoll, vor allem jetzt wo der Dienst noch so instabil läuft und regelmäßig abkachelt.

LG Traxanos

Ich würde lieber die Frage beantworten, warum wir das so schlecht in Windows aufgetrennt haben. Zur Zeit von IP-Symcon 1.x war der gute ProgramData Ordner noch kein verbreitetes Konzept, sodass wir alles direkt im Programmordner belassen haben. Meine Wunschvorstellung wäre, dass wir in Zukunft auch unter Windows die Programdateien und die Benutzerdaten (=Konfiguration) trennen.

Du hast unter Linux eine sehr klare Auftrennung.

/etc/symcon/* beinhaltet alle Dateien die wir installieren und ihr nicht anfassen solltest.
/usr/share/symcon/* beinhaltet alle Dateien, die IP-Symcon im Zuge der Konfiguration erstellt hast und die du in dein Backup tun solltest.

paresy

Oohhh nö. Diesbezüglich ist IPS vielleicht nicht modern aber eines der angenehmsten Programme.
Ganzen Ordner sichern / ganzen Ordner rücksichern -> alles läuft kein Problem.
Egal was du suchst du findest ALLES im IPSymcon Ordner.

Diese Mode Programmteile über die ganze Festplatte - und womöglich auch noch in unendlich vielen Regestryzweigen zu verteilen ist ekelhaft. Wennst da was suchst kriegst regelmäßig die Kriese. Von den Zickereien wegen mit Benutzerrechten mal ganz abgesehen.
Ich hasse das.

Nicht alles was modern ist ist auch gut.
gruß
bb

Würde aber das Problem lösen, dass manche noch 100 Jahre alte DLLs aus IP-Symcon 1.x mitschleppen :slight_smile:

paresy

/etc/symcon/* beinhaltet alle Dateien die wir installieren und ihr nicht anfassen solltest.
/usr/share/symcon/* beinhaltet alle Dateien, die IP-Symcon im Zuge der Konfiguration erstellt hast und die du in dein Backup tun solltest.

Aber das ist ja das war mich wundert. Normalerweise liegt eben unter etc das was der User konfigurieren darf und unter /usr/share das was der Benutzer eben nicht anfassen soll. Das könnte euch irgendwann auf die Füße fallen, da da Debian diesen /etc ordern mit Logik versehen hat, so das z.B. bei einem update ggf. eine Diff-Abfrage kommen kann. Außerdem sollten einige Daten die vom Dienst erstellt und gepflegt werden unter /var/lib/symcon liegen (z.B. die prebuild-php file).

Meiner persönlichen Meinung nach sehe ich das wie bbernhard, mir wäre ein gemeinsamer /opt Ordner lieber, was natürlich Geschmacksache ist. Aber als ehemaliger Paketverwalter für eine Distribution finde ich das sehr erschreckend wie die Ordnerstruktur jetzt ist.

EDIT:
Ich kann euch nur mal diesen Artikel empfehlen:

Das ist zwar nur ein Ausschnitt aus dem FHS, aber daran kann man sich gut orientieren. Ich hoffe Ihr überdenkt nochmal euer vorgehen, wäre doch blöd wenn ihr später feststellt, dass es mit der falschen Struktur irgendwann richtig Probleme gibt und ihr dann korrigieren müsstet. Jetzt ist es noch Beta.

Da muss ich meinem Vorschreiber Recht geben, die Verzeichnissstruktur unter Unix/Linux ist vorgegeben und man sollte sich als Softwareentwickler da auch dran halten. Software hat unter /etc nichts zu suchen.

Bei mir läuft auch schon mehr als 15 Jahre Linux.
Die Filesystem-Struktur ist nicht gerade in Stein gemeiselt.
Aber als ich das erstemal IPS unter Linux installiert hab, war ich auch erstaunt über das /usr/share als Datenverzeichnis.
Als ich die Userdaten bzw. Scripte gesucht habe, hab ich auch zuerst in /etc/symcon und dann nach /var/lib/symcon gesucht.
Das Verzeichnis /usr/share/symcon ist zumindest ungewöhnlich.

Wenn man Daten und Anwendung nah beieinander halten will, dann ist /opt unter Linux eigentlich die beste Wahl.
Vergleichbare Software wie fhem oder openhab werden standardmässig zumindest unter /opt abgelegt.

Bei mir läuft symcon in einem Docker-Container. Daher ist es mir persönlich egal. Viele werden es aber auf einem Raspi am laufen haben und da denke ich auch, dass /opt hier die bessere Wahl ist.

Gruß
Dieter

Ich schaue mir die Sache noch einmal an - Ihr habt Recht, dass es im Beta-Stadium noch der beste Zeitpunkt ist, um dieses Problem zu korrigieren :slight_smile:

paresy

Wollte mal hören, ob Ihr das noch auf dem Schirm habt?

+1 das sich die Struktur vor der Final noch nach FHS richtet :slight_smile: Da habt ihr sicherlich was vertauscht

Hi,

so mag ich das!
Konstruktiv mit Kritik umgehen.
Auch bin ich froh nicht der einzige zu sein, den das /etc Verzeichnis wundert.

Gibt es eigentlich auch ein Vorhaben symcon nicht zwingend als root laufen zu lassen?
Gerade mit Modulen von „Laien“ ist das schon nicht ohne…

Gruß,
Thorsten

Ich wollte noch mal nach hören wie es mit diesem Thema aussieht. Wie gesagt, wäre es fatal, damit produktiv zu gehen.

Nach einer sehr netten Telefonkonferenz mit traxanos werden wir noch vor dem Release die Pfade anpassen, um mehr der FSH von Linux zu entsprechen. Beim Update werden somit demnächst eure Daten verschoben. Ich werde die Änderungen dann auch entsprechend im Changelog rot vermerken:


/usr/bin/symcon - Executable
/usr/share/symcon/ - Static Data (ehemals /etc/symcon/)
/var/lib/symcon/ - Variable Data (ehemals /usr/share/symcon/)
/var/log/symcon/ - Log Files

paresy

Vielen Dank! Gute Entscheidung :slight_smile:

Sehr gut :slight_smile:

So passt das bei Weitem besser

Gruß
Dieter

Seeeeehr gute Entscheidung :cool: :slight_smile: So ist man es gewohnt und so passt es :slight_smile:

Grüße,
Chris

Von mir gibt es auch einen Daumenhoch!

Sehr gut, das sieht schon viel gewohnter aus :slight_smile:

Hi,

Sehr gut, vielen Dank dafür.

Mit freundlichen Grüßen
Kris

So passt das, alles andere wäre unsauber gewesen.