GridTalk.de
OpenSimulator vom Manni - Druckversion

+- GridTalk.de (https://www.gridtalk.de)
+-- Forum: Werkstatt (https://www.gridtalk.de/forumdisplay.php?fid=4)
+--- Forum: Technik (https://www.gridtalk.de/forumdisplay.php?fid=25)
+---- Forum: Linux (https://www.gridtalk.de/forumdisplay.php?fid=26)
+---- Thema: OpenSimulator vom Manni (/showthread.php?tid=4234)

Seiten: 1 2 3 4 5 6 7 8 9 10 11 12 13


RE: OpenSimulator vom Manni - Pius Noel - 13.01.2023

Mir ist immer noch nicht klar, woher diese ID0 stammt. Wird diese durch den Viewer generiert?

Edit: 17:35: ich habe es in einem Draft-Dokument im SL-Wiki gerade gefunden. Gab's wohl schon immer und ewig, Sie wird aus der Hardware generiert und in den Login-Informationen mitgegeben.


RE: OpenSimulator vom Manni - Bogus Curry - 14.01.2023

(13.01.2023, 19:18)Pius Noel schrieb: Mir ist immer noch nicht klar, woher diese ID0 stammt. Wird diese durch den Viewer generiert?

Edit: 17:35: ich habe es in einem Draft-Dokument im SL-Wiki gerade gefunden. Gab's wohl schon immer und ewig, Sie wird aus der Hardware generiert und in den Login-Informationen mitgegeben.

Siehste, das wusste ich auch nicht, kenne nur die User-ID ...


RE: OpenSimulator vom Manni - Manfred Aabye - 14.01.2023

Ich kann so etwas nicht öffentlich diskutieren, da daraus ersichtlich wird, wie das umgangen werden kann.
Die Mac bannen ist nun unbrauchbar, da jetzt jeder weis wie man es umgeht.
Bei der ID0 sieht es besser aus und so soll es bleiben.


RE: OpenSimulator vom Manni - Anachron - 14.01.2023

(14.01.2023, 18:16)Manfred Aabye schrieb: Ich kann so etwas nicht öffentlich diskutieren, da daraus ersichtlich wird, wie das umgangen werden kann.
Die Mac bannen ist nun unbrauchbar, da jetzt jeder weis wie man es umgeht.
Bei der ID0 sieht es besser aus und so soll es bleiben.

Das nennt man "Security by obscurity" Dodgy


RE: OpenSimulator vom Manni - Manfred Aabye - 27.01.2023

opensim-0.9.2.2Dev-379-g61cde32

* Verschiedene kleine Änderungen zur Reduzierung der CPU-Last

* Mehrere Änderungen an der llEmail-Unterstützung. Sichere SMTP-Verbindungen (endlich),
mehrere Drosselungen wie die Anzahl der E-Mails über SMTP oder vom selben Eigentümer,
an dieselbe Prim-Adresse oder an dieselbe SMTP-Adresse

* Neue Skriptfunktionen llSHA256String; llGetLinkKey, llGetInventoryAcquireTime, ...

* Inventarbibliotheksfunktionen, die für neuere Viewer erforderlich sind.

Bekannte Probleme:

* llEmail sendet immer noch nur an Prims in derselben Region oder Regionen
in derselben OpenSimulator-Instanz.


RE: OpenSimulator vom Manni - Manfred Aabye - 27.01.2023

Was macht Manni gerade?

Das Problem, was häufiger auftaucht, sind defekte Datenbanken.
Beim Backup solcher Datenbanken, hört dies Backup genau an der Stelle auf, wo sich der Fehler befindet.
Wenn sich dieser am Ende einer Datenbank befindet, bemerkt man dies kaum.
Ein Problem bei der Reparatur ist die Größe der Datenbank.
Hierzu hab ich im opensimMULTITOOL Funktionen eingebaut, die eine Datenbank Tabellenweise sichert.

db_backuptabellen aufzurufen mit /opt/opensim.sh db_backuptabellen username password databasename
dies speichert Tabellen, die in der Datenbank vorhanden sind, in einzelnen Dateien mit dem Namen der Tabelle.

db_restorebackuptabellen aufzurufen mit /opt/opensim.sh db_restorebackuptabellen username password databasename newdatabasename
die tabellenweise gesicherte Datenbank, in einer neuen Datenbank zusammensetzen. Bitte die neue Datenbank vorher anlegen.

Jetzt arbeite ich gerade daran, diese mächtig große Tabelle assets zu zerlegen, um die Bereiche wo sich Fehler befinden, besser lokalisieren zu können, sowie einen Umzug zu vereinfachen.

db_backuptabellentypen aufzurufen mit /opt/opensim.sh db_backuptabellentypen username password databasename
dies speichert die Tabelle assets nach Asset Typen in mysql sql Backupdateien,
mit dem Namen des Assettyps gepackt als zip.
Diese können einzeln ohne Probleme wieder in die alte Datenbank,
oder in eine neue eingefügt werden.

Nachtrag: Warum ich mir das antue, Datenbanken so zu zerlegen.
Je kleiner die Datenbank, je sicherer ist der Down und Upload der Dateien.
Auch wird eine Datenbank, so zu einem Baukasten, der bei der Wiederherstellung einzelner Bereiche,
oder ein Neubau einer maßgeschneiderten neuen Datenbank hilft.


RE: OpenSimulator vom Manni - Manfred Aabye - 30.01.2023

Upgrade mit dem opensimMULTITOOL

Dies behebt auch den opensim Fehler new script (Neues Skript) nicht in der Datenbank.

Download opensim-0.9.2.2.379.zip
https://eu2.contabostorage.com/52253033fae547669ac2197e11daac60:bigmanzai/opensim-0.9.2.2.379.zip
oder
https://www.mediafire.com/file/vyvevpcvnst8rvt/opensim-0.9.2.2.379.zip/file

cd /opt
/opt/opensim.sh

In das Buildmenu wechseln.
Hier auswählen: Opensimulator aus zip upgraden
Versionsnummer 379 eingeben.

Alle Regionen, die in der SimulatorList.ini eingetragen sind, werden nun automatisch upgegradet.

Nicht laufende Simulatoren können folgendermaßen upgegradet werden:
/opt/opensim.sh oscopy sim7
Dies würden den OpenSimulator der sich im Verzeichnis sim7 befindet upgraden.
(Dieser sollte nicht laufen, da sonst nicht alle Dateien kopiert werden können.)

new script (Neues Skript)
PHP-Code:
// new script

default
{
    
touch_start(integer num_detected)
    {
        
llSay(0"Hello, Avatar!");
    }


Tipps, einfacher Linux Server Umzug:
Kopieren von einem entfernten Server auf einen neuen Server
scp benutzername@beispiel_oder_IP.de:/opt/backup/dateiname.sql /opt/backup
oder andersherum
scp /opt/backup benutzername@beispiel_oder_IP.de:/opt/backup/dateiname.sql

Problem mysqldump nicht richtig eingestellt.
Das Problem macht sich durch abgehackte, defekte Assets bemerkbar.

Hier eine gute einstellung für OpenSim Datenbanken:
/etc/mysql/conf.d/mysqldump.cnf
PHP-Code:
[mysqldump]
quick
quote
-names
max_allowed_packet
=2147483648 



RE: OpenSimulator vom Manni - Manfred Aabye - 30.01.2023

OpenSimulator Konfigurationen

Ich habe mal geschaut wie die Konfigurationen im Sourcecode des OpenSimulators aufgerufen werden,
und zwar über den Wert "Include-" dahinter kann man anscheinend schreiben, was man will.

Wenn man eine Konfigurationsdatei namens Const.ini im /bin Verzeichniss
des OpenSimulator/Robust erstellt kann man sie mit dem Befehl:

OpenSim.ini und Robust.ini
PHP-Code:
[Const]
Include-const = 
"Const.ini" 

GridCommon.ini
PHP-Code:
[Const]
Include-const = 
"../Const.ini" 

nachladen.

Die ganze Const.ini (Für alle Konfig´s) könnte dann so aussehen:
PHP-Code:
[Const]
    ; 
this section defines constants for grid services
    
to simplify other configuration files default settings

    
;# {BaseHostname} {} {BaseHostname} {"example.com" "127.0.0.1"} "127.0.0.1"
    
BaseHostname "MyGridName .de"

    
;# {BaseURL} {} {BaseURL} {"http://${Const|BaseHostname}} "http://${Const|BaseHostname}"
    
BaseURL http://${Const|BaseHostname}

    
; If you run a gridseveral services should not be availble to worldaccess to them should be blocked on firewall
    
PrivatePort should closed at the firewall.

    ;
# {PublicPort} {} {PublicPort} {8002 9000} "8002"
    
PublicPort "8002"

    
you can also have them on a diferent url IP
    
;# {PrivURL} {} {PrivURL} {"http://${Const|BaseURL}} "${Const|BaseURL}"
    
PrivURL = ${Const|BaseURL}

    ;
grid default private port 8003not used in standalone
    
;# {PrivatePort} {} {PrivatePort} {8003} "8003"
    
port to access private grid services.
    ; 
grids that run all their regions should deny access to this port
    
from outside their networksusing firewalls
    PrivatePort 
"8003"

    
;# {MoneyPort} {} {MoneyPort} {8008} "8008"
    
MoneyPort "8008"
    
    
;# {SimulatorPort} {} {SimulatorPort} {${Const|SimulatorPort}} "${Const|SimulatorPort}"
    
SimulatorPort "9010"
    
    
; If this is the robust configurationthe robust database is entered here.
    ; If 
this is the OpenSim configurationthe OpenSim database is entered here.

    ; 
The Database ${Const|MysqlDatabase
    
MysqlDatabase "databasename"
    
    
The User ${Const|MysqlUser}
    
MysqlUser "databaseUSERname"
    
    
The Password ${Const|MysqlPassword}
    
MysqlPassword "databasePasswd"
    
    
The Region Welcome ${Const|StartRegion}
    
StartRegion "Welcome"
    
    
;# Grid name ${Const|Simulatorgridname}
    
Simulatorgridname "MyGridName"
    
    
The Simulator grid nick ${Const|Simulatorgridnick}
    
Simulatorgridnick "MGN" 

Die MySQL Bereiche von Robust.ini und GridCommon.ini sehen dann so aus:
PHP-Code:
StorageProvider "OpenSim.Data.MySQL.dll"
ConnectionString "Data Source=localhost;Database=${Const|MysqlDatabase};User ID=${Const|MysqlUser};Password=${Const|MysqlPassword};Old Guids=true;" 

Der Rest ist eigentlich selbsterklärend.

Habs gerade laufen, funktioniert gut und für jeden weiteren Simulator,
muss nur ganz wenig Konfigurationsarbeit gemacht werden.
Halt nur noch den Port und die Datenbanknamen ändern für jeden Simulator.

Wenn ich das ausgiebig durchgetestet habe, stelle ich diese zur Verfügung.

So ist es erst einmal experimentell:
https://github.com/BigManzai/OpenSim-Shell-Script/tree/main/OpenSimConfig2023


RE: OpenSimulator vom Manni - Sleimer Akina - 31.01.2023

(30.01.2023, 22:57)Manfred Aabye schrieb: OpenSimulator Konfigurationen

Ich habe mal geschaut wie die Konfigurationen im Sourcecode des OpenSimulators aufgerufen werden,
und zwar über den Wert "Include-" dahinter kann man anscheinend schreiben, was man will.

Wenn man eine Konfigurationsdatei namens Const.ini im /bin Verzeichniss
des OpenSimulator/Robust erstellt kann man sie mit dem Befehl:

OpenSim.ini und Robust.ini
PHP-Code:
[Const]
Include-const = 
"Const.ini" 

GridCommon.ini
PHP-Code:
[Const]
Include-const = 
"../Const.ini" 

nachladen.

Die ganze Const.ini (Für alle Konfig´s) könnte dann so aussehen:
PHP-Code:
[Const]
    ; 
this section defines constants for grid services
    
to simplify other configuration files default settings

    
;# {BaseHostname} {} {BaseHostname} {"example.com" "127.0.0.1"} "127.0.0.1"
    
BaseHostname "MyGridName .de"

    
;# {BaseURL} {} {BaseURL} {"http://${Const|BaseHostname}} "http://${Const|BaseHostname}"
    
BaseURL http://${Const|BaseHostname}

    
; If you run a gridseveral services should not be availble to worldaccess to them should be blocked on firewall
    
PrivatePort should closed at the firewall.

    ;
# {PublicPort} {} {PublicPort} {8002 9000} "8002"
    
PublicPort "8002"

    
you can also have them on a diferent url IP
    
;# {PrivURL} {} {PrivURL} {"http://${Const|BaseURL}} "${Const|BaseURL}"
    
PrivURL = ${Const|BaseURL}

    ;
grid default private port 8003not used in standalone
    
;# {PrivatePort} {} {PrivatePort} {8003} "8003"
    
port to access private grid services.
    ; 
grids that run all their regions should deny access to this port
    
from outside their networksusing firewalls
    PrivatePort 
"8003"

    
;# {MoneyPort} {} {MoneyPort} {8008} "8008"
    
MoneyPort "8008"
    
    
;# {SimulatorPort} {} {SimulatorPort} {${Const|SimulatorPort}} "${Const|SimulatorPort}"
    
SimulatorPort "9010"
    
    
; If this is the robust configurationthe robust database is entered here.
    ; If 
this is the OpenSim configurationthe OpenSim database is entered here.

    ; 
The Database ${Const|MysqlDatabase
    
MysqlDatabase "databasename"
    
    
The User ${Const|MysqlUser}
    
MysqlUser "databaseUSERname"
    
    
The Password ${Const|MysqlPassword}
    
MysqlPassword "databasePasswd"
    
    
The Region Welcome ${Const|StartRegion}
    
StartRegion "Welcome"
    
    
;# Grid name ${Const|Simulatorgridname}
    
Simulatorgridname "MyGridName"
    
    
The Simulator grid nick ${Const|Simulatorgridnick}
    
Simulatorgridnick "MGN" 

Die MySQL Bereiche von Robust.ini und GridCommon.ini sehen dann so aus:
PHP-Code:
StorageProvider "OpenSim.Data.MySQL.dll"
ConnectionString "Data Source=localhost;Database=${Const|MysqlDatabase};User ID=${Const|MysqlUser};Password=${Const|MysqlPassword};Old Guids=true;" 

Der Rest ist eigentlich selbsterklärend.

Habs gerade laufen, funktioniert gut und für jeden weiteren Simulator,
muss nur ganz wenig Konfigurationsarbeit gemacht werden.
Halt nur noch den Port und die Datenbanknamen ändern für jeden Simulator.

Wenn ich das ausgiebig durchgetestet habe, stelle ich diese zur Verfügung.

So ist es erst einmal experimentell:
https://github.com/BigManzai/OpenSim-Shell-Script/tree/main/OpenSimConfig2023

Die Idee dahinter bzw. den Ansatz finde ich gut, hat nur einen kleinen Nachteil,
dadurch das die MySQL Daten Zentral eingegeben werden, und geladen werden im Robust und in der OpenSim bzw. Gridcommon, müsste man das mühseelig ändern, bei mir z.b läuft jede Sim 1. in einem eigenen OpenSim.exe und B. hat jede Sim eine eigene MySQL Datenbank, die so getrennt vom Robust ist Wink
Klar ist es mehr aufwand dadurch, aber dadurch bleibt der Robust relativ sauber, und die assets werden dezentral für jede opensim für sich gespeichert.


RE: OpenSimulator vom Manni - Manfred Aabye - 01.02.2023

Robust und jeder Simulator hat seine eigene Datenbank.
Wie viele Regionen pro Simulator laufen soll, muss jeder selber entscheiden.
Ich kann nur den Tipp geben, Shops, Clubs und ähnlich stark beanspruchte Region, immer einen extra Simulator geben.