Перейти к основному содержанию

OwnCloud — список шар

Owncloud

Я не понимаю почему в OwnCloud нет нормального механизма, который позволяет управлять расшаренными ссылками своего облачного хранилища.

Со временем количество ссылок растёт, рано или поздно нужно это болото расчищать. В NextCloud раньше было дополнение, которое добавляло в occ команду для вывода списка шар, но в web интерфейсе ничего нет.

Мы можем пройти по кнопкам в левом меню и увидеть только те ресурсы, которые расшарил текущий пользователь.

owncloud

Мы можем воспользоваться API и получить тот же список в XML.

/ocs/v1.php/apps/files_sharing/api/v1/shares
owncloud

Добавив параметров получим то же самое в JSON.

/ocs/v1.php/apps/files_sharing/api/v1/shares?format=json
owncloud

Однако, получить ссылки всех пользователей так не получится.

Единственный рабочий вариант, который я нашёл, заключается в получении данных из MySQL базы.

Входим в консоль MySQL:

sudo mysql --user=root -p

Переключаемся на БД owncloud:

USE owncloud;

И получаем список всех шар:

SELECT * FROM oc_share;
owncloud

Можно скопировать результат.

owncloud

Получится аккуратная табличка.

Результат получен, он решает нашу задачу. Однако, если таблица большая, то скопировать её проблематично. Ничего страшного, выгрузим результат в файл.

SELECT * FROM oc_share
INTO OUTFILE '/tmp/shares.csv';
owncloud

Для выгрузки в CSV:

SELECT * FROM oc_share
INTO OUTFILE '/tmp/shares.csv'
FIELDS TERMINATED BY ','
ENCLOSED BY '"'
LINES TERMINATED BY '\n';
owncloud

Задача решена.

Теги

 

Похожие материалы

Включаем Database Mail в Microsoft SQL Server 2014

Для того чтобы MSSQL сервер мог слать уведомления на почту, необходимо настроить Database Mail фичу. Для чего нужны уведомления? Я, например, хочу получать письмо, когда заканчивается бэкап. Функционал этой фичи на самом деле гораздо богаче. При сноровке можно по почте слать SQL запросы и получать результаты. В моём случае это не требуется.

Теги