Christian Hergert (
zur Verknüpfung mehrerer Linux-Geräte in einem Heimnetzwerk, wenn Sie auf allen Computern auf Dateien und Anwendungsdaten zugreifen müssen, Ihre Daten aber nicht an Cloud-Dienste Dritter übertragen möchten. Der Projektcode ist in C geschrieben und
Bonsai umfasst den Hintergrundprozess bonsaid und die Bibliothek libbonsai mit Funktionen zur Bereitstellung cloudähnlicher Dienste. Der Hintergrundprozess kann auf der Hauptarbeitsstation oder einem Raspberry Pi-Minicomputer gestartet werden, der ständig im Heimnetzwerk läuft und mit einem drahtlosen Netzwerk und einem Speicherlaufwerk verbunden ist. Die Bibliothek wird verwendet, um GNOME-Anwendungen über eine High-Level-API Zugriff auf Bonsai-Dienste zu ermöglichen. Für die Verbindung mit externen Geräten (andere PCs, Laptops, Telefone, Internet-of-Things-Geräte) wird das Dienstprogramm bonsai-pair vorgeschlagen, mit dem Sie ein Token für die Verbindung zu Diensten generieren können. Nach der Bindung wird ein verschlüsselter Kanal (TLS) für den Zugriff auf Dienste organisiert, in denen serialisierte D-Bus-Anfragen verwendet werden.
Bonsai beschränkt sich nicht nur auf die gemeinsame Nutzung von Daten, sondern kann auch zum Erstellen systemübergreifender Objektspeicher mit Unterstützung für die teilweise Synchronisierung zwischen Geräten, Transaktionen, sekundären Indizes und Cursorn sowie der Möglichkeit verwendet werden, systemspezifische lokale Änderungen über eine gemeinsame zu legen gemeinsame Datenbank. Auf dieser Basis wird der Shared Object Storage aufgebaut
В настоящее время предложен только сервис для доступа к файловому хранилищу, но в дальнейшем планируется реализовать и другие сервисы для доступа к почте, календарю-планировщику, заметкам (ToDo), альбомам с фотографиями, коллекциям музыки и видео, системе поиска, резервному копированию, VPN usw. Wenn Sie Bonsai beispielsweise auf verschiedenen Computern in GNOME-Anwendungen verwenden, können Sie die Arbeit mit einem synchronisierten Kalender, Planer oder einer gemeinsamen Fotosammlung organisieren.
Source: opennet.ru