Как изменить место хранения файлов nextcloud

Если вы хотите изменить расположение папки data в Nextcloud snap. Это папка в которой храняться данные, то для этого есть два способа.

Если вы хотите изменить расположение папки data в Nextcloud snap, это папка, в которой хранятся данные, то для этого есть два способа.

1 способ до того как вы создали учетную администратора и 2 способ после того как вы создали учетную администратора.

Содержание

  • 1 способ
    • Рекомендации к 1 способу
    • Создаем папку
    • Меняем пользователя и группу
    • Назначаем права
    • Обновляем конфигурацию Nextcloud
  • 2 способ
    • Рекомендации к 2 способу
    • Создаем папку
    • Обновляем конфигурацию Nextcloud
    • Отключаем Nextcloud
    • Переносим каталог с данными
    • Запускаем Nextcloud
  • Видео Как изменить расположение папки data в Nextcloud snap

1 способ

Рекомендации к 1 способу

В документации папку data рекомендуется монтировать в каталог /media/ или /mnt/.

Но на деле сменить хранилище фалов удалось только когда я расположил его в папке /mnt/.

В каталоге /media/ выдает ошибку: Ошибка Невозможно создать или записать в каталог данных /media/nextcloud/data.

Так же я пробовал указать расположение в каталоге /home.

Интересно, что nextcloud не выдал ошибку как при размещении в каталог /media/, а завершил установку, но если проверить папку где должен располагаться каталог data, то там пусто, а все файлы хранилища находятся по стандартному пути.

Перейдем к смене каталога.


Создаем папку

Создаем папку, в которой у нас будет хранилище файлов, по пути /mnt/nextcloud/data:

sudo mkdir -p /mnt/nextcloud/data

Меняем пользователя и группу

Меняем пользователя и группу каталога на root:

sudo chown -R root:root /mnt/nextcloud/data

Назначаем права

Назначаем права 0770 на каталог /mnt/nextcloud/data:

sudo chmod 0770 /mnt/nextcloud/data

Обновляем конфигурацию Nextcloud

Открываем для редактирования конфиг /var/snap/nextcloud/current/nextcloud/config/autoconfig.php:

sudo vi /var/snap/nextcloud/current/nextcloud/config/autoconfig.php

Находим там строчку ‘directory’ => getenv(‘NEXTCLOUD_DATA_DIR’), и меняем ее на

'directory' => '/mnt/nextcloud/data',

Перезапускаем php:

sudo snap restart nextcloud.php-fpm

Заходим через веб Nextcloud и дальше как обычно создаем пользователя администратора и дожидаемся окончания установки.

Если до изменений конфига вы зашли на веб страницу вашего Nextcloud, не забудьте обновить ее после изменений конфига перед тем как создавать пользователя.


2 Способ

Рекомендации к 2 способу

Тут, я так понимаю, можно монтировать в любой каталог.
Но и здесь тоже есть проблемы с каталогом /media/.

Ошибка Убедитесь, что в корне каталога данных присутствует файл «.ocdata».

Хотя файл на месте и все права назначены.

Если монтировать в каталог /mnt/ и /home/, то все прекрасно работает.


Создаем папку

Создаем папку, в которой у нас будет хранилице файлов, по пути /mnt/nextcloud:

sudo mkdir -p /mnt/nextcloud

Обновляем конфигурацию Nextcloud

Открываем для редактирования конфиг /var/snap/nextcloud/current/nextcloud/config/config.php:

sudo vi /var/snap/nextcloud/current/nextcloud/config/config.php

Находим там строчку ‘datadirectory’ => ‘/var/snap/nextcloud/common/nextcloud/data’, и меняем ее на

'datadirectory' => '/mnt/nextcloud/data',

Отключаем Nextcloud

Для отключения nextcloud вводим в терминал:

sudo snap disable nextcloud

Переносим каталог с данными

Переносим каталог с данными data:

sudo mv /var/snap/nextcloud/common/nextcloud/data /mnt/nextcloud/

Запускаем Nextcloud

Для запуска Nextcloud вводим в терминал:

sudo snap enable nextcloud

Каталог с данными перенесен.

Prerequisites

The partition you want to use must be mounted somewhere in /media/ or /mnt/. These are the only locations the snap can access under confinement with the removable-media plug. Connect the removable-media plug as mentioned in the README in order to grant the snap permission to access external drives.

If you just installed the snap, and haven’t created an admin user yet

  1. Decide where you want the new data to live. We’ll use /media/nextcloud/data. Make sure root has write access, but it’s not accessible by others, for example:

     $ sudo mkdir -p /media/nextcloud/data
     $ sudo chown -R root:root /media/nextcloud/data
     $ sudo chmod 0770 /media/nextcloud/data
    

    Important: Posix permissions take the entire path into account. Even if the data directory above is writable by root, if any part of the path above it (e.g. /media, or /media/nextcloud) is not accessible by root, it will not be able to access data either.

  2. Update the Nextcloud config to use the new data directory by editing /var/snap/nextcloud/current/nextcloud/config/autoconfig.php and making sure the directory setting is pointing to the right place, e.g.:

     // ...
     'directory' => '/media/nextcloud/data',
     // ...
    
  3. Now, restart the PHP service:

     $ sudo snap restart nextcloud.php-fpm
    

    If you visited Nextcloud before now, refresh to re-evaluate the changed config (otherwise the directory won’t change from the default).

  4. Make your admin user as usual and carry on, Nextcloud is using the external data.

If you have already created an admin user

  1. Decide where you want the new data to live. We’ll use /media/nextcloud/data, but the data directory will be created by moving the existing data into place, so we only need to setup /media/nextcloud right now (although you’ll still want to make sure it’s owned by root):

     $ sudo mkdir -p /media/nextcloud
     $ sudo chown -R root:root /media/nextcloud
    
  2. Stop the snap from running for a moment:

     $ sudo snap stop nextcloud
    
  3. Update the Nextcloud config to use the new data directory by editing /var/snap/nextcloud/current/nextcloud/config/config.php and making sure the datadirectory setting is pointing to the right place, e.g.:

     // ...
     'datadirectory' => '/media/nextcloud/data',
     // ...
    
  4. Move (or copy) the current data directory to the new place:

     $ sudo mv /var/snap/nextcloud/common/nextcloud/data /media/nextcloud/
    
  5. Restart the snap:

     $ sudo snap start nextcloud
    

And you should be up and running using external storage for Nextcloud’s data.

Собственный облачный сервер

В этой статье покажу как легко и быстро с минимальными настройками поднять личный облачный сервер NextCloud на операционной системе Ubuntu. 

В качестве сервера подойдет любой компьютер или виртуальная машина, которая соответствует минимальным требованиям Ubuntu Server 20.04 

Я буду использовать виртуальную машину:

CPU: 2 core 3.0Ghz
ОЗУ: 2Gb
SSD: 10Gb
HDD: 1Tb

Ubuntu 20.04 будет установлена на SSD накопитель, после установки операционной системы и nextcloud вся система занимает 4.7 Gb. А для хранения файлов использую отдельный HDD размером 1 Тб (для надежности рекомендую использовать 2 одинаковых HDD с зеркалированием — RAID1)

Установка Ubuntu Server + NextCloud

Сразу ставлю OpenSSH server

И еще проще когда сразу предлагают nextcloud установить

Если на этом этапе не выбрать, то можно после установки набрать команду

sudo snap install nextcloud 

Далее обновляю и ставлю пакеты, которые мне нужны будут вдальнейшем.

apt update
apt upgrade
apt install mc net-tools smbclient -y 

Перезагружаю и открываю в браузере ссылку с IP адресом сервера http://IP_ADDRESS 

Создаю учетную запись администратора, устанавливаю пароль. Отказываюсь от установки рекомендуемых приложений. На этом основная часть установки завершена. 

Хранение пользовательских файлов на другом диске

Так как система у меня на SSD диске объемом 10Gb этого очень мало для хранения моих данных и хотелось бы сделать чтобы данные хранились на другом диске HDD 1Tb который так же подключен к этому серверу.

По умолчанию данные хранятся в папке /var/snap/nextcloud/common/nextcloud/data/ Если у вас система установлена на диске с большим объемом и не смущает данное расположение, то можно этот шаг пропустить. 

Дальнейшие действия удобнее проделывать через SSH Putty

Создаю удобную папку для хранения

Узнаю UUID диска HDD 1Tb и копирую его

Настройка автоматического монтирования диска при запуске системы, монтирую диски и проверяю корректность

nano /etc/fstab
UUID=36276a15-1ca6-4c86-9309-288c6c825ae6 /mnt/nextcloud ext4 defaults 0 0
mount -a
df -h или lsblk 

Копирую файлы из папки по умолчанию в свою папку

cp -a /var/snap/nextcloud/common/nextcloud/data/. /mnt/nextcloud/data 

Редактирую конфигурационный файл. 

nano /var/snap/nextcloud/23171/nextcloud/config/config.php 

Вместо 23171 у вас будут свои цифры. Нужна строка datadirectory указал свой путь:

datadirectory‘ ⇒ ‘/mnt/nextcloud/data‘ 

snap disable nextcloud
snap enable nextcloud 

Также нужно предоставить snap разрешение на доступ к съемным носителям (/mnt)

snap connect nextcloud:removable-media 

Настройка домена и HTTPS

Для удобного доступа через интернет к данному серверу необходим домен и внешний IP адрес. 

Для теста создаю домен 3 уровня: nc.akmalov.com

В DNS настройках домена указываю внешний адрес виртуального маршрутизатора, а на маршрутизаторе 80 и 443 порты направляю сервер NextCloud (проброс портов)

Добавляю в конфигурации NextCloud доменное имя 

nano /var/snap/nextcloud/23171/nextcloud/config/config.php 

snap disable nextcloud
snap enable nextcloud 

Проверяю доступ к серверу через интернет до доменному имени, должен быть доступен по http (80 порту)

Запрашиваю SSL сертификат в lets-encrypt

sudo nextcloud.enable-https lets-encrypt 

  1. In order to register with the Let’s Encrypt ACME server, you must agree to the currently-in-effect Subscriber Agreement located here:

    <https://letsencrypt.org/repository/>
    

    By continuing to use this tool you agree to these terms. Please cancel now if otherwise.

  2. You must have the domain name(s) for which you want certificates pointing at the external IP address of this machine.

  3. Both ports 80 and 443 on the external IP address of this machine must point to this machine (e.g. port forwarding might need to be setup on your router).

  1. Вы принимаете соглашение которое врядли прочитаете
  2. У вас должен быть домен который ведет к белому IP адресу
  3. Порты с белого IP адреса попадают на ваш сервер по портам 80 и 443

Если все готово продолжаю, нажимаю да, указываю email и доменное имя. 

Все готово первоначальная настройка выполнено. Теперь можно заходить с любой точки, с приложения на телефоне или компьютере где есть интернет. 

Дополнительно

NextCloud очень удобное и интуитивно понятное решение. Имеет удобное приложение на смартфоны, компьютеры, можно заходить через любой web-браузер и без установки приложений. 

Можно делится документами, создавать пользователей с гибкими правами доступа на разные папки. Создавать ссылки с парольной защитой или без авторизации к определенным папкам или файлам. Открыть доступ к папке куда другие люди смогут скидывать свои файлы. Ограничивать папки по размеру и еще множество других функций для удобного управления файловым хранилищем. 

На этом функционал не заканчивается, в nextcloud имеется возможность добавлять дополнительные пакетные приложения 

Например для совместной работы с документами, аналог корпоративного мессенджера с видеозвонками и общим чатом, для интеграции с другими популярными сервисами, удаление дубликатов фотографий, для безопасности и многое многое другое.  

Понравилась статья? Поделить с друзьями:
  • Как изменить место спавна родина рп
  • Как изменить название своего интернета на айфоне
  • Как изменить название процесса программы
  • Как изменить название своего вайфая на айфоне
  • Как изменить место спавна мта