Mounten von Verzeichnissen/Freigaben im EGroupware-Dateimanager
This article is not perfect and not finished. If you have any questions or problems, please open a topic in the forum. Hints, comments or examples are welcome here in the forum.
âExternalâ directories can be mounted and used in the virtual file system (VFS) of EGroupware/File Manager.
Examples of use:
- Home directory of fileserver/domaincontroller => Home directory EGroupware-user
- Department directory fileserver => EGroupware group directory
- Directories from the family NAS
- âlocalâ directories of the EGroupware host => EGw file system
- âŠ
Mounted can be
- SMB shares (from file servers (Windows/Samba), NAS, âŠ)
- FTP shares
- WebDAV shares (from other file sharing systems, other EGroupware instances, âŠ) (from 21.1)
- local directories of the host system (also mounted there)
The following documentation describes how to mount an SMB share. Further examples with other protocols will follow.
Since maintenance release 21.1.20210923 it is possible to create SMB and WebDAV mounts directly in EGroupware:
Basic principles
The mount points are written into the database via command line. This must take place within the EGroupware container for standard Docker installations.
To mount a share in directory:
docker exec -it egroupware /usr/share/egroupware/filemanager/cli.php mount --user root_admin --password 'PWAdminuser' smb://user:password@SMB-Server/share /home/group/directory
.
Or enter the container first:
docker exec -it egroupware bash
and then mount the directory
/usr/share/egroupware/filemanager/cli.php mount --user root_admin --password 'PWAdminuser' smb://user:password@SMB-Server/share /home/group/directory
In detail:
docker exec -it egroupware (bash)
.
In the Docker container egroupware
execute the following command (or come to the command line).
/usr/share/egroupware/filemanager/cli.php mount
Call from the file manager cli.php with paratemeter mount (to unmount: umount
)
--user root_admin
Specify EGroupware Setup user. Mandatory prefix root_
. User is usually called admin.
--password 'PWAdminuser'
Password of the EGroupware setup user.
smb://User:Password@SMB-Server/Share
Specify the share with user and password
/home/group/directory
Specification of the directory to be mounted. The directory must not exist!
User and password are stored as plain text in the EGroupware database!
To mount home directories:
docker exec -it egroupware /usr/share/egroupware/filemanager/cli.php mount --user root_admin --password âPWvonadminâ âsmb://$user:$pass@server/$userâ /home/$user/own files
$user
Will be replaced by the logged in EGroupware user when mounting.
$pass
Will be replaced by the userâs password from the EGroupware database (in case of local user database) when mounting.
&server/$user
The share with the home directory of the file server
/home/$user/Own Files
Mounted in the userâs home directory with the same name.
User and password are NOT stored as plain text in the EGroupware database. The encrypted one is used.
Such a mount then applies/functions for all users and therefore only has to be executed/entered once.
Examples
1. mounting a directory from a NAS with family videos.
The videos can then be accessed locally via PC/TV and also externally via EGroupware. Integrated and secure.
root@egw201deb:~# docker exec -it egroupware bash
root@ca2ebdd9c019:/# /usr/share/egroupware/filemanager/cli.php mount --user root_admin --password 'PWAdminuser' 'smb://UseronNAS:PWUseronNAS@server/share' /home/familygroup/NAS_Video
Result:
Root access granted!
smb://UseronNAS:PWUseronNAS@192.168.178.21/Video/DDTwonky_Video successfully mounted to /home/familygroup/NAS_Video
Or in one step:
docker exec -it egroupware /usr/share/egroupware/filemanager/cli.php mount --user root_admin --password 'PWvonadmin' smb://UseronNAS:PWUseronNAS@192.168.178.21/Video/DDTwonky_Video /home/familygroup/NAS_Video
2. mounting home directories (own files etc.) of a (company) file server.
The home directory is thus accessible from the stationary PC in the company as well as externally via the EGroupware file manager.
docker exec -it egroupware /usr/share/egroupware/filemanager/cli.php mount --user root_admin --password 'PWfromadmin' 'smb://$user:$pass@server/$user' /home/$user/Own files
Notes:
Certain characters in the password require an apostrophe â around the password: & (more?)
The target directory must not exist.
Mounted directories are unmounted with umount
(same command as above).
After mounting, Admin/Clear Cache and Register Hooks
must be executed. Only then is the folder visible in the file manager.
The speed of file access depends very much on the entire chain. Especially the access to a slow NAS can be clearly noticeable in the EGroupware file manager.
If one enters a directory with a mounted directory, EGroupware tries to access the directory before the content is displayed. This can lead to delays or even become a problem if the share is not accessible.
The directories mounted in EGw are also accessible via WebDAV.
With Collabora Online, files from mounted directories can also be edited. However, simultaneous editing via EGw and file server are technically mutually exclusive. Caution: No locking!
The access rights must be set correctly throughout the entire chain.
Ideally, EGw and the file server should work with the same user database. This ensures that access takes place with the correct password. Even if the password is changed once on the file server. EGroupware can be connected via AD or LDAP, for example.
Documentation / Links:
GitHub:
VFS System
We offer technical and organisational support on this topic through our commercial support:
Or simply send an e-mail to info@egroupware.org or customers simply open a ticket in our ticket system.
For questions, suggestions, etc., please create a separate topic in the forum as always and refer to this article.