Изменение HDD Nextcloud
Здравствуйте, я некомпетентен.
На самом деле, если вы размещаете данные в облаке, изменение места хранения данных из-за повреждения диска, вероятно, происходит только при миграции среды, но я, хранивший данные NextCloud на умирающем жестком диске, решил указать другой жесткий диск.
Я использую NextCloud только как медиаплеер в локальной среде или временно и просто для обмена файлами между различными ОС, поэтому у меня нет важных файлов. Это данные, хранящиеся на какой-либо из машин в доме, например, файлы BIOS для машины для извлечения EEPROM, которая не всегда включена, или заметки. Или просто сбрасываю PDF-файлы, которые накапливаются незаметно.
На самом деле, достаточно просто изменить точку монтирования, так что, возможно, это даже не нужно, но поскольку я указываю другую точку монтирования для уже смонтированного жесткого диска, это может повлиять на другие скрипты оболочки, поэтому я решил создать его отдельно, чтобы было "чисто".
Честно говоря, можно было бы просто создать символическую ссылку на исходное местоположение, не меняя путь datadirectory в файле конфигурации NextCloud config/config.php, но это как-то неприятно, поэтому я решил создать отдельный каталог для данных NextCloud на другом жестком диске и указать его.
* Эта статья не о переносе данных, а об изменении диска.
Создание каталога данных
Мы создадим каталог для данных NextCloud на уже смонтированном жестком диске.
И, похоже, NextCloud будет ругаться, если не создать .ocdata, поэтому я создам его с помощью touch. Я забыл, что даже с опцией -R он не просматривает рекурсивно .файлы.
sudo mkdir /media/3t/ncdata
sudo touch /media/3t/ncdata/.ocdata
sudo chown www-data:www-data /media/3t/ncdata
sudo chown www-data:www-data /media/3t/ncdata/.ocdata
sudo chmod 750 /media/3t/ncdata
Редактирование config.php
И если datadirectory больше не существует, то даже невозможно войти в режим обслуживания, поэтому я сначала отредактирую файл config/php, изменю настройки, а затем проведу проверку работоспособности.
cd /your/nextcloud/dir
sudo vim config/config.php
Затем укажите следующую настройку для только что созданного каталога.
'datadirectory' => '/media/3t/ncdata',
Теперь включите режим обслуживания, и если не будет ошибок, снова выключите его.
cd /your/nextcloud/dir
$ sudo -u www-data php ./occ maintenance:mode --on
Maintenance mode enabled
$ sudo -u www-data php ./occ maintenance:mode --off
Maintenance mode disabled
ОК.
Повторное сканирование файлов
Возможно, из-за того, что у меня установлены плагины, NextCloud ругался после входа в систему, не позволяя просматривать содержимое, если каталог, указанный в плагине, уже не существовал.
Я снова вошел в режим обслуживания, выполнил сканирование файлов и повторно получил файловые индексы.
cd /your/nextcloud/dir
$ sudo -u www-data php ./occ maintenance:mode --on
Maintenance mode enabled
$ sudo -u www-data php ./occ files:scan --all
Starting scan for user 1 out of 2 (Fox)
Path not found: User folder /media/3t/ncdata/Fox/ exists in cache but not on disk
Starting scan for user 2 out of 2 (nextcloud)
Path not found: User folder /media/3t/ncdata/nextcloud/files exists in cache but not on disk
+---------+-------+-----+---------+---------+--------+--------------+
| Folders | Files | New | Updated | Removed | Errors | Elapsed time |
+---------+-------+-----+---------+---------+--------+--------------+
| 0 | 0 | 0 | 0 | 0 | 2 | 00:00:00 |
+---------+-------+-----+---------+---------+--------+--------------+
$ sudo -u www-data php ./occ maintenance:mode --off
Maintenance mode disabled
Ой... что-то ругается...
Поэтому я создам каталоги, на отсутствие которых он ругается.
sudo mkdir /media/3t/ncdata/Fox/files
sudo mkdir /media/3t/ncdata/nextcloud/files
sudo chown -R www-data:www-data /media/3t/ncdata
sudo chmod -R 750 /media/3t/ncdata
На этом все.
Повторное сканирование
cd /your/nextcloud/dir
sudo -u www-data php ./occ files:scan --all
Если это пройдет, то успешно завершено.
После подтверждения этого, я уберу права доступа к файлам данных NextCloud только для файлов.
cd /media/3t
sudo find ./ncdata -type f -exec chmod 640 {} \;
В прошлый раз я подключился к своему VPN WireGuard с Android-устройства, так что теперь я могу получить доступ к NextCloud, будучи подключенным к VPN.
Раньше я использовал бесплатный DNS, случайно арендованный у MyDNS, через обратный прокси Nginx, и была проблема, когда полоса прокрутки при воспроизведении медиафайлов не работала только в среде с обратным прокси, но теперь это тоже решено.
С точки зрения безопасности, я думаю, что можно было бы отказаться от доступа через домен, используемый в MyDNS.
Кстати, причина, по которой я не использую RAID, заключается в том, что я часто вижу истории о том, как люди сталкивались с адом при выходе из строя RAID-контроллера, и я хочу избежать этой головной боли. Если бы я это делал, то это был бы ZFS, но я бы подумал об этом, если бы объем данных, который я хочу использовать, начал превышать 5 ТБ.
Лично я хотел бы приобрести SSD, которые, вероятно, будут массово выбрасываться из дата-центров, как только они появятся.
На этом все. До новых встреч.