Linux AFS: Unterschied zwischen den Versionen
Amo (Diskussion | Beiträge) |
Amo (Diskussion | Beiträge) K |
||
Zeile 1: | Zeile 1: | ||
Hier ist eine Anleitung zu finden, wie man das Homeverzeichnis von der Physik zu Hause in das Dateisystem einbinden kann. Dazu ist es nötig entsprechende Kernelmodule zu kompilieren. Hier folgt eine Anleitung, wie dies unter Debian gemacht wird.<br> |
Hier ist eine Anleitung zu finden, wie man das Homeverzeichnis von der Physik zu Hause in das Dateisystem einbinden kann. Dazu ist es nötig entsprechende Kernelmodule zu kompilieren. Hier folgt eine Anleitung, wie dies unter Debian gemacht wird.<br> |
||
Sollte jemand Erfahrung mit AFS unter anderen Distributionen haben, wird gebeten hier eine Anleitung hinzuzufügen. |
Sollte jemand Erfahrung mit AFS unter anderen Distributionen haben, wird gebeten, hier eine Anleitung hinzuzufügen. |
||
WICHTIG: Die Kernelmodule existieren derzeit nur für Kernel der Version 2.4 |
WICHTIG: Die Kernelmodule existieren derzeit nur für Kernel der Version 2.4 |
||
Zeile 6: | Zeile 6: | ||
== Kompilieren der Kernelmodule == |
== Kompilieren der Kernelmodule == |
||
Voraussetzung ist, dass die folgenden Pakete installiert sind |
Voraussetzung ist, dass die folgenden Pakete installiert sind: |
||
* build-essential |
* build-essential |
||
* kernel-package |
* kernel-package |
||
* fakeroot |
* fakeroot |
||
Man sollte auch der Gruppe ''src'' angehören um |
Man sollte auch der Gruppe ''src'' angehören, um die folgenden Aktionen problemlos ausführen zu dürfen (einstellbar in der Datei /etc/group). |
||
Sind obige Pakete installiert werden die Pakete '''kernel-source-2.4.x''' (passend zum Paket kernel-image-2.4.x) und '''openafs-modules-source''' installiert.<br> |
Sind obige Pakete installiert werden die Pakete '''kernel-source-2.4.x''' (passend zum Paket kernel-image-2.4.x) und '''openafs-modules-source''' installiert.<br> |
||
$ apt-get install openafs-modules-source <kernel-source-2.4.x> |
$ apt-get install openafs-modules-source <kernel-source-2.4.x> |
||
Zeile 20: | Zeile 20: | ||
$ cd kernel-source-2.4.x |
$ cd kernel-source-2.4.x |
||
$ cp /boot/<config-2.4.x> .config |
$ cp /boot/<config-2.4.x> .config |
||
Kernelmodule kompilieren |
Kernelmodule kompilieren: |
||
$ fakeroot make-kpkg <--append-to-version -Extraversion> modules_image |
$ fakeroot make-kpkg <--append-to-version -Extraversion> modules_image |
||
Unter Extraversion versteht man ein Anhängsel an die |
Unter Extraversion versteht man ein Anhängsel an die Kernel-Versionsnummer. |
||
Zum Beispiel ist bei ''kernel-image-2.4.25-1-386'' als Extraversion 1-386 anzugeben. |
Zum Beispiel ist bei ''kernel-image-2.4.25-1-386'' als Extraversion 1-386 anzugeben. |
||
ANMERKUNGEN: In der Regel wird es notwendig sein, den --apend-to-version flag zu verwenden! <br> |
ANMERKUNGEN: In der Regel wird es notwendig sein, den --apend-to-version flag zu verwenden! <br> |
||
'''ACHTUNG''': Beim Test dieser Vorgehensweise führte das Verwenden von --append-to-version zu einem Fehler gegen Ende der Kompilation (Es wird das Programm tar verwendet |
'''ACHTUNG''': Beim Test dieser Vorgehensweise führte das Verwenden von --append-to-version zu einem Fehler gegen Ende der Kompilation (Es wird das Programm tar verwendet, das einen Fehler liefert). Führt man den obigen Befehl noch ein zweites Mal aus, kann das Kompilieren beendet werden (es dauert auch bei Weitem nicht so lange wie beim ersten Mal). Es scheint sich dabei um einen Bug zu handeln. |
||
Wenn das Paket gebaut ist kann man mit <tt> dpkg -c <mein_paket.deb> </tt> prüfen welche Dateien installiert werden und weiß somit ob der Pfad richtig ist (der richtige Pfad ist ''/lib/modules/<Nr. meiner Kernelversion>/fs/''). Jetzt können die Module mit <tt> dpkg -i <meine_paket.deb> </tt> installiert werden. <br> |
Wenn das Paket gebaut ist, kann man mit <tt> dpkg -c <mein_paket.deb> </tt> prüfen, welche Dateien installiert werden, und weiß somit, ob der Pfad richtig ist (der richtige Pfad ist ''/lib/modules/<Nr. meiner Kernelversion>/fs/''). Jetzt können die Module mit <tt> dpkg -i <meine_paket.deb> </tt> installiert werden. <br> |
||
== Installation weiterer nötiger Pakete == |
== Installation weiterer nötiger Pakete == |
||
Folgende Pakete müssen ebenfalls installiert werden |
Folgende Pakete müssen ebenfalls installiert werden: |
||
* openafs-client |
* openafs-client |
||
* krb5-user |
* krb5-user |
||
Zeile 38: | Zeile 38: | ||
* openafs-krb5 |
* openafs-krb5 |
||
* libpam-krb5 |
* libpam-krb5 |
||
Die zweifach eingerückten Pakete werden bei Auswahl von krb5-user automatisch installiert. |
Die zweifach eingerückten Pakete werden bei Auswahl von krb5-user automatisch installiert. Obiges Listing bezieht sich darauf, dass empfohlene und vorgeschlagene Pakete nicht automatisch installiert werden. Bei einer anderen Einstellung kann also durchaus passieren, dass mehrere Pakete durch Abhängigkeiten installiert werden. |
||
Bei der Installation werden von debconf noch einige Fragen gestellt. Die folgenden Angaben gelten für Priorität medium |
Bei der Installation werden von debconf noch einige Fragen gestellt. Die folgenden Angaben gelten für Priorität medium: |
||
* openafs-client |
* openafs-client |
||
*# Zu welcher Zelle ghört der Computer? Antwort: ITP.TUGRAZ.AT |
*# Zu welcher Zelle ghört der Computer? Antwort: ITP.TUGRAZ.AT |
||
*# Wie groß soll der verwendete Cache sein? Antwort: Hier sollte jeder selbst entscheiden wieviel Platz vorhanden sein soll. |
*# Wie groß soll der verwendete Cache sein? Antwort: Hier sollte jeder selbst entscheiden, wieviel Platz vorhanden sein soll. |
||
*# Soll der Inhalt von /afs dynamisch erzeugt werden? Antwort: No |
*# Soll der Inhalt von /afs dynamisch erzeugt werden? Antwort: No |
||
Auch krb5-config fragt einiges ab. Hier sind die Antworten allerdings nicht maßgeblich, da die daraus generierte Konfigurationsdatei durch die Datei von http://itp.tugraz.at/Comp/conf/krb5.conf ersetzt werden sollte. Man lädt diese Datei also herunter und kopiert sie in den Ordner ''/etc''. Wenn der Computer nicht ständig mit dem Internet verbunden ist, empfiehlt es sich auszuschalten, dass der openafs-client beim Systemstart gestartet wird (durch |
Auch krb5-config fragt einiges ab. Hier sind die Antworten allerdings nicht maßgeblich, da die daraus generierte Konfigurationsdatei durch die Datei von http://itp.tugraz.at/Comp/conf/krb5.conf ersetzt werden sollte. Man lädt diese Datei also herunter und kopiert sie in den Ordner ''/etc''. Wenn der Computer nicht ständig mit dem Internet verbunden ist, empfiehlt es sich auszuschalten, dass der openafs-client beim Systemstart gestartet wird (durch Eintragen von AFS_CLIENT=false in der Datei /etc/openafs/afs.conf.client). Das Starten des Clients führt zu einer erheblichen Verzögerung des Bootvorganges, wenn der AFS-Server nicht erreichbar ist. |
||
== Mounten von AFS == |
== Mounten von AFS == |
||
*Starten des openafs-client (als root) |
*Starten des openafs-client (als root): |
||
# /etc/init.d/openafs-client start |
# /etc/init.d/openafs-client start |
||
Hat man eingestellt, dass der Client nicht automatisch gestartet wird ist <tt> start </tt> durch <tt> force-start </tt> zu ersetzen. |
Hat man eingestellt, dass der Client nicht automatisch gestartet wird, ist <tt> start </tt> durch <tt> force-start </tt> zu ersetzen. |
||
*Ein Kerberosticket holen (als Benutzer) |
*Ein Kerberosticket holen (als Benutzer): |
||
$ kinit <Username>@ITP.TUGRAZ.AT |
$ kinit <Username>@ITP.TUGRAZ.AT |
||
*Ein AFS-Token holen |
*Ein AFS-Token holen: |
||
$ aklog |
$ aklog |
||
Wenn man den Zugriff auf den AFS-Server nicht mehr benötigt sollte das AFS-Token mit |
Wenn man den Zugriff auf den AFS-Server nicht mehr benötigt, sollte das AFS-Token mit |
||
$ unlog |
$ unlog |
||
und das Kerberosticket mit |
und das Kerberosticket mit |
||
$ kdestroy |
$ kdestroy |
||
zerstört werden. |
zerstört werden. |
||
Mit <tt> klist </tt> kann man sehen, ob ein Kerberosticket vorhanden ist. <tt> tokens </tt> zeigt |
Mit <tt> klist </tt> kann man sehen, ob ein Kerberosticket vorhanden ist. <tt> tokens </tt> zeigt vorhandene AFS-Tokens. |
Version vom 9. Dezember 2004, 19:26 Uhr
Hier ist eine Anleitung zu finden, wie man das Homeverzeichnis von der Physik zu Hause in das Dateisystem einbinden kann. Dazu ist es nötig entsprechende Kernelmodule zu kompilieren. Hier folgt eine Anleitung, wie dies unter Debian gemacht wird.
Sollte jemand Erfahrung mit AFS unter anderen Distributionen haben, wird gebeten, hier eine Anleitung hinzuzufügen.
WICHTIG: Die Kernelmodule existieren derzeit nur für Kernel der Version 2.4
Genaueres zum AFS-Dateisystem ist auf der Seite AFS zu finden.
Kompilieren der Kernelmodule
Voraussetzung ist, dass die folgenden Pakete installiert sind:
- build-essential
- kernel-package
- fakeroot
Man sollte auch der Gruppe src angehören, um die folgenden Aktionen problemlos ausführen zu dürfen (einstellbar in der Datei /etc/group).
Sind obige Pakete installiert werden die Pakete kernel-source-2.4.x (passend zum Paket kernel-image-2.4.x) und openafs-modules-source installiert.
$ apt-get install openafs-modules-source <kernel-source-2.4.x>
Kernel- und Modulsourcen entpacken:
$ cd /usr/src $ tar jxf <kernel-source-2.4.x.tar.bz2> $ tar zxf openafs.tar.gz
Jetzt wechselt man in den Kernel Source Baum und kopiert die Kernelkonfiguration /boot/<config-2.4.x> nach .config
$ cd kernel-source-2.4.x $ cp /boot/<config-2.4.x> .config
Kernelmodule kompilieren:
$ fakeroot make-kpkg <--append-to-version -Extraversion> modules_image
Unter Extraversion versteht man ein Anhängsel an die Kernel-Versionsnummer.
Zum Beispiel ist bei kernel-image-2.4.25-1-386 als Extraversion 1-386 anzugeben.
ANMERKUNGEN: In der Regel wird es notwendig sein, den --apend-to-version flag zu verwenden!
ACHTUNG: Beim Test dieser Vorgehensweise führte das Verwenden von --append-to-version zu einem Fehler gegen Ende der Kompilation (Es wird das Programm tar verwendet, das einen Fehler liefert). Führt man den obigen Befehl noch ein zweites Mal aus, kann das Kompilieren beendet werden (es dauert auch bei Weitem nicht so lange wie beim ersten Mal). Es scheint sich dabei um einen Bug zu handeln.
Wenn das Paket gebaut ist, kann man mit dpkg -c <mein_paket.deb> prüfen, welche Dateien installiert werden, und weiß somit, ob der Pfad richtig ist (der richtige Pfad ist /lib/modules/<Nr. meiner Kernelversion>/fs/). Jetzt können die Module mit dpkg -i <meine_paket.deb> installiert werden.
Installation weiterer nötiger Pakete
Folgende Pakete müssen ebenfalls installiert werden:
- openafs-client
- krb5-user
- krb5-config
- libkadm55
- libkrb53
- openafs-krb5
- libpam-krb5
Die zweifach eingerückten Pakete werden bei Auswahl von krb5-user automatisch installiert. Obiges Listing bezieht sich darauf, dass empfohlene und vorgeschlagene Pakete nicht automatisch installiert werden. Bei einer anderen Einstellung kann also durchaus passieren, dass mehrere Pakete durch Abhängigkeiten installiert werden.
Bei der Installation werden von debconf noch einige Fragen gestellt. Die folgenden Angaben gelten für Priorität medium:
- openafs-client
- Zu welcher Zelle ghört der Computer? Antwort: ITP.TUGRAZ.AT
- Wie groß soll der verwendete Cache sein? Antwort: Hier sollte jeder selbst entscheiden, wieviel Platz vorhanden sein soll.
- Soll der Inhalt von /afs dynamisch erzeugt werden? Antwort: No
Auch krb5-config fragt einiges ab. Hier sind die Antworten allerdings nicht maßgeblich, da die daraus generierte Konfigurationsdatei durch die Datei von http://itp.tugraz.at/Comp/conf/krb5.conf ersetzt werden sollte. Man lädt diese Datei also herunter und kopiert sie in den Ordner /etc. Wenn der Computer nicht ständig mit dem Internet verbunden ist, empfiehlt es sich auszuschalten, dass der openafs-client beim Systemstart gestartet wird (durch Eintragen von AFS_CLIENT=false in der Datei /etc/openafs/afs.conf.client). Das Starten des Clients führt zu einer erheblichen Verzögerung des Bootvorganges, wenn der AFS-Server nicht erreichbar ist.
Mounten von AFS
- Starten des openafs-client (als root):
# /etc/init.d/openafs-client start
Hat man eingestellt, dass der Client nicht automatisch gestartet wird, ist start durch force-start zu ersetzen.
- Ein Kerberosticket holen (als Benutzer):
$ kinit <Username>@ITP.TUGRAZ.AT
- Ein AFS-Token holen:
$ aklog
Wenn man den Zugriff auf den AFS-Server nicht mehr benötigt, sollte das AFS-Token mit
$ unlog
und das Kerberosticket mit
$ kdestroy
zerstört werden. Mit klist kann man sehen, ob ein Kerberosticket vorhanden ist. tokens zeigt vorhandene AFS-Tokens.