Nextcloud удалить файлы по умолчанию
Установим Nextcloud! Он заменит синхронизацию контактов, календаря, списка задач и файлохранилища/обменника на вашем смартфоне, а на ПК сойдёт за Dropbox. И независимости добавим, и сервер нагрузим.
Дальше длинная, но не сложная инструкция про аренду сервера, установку и настройку Nextcloud на сервере и на ПК/смартфонах, включая синхронизацию контактов и календаря.
Disclaimer
1. Я живу в Китае, тут проблема блокировки стоит острее, чем в России. Не по наслышке знаю, что даже Google и Dropbox могут однажды отключить навсегда, а использовать отечественные сервисы не хочется по разным причинам.
2. На моём сервере в качестве средства обхода блокировок стоит Shadowsocks — для России это сейчас overkill, но в Китае выручает. Сначала ставил Streisand, но это перебор.
3. Я не профессиональный сисадмин. Не используйте эту инструкцию бездумно на сервере с важной информацией. И делайте бэкапы.
Nextcloud — open source проект своего персонального «облака»: в нём объединены функции Dropbox, контактов, календаря и списка задач Google, а так же много чего ещё. Другими словами, можно отказаться от Google и синхронизировать свои данные с компьютера и смартфона на свой сервер.
Зачем это нужно?
- Если у вас паранойя.
- Если вы не доверяете большим корпорациям.
- Если вы хотите держать свои данные под личным контролем.
- Если в вашей стране Google не работает, или может вдруг перестать работать.
- Если не жалко платить каждый месяц за хостинг, или если уже есть работающий сервер.
- Если… да мало ли.
Что потребуется?
Что будем делать?
- Установим Apache, PHP и MySQL
- Добавим бесплатный SSL-сертификат Let's Encrypt
- Установим и настроим NextCloud
- Клиенты на ПК и Android
- Перенос контактов, календаря и задач из Gmail
Сервер
Предположим, что вы уже арендовали сервер и смогли подключиться к нему по SSH через Putty.
Начало
Обновляем список пакетов
Apache
Устанавливаем веб-сервер Apache2
В конце файла дописываем две строчки, подставив свои значения:
Включим мод headers, пригодится в дальнейшем
LetsEncrypt
Установим сертификат для шифрованного соединения, если у вас есть домен. Очень желательно.
Добавляем репозиторий для LetsEncrypt Certbot
Обновляем список пакетов
Устанавливаем Certbot
ответьте на вопросы: предоставьте ваш e-mail, согласитесь с условиями, при выборе перенаправления выберите вариант «2 — redirect».
Настроим автоматическое обновление сертификатов раз в три месяца:
выберите редактирование через nano, допишите следующую строчку и сохраните файл:
MySQL
Установим базу данных MySQL
Задайте рут-пароль для базы данных. Обязательно запомните или запишите его. Затем запустите команду для настройки безопасности
Ответьте на несколько вопросов. Можете отказаться от принудительной проверки сложности пароля и замены рут-пароля (первые два вопроса, отвечайте 'N'), на остальные вопросы отвечайте 'Y'.
PHP
Установим PHP 7 и нужные модули
И модуль для кэширования php-apcu
Откроем файл конфигурации и отредактируем его
В списке файлов index с разным расширением, перепишите его так, чтобы в начале был index.php.
Директория для файлов
Папку для личных файлов лучше создать в отдельном месте на сервере, а не так, как по-умолчанию хочет сделать NextCloud. Это нужно для повышения безопасности.
Создадим директорию в /media/
Изменим права доступа к директории
Nextcloud
Скачаем последнюю версию NextCloud в формате *.tar.bz2 с официального сайта. Для этого в браузере откройте страницу релизов и найдите новую версию. На момент написания этой статьи свежая версия 12.0.2, поэтому ссылка будет такая:
Скопируйте её в буфер обмена.
Вернёмся в PuTTY. Перейдите во временную директорию
Скачайте архив с NextCloud, замените ссылку на самую свежую.
Создайте скрипт для установки
Вставьте в него следующий код
Создайте файл конфигурации NextCloud в Apache
Вставьте следующий текст
Активируйте файл конфигурации
Включите дополнительные параметры
Создадим базу MySQL
Перейдём в MySQL, при входе понадобится рут-пароль MySQL, который мы создавали ранее.
Создадим новую базу данных под названием nextcloud
Зададим ей параметры, не забудьте вставить новый пароль
Сбросим параметры и выйдем из MySQL
Пока мы в консоли, сделаем ещё пару вещей для беспроблемных обновлений:
Установим нужные права на директорию с Nextcloud
И удалите директорию /var/www/nextcloud/assets
Настраиваем NextCloud
Если всё сделано правильно, вы увидите страницу NextCloud и приглашение создать учётную запись администратора:
Первые два поля — имя и пароль для учётной записи администратора
Data folder: укажите директорию, которую вы создали в шаге «Директория для файлов», в примере это /media/nextcloud
Configure the database
Нужно указать параметры, которые мы использовали в шаге «Создадим базу MySQL»
Первая строчка — имя базы данных
Вторая строчка — пароль базы данных (не рут-пароль!)
Третья строчка — пользователь
Четвёртая строчка — адрес для обращения к базе данных, это должен быть localhost и порт 5342
Поздравляем, NextCloud установлен и работает, вы находитесь в учётке администратора.
Настройка безопасности
Редактируем .htaccess
Сразу после строчки добавьте Header always set Strict-Transport-Security "max-age=15768000; includeSubDomains; preload"
Удаляем страницу Apache по-умолчанию
ВНИМАНИЕ: выполните команду только в том случае, если сервер был чистый, а в директории /var/www/html нет ничего ценного.
Включаем memcache
Отредактируем конфигурацию NextCloud
В конце файла добавим строчку
Откроем файл конфигурации Apache PHP
В файле много текста. Листайте, пока не найдёте раздел, посвящённый opcache, затем вставьте туда следующие параметры:
Все предупреждения о проблемах с безопасностью должны исчезнуть, останется надпись All checks passed.
Админка
Basic settings
Убедитесь, что пройдены все основные проверки безопасности. Это выглядит вот так. Если есть предупреждения — вернитесь к инструкции по настройке и проверьте, что всё сделано правильно.
Sharing
Установите настройки для раздачи файлов, если будете пользоваться облаком не одни. У нас частный небольшой сервер, и тысячи одновременных скачиваний могут создать на него серьёзную нагрузку. Стоит принудительно устанавливать пароль на скачивание к каждой публичной ссылке, а через несколько дней делать её неактивной.
Theming
Здесь можно придать Nextcloud индивидуальности: задать имя, подпись, картинку на фон, и даже поменять цвет оформления. Делается по желанию.
Encryption
Не стоит его включать. Оно значительно повышает нагрузку на сервер и на дисковое хранилище, но не сильно влияет на безопасность: ключи шифрования будут храниться на том же сервере, и если доступ к нему получит злоумышленник, то сможет прочитать даже зашифрованные файлы.
Приложения
Приложения — это дополнения, которые расширяют функции облака. Вот что я поставил для себя:
Two Factor TOTP Provider
Позволяет настроить двухфакторную авторизацию в аккаунт с помощью одноразовых кодов через приложение Google Authenticator или FreeOTP.
Обязательно настройте этот способ входа для аккаунта администратора, желательно — для пользователя тоже. Сделать это можно в разделе Personal, в самом низу страницы.
Calendar, Contacts
Их мы будем использовать вместо календаря и контактов Google, об этом дальше.
Управление проектами в стиле Канбан.
Notes
OPDS catalog
Сервер-библиотека для доступа к книгам. Работает с приложениями типа FBreader.
Passman
Хранилище паролей для сайтов в браузере. Есть плагин для Chrome.
Phone Sync
Tasks
Простой список дел с привязкой к календарю.
Пользователи
Сейчас вы находитесь в аккаунте администратора, но использовать его для хранения файлов и синхронизации параметров не нужно. Оставьте его для доступа к настройкам облака. Для повседневного личного использования нужен аккаунт простого пользователя.
- Откройте раздел Users
- В верху введите имя и пароль пользователя
- Нажмите на Groups, добавьте новую группу Users
- Нажмите Create
- Назначьте квоту места, чтобы случайно не переполнить сервер
Теперь у вас есть пользователь с ограниченными правами — то, что нужно для повседневного использования. Именно с обычным пользователем мы и будем дальше работать. Выйдите из учётной записи администратора и зайдите как новый пользователь.
Перенос контактов из Gmail
Это можно сделать через компьютер, но тогда не сохранятся портреты контактов, поэтому всё будем делать на смартфоне. Если на смартфоне нет контактов Google — листайте дальше.
Нам понадобится
- Аккаунт на вашем Nextcloud
- Смартфон на Android
- Приложение DAVdroid и OpenTask для синхронизации контактов и задач
- Приложение ZenUI Dialer (или любое другое для копирования контактов)
По шагам
Установка DAVdroid
А так же ваш логин и пароль .
Перенос контактов из Google в DAVdroid
- УстановитеZenUI Dialer
- Запустите и перейдите в управление контактами (кнопка «три точки» ->Manage contacts)
- Выберите Copy contacts
- Для Copy contacts from выберите вашу учётку Google
- Для Copy contacts to выберите DAVdroid Address book
- На вопрос Do you want to keep the originals ответьте ОК, иначе контакты будут удалены из Google.
- Дождитесь, пока закончится копирование.
- Откройте DAVdroid и синхронизируйте контакты ещё раз.
Если на смартфоне нет контактов
Если на телефоне у вас по какой-то причине нет контактов из Google, но вы можете открыть их в браузере на ПК, пропустите шаг Перенос контактов из Google в DAVdroid, экспортируйте контакты из Google Contacts (More -> Export) в файл vCard, а затем импортируйте файл через веб-интерфейс Nextcloud.
Календарь
Зайдите в стандартное приложение Календарь на смартфоне и проверьте, что новый календарь Nextcloud отображается в списке ваших календарей. Теперь можно сохранять события туда, они будут автоматически синхронизироваться с вашим собственным сервером Nextcloud. Google больше не нужен.
Веб-версия календаря будет доступна из браузера по адресу ваш_домен/nextcloud/index.php/apps/calendar
Список задач
Запустите приложение OpenTasks (в меню может называться просто Tasks), теперь там есть список Local (только на устройстве) и ваш «облачный» список.
Ещё один клиент для списка задач — SimpleTask Nextcloud. Меньше функций, но работает чуть надёжнее.
Синхронизация с ПК
Windows и macOS
- Установите и запустите клиент с официального сайта
- Введите адрес вашего сервера как ваш_домен/nextcloud
- Введите логин и пароль от учётной записи пользователя
- Выберите локальную папку для синхронизации (например, D:\Nextcloud)
Работает как Dropbox: кинули файл в папку — он улетает на серрвер. И наоборот.
Как изменить язык Nextcloud (Windows)
Почему-то разработчики не предусмотрели смены языка через настройки приложения, по-умолчанию оно использует системный. У меня Windows на китайском (и ничего с этим не поделать), но приложения всё-таки удобнее держать на более привычном языке. Вот решение проблемы:
- Выключите клиент Nextcloud
- Откройте папку, куда вы установили Nextcloud (по-умолчанию c:\Program Files (x86)\Nextcloud\)
- Найдите файлы client_ru.qm, qt_ru.qm и qtbase_ru.qm
- Удалите все остальные языковые файлы:
Android и iOS
Клиент для iPhone есть в официальном AppStore, для Android — в Google Play и на F-Droid. Установка простая и одинаковая на обоих платформах:
- Установите и запустите клиент
- Введите адрес вашего сервера как ваш_домен/nextcloud
- Введите логин и пароль от учётной записи пользователя
Можете попробовать закинуть несколько файлов и посмотреть, как они улетят на облако.
Бэкап фотографий
Как и на Dropbox / Google Drive, в Nextcloud можно включить автоматическую загрузку всех новых фотографий и видео в облако. Но не забывайте об объёме жёсткого диска: в самом дешёвом сервере это всего 20 гигабайт. Большие объёмы фотографий я синхронизирую на ноутбук и домашний медиа-сервер с помощью Syncthing, бесплатно и очень быстро.
На iOS можно дополнительно включить опцию CryptoCloud, тогда все файлы будут храниться на сервере в зашифрованном виде. Полезно, например, если вы пользуетесь чужим сервером Nextcloud. Но файлы можно будет просматривать только с iOS-устройств.
Личные впечатления
Жаль, что я узнал о Nextcloud только теперь: сколько времени я убил на установку сервисов Google на своих предыдущих телефонах, и всё ради синхронизации контакт-листа и календаря. Работает всё стабильно, насколько это позволяет Китай. Пинги до сервера большие, но подключение есть всегда
Когда вы удаляете файл в Nextcloud, он не удаляется сразу, он перемещается в корзину. Файл не удаляется окончательно, пока вы не удалите его вручную или когда приложение «Удаленные файлы» удалит его, чтобы освободить место для новых файлов.
Найдите удаленные файлы, нажав кнопку Удаленные файлы на странице Файлы веб-интерфейса Nextcloud. У вас будет возможность либо восстановить, либо окончательно удалить файлы.
Квоты
Удаленные файлы не учитываются в квоте хранилища. Только ваши личные файлы засчитываются в вашу квоту, а не файлы, которые были переданы вам. (См. Квота хранилища , чтобы узнать больше о квотах.)
Что происходит при удалении общих файлов
Удаление файлов становится немного сложнее, когда они являются общими файлами, как показано в этом сценарии:
Пользователь1 делит папку «тест» с Пользователем2 и Пользователем3
Пользователь2 (получатель) удаляет файл/папку «sub» внутри «test»
Папка «sub» будет перемещена в корзину как User1 (владелец) и User2 (получатель)
Но User3 не будет иметь копию «sub» в своей корзине
Когда User1 удаляет «sub», он перемещается в корзину User1. Он удаляется из User2 и User3, но не помещается в их корзины.
Когда вы делитесь файлами, другие пользователи могут копировать, переименовывать, перемещать и делиться ими с другими людьми, как они могут для любых компьютерных файлов; Nextcloud не имеет магических способностей, чтобы это предотвратить.
Как приложение удаленных файлов управляет пространством хранения
Чтобы пользователи не выполняли свои квоты хранения, приложение «Удаленные файлы» выделяет не более 50% доступного в настоящее время свободного пространства для удаленных файлов. Если ваши удаленные файлы превышают этот предел, Nextcloud удаляет самые старые файлы (файлы с самыми старыми временными метками с момента их удаления) до тех пор, пока не будет снова достигнут предел использования памяти.
Nextcloud проверяет возраст удаленных файлов при каждом добавлении новых файлов в удаленные файлы. По умолчанию удаленные файлы остаются в корзине 30 дней. Администратор сервера Nextcloud может изменить это значение в файле config.php , установив значение trashbin_retention_obligation . Файлы старше значения trashbin_retention_obligation будут удалены без возможности восстановления. Кроме того, Nextcloud рассчитывает максимальное доступное пространство каждый раз, когда добавляется новый файл. Если удаленные файлы превышают новый максимально допустимый объем, Nextcloud уменьшит срок хранения старых удаленных файлов, пока не будет достигнут предел максимально допустимого пространства.
Ваш администратор, возможно, настроил период хранения корзины для переопределения управления пространством хранения. См. Документацию администратора для получения более подробной информации.
Список наиболее полезных и используемых мной программ nextcloud. Конечно, нижеперечисленные приложения — это некоторые из многих приложений, доступных для Nextcloud. Существует множество других, которые могут еще больше расширить функционал облака.
External sites
Внешние сайты – даёт возможность создать ссылки на необходимые сайты в различных местах
- заголовок – главное верхнее меню пользователя
- меню настроек – выпадающее меню пользователя в правом верхнем углу пользователя
- квота пользователя –
- публичный нижний колонтитул – в низу окна на страница авторизации nextcloud, где необходимо ввести логин и пароль
можно настроить показ ссылок на определённых устройствах:
- все устройства
- только в приложении для Android
- только в приложении для iOS
- только на клиенте для настольных устройств
- только в браузере
есть возможность настроить открытие ссылки в новой вкладке или в окне nextcloud (frame), показ определённым группам и иконку ссылки
Checksum
Контрольная сумма — позволяет вычислять и просматривать контрольные суммы файлов. МОжно выбрать следующие алгоритмы: md5, sha1, sha256, sha384, sha512, crc32
File Access Control
Контроль доступа к файлам – позволяет настраивать доступ к файлам и каталогам пользователей на основе тэгов и созданных вами правил.
Deck
Колода – позволяет создавать карточки для задач и упорядочивать их. Также вы можете делать заметки, для задач. При командном использовании есть возможность комментирования задач для обсуждения.
News
AppOrder
Порядок приложений – позволяет каждому пользователю nextcloud расположить значки приложений в любом удобном порядке. С помощью этого приложения, администратор nextcloud может определить макет по умолчанию для значков.
Passwords
Пароли – менеджер паролей включающий в себя монитор безопасности паролей, безопасное шифрование, папки и теги для структурирования паролей. Есть возможность поделиться паролями с другими пользователями Nextcloud.
OnlyOffice
это пакет онлайн-офиса, без которого, файлы документов не будут открываться в облаке.. Вы получаете текстовый процессор, электронную таблицу и приложение для презентаций, все в вашем личном облаке. В nextcloud существует два варианта: Collabora и OnlyOffice. Для работы обоих вариантов необходимо устанавливать плагин и настраивать сервер офиса
Calendar
Календарь – приложение позволяет вести календари в облаке. делиться с пользователями облака.
Talk
Разговор – позволяет совершать защищенные аудио и видеозвонки через веб-интерфейс или мобильное приложение Nextcloud Talk. Для связи используется WebRTC.
Impersonate
позволяет администратору пользоваться nexcloud от имени другого пользователя.
Brute-force settings
защита от подбора паролей к учётным данным
End-to-End Encryption – включает сквозное шифрование на клиенте.
В этой статье собраны материалы по особенностям работы с Nextcloud, а также по интеграции с облачным сервисом сторонних приложений. Для установки Nextcloud воспользуйтесь следующим руководством.
Исправления
Обновление фотографий в контактах
Уже давно присутствует один неприятный баг, связанный с невозможностью заменить загруженную фотографию контакта. Когда вы кликаете на загруженной ранее фотографии, вместо формы выбора новой открывается загруженное ранее фото.
Эта ошибка исправляется следующим образом:
- Зайдите в Nextcloud администратором, перейдите в Меню -> Приложения и установите приложение "Custom CSS".
- Перейдите в Меню -> Настройки -> Темы оформления. В форму "Custom CSS" впишите:
Оптимизация Nextcloud
Использование фоновой обработки заданий
Для улучшения производительности все операции по обработке данных следует выполнять в фоне по расписанию. По умолчанию Nextcloud предлагает использовать запуск cron.php каждые 15 минут. Опция настройки находится в меню Настройки -> Администрирование -> Основные параметры. В разделе Фоновые задания выберите Cron:
После этого создайте сценарий запуска фонового процесса каждые 15 минут:
Файлы
Превью файлов
Типы файлов
По аналогии с файловыми менеджерами Nextcloud может создавать миниатюры с предпросмотром содержимого файлов для картинок, видео и аудиофайлов, текстовых документов и так далее. Более подробно об этом можно прочитать здесь. Для добавления отображения превью видеофайлов отредактируйте файл настроек проекта, включив отображение превью для всех типов фотографий и видеофайлов:
Для улучшения производительности и совместимости при работе с изображениями установите imagemagick для PHP:
emerge -a dev-php/pecl-imagick
Для извлечения превью из видеофайлов установите пакет ffmpeg :
emerge -a media-video/ffmpeg
Размер
Разумно ограничить максимальный размер превью, иначе в кэш будут попадать все ваши изображения в оригинальном размере. Для этого добавьте строчку:
Обновление кэша
Для ускорения доступа к директориям с файлами превью поддерживайте кэш в актуальном состоянии при помощи Nextcloud-приложения Preview Generator, которое можно установить из раздела "Мультимедиа".
После установки выполните:
su nginx -s /bin/bash
php occ preview:generate-all
При наличии большого количества файлов с изображениями в одной директории вам может понадобиться увеличить размер оперативной памяти, выделяемой для выполнения PHP. Для этого отредактируйте значение переменной :
Фотографии
Имена файлов
По умолчанию Nextcloud клиент выгружает отснятые в телефоне фотографии в облако в одну папку. При этом имена у фотографий используются вида , где "20180806" - год, месяц и день, "124329" - часы, минуты и секунды, "1" - вторая по счёту фотография, сделанная в ту же секунду.
Импортируемые из соцсетей фотографии могут иметь случайную последовательность символов в имени файла - что-то типа "MY0bLxnxTaM.jpg". Если это фотография, а не рисунок или скриншот, вы можете извлечь время снимка из EXIF-информации файла. Сделать это можно при помощи утилиты exiv2 , входящей в пакет :
exiv2 -F -r'IMG_%Y%m%d_%H%M%S' rename -- *.jpg
Чтобы посмотреть, все ли фотографии обработаны должным образом, вы можете указать другой путь сохранения переименованных:
mkdir new; exiv2 -F -r'new/IMG_%Y%m%d_%H%M%S' rename -- *.jpg
В итоге в исходной директории могут остаться скриншоты и обработанные фотографии, которые вы можете легко отделить от оригинальных снимков.
У такого именования файлов есть несколько плюсов:
- При объединении фотографий из разных фотоаппаратов или карт памяти вы, скорее всего, никогда не столкнётесь с двумя одинаковыми именами, а значит, сможете после обработки спокойно переносить файлы в одну директорию.
- Фотографии всегда будут расположены в хронологическом порядке. Вы можете помещать в одно место фотографии из разных источников.
- При объединении фотографий, скачанных из облака в урезанном качестве, и оригиналов имена файлов будут совпадать. Благодаря этому после объединения в одной директории вы не получите дубли, а снимки с уменьшенным разрешением будет корректно замещены оригиналами.
Если расширение имён файлов было написано заглавными буквами, вы можете перевести его в нижний регистр следующей командой:
rename .JPG .jpg *.JPG
Время создания файлов
Во время копирования фотографий время изменения файла может измениться. Это неудобно, поскольку теряется инфорамация о времени снимка. Восстановить время создания файла можно по EXIF-информации при помощи упомянутой ранее утилиты exiv2 . Для восстановления перейдите в директорию с фотографиями и выполните:
Переиндексируйте базу, чтобы изменения вступили в силу.
Просмотрщик под Android
Для доступа к фотографиям из Nextcloud вы можете установить приложение Галерея QuickPic.
Музыка
Плеер под Android
Для проигрывания музыки из Nextcloud вы можете воспользоваться Soumi: Network Music Player. Плейер выгодно отличается тем, что умеет кэшировать аудио файлы из плейлиста.
Чтобы подключиться к облаку, перейдите на вкладку Libraries, кликните на "+", выберите Internet, а затем введите настройки подключения к своему облаку:
Пароли к сайтам
Для хранения паролей в Nextcloud существует приложение Passman. Оно полезно тем, что создает шифрованное хранилище внутри вашего облака. Таких хранилищ может быть несколько. Для взаимодействия с хранилищем паролей существуют расширения для браузеров Firefox (включая мобильную версию) и Chrome. Подключившись к хранилищу в облаке, вы создаёте пароль, при помощи которого будут зашифрованы данные подключения:
Passman сам находит поля авторизации на сайте и добавляет к ним своё изображение. При наличии сохранённого пароля данные будут подставлены в поля - см. скриншот:
Закладки браузера
Для работы с закладками в Nextcloud существует одноимённое приложение Закладки. Вместо привычной древовидной структуры для поиска закладок используются тэги. Для доступа к вашим закладкам вы можете установить расширение FreedomMarks для браузеров Firefox и Chrome:
Под Android существует также приложение Nextcloud Bookmarks для доступа к закладкам. В нём тоже используются тэги.
Если вы сторонник классического подхода к хранению закладок, то можете воспользоваться расширением floccus. Данное расширение добавляет свой тэг к каждой закладке с указанием вложенности.
GPS навигация
Для работы с GPS навигацией существует приложение PhoneTrack, позволяющее как производить импортированные маршрутов из файлов с расширением .gpx, так и отслеживать положение устройств в режиме реального времени.
Настройка приложения PhoneTrack
Все устройства, с которых необходимо получать данные, возможно объединить в группы (сессии). Создаётся сессия, после чего в ней необходимо произвести резервирование устройства.
На скрине видно, что создана группа Family, где зарезервировано 3 устройства, имеющие имя и маркер.
Перейдя на следующую закладку, мы увидим список URL-адресов, где перечислены все возможные варианты для передачи данных в режиме реального времени. Рядом с каждым вариантом стоит восклицательный знак, нажав на который мы получим ссылку. Её необходимо указать в программе на устройстве, подставив маркер устройства.
Ниже рассмотрим вариант настройки на примере программы GPS Logger.
Настройка GPS логера
Программа GPS Logger позволяет сохранять маршруты в файл .gpx и передавать их как в ручном режиме, так и автоматически. Присутствует возможность передачи координат в режиме реального времени.
Для передачи в режиме реального времени нам необходимо перейти по пути Настройки записи лога - Сохранять журналы по указанному пользователем URL-адресу и внести URL-адрес, указав вместо yourname маркер необходимого нам устройства.
На скриншотах показан успешный тест проверки и информация в логе о том, что координаты определены и переданы на требуемый адрес.
Данные записываются в используемую базу данных, так что устройство сразу появится в списке в виде цветного кружочка с первой буквой имени устройства.
В случае если на устройстве нет Интернета, координаты будут отправлены после подключения к нему.
Видео-аудио конференция
Nextcloud позволяет проводить чат, аудио-видео конференций через WebRTC. Для этого понадобится приложение Talk. Если вы планируете проводить конференции, где участники находятся в разных сетях, а тем более за симметричным NAT - вам понадобится TURN/STUN сервер.
Настройка TURN сервера
Работа с офисными документами
После установки NextCloud вы сможете просматривать и работать только с документами формата txt. Чтобы работать со всеми видами офисных документов, можно использовать Collabora Online.
Collabora Online
Установите и настройте Collabora Online согласно руководству.
Администрирование
Переиндексация базы
При копировании/переименовании файлов, изменении прав доступа или редактировании файлов напрямую на сервере, минуя Web-интерфейс Nextcloud или WebDAV, следует выполнить обновление базы данных Nextcloud. Для этого выполните следующее.
В случае прямого доступа к файлам Nextcloud (не через WebDAV или веб-интерфейс) не забывайте пересканировать файлы. Для этого выполните:
su nginx -s /bin/bash
php occ files:scan user
Вместо user подставьте логин пользователя.
Заключение
Подписывайтесь на нашу группу @nextcloud@calculate.social в Федеративной сети Mastodon
Идея иметь собственное домашнее облако у меня была давно. Рассматривал варианты NAS на основе бесплатных дистрибутивов типа FreeNAS, NAS4Free, OpenMediaVault и пр. Но хотелось, чтобы был мобильный клиент, простой и красивый webUI. Раньше как-то баловался с разными решениями и понравился проект ownCloud. Но на текущий момент у него платное мобильное приложение. Сейчас стоит около 30 рублей, но хотелось иметь что-то более бесплатное. Вспомнил про хороший форк ownCloud — Nextcloud. Мобильное приложение бесплатное (+ для есть и дополнительные приложения) и есть декстопные клиенты (Win, Mac, Linux). Сам Nextcloud имеет множество настроек, интеграций, а также возможность установки расширений (приложений).
Распространяется Nextcloud несколькими вариантами:
Архив серверного приложения для web-сервера;
«Образами» для VirtualBox, Docker и Snap-пакет.
Я решил реализовать схему на VirtualBox, с подключением общей папки, как хранилища.
Предусловие: На сервере должен быть установлен VirtualBox (далее — VB) и VirtualBox Extension Pack (далее — VBEP).
Импорт виртуальной машины
1. Скачиваем образ виртуальной машины — Nextcloud-VM.ova.
Другие варианты образов представлены на сайте Hansson IT.
2. Двойным кликом запускаем скаченный образ, после чего откроется импорт VirtualBox.
В настройках можно указать для создаваемой виртуальной машины (далее — ВМ) Имя, Описание и Папку. Характеристики «железа» уменьшать не стоит, иначе при установке Nextcloud могут появиться ошибки о недостаточности ресурсов. Все настройки ВМ, в т.ч. общие папки, лучше настраивать после завершения установки Nextcloud.
3. После нажимаем «Импорт» и ждём завершения создания нашей ВМ.
4. После успешного импорта, ВМ отобразиться в списке ВМ VB.
Первоначальная настройка Nextcloud
Образ ВМ основан на Ubuntu Server 20.04.1 LTS в котором предустановлены скрипты разворачивания Nextcloud.
2. После запуска ВМ появляется приглашение авторизации. По умолчанию пользователь (админ) сервера — ncadmin, с паролем nextcloud.
Смена пароля будет предложена после завершения конфигурации Nextcloud.
3. Авторизовываемся на сервере.
Вводим пароль, нажимаем Enter и запускается процесс установки Nextcloud.
disk1 — диск с ОС, файловая система ext4.
disk2 — диск с файловой системой ZFS.
По умолчанию предлагается хранить данные на втором диске. Я собираюсь хранить данные в сетевой папке (на отдельном физическом жестком диске), поэтому использовать второй диск я не буду.
6. Открывается окно выбора жесткого диска для хранения.
Стрелками встаем на позицию «1 Disk», активируем её пробелом.
Клавишей «Tab» переходим к блоку кнопок, выбираем «Ok» и нажимаем «Enter».
7. На следующем шаге открывается окно выбора DNS сервера:
Local — локальный сервер (по DHCP)
Я предпочитаю использовать Cloudflare. Выбираю его и нажимаю «Ok».
10. В следующем окне предлагается найти лучшее зеркало — будет произведен тест доступности и скорости соединения нескольких зеркал, после чего, необходимо выбрать понравившееся.
Я решил остаться на стандартном, хотя по тестам есть зеркала и получше (выше скорость, меньше пинг, шире канал). Поэтому на этом шаге выбираю «No» и нажимаю «Enter».
После чего начнется установка Nextcloud (+PostgreSQL, PHP, Apache).
11. По завершению установки будет предложено изменить пароль ncadmin
Нажимаем любую клавишу. Вводим новый пароль, нажимаем «Enter», подтверждаем новый пароль ещё раз и нажимаем «Enter».
Нажимаем любую клавишу. Вводим имя пользователя, нажимаем «Enter», вводим пароль, нажимаем «Enter», подтверждаем пароль ещё раз и нажимаем «Enter».
13. Далее появляется окно с выбором местоположения
Выбираем «Europe», и нажимаем «Ok».
14. В следующем окне необходимо выбрать город. Выбираем необходимый и нажимаем «Ok».
Y или I — установить обновленную (основную действующую) версию;
N или O — оставить текущую установленную версию;
D — показать изменения между версиями;
Z — запустить shell
Список изменений файла:
Если сохраняем ранее выбранные настройки DNS, вводим «N» и нажимаем «Enter», если необходимо вернуться к стандартным настройкам — вводим «Y» и нажимаю «Enter».
После обновления файла ВМ будет перезагружена.
16. После перезагрузки ВМ необходимо авторизоваться (на этом этапе можно пользоваться PuTTY). После авторизации будет приветственное окно, которое сообщит, что мы все установили и это окно можно отключить удалив файл /home/ncadmin/welcome.sh (иначе оно будет постоянно появляться).
Нажимаем «Ok». — Nextcloud установлен.
Настройка ВМ
Для работы расширений VB установим соответствующий пакет sudo apt install virtualbox-guest-utils
После установки выключим ВМ для её настройки — sudo shutdown -h now
После того, как ВМ будет выключена, в VB зайдем в настройки.
1. Можно включить двунаправленный буфер обмена (но лучше пользоваться PuTTY)
2. Я уменьшил оперативную память до 1024 Гб и отключил гибкий диск
3. Установил использование одного ядра процессора
4. Создал общую папку (folder): указал путь и включил авто-подключение
Сохраняем настройки и запускаем ВМ.
Изменение папки хранения данных
После запуска ВМ, авторизуемся.
1. Проверяем наличие общей папки
Должно отобразиться наименование «sf_folder» (на гостевой машине у общей папки префикс «sf_»), где «folder» — имя общей папки на хост машине.
2. Включаем в группу «vboxsf» (группа-владелец общей папки) пользователей ncadmin и www-data (пользователь Apache).
sudo usermod -aG vboxsf ncadmin
sudo usermod -aG vboxsf www-data
После включения в группу перезагружаем ВМ
sudo shutdown -r now
3. После перезагрузки авторизуемся и переводим приложение nextcloud в режим обслуживания
sudo -u www-data php /var/www/nextcloud/occ maintenance:mode --on
Папка nextcloud расположена в корне папки www, а не внутри html
4. Копируем файлы настроек и пользовательские файлы в общую папку
sudo cp -R /mnt/ncdata /media/sf_folder
5. Убеждаемся что всё скопировано
Так же можно проверить на хост машине в общей папке
6. Изменяем путь к папке данных в конфиг-файле
sudo nano /var/www/nextcloud/config/config.php
Откроется файл config.php, где для параметра 'datadirectory' необходимо изменить значение '/mnt/ncdata' на '/media/sf_folder/ncdata' (где «folder» — имя общей папки)
После внесения изменений нажимаем Ctrl+X, на вопрос о сохранении изменений вводим «y» и нажимаем «Enter».
7. Выключаем режим обслуживания
sudo -u www-data php /var/www/nextcloud/occ maintenance:mode --off
Результат
1. Авторизуемся на сервере Nextcloud через web-интерфейс под пользователей admin и добавим картинку в папку Photos
2. Проверим наличие файла в общей папке на хост-машине
3. Проверим наличие файла в мобильном приложении.
В результате мы получили облачный сервер на виртуальной машине с внешним хранилищем, к которому можно получить прямой доступ посредством файлового менеджера.
4. Обратный порядок копирования
Если мы сначала вручную закидываем файлы в общую папку (без использования приложения), то в приложении они не будут видны. Для того, чтобы они отобразились, нужно пересканировать папки командой
sudo -u www-data php /var/www/nwxtcloud/occ files:scan —all
После сканирования, добавленный файлы отобразятся в приложении.
UPD (18.01.2021): исправлена логическая ошибка в п.15 (комментарий @KYuri)
Читайте также: