Das ist einfacher als ich vorher gedacht hatte…
- Backup erstellen:
$ cp win7.img win7.img.bak
- Imagedatei Vergroessern:
$ qemu-img resize win7.img +20GB
- Partition vergroessern: Parted Magic herunterladen, starten, und mit GParted machen
Das ist einfacher als ich vorher gedacht hatte…
$ cp win7.img win7.img.bak |
$ qemu-img resize win7.img +20GB |
Ich habe nun schon so einiges ueber einen selbstgehosteten Sync-Service fuer Firefox geschrieben:
Nachdem ich seit neustem Besitzer eines Google Nexus 4 bin und gerne Firefox Sync auch unter Android benutzen moechte, war ich gezwungen mein aktuelles Setup zu aktualisieren auf die Originalimplementierung von Mozilla. Vorher wurde mir auf meinem Handy immer von Firefox gesagt, dass diese Version von Sync nicht mehrere Geraete unterstuetzt.
Ich bin auf diese Anleitung gestossen und unter Debian sieht das ganze wie folgt aus:
Installation von Paketen:
$ aptitude install python-virtualenv sqlite3 mercurial |
Einrichten eines Benutzeraccounts:
$ adduser --system --home /opt/ffsync --shell /bin/false --group ffsync |
Erstellen der benoetigten Verzeichnisse:
$ su ffsync $ cd /opt/ffsync $ mkdir {data,tmp} $ chmod 775 tmp $ hg clone https://hg.mozilla.org/services/server-full $ cd server-full $ make build |
Editieren und Anpassen der folgenden Konfigurationsdateien:
sync.wsgi
os.environ['PYTHON_EGG_CACHE'] = '/opt/ffsync/tmp/python-eggs' |
developement.ini
[handler_syncserver_errors] args = (‘/opt/ffsync/tmp/sync-error.log’,) |
etc/sync.conf
[storage] sqluri = sqlite:////opt/ffsync/data/sync.db [auth] sqluri = sqlite:////opt/ffsync/data/sync.db [nodes] fallback_node = http://sync.example.net/ |
Ich habe hier nun noch die Rechte fuer den Ordner gesetzt:
$ chown -R ffsync.www-data /opt/ffsync |
Zum Schluss noch Apache einrichten um darueber alles laufen zu lassen. Dafuer:
$ aptitude install libapache2-mod-wsgi |
Und einen entsprechenden vhost erstellen:
<VirtualHost *:80> ServerName sync.example.net ServerAdmin webmaster@example.net DocumentRoot /opt/ffsync/server-full CustomLog /var/log/apache2/ffsync_access.log combined ErrorLog /var/log/apache2/ffsync_error.log Order deny,allow Allow from all WSGIProcessGroup ffsync WSGIDaemonProcess ffsync user=ffsync group=ffsync processes=2 threads=25 WSGIPassAuthorization On WSGIScriptAlias / /opt/ffsync/server-full/sync.wsgi </VirtualHost> |
Nach einem Neustart von Apache konnte ich dann das Geraet trennen und anschliessend mich neu mit dem Server verbinden. Achtet auf den Slash am Ende der URL. Es wurde alles automatisch synchronisiert. Auch die Synchronisation mit Firefox auf meinem Android Handy klappte problemlos.
Zum Schluss habe ich noch die Funktion deaktiviert, mit der sich neue Benutzer selbststaendig anmelden koennen. Dafuer in der /opt/ffsync/server-full/etc/sync.conf noch in der auth Sektion die entsprechende Option einkomentieren
[auth] allow_new_users = false |
Danke nochmal an OpenShots an dieser Stelle fuer die Anleitung :-)
Wenn man Software von Hand und nicht aus den Repositories installiert, muss man sich auch von Hand um die Updates kuemmern. Da ich kein Plugin gefunden habe, dass mir den Joomla Update Status ueberprueft und in Nagios anzeigt, habe ich fix eines selber geschrieben. Es muss als passive Check aufgerufen werden, da es mit einer lokalen Datei auf dem Server ueberprueft, welche Version installiert ist. Das Plugin hat bei den Updates auf 2.5.7 und 2.5.8 verlaesslich angezeigt das ein Update existiert. Extensions sind nicht mit inbegriffen!
<?php /*** * Simple and dirty php script to check if the local joomla version * is up to date. This script only works on the server, were Joomla * is installed. If Nagios is not running on the same server, you * possibly need to run it via NSCA or similar systems. * * @version: 0.1 * * @author: jan.toenjes@intranda.com * * @changelog: initial version * ***/ /*** * CONFIGURATION * * localVersionFile: set the full path to the version.php file from your Joomla installation * remoteVersionUrl: set the link to the list.xml file from the Joomla core update server ***/ $localVersionFile = "/var/www/joomla/libraries/cms/version/version.php"; $remoteVersionUrl = "http://update.joomla.org/core/list.xml"; // get local Joomla Version define('_JEXEC', 1); require "$localVersionFile"; $jversion = new JVersion; $localJoomlaVersion = $jversion->getShortVersion(); // get remote Joomla Version $xml = simplexml_load_file($remoteVersionUrl); $remoteJoomlaVersion = $xml->extension['version']; // compare and return info if ($localJoomlaVersion < $remoteJoomlaVersion) { echo "A new version is available: $remoteJoomlaVersion"; exit (2); } else { echo "Your current Version $localJoomlaVersion is up to date"; } ?> |
Wenn man mittels aptitude nach Paketen sucht, dann steht ja vorne immer ein Buchstabe, der den Paketstatus anzeigt. Welche Buchstaben moeglich sind und was sie bedeuten steht im Aptitude reference guide im Abschnitt Accessing package information.
Praktisch ist danach zu suchen. Ich wollte alle Pakete mit dem Status „c“ finden, um alte Konfigurationsdateien von Paketen zu entfernen. Suche ist mit:
aptitude search '~c' |
und loeschen ging dann mit:
aptitude purge '~c' |
Praktisch!