Домашний сервер на FreeBSD

FreeBSD, NetBSD, OpenBSD, DragonFly и т. д.

Модератор: arachnid

Ответить
Аватара пользователя
Tema
Сообщения: 143

Домашний сервер на FreeBSD

Сообщение Tema »

привет. я погонял на десктопе ФриБСД и понял, что система мне нравится, но для десктопа не хватает важных библиотек\приложений. С другой стороны у меня есть домашний сервер для plex, torrent, smb/nfs и клауд стореджа в перспективе. Сейчас там крутится rhel8, почему бы не перейти на FreeBSD. Я проверил и все, что мне надо - есть в портах.
Итак, у меня есть некий системник с древним i5, SSD 128gb, HDD 1tb. На подходе два идентичных HDD по 2тб.
Я почитал про zfs, pools, datasets, jail. Практического опыта не имею, но вероятно, скоро появится.
Вопрос такой: как с точки зрения правильности относительно продакшен енваермента мне весь этот огород выстроить. Я хотел бы попробовать либо такой же, либо приближенный подход к тому, что используют опытные администраторы в компаниях.
1. Самый простой вариант - подключить все диски в пул, накатить бсд и поднять необходимые сервисы.
Но есть jail, может стоит поднять jail для plex(media server), еще один для торрент демона, и еще для smb/nfs шары? Но тогда вопрос с тем, как правильно переключать между ними датасеты, ведь, как я прочитал, если датасет подключен к jail, то больше его перемаунтить не получится, пока не отвяжется от jail. Если это так, то я пока не до конца понимаю, как мне сделать общий датасет для plex и торрента - через торрент скачал что-то в директорию, с которой plex воспроизводит на клиенты.
2. Следущий момент для прояснения - пулы и датасеты. очевидно, что можно использовать разные датасеты для файлошары(документы и тд и тп) и для медиа контента, можно, к примеру, включить двойное копирование для датасета с файлошарой, а для мадиа датасета какое-то крутое сжатие бинарных файлов, к примеру. И опять же, как это все прокидывать в jail. Второе, пока сейчас есть только 1 сдд и 1 хдд, есть смысл создать 1 пул при установке, в котором будет только сдд. второй пул можно после установки создать и подключить туда 1тб хдд, сделать его как stripe, а затем как будут два хдд в доступе - сделать третий, и уже миррор пул, чтобы гарантировать доп сохранность данных и ускоренную работу(как я понял, оно подобно RAID работает, но не совсем).
3. Третий вопрос, со звездочкой! сделать миррор нормально получится только с двумя одинакомыми по размеру дисками, это два диска по 2тб. Но файлошары\важных доков\будущий клаудсторедж не занимает так много места, чтобы отрезать сразу 2тб х 2. С другой же стороны, медиа контент вполне себе может перевалить за 1тб винт, который у меня сейчас и будет использоваться как страйп. Можно ли как-то используя все эти утилиты zfs разрешить эту ситуацию, чтобы выделить меньше дисков\дискового пространства под важные файлы с зеркалом, а бОльше места под медиа контент без зеркала используя те диски, что у меня в распоряжении. из того, что я прочитал - нельзя. и самый подходящий вариант будет докупить 1тб винт и настроить зеркало между 1тб винтами, а для 2тб винтов сделать raid0 чтобы избежать дублирования данных, но получить + к скорости работы(мне не важно, если какой-то фильм\сериал потеряет какие-то секторы или даже полностью винт сломается). Но опять же, как это вяжется с zfs/raidz, если вяжется хоть как-то?

Заранее спасибо!
Спасибо сказали:
Аватара пользователя
Bizdelnick
Модератор
Сообщения: 20752
Статус: nulla salus bello
ОС: Debian GNU/Linux

Re: Домашний сервер на FreeBSD

Сообщение Bizdelnick »

