Hi Max,

Am 18.12.2015 um 14:41 schrieb Schule Führinger:
> Hallo Liste,
> 
> nachdem meine Owncloud läuft würde ich gerne die Dateien in der Schule
> möglichst einfach zugänglich machen. Die erste Möglichkeit ist ein
> davfs://... Link in Nemo, dann muss man aber 1. nochmals den Login
> eingeben und 2. kann man nicht über die Kommandozeile drauf zugreifen
> (zumindest ich tät das gern :-)

2. bist du dir sicher, dass das nicht in ~/.gvfs/... auftaucht? schau
mal nach.

zu 1.

=== übersicht ===

ich hab kurz meine debian-paketliste durchsucht:
<code>
#apt-cache search webdav
avfs - virtual filesystem to access archives, disk images, remote locations
cadaver - command-line WebDAV client
davfs2 - mount a WebDAV resource as a regular file system
eldav - interface to the WebDAV servers for Emacs.
fusedav - filesystem to mount WebDAV shares
libgnomevfs2-extra - GNOME Virtual File System (extra modules)
hdav - command-line WebDAV client
nd - small command line interface to WebDAV servers
</code>

usw.
diese könnten alle relevant sein und mehr oder minder das WebDAV System
auf unserem Filesystem darstellen, ich gebe aber zu bedenken (zitat aus
davfs2 readme) [1]

== Test 1: fusedav ==

ich habs nämlich gleich mal mit fusedav probiert, und wiederum das
Problem gefunden:
gemountet:
<code>
$ fusedav -u kuechel
https://humboldt-gymnasium.ka.schule-bw.de/walid/remote.php/webdav/ tmp
fusermount: failed to open /etc/fuse.conf: Permission denied
Realm 'ownCloud' requires authentication.
Password:
PROPFIND failed: 404 Not Found
PROPFIND failed: 404 Not Found
PROPFIND failed: 404 Not Found
</code>
befehl endet nicht, sondern bleibt.. (?)


nachschauen, ob es funktioniert hat:
<code>
tobias@einstein:~$ cat /proc/mounts
<snip>
fusectl /sys/fs/fuse/connections fusectl rw,relatime 0 0
/dev/fuse /home/tobias/tmp fuse
rw,nosuid,nodev,relatime,user_id=1000,group_id=1000 0 0
</code>

Dann -> Datei geöffnet mit Libreoffice, Ändern, Speichern -> I/O Fehler
nichtsdestotrotz hat das Speichern funktioniert, weswegen Libreoffice
bei weiteren Speicherversuchen sagt: "Das Dokument wurde von anderen
verändert..."

bei weiteren versuchen hat es allerdings keine Fehler gegeben und das
speichern und erneut speichern aus libreoffice hat ohne muks funktioniert.

ganz zuverlässig für endanwender finde ich das nicht...

Wenn ich den fusedav mit CTRL-C beende, dann ist auch nix mehr im
Verzeichnis:
<code>
tobias@einstein:~/tmp$ ls
ls: Öffnen von Verzeichnis . nicht möglich: Der Socket ist nicht verbunden
</code>
Vermutlich ist jetzt nix mehr gemountet, in /proc/mounts finde ich nichts


So, außerdem müsste man das noch in den mount.fuse Befehl unterbringen.
Das krieg ich nicht hin. Und weil ich sehe, welcher Meister der
Standards fusedav geschrieben hat, gebe ich mit fusedav auf... aber gut,
dass es halb funktionierte...

== Test 2: davfs2 ==
<code>
aptitude install davfs2
tobias@einstein:~$ sudo mount -t davfs
https://humboldt-gymnasium.ka.schule-bw.de/walid/remote.php/webdav/ tmp/
-o username=kuechel,uid=tobias
  Passwort: HIERerscheintMEINPasswort!!
/sbin/mount.davfs: Warnung: der Server kann Dateien nicht sperren
tobias@einstein:~$ ls -lart tmp/
insgesamt 34301
-rw-r--r--  1 tobias root  2215875 Jul 16 00:52 ownCloudUserManual.pdf
drwxr-xr-x  4 tobias root        0 Jul 22 22:02 Projekttage: Robotik
</code>

funktioniert also soweit.
Öffnen, Ändern, Speichern funktioniert in Libreoffice auf anhieb ohne
IO-Fehler, toitoitoi. Sollte man mit mehr ausprobieren...

