Tag Archives: apt-get

Ubuntu 11.04 Backport-Kernel unter Ubuntu 10.04

Für die LTS Version 10.04 von Ubuntu gibt es inzwischen Backports der Kernel 2.6.35 und 2.6.38 aus Maverick bzw. Natty. Ab 2.6.33 bietet der Kernel mit ext4 unter anderem volle Unterstützung für ATA-TRIM. Die Kernel können direkt aus den Paketquellen installiert werden:

$ sudo apt-get install linux-image-generic-lts-backport-natty linux-headers-generic-lts-backport-natty

Falls proprietäre Treiber installiert sind (z.B. NVIDIA) müssen diese noch geupdated werden:

$ sudo apt-add-repository ppa:ubuntu-x-swat/x-updates && sudo apt-get update
$ sudo apt-get install nvidia-current nvidia-settings nvidia-current-dev nvidia-current-modaliases

Nach einem Neustart können die Treiber unter “System -> Systemverwaltung -> Hardware-Treiber” aktiviert werden. Unter “System -> Systemverwaltung -> Software-Paketquellen” sollte man ggf. noch das neue Repository deaktivieren, sonst landen weitere Xorg Updates etc… auf dem Rechner.

Quellen:

  • Backport Kernel
  • NVIDIA Update
  • eGroupware 1.8 unter Ubuntu 10.04

    Seit kurzem ist die Community Version 1.8 von eGroupware erschienen. Um diese unter Ubuntu 10.04 zum laufen zu bekommen sind jedoch noch ein paar kleine Anpassungen nötig. Es wird im Folgenden davon ausgegangen, dass Apache, MySQL und PHP bereits installiert sind.

    Die PHP Version 5.3.2 aus den Ubuntu-Quellen hat einen Fehler, der zum Absturz des Webinterfaces führt. Die aktuelle PHP Version 5.3.3 für Ubuntu 10.04 gibt es in diesem Repository. In Zukunft vielleicht auch in den offiziellen Quellen. Der folgende Befehl fügt das Repository den Paketquellen hinzu.

    $ sudo add-apt-repository ppa:nginx/php5

    Als erstes wird jetzt PHP geupdated.

    $ sudo apt-get update && sudo apt-get upgrade

    Anschließend editiert man die beiden Dateien /etc/php5/cli/php.ini und /etc/php5/apache2/php.ini und sucht nach dem Eintrag data.timezone. Die geänderte Zeile sollte anschließend so aussehen:

    date.timezone = Europe/Berlin

    Das Repository für eGroupware liegt auf den openSUSE Servern. Hierzu muss die folgende Zeile an die /etc/apt/sources.list angefügt werden.

    deb http://download.opensuse.org/repositories/server:/eGroupWare/xUbuntu_10.04/ ./

    Außerdem sollte man noch den Schlüssel des openSUSE Repositories importieren um lästige Nachfragen zu unterbinden.

    $ wget -O - http://download.opensuse.org/repositories/server:/eGroupWare/xUbuntu_10.04/Release.key | apt-key add -

    Jetzt kann eGroupware aus den Paketquellen installiert werden und wird zukünftig auch mit automatischen Updates versorgt.

    $ sudo apt-get update
    $ sudo apt-get install egroupware egroupware-egw-pear

    Während der Installation wird normalerweise eine Datenbank und ein entsprechender User für eGroupware angelegt. Was die weiterführende Konfiguration angeht, verweise ich an dieser Stelle einfach mal auf die offizielle Seite von eGroupware. Wer wie ich bereits die Version 1.6 installiert hatte, sollte die Installation ggf. an dem Punkt abbrechen. Unter den Release Notes der Version 1.8 steht noch ein wenig mehr darüber, wie man eine bestehende Version 1.6 upgraded.

    Kalender und Adressbuch mit Thunderbird synchronisieren.

    Um Kalender und Adressen anschließend durch den eGroupware eigenen GroupDAV-Server mit Thunderbird zu synchronisieren benötigt man die zwei Erweiterungen SOGo Connector und Lightning. Die Lightning Version 1.01b funktioniert mit Thunderbird 3.0.x problemlos. Die Lightning Version 1.02b macht im Zusammenspielt mit Thunderbird 3.1.x jedoch Probleme. Ich empfehle daher nicht nur den SOGo Connector sondern auch die angepasste Lightning Version direkt von Inverse zu nutzen.

    Nicht vergessen: Solange GroupDAV für den entsprechenden User unter eGroupware nicht aktiviert wurde, wird es nicht funktionieren. Das selbe gilt für SyncML, das man zum synchronisieren auf den meisten Handys kann.

    Samba Server

    Um im lokalen Netzwerk von einem Windows Client auf Dateien eines Linux Servers zuzugreifen bietet sich ein Samba Server an. GNOME und KDE bringen auch eine Möglichkeit mit direkt von der grafischen Oberfläche entsprechende Freigaben zu erzeugen. Hier soll jedoch die Installation eines “vollwertigen” Samba Servers beschrieben werden. Zunächst muss dieser aus den Paketquellen installiert werden.

    $ sudo apt-get install samba

    Alle Benutzer die später über Samba Zugriff erhalten sollen, müssen zunächst in die Samba Benutzerdatenbank aufgenommen werden. Hierbei empfiehlt es sich das selbe Passwort zu vergeben wie für das System.

    $ sudo smbpasswd -a USERNAME

    Anschließend muss die Konfigurationsdatei /etc/samba/smb.conf angepasst werden. Diese ist in Verschiedene, jeweils durch [xyz] gekennzeichnete Abschnitte aufgeteilt.

    [global]
      workgroup = ARBEITSGRUPPE
      usershare allow guests = no

    Die Standardeinstellungen im [global] Block sind sinnvoll. Angepasst werden sollten ggf. nur die beiden Einträge. workgroup gibt die Windows Arbeitsgruppe des Netzwerks an. Um anonyme Gastzugänge zu unterbinden und nur registrierten Benutzern Zugriff zu gestatten sollte usershare allow guests = no gesetzt sein.

    Will man nun für jeden Benutzer (und nur für diesen) das eigene Home-Verzeichnis (und nur dieses) freigeben, so müssen im dafür vorgesehenen Block [homes] nur die Semikolons am Zeilenanfang entfernt werden.

    [homes]
      comment = Home Directories
      browseable = no
      read only = no
      create mask = 0700
      directory mask = 0700
      valid users = %S

    Es gibt auch bereits vorbereitete Freigaben für Drucker [printers] und das CD/DVD-Laufwerk [cdrom]. Auch dort müssen nur die Semikolons entfernt bzw. hinzugefügt werden um die Freigaben zu aktivieren bzw. deaktivieren. Gerade die [cdrom] Freigabe ist sehr praktisch falls das eigene Netbook z.B. kein CD/DVD-Laufwerk besitzt und auch kein externes USB-Laufwerk zur Hand ist.

    SSH Server

    Einen SSH Server einzurichten um von einem anderen Rechner Zugang zum eigenen Homeserver zu erhalten ist denkbar einfach. Zunächst wird der SSH Server aus den Paketquellen installiert:

    $ sudo apt-get install openssh-server

    Die Konfigurationsdatei findet sich unter /etc/ssh/sshd_config und ist meist schon sehr vernünftig eingestellt. Drei Einträge können jedoch verändert bzw. ergänzt werden um ein zusätzliches Maß an Sicherheit zu erhalten:

    PermitRootLogin no
    PasswordAuthentication no
    AllowUsers USERNAME1 USERNAME2 USERNAME3

    Mit dem ersten Eintrag wird der Login für den Benutzer root unterbunden.
    Der zweite Eintrag unterbindet die Anmeldung mittels Benutzername und Passwort. Nur noch die sichere Anmeldung mittels Public-Key wird gestattet. Es ist wichtig, dass man diese Option erst aktiviert nachdem dem eigenen Public-Key der Zugang gestattet wurde. Andernfalls sperrt man sich selbst aus. Ohne physikalischen Zugang zum Server sieht man dann alt aus.
    Der letzte Punkt beschränkt den Zugang auf die angegebenen Benutzer. Alternativ lassen sich mit AllowGroups, DenyUsers, DenyGroups auch feinere Abstufungen machen. Man könnte z.B. alle Benutzer die einen remote Zugang erhalten sollen in eine Gruppe remoteUsers packen und diese dann freischalten.

    AllowGroups remoteUsers

    Abschließend muss der SSH Server neu gestartet werden um die Änderungen an der Konfigurationsdatei einzulesen.

    $ sudo /etc/init.d/ssh restart

    Unnötige Pakete mit deborphan entfernen

    Nach einem Ubuntu/Debian Distributionsupgrade gibt es immer einige Pakete, die nicht länger benötigt werden. Eigentlich sollten diese automatisch entfernt werden doch dies klappt nicht immer. Um Paketleichen aufzuspüren und zu entfernen bietet sich das Paket deborphan an. Es sucht nach nicht mehr länger benötigten Paketen und kann diese in Kombination mit apt-get auch deinstallieren.

    $ sudo apt-get --purge remove `deborphan`