Tema писал:
04.05.2021 12:49
На подходе два идентичных HDD по 2тб.
Это зря. Для зеркала надо брать разные модели. Неизвестно, будут ли одинаковые жить долго и счастливо, но вероятность, что умрут в один день, довольно велика.
Tema писал:
04.05.2021 12:49
Можно ли как-то используя все эти утилиты zfs разрешить эту ситуацию, чтобы выделить меньше дисков\дискового пространства под важные файлы с зеркалом, а бОльше места под медиа контент без зеркала используя те диски, что у меня в распоряжении.
Не имел дела с ZFS, но в чём, собственно, проблема нарезать разделов нужного размера и оперировать ими, а не целыми дисками?
Пишите правильно:
в консоли
вку́пе (с чем-либо)
в общем
вообще
в течение (часа)
новичок
нюанс
по умолчанию
приемлемо
проблема
пробовать
трафик
Спасибо сказали:
Аватара пользователя
Tema
Сообщения: 143

Re: Домашний сервер на FreeBSD

Сообщение Tema »

Действительно, я перемудрил. Читал во ФриБСД хендбуке, что zfs - это сразу и фс и менеджер разделов, и что нет смысла больше заморачиваться партишинами, подключай, мол, диски в пул и создавай датасеты! Я ложно предположил, что это значило, что пул нужно создавать только на всем диске целиком, но это не обязательно, ведь на десктопе у меня был, по идее, рут пул на разделе(еще были два раздела не в пуле точно: efi, swap). Это очень хорошо, с фс разобрались, можно сказать!
Осталось с jail подразобраться :)

PS: два винта, что я планирую подключить, я их не покупал недавно в паре, планирую снять со свего и жены ПК по винту, оставив ссд + nfs.
спасибо за совет, я запомню про диски в рейде, если буду расширяться
Спасибо сказали:
Аватара пользователя
arachnid
Модератор
Сообщения: 1099
ОС: freeBSD

Re: Домашний сервер на FreeBSD

Сообщение arachnid »

по первому пункту - у вас не совсем верные представления, поэтому уточню - "все диски в пул" - пул есть некое объединение дисков. для zfs это пул может состоять как из одного диска, как быть зеркалом или реализовывать raid или другие варианты. а у вас 4ре диска, причем разные. так что вы понимаете под "все диски в пул" - не совсем понятно. все датасеты одного пула использует пространство пула, так что переключать вам не потребуется. ну будет у вас некий датасет использоваться под jail - все равно вы видите его внутреннюю структуру из хост-системы. рассматривайте датасеты как обычные каталоги.

Код: Выделить всё

NAME                   USED  AVAIL  REFER  MOUNTPOINT
home                   803G  2,73T   782G  /usr/home
zroot                  213G   186G    88K  /zroot
zroot/ROOT            31,4G   186G    88K  none
zroot/ROOT/default    31,4G   186G  31,4G  /
zroot/bhyve            179G   186G   179G  /bhyve
zroot/bhyve/winguest    96K   186G    96K  /bhyve/winguest
zroot/tmp              565M   186G   565M  /tmp
zroot/usr             1,60G   186G    88K  /usr
zroot/usr/ports        900M   186G   900M  /usr/ports
zroot/usr/src          735M   186G   735M  /usr/src
по второму - нет смысла объединять sdd и hdd в один пул (ну если только вы не захотите использовать sdd как кэширующее устройство для zpool на hdd). сделать stripe из одного диска у вас не получится. как поведет себя zfs при добавлении в пул еще дисков - не скажу (в том смысле, что будет ли чередовать диски для записи). можете потренироваться на пуле из файлов и посмотреть, что получится :)

третье - не обязательно. вы можете сделать зеркало из двух одинаковых по размеру устройств - а будет ли это целый диск или часть его - zfs все равно. и да, учтите, что если у вас будет пул с чередованием, то в случае выхода устройства у вас пропадет вся информация из пула.
-= freeBSD stable, fluxbox =-
"если ты будешь со мной спорить, я тебя запишу в книжечку!" (с) Ежик
Спасибо сказали:
Аватара пользователя
Tema
Сообщения: 143