=== Einbau in den trusty-client mit Single-sign-on ===

das mit single-sign-on mit den aktuellen Distros funktioniert so:

1. es wird in /etc/security/pam_mount.conf.xml
eine entsprechende Zeile reingefummelt.

Bsp: für ein weiteres cifs=samba-mount hat bei mir gereicht, die
folgende Zeile einzubauen:
<volume options="rw,nosuid,nodev,nobrl" user="*"
mountpoint="~/Privat_auf_Lehrerserver" path="%(USER)"
server="10.16.xxx.xxx" fstype="cifs" gid="10000"/>

allerdings willst du davfs mounten, d.h.
so wie hier:

https://debianforum.de/forum/viewtopic.php?f=28&t=143960#p949446

allerdings geht das beim nächsten user mit der owncloud schon nicht
mehr. Man muss es also testen:

== Testen von pam_mount.conf.xml Einträgen ==

weil das rumfummeln mit pam_mount.conf.xml ein bisschen haarig ist und
ständiges neustarten des x-servers zeitaufwändig ist, empfehle ich zum
debuggen folgendes:

1. du hängst folgende Zeile an /etc/pam.d/su oder an /etc/pam.d/ssh an

@include common-pammount

damit kannst du z.B. als linuxadmin ein "su - max" machen oder von
extern via "ssh max@client" einloggen  und wenn alles gut geht wird dein
verzeichnis gemountet, wie wenn du dich lokal anmeldest.
Aber am besten machst du das mit einem weiteren lokalen Benutzer um dein
home-verzeichnis nicht zu gefährden.
Warnung: bevor du neu anmeldest, immer schauen ob man von hand noch
etwas umounten muss...

2. debugging anschalten:

root@rlpc01:~# less /etc/security/pam_mount.conf.xml
<?xml version="1.0" encoding="UTF-8"?>
<pam_mount>
<debug enable="1" />

3. ich empfehle: man pam_mount.conf,

darin steht nochwas von "falls mit root ausgeführt, wird der nutzer
davfs2 verwendet", wenn also das mounten ein rechte-problem hat, muss
man vielleicht in /etc/security/group.conf den benutzer "davfs2" noch in
die gruppe "teachers" aufnehmen, oder umgekehrt den user in die gruppe
"davfs2" - hoffe so ein kram ist nicht nötig.

> Ich habe im Netz gelesen, dass mount auch davfs als Dateisystem kann
> (das funktioniert auch), nur nätte ich das eben gerne automatisch, wie
> bei Home_auf_Server beim Anmelden (davfs kann wohl pam, ich kapier da
> nur nichts). Hat das schon jemand realisiert? Ich hab davon nämlich
> keine Ahnung...

Also soweit so gut.
Ich habe keinen trusty-client, sondern 12.04 und wenn ich testen
anfange, dann ist das nicht gesagt, dass es bei deinem trusty-client
nicht andersherum wäre.
Bis hierhin ist meine Anleitung ein Weihnachtsgeschenk für dich, du
kannst dich ja revanchieren, indem du das mit pam_mount.conf.xml mal
ausprobierst - und jemand könnte das noch ins wiki pasten, ich habs
schon mal so formatiert...

Liebe Grüße, frohe Weihnacht!

Tobias




[1] http://cvs.savannah.gnu.org/viewvc/davfs2/README?root=davfs2&view=markup
davfs2 is not intended as a replacement for distributed file systems like
nfs, coda, cifs and similar.

When davfs2 mounts a resource, it authenticates with the server using the
user-name and password it got from the mounting user. All requests to the
server are done on behalf of this WebDAV user. davfs2 does not handle
different
WebDAV users within one mount. But this would be required for a distributed
file system.

davfs2 is not a generic WebDAV client. davfs2 maps a WebDAV resource to
a file
system. But as the file system interface and the WebDAV protocol are quite
different, this is not possible without losses. As a file system davfs2
cannot
use all the possibilities of WebDAV, and most WebDAV servers do not
provide all
the information a file system usually requires.

A specialised application with built-in WebDAV capabilities should be
able to
make better use of the WebDAV protocol. Whether it really does, depends
on the
implementation. But if a free WebDAV enabled application is available, you
might try it first.

_______________________________________________
linuxmuster-user mailing list
[email protected]
https://mail.lehrerpost.de/mailman/listinfo/linuxmuster-user

Antwort per Email an