Wie bereits erwähnt, betreiben wir in unserem Unternehmen mehr als 500 Ubuntu-PCs. Häufig haben wir unsere Unternehmensanzeigen als Hintergrundbild auf dem Clientcomputer festgelegt. Es ist schwierig für uns, das Hintergrundbild auf all diesen Rechnern einzeln zu ändern und es ist auch schwierig für uns, Skripte auf allen Rechnern über SSH auszuführen, um das Hintergrundbild zu ändern. Gibt es eine Möglichkeit, einen Server so einzurichten, dass, wenn wir das Hintergrundbild auf dem Server ändern, dies auf allen Clients durchgeführt werden sollte? Wenn es möglich ist, sparen wir Zeit und Mühe. Kann jemand helfen? Danke im Voraus..
13
Antworten:
Richten Sie auf allen Computern, auf denen ein Skript ausgeführt wird , einen Cron-Job ein, bei dem Sie einen bestimmten Ort auf neue Images überprüfen. Beispielskript (ungetestet) mit wget und ftp:
Grundsätzlich muss die 2. Zeile an die Methode angepasst werden, mit der Sie das Bild manuell auf die Maschinen laden. Richten Sie dann
cron
dieses Skript ein, um stündlich oder einmal täglich nach neuen Bildern zu suchen.Man könnte es sogar einen holen einrichten Skript , wo das Skript auf dem Client - Rechner excecuted wird und es holt dann die Bilder und ändert den Hintergrund mit gconftool-2. Auf diese Weise können Sie mehr ausführen als nur einen Hintergrund ändern.
Sie können einen Cron-Job mit erstellen
sudo crontab -e
. Dies wird eine Zeile ähnlich der folgenden anzeigen:(m Minuten, h Stunden, dom Tag des Monats, mon Monat, dow Tag der Woche) und darunter könnte man hinzufügen ...
oder
hat
/path/to/executable
jede Stunde auf der Stunde. Wohlgemerkt: Ein Skript, das Sie hier einfügen, versteht die Pfadvariable nur, wenn Sie sie einschließen. Sie können dies oben einfügen, um Folgendes$SHELL
einzuschließen$PATH
:Andernfalls müssen Sie sicherstellen, dass Ihr Skript vollständige Pfadnamen verwendet, um Befehle auszuführen. Weitere Informationen zu cron finden Sie im Ubuntu-Wiki .
Sie können das
/etc/cron.hourly
Verzeichnis auch verwenden , um dort ein Skript abzulegen, das stündlich ausgeführt wird. Beispielthemen zum letzten Teil: Was stimmt nicht mit meiner Konfiguration von cron.hourly? und Cron.hourly läuft nicht .quelle
Es kann sich lohnen, ein Remote-Verwaltungsframework wie puppet zu installieren . Die ordnungsgemäße Installation und Konfiguration für Ihr Netzwerk dauert in der Regel einige Zeit, aber wenn es erst einmal vorhanden ist, können Sie ganz einfach Dateien auf alle Computer (oder nur einen Teil davon) kopieren, Skripte auf diesen ausführen und so weiter.
quelle
Sie können die Hintergrundeinstellung als obligatorisch festlegen, sodass Benutzer ihren Hintergrund nicht anpassen können.
In Ubuntu 11.04 und früher sollte dieser Befehl funktionieren :
In Ubuntu 11.10 (oder einem GNOME 3 - System), sollten Sie in der Lage sein , dies zu tun mit :
Erstellen Sie eine Datei / etc / dconf / profile / user mit folgendem Inhalt:
Nehmen Sie eine Standardeinstellung vor, indem Sie eine Datei /etc/dconf/db/site.d/background mit folgendem Inhalt erstellen:
Und schließlich machen Sie den Standard verbindlich, indem Sie /etc/dconf/db/site.d/locks/background mit den folgenden Inhalten erstellen:
dconf-Einstellungen müssen kompiliert werden, damit sie ausgeführt werden können. Wenn
sudo dconf update
Sie dies zum ersten Mal ausführen, müssen Sie einen Neustart durchführen, um den Effekt zu sehen. Gegenwärtig gibt es einen Fehler, bei dem den Benutzern immer noch die normale Hintergrundauswahl angezeigt wird. es wird den Hintergrund einfach nicht wirklich ändern.Kombinieren Sie diese Lösung mit einer Marionette, um diese Einstellung auf alle Computer in Ihrem Unternehmen zu übertragen!
quelle
Hier ist meine Lösung für Ubuntu 11.10 (oder ein beliebiges GNOME 3-System):
Es gibt zwei logische Teile. Zuerst das Hintergrundbild abrufen, dann das Hintergrundbild vom heruntergeladenen Speicherort festlegen. einfach!
quelle