Re: Домашний сервер на FreeBSD

Сообщение Tema »

Теперь, думаю, понял, спасибо.
Имея картину в голове, зарядился на успех, а мой старый компьютер зависает на инициализации биоса, если флешка с фриибсд 11,12,13 воткнута, даже не доходит до загрузчика. 8 загрузилась, щас попробую 9 или 10. самую новую попробую поставить и обновиться. У меня компьютер настолько старый, что uefi там нет даже, может из-за этого. хотя в интернетах пишут, что все должно ставиться и в легаси биосе, и на mbr и на gpt(у меня gpt пока там(поправил)). подстава в общем.

PS: соврал! 8 доходит немного дальше но валится с сообщением по типу:
Intel UNDI, PXE-2.1 (build 083) copyright (c) 1997-2000 Intel Corporation

This Product is covered by one or more of the following patents:

US5, 307, 459 US5 434, 872 US5, 732, 094, US6 570, 884 US6, 155, 776 and US6 327,625

REALTEK PCLE FE Family CONTROLER SERVICE V1.23 (7/28/10)
Последний раз редактировалось Tema 04.05.2021 19:13, всего редактировалось 1 раз.
Спасибо сказали:
Аватара пользователя
Bizdelnick
Модератор
Сообщения: 20752
Статус: nulla salus bello
ОС: Debian GNU/Linux

Re: Домашний сервер на FreeBSD

Сообщение Bizdelnick »

Флешку как записывали? Часом, не *.iso на неё закатали?
Последний раз редактировалось Bizdelnick 04.05.2021 19:12, всего редактировалось 1 раз.
Пишите правильно:
в консоли
вку́пе (с чем-либо)
в общем
вообще
в течение (часа)
новичок
нюанс
по умолчанию
приемлемо
проблема
пробовать
трафик
Спасибо сказали:
Аватара пользователя
Tema
Сообщения: 143

Re: Домашний сервер на FreeBSD

Сообщение Tema »

Bizdelnick писал:
04.05.2021 19:11
Флешку как записывали?
все по секретным документам:

Код: Выделить всё

# dd if=FreeBSD-12.1-RELEASE-amd64-memstick.img of=/dev/da0 bs=1M conv=sync
я проверял флешку на своей текущей машине - все чики-пуки.

пробовал и img и iso даже
Добавлено (19:46):
У меня там стоит мать Gigabyte P55a-UD3, нашлись в интернетах схожие темы, с какой-то версии загрузчик фрибсд якобы изменился, и теперь с этой матью не работает.
вот темы, к примеру:
http://forum.oszone.net/thread-174019.html
https://www.truenas.com/community/threads/boot-disk-failure-on-newer-versions.84415/
Добавлено (19:57):
пробовал openIndiana накатить, поведение такое же как в ФриБСД, я вычитал, что они к себе затянули ФрииБСД загрузчик, так что все сходится, пазл складывается.
Спасибо сказали:
Аватара пользователя
Tema
Сообщения: 143

Re: Домашний сервер на FreeBSD

Сообщение Tema »

привет, я нашел парня, у которого такая же мать и такие же проблемы с фрибсд на юсб. он поделился удачным опытом: проблемы только с юсб стиками, с диска можно грузиться, ставить и дальше должно работать.
Я откопал старый свой двд ром, нашел где-то двд рв, записал образ, и успешно загрузился! ставить пока не стал, надо забекапить данные и конфиги. я уже разочаровался в попытках поставить фрибсд на железку и накатил альпайн линукс и фрибсд в ВМ, так что прийдется переиграть, но хоть конфиги все останутся.
PS: вот бы zpool import сработал)

спасибо всем за помощь! я обещал вам, что мы сделаем это и мы сделали это!
Спасибо сказали:
Ответить