Как к Данным SCP к ownCloud?

Мотивация: owncloud-client сбои периодически из-за многих причин; мне нужно scp во время тех событий. В сервере, ls -la в $HOME

drwxr-xr-x 2 masi masi 4096 May 31 14:14 .
drwxr-xr-x 4 root root 4096 May 31 10:18 ..
-rw------- 1 masi masi 1099 May 31 12:20 .bash_history
-rw-r--r-- 1 masi masi  220 May 31 10:18 .bash_logout
-rw-r--r-- 1 masi masi 3512 May 31 10:18 .bashrc
-rw-r--r-- 1 masi masi  675 May 31 10:18 .profile
-rw------- 1 masi masi 2632 May 31 14:14 .viminfo

Я могу

  • ssh masi@192.168.1.101

Я не могу по некоторым причинам

  • scp $HOME/5GBdata/ masi@192.168.1.101:$HOME/

Где в файлы SCP?

Сервер: Raspberry Pi 3b. Клиент: Ubuntu 16.04.

Обзор ответа Ankit

Клиентский

masi@masi:~/Documents/Masi$ rsync -avz Directory -e ssh masi@192.168.1.107:/home/masi/
sending incremental file list
Directory/
Directory/common_mistakes.tex

sent 484 bytes  received 58 bytes  63.76 bytes/sec
total size is 4,143  speedup is 7.64

Серверная сторона

masi@raspberrypi:~ $ ls Directory/
common_mistakes.tex
masi@raspberrypi:~ $ sudo cp -r /home/masi/Directory /var/www/owncloud/data/masi/files/

masi@raspberrypi:~ $ sudo -u www-data php /var/www/owncloud/occ files:scan masi 
Scanning file   /masi/
Scanning folder /masi/
... 
Scanning file   /masi/files/Directory
...
Scanning folder /masi/files/Directory
Scanning file   /masi/files/Hematology/._common_mistakes.tex
Scanning file   /masi/files/Hematology/common_mistakes.tex
...
Scanning folder /masi/cache

где у Вас должен быть полный путь к occ.Работает!

3
задан 9 June 2016 в 16:41

2 ответа

Предпосылки:

  1. Каталог Data на сервере Owncloud: Соединитесь с сервером через ssh. Если Вы установили owncloud сервер на местоположении по умолчанию (/var/www), затем перейдите к файлу конфигурации для нахождения о местоположении каталога данных.

nano /var/www/owncloud/config/config.php

Этот файл скажет Вам местоположение каталога данных (место, где все файлы хранятся.). Как это; Config.php file of owncloud

Теперь решение:

Во-первых, можно передать папку серверу с помощью rsync и ssh. Его самое удобное и быстрое (так как сжатие включено). Например, от локального компьютера на терминальном использовании,

rsync -avz /path/to/local/50GBfolder -e ssh username@address:/home/user

Затем, соединитесь с сервером с помощью ssh и оттуда скопируйте папку в owncloud каталог данных. (Два ступают, необходимы, так как Вы должны базироваться разрешение скопировать в owncloud каталог данных, который принадлежит www-data пользователь.)

Копия регистрирует этот путь;

sudo cp -r /home/user/50Gbfolder /path/to/data/$owncloud_username/files/

  • В каталоге данных существует папка для каждого owncloud пользователя как owncloud_username, затем под этим как существует папка files; следовательно упомянутый выше в команде.

Наконец, обновите owncloud базу данных путем сканирования для идентификации новых файлов. Это сделано предварительно созданной командой. Во-первых, измените каталог на свой owncloud каталог установки. Для значения по умолчанию это \var\www\owncloud. таким образом,

cd \var\www\owncloud

Если Вы делаете ls, Вы будете видеть исполняемый файл как occ под этой папкой. Это occ базирующаяся программа php.

Работать occ для пересканирования,

sudo -u www-data php occ files:scan $user_name

Полное пересканирование может занять время. После пересканирования Вы будете видеть папку при входе в систему от браузера.


Объяснение:

  • rsync -avz /path/to/local/50GBfolder -e ssh username@address:/home/user

-a включает рекурсивный, полномочия, ссылки, группа и т.д. и многое другое. Проверьте страницу справочника. -v подробный, -z сжатие и передача.

  • sudo cp -r /home/user/50Gbfolder /path/to/data/$owncloud_username/files/

-r рекурсивная копия папки, все подпапки копируются.

6
ответ дан 1 December 2019 в 13:16

Существует две проблемы с Вашей командой scp:

  • Вы пытаетесь загрузить каталог, следовательно необходимо обеспечить -r опция (копируют рекурсивно).

  • Переменными среды заменяют перед выполнением команды. Поэтому $HOME в masi@192.168.1.101:$HOME/ разворачивает до пути Вашего корневого каталога на Вашем локальном (а не удаленное) машину. Если пути корневого каталога на этих двух машинах будут отличаться затем, то команда будет работать не, как Вы предназначили, по всей вероятности переставший работать из-за проблем доступа. При использовании scp, обратитесь к своему корневому каталогу на удаленной машине с'.' (другими словами, scp интерпретирует пути на удаленной машине относительно Вашего корневого каталога).

Таким образом, корректная команда будет:

scp -r $HOME/5GBdata/ masi@192.168.1.101:.

Однако обратите внимание, что этот ответ только указывает на Ваши ошибки в использовании scp. Обратитесь к другому ответу (ответам) для рекомендаций о том, как достигнуть Вашей заключительной цели.

2
ответ дан 1 December 2019 в 13:16

Другие вопросы по тегам:

Похожие вопросы: