22

Установка домашнего сервера NextCloud в Hyper-V для чайников

Собственно говоря, раз в несколько лет мне приходится ставить NextCloud по той или иной причине, например, переезд на новый ПК или железо, и я каждый раз с трудом вспоминаю, что нужно делать и приходится лезть гуглить. Причем обычно проблемы не с самой установкой, а с некоторыми нюансами, о которых напишу ниже.

Вы скажете, что на Пикабу уже есть мануалы по NextCloud и я с Вами соглашусь, но фишка в том, что способ установки, который я опишу ниже, существенно проще и реально доступен для «чайников». В данном мануале мы будем устанавливать NextCloud через снапы, что намного проще для неподготовленных пользователей.

Теперь отвечу на вопрос, почему через Hyper-V? Всё просто. У большинства дома только один ПК и как правило, он на Windows. Установка через Hyper-V позволяет использовать один ПК одновременно на Windows и на Linux, причем, если машина довольно мощная, то и виртуалок можно запустить приличное количество. Лично мне один круглосуточно работающий ПК нужен по работе и запилить такой домашний сервер дома, куда как дешевле, чем арендовать VPS/VDS, с учетом того, что у меня довольно шустрый канал в 500 мбит/с.

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

Пожалуй начнем с Ubuntu.

Ставить будем на серверную версию Ubuntu, как наиболее популярную у обычных юзверей, хотя я обычно предпочитаю CentOS на VPS/VDS.

Качаем актуальную Ubuntu Server:

https://ubuntu.com/download/server

Ставите как Вам удобно. Если у Вас есть отдельный ПК, на котором Вы хотите использовать NextCloud, то в принципе, текст про Hyper-V ниже, Вы можете пропустить.

Мне лично нужно повесить NextCloud на круглосуточно работающий на Windows 11 Morefine s600, поэтому я буду использовать Hyper-V.

Hyper-V

Для установки Hyper-V нужна Windows 10/11 Корпоративная, Pro или для образовательных учреждений.

Чтобы не забивать лишней информацией пост, ссылку о том, как включить Hyper-V, можно прочить ниже:

https://learn.microsoft.com/ru-ru/virtualization/hyper-v-on-windows/quick-start/enable-hyper-v

Для Hyper-V можно использовать образ виртуального диска или полноценный HDD, но для этого его нужно правильно приготовить :)

Заходим в Управление дисками и с помощью правой кнопки мыши делаем его Вне сети, иначе Hyper-V его не увидит.

Теперь уже можно идти в Диспетчер Hyper-V, где до установки Ubuntu, нужно зайти в Диспетчер виртуальных коммутаторов.

Здесь указываем нашу физический сетевой адаптер и называем его как Вам удобно.

Теперь можно создать нашу виртуальную машину. Можно использовать предустановленные дистрибутивы Ubuntu, но я буду использовать скаченный ранее, поэтому выбираю Локальный источник установки и выбираю свой дистрибутив Ubuntu.

ВАЖНО! Внизу слева, где написано Сеть, выбираете ранее указанный в настройках сетевой адаптер. У меня он называется Nextcloud.

Отключаем контрольные точки в Параметрах виртуальной машины.

Виртуальная машина создана - жмем "Подключиться" и устанавливаем Ubuntu.

Крайне рекомендую использовать язык по умолчанию - английский.

В процессе установки обязательно запомните свой логин и пароль, а также локальный IP. По этому адресу будет Ваш сервер NrxtCloud. В моём случае это 192.168.0.74.

На этом с Hyper-V мы закончили и далее переходим к установке NextCloud.

Далее Вы можете выполнять команды используя терминал Hyper-V или тот, который Вам по душе. Я обычно использую PuTTY.

Далее просто выполняете команды по порядку и жмете Enter:

sudo apt-get update

sudo apt-get upgrade

sudo apt-get autoremove

Устанавливаем NextCloud:

sudo snap install nextcloud

В команде ниже указываем имя Администратора NextCloud и его пароль.

Пароль можно будет позже поменять в админке:

sudo nextcloud.manual-install admin pass

Пример - sudo nextcloud.manual-install igor 123456

Ниже указываем список доверенных доменов:

sudo nextcloud.occ config:system:set trusted_domains 1 --value=192.168.0.74

Если у Вас есть доменное имя, то его указываем тоже:

sudo nextcloud.occ config:system:set trusted_domains 2 --value=www.ваше_доменное_имя.com

Открываем порты:

sudo ufw allow 80,443/tcp

Получаем сертификат (если у Вас есть доменное имя и Вы его указали выше):

sudo nextcloud.enable-https lets-encrypt

Для получения сертификата будут запрошены ваш email и доменное имя

example@www.ваше_доменное_имя.com

www.ваше_доменное_имя.com

Теперь самое интересное – нам нужно внести некоторые изменения в настройки, чтобы всё работало шустро и стабильно.

Для начала увеличиваем размер лимита памяти, в зависимости от возможностей Вашего ПК:

sudo snap set nextcloud php.memory-limit=2048M

Изменим время ожидания выполнения задач:

sudo snap set nextcloud php.max-input-time=3600

sudo snap set nextcloud php.max-execution-time=3600

NextCloud у нас установлен и работает, но вот незадача, при попытке закачать файл больше 16Gb (в моем случае), мы получаем ошибку. Чтобы обойти данные ограничения, нам нужно увеличить лимиты для загружаемых файлов (в примере - 150Gb на файл):

sudo snap set nextcloud php.post-max-size=150G

sudo snap set nextcloud php.upload-max-filesize=150G

На этом собственно говоря все. Как говорится - проще некуда. Никаких баз данных и т.д.

Установка максимально простая.

Заходим в админку по адресу вашего сервера, вводим логин и пароль, что Вы указали и пользуемся на здоровье:

http://192.168.0.*

Ну а у меня теперь будет напоминалка, как это всё сделать :)

Всем спасибо.

Автор поста оценил этот комментарий
И зачем это недоразумение Hyper-V?
раскрыть ветку (1)
3
Автор поста оценил этот комментарий

Наверно потому что работает из коробки. И неплохо работает.

Если у Вас есть свои варианты - напишите свою инструкцию.

0
DELETED
Автор поста оценил этот комментарий
На машине 64Gb ОЗУ.

Херрассе "домашний" и "простой". Домашний это в районе. 4-8-16.


При обновлении Винды, сервис недоступен ровно до момента пока ПК не перезагрузится.

Проблема не в том что он не доступен в принципе, а в том что он в рандомное время недоступен, потребовался вам скан паспорта, а винда в этот момент времени решила мажорное обновление накатить и будете вы полчаса думать - где проблема.


Отдельный HDD - потому что нюкоподный ПК - SSD и NVME, и выбора особого нет.

Написал же решение - ОС в .vhd раскатывается на nvme, а HDD с холодными данными монтируется внутрь. Мне хватило ровно одного запуска VMки с HDD (тоже кстати 2.5") чтобы больше так никогда не делать - update\upgrade занял туеву кучу времени.


Ну и сделайте скидку на то, что я сам чайник...

Зачем тогда другим рассказывать при условии что решение подходит 1% пользователей, да и вы сами не можете сформулировать границы применимости? Не надо так.

А то люди начитаются подобного и долбанут что-то похожее, сложат туда свои домашние фотки\бухгалтерскую отчетность, а через 1.5 года хард\SSD сгорит и тут то все и начнут спрашивать про RAID, производительность, мониторинг и прочие штуки которые должны быть на критических данных.

раскрыть ветку (1)
2
Автор поста оценил этот комментарий

Вы смотрите на это со стороны профессионала. Всё что перечислили - для личного использования вообще ни разу не критично.

Ну а про 1% - у каждого своя голова на плечах есть, ну и я вроде четко в начале обозначил, что кому Hyper-V не нужен, может смело ставить только NextCloud.

Еще сделайте поправку на то, что большинство вообще не знает как подступиться к командной строке. Я вот учусь. Медленно но верно.

Ваше решение с ОС в .vhd и отдельным диском под данные, мне очень нравится, но я признаю, что тупой и мне моих знаний не хватает так сделать, даже когда я перевожу инструкции и пытаюсь это сделать. Пока не получается, хотя я прекрасно понимаю, что это идеальное и правильное решение и в случае нагрузки я спокойно смогу работать в админке с настройками, потому как лежать под нагрузкой будет только хранилище на отдельном диске, но повторюсь - я пока еще не дорос до того уровня, чтобы свободно сделать так, как Вы говорите. Не все имеют уровень знаний достаточный для этого :(

0
Автор поста оценил этот комментарий

Все прекрасно написано. Но не сказано что Убунта ставится на виртуальную машину с ограниченным диском в 50 гб, вы его так и будете видеть в хранилище как бы вы не расширяли виртуальный диск. В этой статье все написано как расширить диск Убунты при расширении виртуального диска(https://packetpushers.net/blog/ubuntu-extend-your-default-lv...)

раскрыть ветку (1)
1
Автор поста оценил этот комментарий

Внимательно прочитайте. В моём примере идёт установка на отдельный физический HDD, потому как для NextCloud нет смысла установки на виртуальный диск по определению, так как это хранилище и нужно много места. Для теста - норм, для постоянной работы - нет. Есть ещё вариант расширить его позже. Делается в настройках.

P.S. Я сейчас несколько переиграл и замутил сервер на Unraid. Nextcloud работает в докере, так же как ещё несколько контейнеров, ну и WM, в том числе на Windows.

1
DELETED
Автор поста оценил этот комментарий

подскажите, что лучше использовать для того, чтобы заменить яндекс диск.

Ну во-первых вам надо определиться чем не устраивает яд? Потому что любое другое решение будет или дороже, или(и) менее надежным.


Сколько там стоят 2х6 Тб WD Red + raid-контроллер + ПК + ИБП? Тыщ 70(14*2+30+10+5) если все новое брать? Лан, без аппаратного рейда можно обойтись каким-ндь LVM, ну или все кроме хардов взять БУ, все равно тыщ 40 выйдет.

Дальше идет электричество - 200 Вт\ч = 720 р.\мес.

Интернет со статическим, белым IP = 100-150 р\мес.

ДНС-имя ~100 р.

Итогом будет что дом-хостед обойдется вам ~1000 р.\мес при стоимости ЯД в 500 р\мес. При этом канал может быть не симметричным и вы получите upload (download для тех кто в интернете) в 0.25 от заявленной.

Плюс, ваше время на обслуживание.


В остальном, для SOHO, яб воткнул Synology\хренолоджи + MikroTik + VPN для сотрудников\CloudFlare для шаринга (ну или свой реверс-прокси с WAF). Правда, честно скажу уже давно с SOHO не работал, а в кровавом энтерпрайзе все или на локальном офисе или на каком-ндь CRM где редакторы\шары из коробки

раскрыть ветку (1)
1
Автор поста оценил этот комментарий

Не могу согласится. Если более-менее в теме - дома куча железок валяется из которых собрать что-то выйдет чуть не в ноль (у меня так). Большинство материнок имеют программный Raid в BIOS и аппаратный для дома нахер не нужон.

Тариф Дом.ру со статическим IP 800 мегабит - 900 рублей в месяц, так и так за него платить. VPN сервер можно поднять почти на любом роутере, не из совсем бюджетных. У меня Asus, когда гоняю в Крым, xbox детям работает через домашний VPN. В принципе, меня устраивает. Работает годами.

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

показать ответы
1
DELETED
Автор поста оценил этот комментарий

Оххтыж йо.


Автору надо было начать с того, что решение имеет очень узкую специализацию и подходит только для энтузиастов и домашнего использования, ну может быть в SOHO и то... c боольшой натяжкой. Итак:

0. Продакшн на десктопной версии виндоус? Серьезно? Винда сделает апдейт и уйдет в ребут, что приведет к недоступности сервиса. Запущенная игрушка и вот вы получаете адовый своп (причем как в игре, так и в сервисе). Про то что может сделать пользователь вообще молчу.

В общем, даже в этом, странном случае, Hyper-V надо хоть как-то минимально приготовить (о чем у автора ни слова)

1. Отключить автоматические чек-поинты у VM - т.к. по сути (очень упрощенно) это diff между текущим состоянием и предыдущим. Бесконтрольное создание (некоторое количество) приведет к нефиговой такой нагрузке на дисковую подсистему и как итог к лагам.

2. Включить автоматический запуск VM (с задеркой секунд в 300), иначе после ребута получите тыкву вместо сервиса


Идем далее. Ubuntu, с ее автоматическими апдейтами (см. пункт про автоматические чек-поинты) и требованиями к ресурсам? Сколько вы там выделили ей ОЗУ, гига 4? Через пару месяцев решите поигратьс с LAMP, еще 4. А потом ещ 4... и вот уже вам для винды не хватает 16 Гб ОЗУ.

Есть же Alpine Linux с Next-cloud (https://pkgs.alpinelinux.org/packages?name=nextcloud-client) которому вообще 512 мб ОЗУ надо (у меня запускается и со 256), а установленный образ на диске жрет 128 мб (мегабайт).


Третье, по архитектуре. Вы вкатываете Ubuntu (ОС) на HDD... ...за_че_м? чтоб работало медленнее? Можно же ОС поставить на .vhd который будет лежать на SSD и примонтировать внутрь диск/хранилище/vhd с холодными данными. Ну и бэкапить все это становится в разы проще.

раскрыть ветку (1)
1
Автор поста оценил этот комментарий

1. Про чек-поинты я написал, если внимательно прочитать :)

2. После перезагрузки ничего подобного не происходит на моем ПК. Всё запускается штатно, в том числе виртуальная машина.

При обновлении Винды, сервис недоступен ровно до момента пока ПК не перезагрузится. В БИОС установлен автозапуск при восстановлении питания, ну и ИБП. Для личного использования это прям вообще некритично...

Не поверите, но прошлая виртуальная машина отработала в таком режиме примерно 1,5 года и ни с одной проблемой я не столкнулся. На машине 64Gb ОЗУ.

Отдельный HDD - потому что нюкоподный ПК - SSD и NVME, и выбора особого нет. NVME дорогие и с маленьким объемом. Остается только SSD 2.5. Мне на Амазоне в Черную Пятницу он вышел очень дешево.

Ну и сделайте скидку на то, что я сам чайник...

показать ответы
0
Автор поста оценил этот комментарий

Добрый день. Для выпуска сертификата необходимо сделать А запись на адрес железки где находится nextcloud?

sudo nextcloud.enable-https lets-encrypt

раскрыть ветку (1)
0
Автор поста оценил этот комментарий

Сертификат выпускается для домена. Домен есть?

показать ответы
0
DELETED
Автор поста оценил этот комментарий

> Вы смотрите на всё со стороны Enterprise, а мы говорим даже не о Soho, а о чём то более просто


Бро, перечитай внимательно вопрос, человек пишет про работу, это априори SOHO/SMB/Ent

раскрыть ветку (1)
0
Автор поста оценил этот комментарий

Сорян. Прочитал невнимательно с утра :) Честное слово, я чего-то не догнал и думал речь про домашний вариант сервера + файлопомойка...

Просто то, что Вы пишете, для дома - нецелесообразно, потому как для простого обывателя - очень дорого и заморочено. Дома вполне хватит собрать что-то из говна и палок и чтобы это просто работало, когда нужно.

Если для работы, то там требования совсем другие. Другое железо. Другой уровень безопасности и другой уровень цен. Для работы, в зависимости от задач - либо выделенный сервер в дата-центре, или свой в стойку. Тут я вообще даже спорить не буду.

0
DELETED
Автор поста оценил этот комментарий

если более-менее в теме - дома куча железок валяется ...

... которые самое время продать на авито и наконец-то разгрести хату от всякого *овна спижженого списанного с работы на "авось пригодится". На вырученные деньги сделай наконец-то ремонт как раз можно купить то что _действительно_ требуется


Большинство материнок имеют программный Raid в BIOS

Лучше уж LVM чем ЭТО. Спасибо, лично я обучаемая система и мне хватило одного раза чтобы с ЭТИМ больше никогда не связываться. Я уж лучше LSI-92** бу за 5к возьму, зато буду спать спокойно, чем получать ребилды на пару-тройку дней(если мы про 6 Тб).

для дома нахер не нужон

Мы про SOHO или хранение порнухи с торрентов? если про второе то там вообще ничего не надо. Если про хранение семейного архивного фотоальбома, или рабочих документов, то ну ок, каждый сам считает свои риски. Можно и без рейда - на ceph'е например или каком-нибудь minio - тоже вариант. Только по*ться с этим придется знатно и держать 2-3 ноды, ну и времени вагон.

Тут уж сорян, тратить придется или бабки, или время.


Важно не то что у вас работает, а то как справляться с авариями.

Что будет если дома произойдет пожар? Потеряются данные или нет?

Как данные пишутся на диск? С кэшОм или без? Что будет если в момент записи отключат ЭЭ? Что будет если ребенок\кот\собака дернут шнур питания?

Сколько и как часто вы готовы тратить на обслуживание системы? Есть ли оповещения? Как часто смотрится SMART, есть ли информация о ребилдах?


Тариф Дом.ру со статическим IP 800 мегабит - 900 рублей в месяц

О-о-о-о спасибо... с их IPv6 Шреденгера - который как бы есть, но как бы нет. Особенно радует их двойной NAT, благодарим, как говорится. Pppoe и все такое... не-не-не, SLA тоже так себе, бывали отвалы на пол-дня. Ну и канал, попробуйте зааплоадить терр. узнаете много интересного. Ах, да бонусом вы не можете внести свои VPN'ы в белый список (не юрик же)


VPN сервер можно поднять почти на любом роутере

Историю про VPN не понял. Поднять можно на чем угодно, хоть на rpi (возможно даже на esp32, не пробовал) и-и-и? Проблема то в другом - вас брутфорсили\ддосили когда-нибудь? Знаете что с CPU'происходит в этот момент? Так вот если вы практически любой сервис выставите голой жопой в интернет, к вам придут, рано или поздно, по этому http(s) надо сразу закрывать CF и не е*ть себе мозги успокоением "да кому я нужен"

раскрыть ветку (1)
0
Автор поста оценил этот комментарий

Мы говорим о разном. Вы смотрите на всё со стороны Enterprise, а мы говорим даже не о Soho, а о чём то более простом. То, что хотите получить Вы - стоит вообще других денег и проще арендовать полноценный сервак, коих я арендую много лет пару штук.

Конкретно у меня, Nextcloud вертится на двух NVME Samsung EVO PRO по 4Tb в raid 1. Так как данные обычно пишутся редко, а в основном читаются, то есть ещё отдельный Backup, хотя ничего критического нет. А вот порнуха и прочие блюрики для кинотеатра с проектором 4K, крутятся на отдельном NAS на 52Tb без всякого зеркалирования...

Итог - для дома и личного использования, Ваши советы бессмысленны, ибо собрать что-то такого уровня - стоит нереальных денег. И да, uptime конкретно моего провайдера за год, приближается к 99,5% и я очень доволен. По поводу брутфорсили - да. Постоянно. Встроенный в роутер с прошивкой Asus-Merlin Firewall, уже много лет справляется с желающими залезть. Да и не нужен я сильно нахер ни кому. Я не компания.


Что будет если дома произойдет пожар? Потеряются данные или нет?

Как данные пишутся на диск? С кэшОм или без? Что будет если в момент записи отключат ЭЭ? Что будет если ребенок\кот\собака дернут шнур питания?

В отдельном маленьком помещении. Несколько пожарных кубиков, что срабатывают автоматически. Ничего критически важного потерять не возможно. То, что возможно - бэкапиться в облако на сервера, что я арендую и копии на google drive и яндекс (бесплатно). Отключат ЭЭ - есть ИБП и резервный канал 4G, что для дома (не Enterprise) - выше крыши. Животных нет. Дети туда не попадут.

Иллюстрация к комментарию
показать ответы
0
Автор поста оценил этот комментарий

Самый большой минус для меня у nextcloud- невозможность установить фильтр файлов для синхронизации. Т.е. Невозможно исключить *.tmp и подобное

раскрыть ветку (1)
0
Автор поста оценил этот комментарий

Но в самой админке можно отключить их показ.

показать ответы
1
Автор поста оценил этот комментарий
Такие узконаправленные задачи с таким режимом работы и называется «сервер» :)
раскрыть ветку (1)
0
Автор поста оценил этот комментарий

Я сам "чайник", если что. Всему учусь сам :)

Автор поста оценил этот комментарий
Странное решение. Держать все время включённым достаточно мощный пк. Слабый не потянет и виртуалку и работу юзера.
Если есть деньги то NAS, самосборка или заводской лучше подойдёт для работы 24/7
раскрыть ветку (1)
0
Автор поста оценил этот комментарий

Ну у меня работает фактически нюкоподобный ПК - Morefine S600 (на фото), который заменил мне старый Intel NUC Core i-3. И он так и так работает круглосуточно и отдельно, потому что на нем еще висит онлайн касса и много чего еще.

Для NAS, у меня отдельный самосборный сервер на 64Tb. У многих дома вообще только один ПК.

Иллюстрация к комментарию
показать ответы
2
DELETED
Автор поста оценил этот комментарий

Вот мне Seafile как-то больше зашел. В качестве небольшого хранилища для компании в 60 человек и 6 Тб объема данных.
Да, там свой формат хранилища, что минус. Но как-то шустрее работал, не было phpшных затыков с памятью, проблем с настройками прямого доступа в нжинксе.

раскрыть ветку (1)
0
Автор поста оценил этот комментарий

Я пробовал. Мне не зашло. Под мои задачи мне больше нравится именно NextCloud.

Автор поста оценил этот комментарий
Онлайн касса, много чего еще, облако

Т.е. у тебя фактически сервер, который используется и как пк. Достаточно нетипичный случай
раскрыть ветку (1)
Автор поста оценил этот комментарий

Не совсем. Я за ним не работаю. Только если вынужденно-удаленно в поездках. Тупо рабочий ПК под свои узконаправленные задачи и 24/7 онлайн. Так как для задач нужна Винда, то Hyper-V с NextCloud - самое оптимальное решение для меня.

показать ответы

Темы

Политика

Теги

Популярные авторы

Сообщества

18+

Теги

Популярные авторы

Сообщества

Игры

Теги

Популярные авторы

Сообщества

Юмор

Теги

Популярные авторы

Сообщества

Отношения

Теги

Популярные авторы

Сообщества

Здоровье

Теги

Популярные авторы

Сообщества

Путешествия

Теги

Популярные авторы

Сообщества

Спорт

Теги

Популярные авторы

Сообщества

Хобби

Теги

Популярные авторы

Сообщества

Сервис

Теги

Популярные авторы

Сообщества

Природа

Теги

Популярные авторы

Сообщества

Бизнес

Теги

Популярные авторы

Сообщества

Транспорт

Теги

Популярные авторы

Сообщества

Общение

Теги

Популярные авторы

Сообщества

Юриспруденция

Теги

Популярные авторы

Сообщества

Наука

Теги

Популярные авторы

Сообщества

IT

Теги

Популярные авторы

Сообщества

Животные

Теги

Популярные авторы

Сообщества

Кино и сериалы

Теги

Популярные авторы

Сообщества

Экономика

Теги

Популярные авторы

Сообщества

Кулинария

Теги

Популярные авторы

Сообщества

История

Теги

Популярные авторы

Сообщества