Vielen Dank fĂŒr die vielen Hinweise! Nun habe ich zwei funktionierende Schnittstellen zwischen Linux und NextCloud:
Ich beschreibe sie hier noch etwas ausfĂŒhrlicher, vielleicht hilft das dem einen oder anderen. Ich selbst habe mich fĂŒr rclone
entschieden - fĂŒr meinen Anwendungsfall ist es sehr viel besser geeignet. FĂŒr die pros und contras siehe die BeitrĂ€ge oben.
Ob sich die beiden Möglichkeiten auch auf Windows-Umgebungen portieren lassen, kann ich leider nicht sagen.
Zu occ files:scan
Das allgemeine Vorgehen:
- Datei(en) in den NC-Verzeichnisbaum kopieren
- occ.files scan durchfĂŒhren, damit NC von der/den Datei(en) erfĂ€hrt und sie sichtbar macht.
Punkt 1 geht z.B. mit
sudo -u www-data cp <Datei(en)> /var/www/html/nc/data/<nc_user>/files/<verzeichnis>/
In dieses Verzeichnis (alles unter /var/www/html/
sollte nur der user www-data schreiben. Das ist der User, der auch den Web-Server apache2
ausfĂŒhrt. Daher das sudo -u www-data
.
Damit das geht, muss der User, der den Befehl absetzt, in der Gruppe sudo
sein - sonst kann er den Befehl sudo
nicht ausfĂŒhren. sudo
fragt dann nach dem eigenen Passwort (nicht nach dem von www-data
!).
(Will man die ganze Aktion von Skripten aus steuern, ist diese Nachfrage ungĂŒnstig. Hier hilft der Systemadministrator, der diese Passwort-Abfrage unterbinden kann. Leider Kann ich in diesem Detail nicht helfen.)
Auf meinem Server ist
/var/www/html/
das Stammverzeichnis aller WEB-Inhalte. In dem Verzeichnis
/var/www/html/nc/
ist NextCloud installiert. Der relevante Verzeichnisbaum ist dann unter
/var/www/html/nc/data/<nc_user>/filse/
In meinem Fall verwende ich den NC-User admin
, er kann durch jeden anderen user ersetzt werden.
Punkt 2 geht so:
sudo -u www-data php /var/www/html/nc/occ files:scan admin
Die Voraussetzungen fĂŒr sudo
wurden unter Punkt 1 bereits beschrieben.
Der Befehl occ files:scan
hat etliche Varianten, die hier gut dokumentiert sind:
https://docs.nextcloud.com/server/20/admin_manual/configuration_server/occ_command.html
Dass ich hier ... admin
verwende, ist nur eine dieser Varianten und hÀngt damit zusammen, dass ich Dateien vorher in den Verzeichnisbaum eben vom NC-admin kopiert hatte.
Zu rclone
rclone
ist sehr gut dokumentiert: https://rclone.org/
Es ist in der Standard Installation von Linux nicht enthalten, aber mit
apt-get install rclone
schnell installiert. Allerdings bekommt man von der Site https://rclone.org/downloads/ i.d.R. eine neuere Version als aus den Reposietories. Diesen Weg empfehle ich ausdrĂŒcklich. Der Abschnitt Script Download and Install ist Dein FreundâŠ
Nach der Installation muss man es mit rclone config
konfigurieren, das wird hier erklÀrt:
https://rclone.org/docs/
Als Anhaltspunkt fĂŒr die erfragten Parameter kann vielleicht helfen:
[nc_cg2022]
type = webdav
url = https://beispiel.org/nc/remote.php/webdav/
vendor = nextcloud
user = admin
Dabei ist <nc_cg2022>
ein frei zu vergebender Name fĂŒr einen Remote (also einen Cloud-Zugang). Der User ist (natĂŒrlich) der NC-User, das zugehörige Passwort kann mit erfasst werden und wir verschlĂŒsselt gespeichert.