LINUX.ORG.RU
ФорумTalks

За что вы любите FreeBSD/OpenBSD/NetBSD?

 , , , ,


1

1

За что вы цените BSD, и в чём преимущество на «production»?

Какой софт «крутите»?

Собираете ли софт для BSD из исходников?

Как дела с виртуализацией?

Последнее время растёт популярность BSD систем у облачных провайдеров:

  • vultr
  • digitalocean
  • scaleway
  • yandex cloud

и другие предлагают образы с BSD системами в качестве рабочих лошадок, либо самому залить свой образ ОС, есть ли смысл в BSD?

Перемещено leave из general

★★★★★

pf мощная штука, а еще в BSD есть нормальный инит.

Meyer ★★★★★
()

За что вы цените BSD, и в чём преимущество на «production»?

Главным образом за порты. Ни в одной линуксовой пакетной инфраструктуре не наблюдается такого баланса между количеством, качеством, свежестью и низким порогом входа/отсутствием бюрократии для контрибутинга (т.е. опакечивания того что ещё не опакечено, и обновления того что забыли обновить). Ну и в целом за простоту, логичность, изкоробочность в виде базовой системы. За ZFS изкоробки, но линуксы с этим вроде уже подтянулись. Где-то за лучшую производительность, но это только на моих задачах.

Какой софт «крутите»?

Чего только не, от банальных nginx + uwsgi до ml, рендернод, хадупов, игровых серверов и всяких гитлабов.

Собираете ли софт для BSD из исходников?

Да. Ну то есть официальные пакеты конечно замечательно работают, но рано или поздно захочется собрать что-то иначе, чем собирается по умолчанию (например, питон 3.8 когда оф. пакеты собираются с 3.7, или последний postgresql когда оф. пакеты собираются с 11; более простые кейсы типа выключенной нужной опции сюда даже не входят потому что засылаешь баг и через день нужная опция уже включена по умолчанию, через два обновляется пакет). В этот момент поднимается poudriere, там собирается всё что нужно именно так как хочется. А когда есть poudriere про оф. репу можно смело забыть, и иметь обновления не через день, а через час, плюс свои порты не дожидаясь коммита в оф. дерево, плюс оверлей с патчами плюс выключенное всё что не нужно и включенное всё что нужно, плюс оптимизация под железо.

Как дела с виртуализацией?

Дела как всегда - jail’ы, bhyve, vbox, даже user mode qemu чтобы на x86 запускать армовые и мипсовые бинари. Но виртуализация не нужна.

slovazap ★★★★★
()
Ответ на: Пользователь FreeBSD здесь. от mord0d

Справедливости ради, это всё мимо.

Никаких внезапных «а мы переименуем интерфейсы!»

Поэтому так и сидим с пронумерованными по порядку интерфейсами, которыми в случае когда интерфейсы подключаются и отключаются пользоваться крайне неудобно.

«а давайте заменим init!»

Поэтому так и сидим на уродском куске шелла вместо нормального инита и мучаемся с rc скриптами где чтобы простейший демон запустить нужна ещё страница шелла, и не забыть руками обработать все аргументы, пидфайл, на reload сигнал послать и т.д.

Init это первое из двух от чего хотелось бы избавиться в пользу чего-то вменяемого.

«а давайте выпилим тулзу, которой пользуются полтора анонимуса!»

Как будто недавно под вопли некрофилов не выпилили кучу старых ethernet драйверов. Да и тот же rcs.

Но это не проблема, а очень правильное действо, нельзя всем сообществом платить maintenance cost за полутора инвалидов на старом железе.

Предсказуемое обновление (потому что это целостная система, а не куча компонентов, которые разные мейнтейнеры приматывают изолентой и замазывают соплями чтобы внезапно не отвалилось).

Ага, в котором система обновляется из бинарников одной утилитой (не всегда правильно, причём), из исходников другой, пакеты третьей а порты четвёртой, пятой и шестой (хотя portupgrade уже закопали), и не дай бог свежий openssl поставить из портов при наличии другой версии системного openssl, поотваливается всё.

Но обещают (вот уже сколько) pkg base. Это второе из двух что хотелось бы изменить в системе.

slovazap ★★★★★
()
Ответ на: комментарий от slovazap

Да, хотя вопрос был про сервера, надо добавить что на десктопе, ноутах и одноплатниках у меня тоже FreeBSD. На десктопе порты ещё больше рулят.

slovazap ★★★★★
()
Ответ на: комментарий от menangen

Как скоро Docker / Kubernetes придёт в мир BSD?

Docker прибит гвоздями к линуксу наглухо, так что он никуда не придет — ни на винду. ни на бсдяху. Да, пытаются делать слои совместимости, но они работают через раз.

byko3y ★★★★
()
Последнее исправление: byko3y (всего исправлений: 1)
Ответ на: комментарий от ass

Ну я бы поспорил. Начнём с того что портаж уже совсем не развивается и значительно отстал как по количеству, так и по свежести пакетов:

https://repology.org/repository/gentoo https://repology.org/repository/freebsd

  • Тормознейший код на питоне.
  • Уродские маски. Вроде как призваны пометить нестабильные версии и архитектуры, но по факту нельзя различить был ли замаскирован ебилд потому что это известно нестабильная кривая версия, или потому что это просто обновление которое никто неуспел протестировать, или просто по умолчанию (на арм например). Итого либо имеем старьё, либо размаскируем и имеем неработающий софт. Размаскировать по одному пакету - увольте.
  • Уродский подход к глобальным USE флагам. Изменил флаг - пересобирай всё. Вместо удобных опций для каждого порта. Не бывает такого «хочу всё с jpeg и без иксов». Бывает - ставлю приложение, выбираю хочу ли я ему иксы и jpeg, и это навсегда или пока не захочу поменять запоминается. А захочу, установлю глобальные умолчания.
  • Отсутствие бинарных пакетов из коробки, хоть каких-то. Ну и всей инфраструктуры. Собираться на проде - увольте.
  • Императивные, вместо декларативных, скрипты сборки. В современной пакетной системе пишут что «вот это собирается autoconf’ом» и всё. Писать build() { configure; make; make install } - прошлый век, пусть даже там обёртка в виде econfigure. Плюс - отсутствие boilerplate кода и копипасты, а также изменение поведения сразу всех пакетов одним инфраструктурным изменением. Захотели использовать для cmake ninja вместо make? Одна строчка, везде стало ninja. Разумеется, для исключительных случаев можно переопределить цели и явно написать что делать. Но это форс-мажор. Нормальный порт - это название, версия, url для скачки, зависимости и указание способа сборки. Такой же ебилд потребует явного определния как минимум src_configure и src_install.
  • Довольно мутная схема поддержки с proxy-maintainers, в итоге по факту никто за пакет не отвечает.
  • Оверлеи. В здоровой пакетной инфраструктуре не должно быть никаких оверлеев - не должно быть не технических, ни административных препятствий для того чтобы кто угодно мог добавить в дерево портов всё что ему там нужно (разве что юридические, т.е. не варез). Всё это должно поддерживаться, обновляться и тестироваться как единое целое. В больной экосистеме появляются всякие оверлеи, PPA, AUR, NUR в итоге обновления в одном репозитории запросто ломают другой. В gentoo этого развелось тонны https://gentoo.zugaina.org/Overlays, всех цветов неподдерживаемости, устарелости и несовместимости.

Всё что могу отметить положительного - разве что virtual/ с eselect и более развитую и адекватную классификацию по категориям.

slovazap ★★★★★
()
Ответ на: комментарий от slovazap

Уродский подход к глобальным USE флагам. Изменил флаг - пересобирай всё. Вместо удобных опций для каждого порта. Не бывает такого «хочу всё с jpeg и без иксов». Бывает - ставлю приложение, выбираю хочу ли я ему иксы и jpeg, и это навсегда или пока не захочу поменять запоминается. А захочу, установлю глобальные умолчания.

Открой для себя /etc/portage/package.use. Для начала.

ass ★★★★
()
Ответ на: комментарий от RazrFalcon

Что значит не вылазит? Он уже довольно давно в него погружается. И вылазить не собирается.

ass ★★★★
()
Ответ на: комментарий от slovazap

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

4.2

Отсутствие бинарных пакетов из коробки, хоть каких-то.

4.2

Императивные, вместо декларативных, скрипты сборки.

Толку от декларативщины, если она всё равно вызывает императивный cmake и прочий шлак?

В здоровой пакетной инфраструктуре не должно быть никаких оверлеев

Тяжелая наркомания.

RazrFalcon ★★★★★
()
Ответ на: комментарий от ass

Вылазить пытается, но пока плохо получается. Без «многоденег» никак.

RazrFalcon ★★★★★
()
Ответ на: комментарий от slovazap

и не дай бог свежий openssl поставить из портов при наличии другой версии системного openssl, поотваливается всё

Это точно. Но ничего, можно обратно всё прикрутить.

sinaps
()
Ответ на: комментарий от slovazap

Поэтому так и сидим с пронумерованными по порядку интерфейсами, которыми в случае когда интерфейсы подключаются и отключаются пользоваться крайне неудобно.

Всего пару раз в жизни приходилось реинициализировать драйверы в рантайме. Работает — не трогай.

Поэтому так и сидим на уродском куске шелла вместо нормального инита и мучаемся с rc скриптами где чтобы простейший демон запустить нужна ещё страница шелла, и не забыть руками обработать все аргументы, пидфайл, на reload сигнал послать и т.д.

А вот тут соглашусь. Но systemd с его отсутствием стабильных релизов и модели разработки вообще — плохая альтернатива.

Init это первое из двух от чего хотелось бы избавиться в пользу чего-то вменяемого.

OpenRC.

Как будто недавно под вопли некрофилов не выпилили кучу старых ethernet драйверов.

Ну ни разу не выпилили что-то, что было действительно в ходу. А из-за полутора машин под тоннами пыли поддерживать код, разработчик которого давно умер от старости… Нутыпонел. ☺

Да и тот же rcs.

Эм… зачем он в базе, если база перешла на svn? А в пакетах/портах есть, никто не запрещает поставить.

Но это не проблема, а очень правильное действо, нельзя всем сообществом платить maintenance cost за полутора инвалидов на старом железе.

Но в Linux выпиливают просто потому что так мейнтейнер/разработчик решил, ему плевать на юзеров, он не хочет — он не будет. Вон, много где x86

А в бздях обычно выпиливают только когда вообще некому поддерживать.

система обновляется из бинарников одной утилитой (не всегда правильно, причём), из исходников другой

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

пакеты третьей а порты четвёртой, пятой и шестой

Вот только не надо как в Linux! Мух нужно держать отдельно от котлет! Базовая система — это базовая система, а порты/пакеты — это уже отдельно.

pkg base

Я что-то прослоупочил? Можно ссылку?

mord0d ★★★★★
()
Ответ на: комментарий от slovazap

Бздуны всё время хвастают своими манами. Почему же ты не прочёл man portage и man emerge? Кажется мне, что ты подсознательно боишься того, что поймёшь насколько убоги порты. Они были круты, лет 25 назад. С тех пор многое поменялось (кроме подхода бзунов к своей любимой ос). Они видимо считают что пользователю обязательно должно быть больно.

ass ★★★★
()
Ответ на: комментарий от mord0d

Всего пару раз в жизни приходилось реинициализировать драйверы в рантайме.

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

Работает — не трогай.

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

Ну ни разу не выпилили что-то, что было действительно в ходу. А из-за полутора машин под тоннами пыли поддерживать код, разработчик которого давно умер от старости… Нутыпонел.

Ну так вы записали в плюсы FreeBSD что там нет «а давайте выпилим тулзу, которой пользуются полтора анонимуса». Я привёл примеры где выпилили. Кто-то и rcs юзал, и интерфейсы. Rcs вообще со второго раза выпилили потому что какому-то нетрадационно одарённому @FreeBSD.org прям нужно было, про интерфейсы тоже вонь была. Просто ничем фря тут не отличается в этом плане от линуксов - тухлятину выпиливают как и везде, а любую тухлятину кто-то ещё использует.

Но в Linux выпиливают просто потому что так мейнтейнер/разработчик решил, ему плевать на юзеров, он не хочет — он не будет. Вон, много где x86

Повторюсь, нет никакой разницы, просто во FreeBSD x86 пока не мешает (так его и не из всех линуксов выпилили). Начнёт мешать - выпилят не задумываясь. Слышал кстати что 32 битную версию системы стали собирать с повышенными требованиями (т.е. выкинули видимо i386/i486, что-то там было про cmovcc), так кто-то естественно возбухнул. И неподдерживаемые порты выпиливают дай боже, даже если порт прекрасно собирается и работает. Я сначала тоже переживал на этот счёт, но потом понял насколько это правильно.

ему плевать на юзеров

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

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

Не правильно, потому с хрена ли от того кто или где собирает код должен меняться весь процесс? Аж конфиги мержатся разными утилитами. В портах в своё время поняли что это дичь, поэтому make install больше не ставит порт сразу в систему, а делает пакет и ставит пакет через pkg. Таким образом установка портов и пакетов унифицирована. С базой сделают то же самое, скорее бы уже.

Вот только не надо как в Linux! Мух нужно держать отдельно от котлет! Базовая система — это базовая система, а порты/пакеты — это уже отдельно.

Конечно же надо (и будет) как в Linux. Базовая система/не базовая система это искусственное разделение на софт и такой же софт, только они обновляются с разной частотой и разными способами. Некоторый софт может быть и там и там. Это дикость, так не должно быть. Это несёт кучу проблем, например

  • уже упомянутый OpenSSL - из-за разного релизного цикла системы и портов имеем старый openssl в 11.x, из-за этого приходится ставить новый из портов, из-за этого получаем конфликт версий. В итоге под 11 из коробки больше нет qt. Потому что qt-networking со старым openssl не работает, а включить openssl из портов - значит всё убить.
  • обкоцанный llvm в базе который вроде бы и есть, но чтобы поставить месу нужно поставить второй такой же llvm из портов (даже той же версии!)
  • gdb неимоверно древней версии который на современных бинарниках просто валится в корку. Ну то есть ты подумай - мы же говорим о том что FreeBSD user-friendly, пусть даже только для продвинутых пользователей. И пользователь такой хочет что-то отладить, запускает gdb, получает его падение, начинает думать что он не так делает, лезет на форумы. И это же as-intended поведение системы!
  • iconv который не умеет wchar_t, нужный некоторому софту. В итоге используя порты живём на системном iconv, пока кому-то таки не понадобится iconv из портов. И вот он ставится, и новые порты начинают собираться с ним. При этом всё старое сидит на системном. И тут приходит неминуемый конфликт библиотек. И это тоже works as intended!
  • ncurses, gawk, gsed, gpatch, другие g*, вообще можно бесконечно продолжать.

Не думаю что гордость, заблуждения по поводу maintainability, и лицензионная политика не позволят core team выкинуть всё third party из базы в пользу портов, но хотя бы сделать базу пакетом или пакетами придётся во что бы то ни стало, хотя бы чтобы весь софт обновлялся ровно одной утилитой. Так-то я мечтаю что это будут гранулярные пакеты и можно будет выпилить ублюдка sendmail.

Я что-то прослоупочил? Можно ссылку?

Прослоупочили, разговоры идут уже много лет. Я за этим не слежу, начните с https://wiki.freebsd.org/PkgBase.

slovazap ★★★★★
()
Ответ на: комментарий от ass

Мне с gentoo по одному стороннему проекту приходится постоянно дело иметь, в частности куски этого проекта оебилживать, так что я знаю о чём говорю как с позиции простого пользователя, так и более глубоко погруженного в тему. Я вам подробный список проблем привёл, вы мне ни на одну не возразили, значит вы подтверждаете что я ничего не упустил. Аргументы типа «ваши порты боль» и посылания в маны это не мой уровень ведения дискуссии, извините.

slovazap ★★★★★
()
Ответ на: комментарий от slovazap

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

madcore ★★★★★
()
Ответ на: комментарий от slovazap

Т.е. для бздуна чтение манов не его уровень? Ну извините. Либо вы не бсдшник, либо вы не бсдшник. Отказ от чтения манов на это намекает. С другой стороны, «простому пользователю» это совсем не нужно.

ass ★★★★
()
Ответ на: комментарий от slovazap

Работает — не трогай.

Так говорят некомпетентные недоадмины, которые построили карточный домик и боятся на него дышать.

Если всё настроено и работает, то не имеет смысла сносить всё и делать заново просто потому что есть альтернатива, если в этой альтернативе нет реальной нужды (например более качественная реализация важных фич или наличие отсутствующих в используемом).

если вы из недовольных любителей x86

Вот прямо сейчас мне нужно установить x86 (безальтернативно). Lubuntu, стоявшая на девайсе (пока ещё стоит, но она очень сильно сломана, а чинить 10.04 чтобы установить 16.04, поддержку которой тоже скоро дропнут, это пустая трата времени), дропнула x86, из альтернатив только FreeBSD, в которой не работает wifi (драйвер не завезли) или Debian, который потом ещё напильником надо будет доводить. Выкинуть девайс не вариант — денег на новый никто не даст, а человеку надо работать. Был бы девайс мой, я бы выкинул и купил ThinkPad из работающих на FreeBSD.

хотя бы чтобы весь софт обновлялся ровно одной утилитой

Но при этом тянул гигабайты пакетов вместо маленьких бинарных патчей. Плохая альтернатива.

Вообще, база — это отдельная сущность, пакеты/порты — отдельная. Почему они вдруг должны обновляться одной утилитой?

Прослоупочили, разговоры идут уже много лет.

Пора сваливать на OpenBSD.

mord0d ★★★★★
()
Ответ на: комментарий от mord0d

Если всё настроено и работает, то не имеет смысла сносить всё и делать заново просто потому что есть альтернатива, если в этой альтернативе нет реальной нужды (например более качественная реализация важных фич или наличие отсутствующих в используемом).

«Настроено и работает» это не цель работы админа. Цель работы админа - чтобы стало «настроено и работает» в любой момент с нуля, возможно в изменившемся окружении. Другими словами, настроено и работает - это когда бизнес-критикал процесс обслуживается приложением на PHP3 крутящемся в единственном экземпляре под дырявой Ubuntu Precise на ржавом первопне с умершими дисками. Это эталонный «работает - не трожь», потому что любой чих обернётся простоями и потерей денег, клиентов и репутации. А то о чём я говорю - это когда приложение можно поднять ансиблом одной командой, хоть на одной машине, хоть на сотне, и под любым дистрибутивом, потому что оно тестируется в CI под разные и свежие целевые окружения. Чтобы этого добиться не нужно ничего сносить и не нужны никакие альтернативы, нужно просто работу свою делать.

Вот прямо сейчас мне нужно установить x86 (безальтернативно).

Я слышал уже эту песню неоднократно. Все разы когда я отвечал на неё терпеливым описанием как работает СПО экосистема, где люди бесплатно на чистом энтузиазме делают крутые штуки которые решают проблемы других людей, ограниченности их ресурсов и сложности и нецелесообразности поддержки устаревшего железа, я получал плевок в лицо в духе «А мне надо. Говно значит твоё сообщество». Теперь я сразу говорю: вам нужно? Ваши личные проблемы, идёте с ними лесом. На это вы скорее всего ответите что с таким отношением к пользователям сообщество долго не протянет, на что я отвечу что ещё ни одно сообщество не пострадало избавившись от паразитов.

Но при этом тянул гигабайты пакетов вместо маленьких бинарных патчей. Плохая альтернатива.

Это из пальца высосанная проблема - пакеты весят на порядки больше и обновляются на порядки чаще, абсолютно все качают их и проблем не знают.

Вообще, база — это отдельная сущность, пакеты/порты — отдельная. Почему они вдруг должны обновляться одной утилитой?

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

Пора сваливать на OpenBSD.

Скатертью дорога. Без негатива - каждый должен быть на своём месте, может именно OpenBSD и есть тот реликт застрявший в прошлом веке где будет наиболее комфортно человеку не желающему поддерживать в актуальном состоянии ни железо ни привычки, неважно насколько это иррационально. И может даже там все готовы бесконечно бесплатно поддерживать именно ваш хлам. Мне же отрадно осознавать что ещё один человек который думал что таким реликтом, а не современной активно развивающейся системой является FreeBSD, оказался в корне не прав.

slovazap ★★★★★
()

Да никто не любит BSD, расслабься.

Есть кучка фанатов, которые хотят быть не такими как все, а мозгами застряли в 90хх.

Часть этих фанатов юзает фичу BSD ради фичи BSD, а не ради того чтобы nginx запускался быстрее, или NVMe копировал гигабайты резче. Такое впечатление что фанаты каждый день что-то ставят из портежей, лол.

Ну, есть пару вскукареков по поводу лицензии, но это ж не техническая часть, а юридическая.

Абсолютно ВСЕ что можно под BSD - можно и под Линуксами, но при этом можно больше, и если что-то пойдет не так - больше людей знают как это починить.

Есть хороший дистрибутив FreeBSD, называется PfSense, вот его можно любить за ГУЙ. Но ddwrt все равно лучше.

windows10 ★★★★★
()
Ответ на: комментарий от slovazap

как работает СПО экосистема

Поэтому я не возмущаюсь. И не доначу.

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

Ну-ну.

mord0d ★★★★★
()
Ответ на: комментарий от mord0d

Ну-ну.

А почему вы считаете, что настолько прямо отдельная база, что аж управляется другими инструментами, – это хорошо?

Rootlexx ★★★★★
()
Ответ на: комментарий от Rootlexx

Потому что менеджер пакетов должен заниматься пакетами. FreeBSD — это цельная операционная система, самодостаточная без пакетов.

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

Дополнительный минус: если нужно поднять свой репозиторий пакетов, придётся ещё и базу компилять (на RELEASE компилять базу! Я поэтому на CURRENT/STABLE не суюсь что я не хочу этим заниматься, мне хватает STABLE на серверах).

Плюс ко всему, если менеджер пакетов начнёт ставить что-то не в /usr/local, в FreeBSD настанет такая же свалка как в Linux.

---

Я не защищаю freebsd-update, этот скрипт ужасен и у некоторых даже криво работает, но do one thing and do it well. Пусть каждая утилита занимается своей задачей. Мультитул хорош только когда нет нормального инструмента. ☺

mord0d ★★★★★
()
Ответ на: комментарий от mord0d

FreeBSD — это цельная операционная система, самодостаточная без пакетов.

Самодостаточность не зависит от наличия/отсутствия пакетов. Пакеты – это просто один из способов распространения ПО. В том же Debian вполне себе есть базовая система, что никак не мешает устанавливать её из пакетов.

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

И это плохо, потому что..?

Дополнительный минус: если нужно поднять свой репозиторий пакетов, придётся ещё и базу компилять

Зачем? Просто ставятся нужные пакеты в сборочное окружение – разве нет?

Плюс ко всему, если менеджер пакетов начнёт ставить что-то не в /usr/local, в FreeBSD настанет такая же свалка как в Linux.

Каким образом «настанет свалка», если по итогу получим те же самые файлы по тем же самым путям, что и раньше?

Rootlexx ★★★★★
()
Ответ на: комментарий от Rootlexx

В том же Debian вполне себе есть базовая система

Нет, есть набор пакетов, помеченных как "системные" (жизненно важные), но их можно удалить (я уже не помню опцию для dpkg/apt/aptitude) с соответствующим результатом.

mord0d ★★★★★
()
Ответ на: комментарий от mord0d

Нет, есть набор пакетов, помеченных как «системные» (жизненно важные), но их можно удалить (я уже не помню опцию для dpkg/apt/aptitude) с соответствующим результатом.

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

А если какому-то внешнему ПО понадобится удалённый ранее компонент, то в Debian, поскольку базовая система состоит из пакетов, он просто будет установлен заново по зависимостям – а что будет в FreeBSD?

Rootlexx ★★★★★
()
Ответ на: комментарий от Rootlexx

только там это требует пересборки всей системы из исходников

Ну без libc6 её не соберёшь. ☺

А если какому-то внешнему ПО понадобится удалённый ранее компонент, то в Debian, поскольку базовая система состоит из пакетов, он просто будет установлен заново по зависимостям – а что будет в FreeBSD?

Пакеты/порты в FreeBSD живут отдельно, и все их зависимости чаще всего от других пакетов, в редких случаях — от базовых компонентов (и опирается оно на generic).

Вообще, FreeBSD подразумевает что если админ расковыривает фряху, то он её и поддерживает. Полностью.

mord0d ★★★★★
()
Ответ на: комментарий от mord0d

Ну без libc6 её не соберёшь. ☺

Чтобы удалить libc6, нужно пробраться через такое число предупреждений и ключей запуска (ещё и подтверждающую фразу ввести), что это не реально сделать случайно, а нужно очень сильно захотеть (но если прямо очень сильно нужно, то возможность есть). Так-то и rm /lib/... где угодно можно сделать.

Речь всё же шла о штатном удалении не нужных в данный момент компонентов, а не о специальном осознанном ломании всей системы.

Вообще, FreeBSD подразумевает что если админ расковыривает фряху, то он её и поддерживает. Полностью.

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

Rootlexx ★★★★★
()
Ответ на: комментарий от Rootlexx

Речь всё же шла о штатном удалении не нужных в данный момент компонентов

FreeBSD — это такая UNIX-way Windows. ^_~

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

Не имеем. Разве что зависимость от openssl, которую при сборке из портов можно переключить на openssl из портов.

Зато не получится как с glibc, когда один софт хочет одну версию, другой другую, а установлена третья.

mord0d ★★★★★
()
Ответ на: комментарий от mord0d

А можно вопрос, не по теме, надеюсь по-быстрому: поставил только что в виртуалку Фри 12.1, всякие недоделки-косячки – это нормально?

Типа:

  • По дефолту шел для юзера – sh, в котором не работает mc (в инете нашёл подтвержедние, у других так же; поставил csh – ok).

  • Поставил xorg и xdm, и xdm вылетает почему-то (ошибки в логе есть, но те же самые что и при успешном запуске startx). (в /etc/X11 пусто; мне ковырять лень, х. с ним)

  • Мыши под иксами нет пока не запустишь moused из консоли.

  • Поставил icewm, а он не запускается, пока не пропишешь всё сам в .xinitrc.

  • Оценка занимаемого места при установке xorg – 1ГБ, а занял 1.7.

  • Если ставить xorg-minimal (который не 1.7, а 1.6ГБ – минимал, хаха), у icewm шрифтов нет, соответственно что он в менюшках пишет – х.з. (с полным xorg всё ок). Видимо зависимости не прописаны.

Такого рода вещи – норм или у меня неправильный ДНК?

the1 ★★
()
Последнее исправление: the1 (всего исправлений: 2)
Ответ на: комментарий от the1

поставил только что в виртуалку Фри 12.1

FreeBSD в виртуалке и FreeBSD на железе — это две совершенно разные операционные системы (но на твои проблемы это не распространяется ☺).

По дефолту шел для юзера – sh

Потому что это POSIX. Можно было при создании пользователя выбрать шелл, а можно его сменить через chsh (можно даже от самого юзера это сделать).

в /etc/X11 пусто

Потому что пакеты/порты ставятся в /usr/local, и etc для них находится в /usr/local/etc.

Мухи отдельно, котлеты отдельно. ☺

xdm вылетает почему-то

Не знаю, не пользовался. Я пользую slim.

Мыши под иксами нет пока не запустишь moused из консоли.

Очень зависит от мыши. ☺ На моём ThinkPad moused нужно отключать чтобы нормально работал trackpoint (конкретно скролл).

Ну и moused по дефолту вроде как включен.

На самом деле moused влияет только на автоопределение мыши иксами, можно лапками сделать (/usr/local/etc/X11/xorg.conf.d/90-trackball.conf):

Section "InputClass"
        Identifier "TrackBall0"
        Driver "libinput"
        MatchProduct "Kensington Slimblade Trackball"
        # ...
EndSection

Поставил icewm, а он не запускается, пока не пропишешь всё сам в .xinitrc.

В пакетах/портах FreeBSD не поставляются скрипты xsession (по крайней мере для того, что я тыкал), только desktop-файлы, которые жрёт не каждый дисплей менеджер (slim тоже не жрёт).

Можно выдрать эти скрипты из Gentoo. ^_~

Оценка занимаемого места при установке xorg – 1ГБ, а занял 1.7.

Зависит от файловой системы и размера блока.

Если ставить xorg-minimal (который не 1.7, а 1.6ГБ – минимал, хаха)

Так и должно быть. xorg-minimal не тянет за собой всякие xterm, xclock и прочее в том же духе.

у icewm шрифтов нет, соответственно что он в менюшках пишет – х.з. (с полным xorg всё ок). Видимо зависимости не прописаны.

Подобных проблем со шрифтами не встречал (по крайней мере пока), потому ничего не могу сказать.

Такого рода вещи – норм или у меня неправильный ДНК?

Если ищешь проблему в себе, то разве что привычка к Linux. ☺

«Забудьте всё, чему вас учили в школе!»
FreeBSD — не Linux. Многое работает просто иначе.

---

надеюсь по-быстрому

Но портяночка получилась. ☺

Можешь в IRC на freenode меня пинать с вопросами.

mord0d ★★★★★
()
Ответ на: комментарий от mord0d

Спасибо! Ну значит с ДНК более-менее у меня нормально.

/usr/local/etc

Да, немножко ступил. Там ещё проблема в большом количестве слов, в Handbook-е в частности. Я не осиливаю это всё читать. ОпенБСД в этом смысле гораздо уважительней относится к твоему времени – слова по существу (впрочем там и фишек меньше).

xorg-minimal не тянет за собой всякие xterm, xclock и прочее

Ну к слову, вся система Опен с иксами заняла 1316МБ (и шрифты меняются в xterm), если добавить mc – 1431 (это питон 3.7 встаёт, и многое другое). А тут одни «минимальные» иксы 1565М (питон тоже вроде с ними встал).

Эти цифры (МБ) – конечно ерунда всё, но дело во внимании к деталям. Приятно когда разрабы (Опен) ковыряются и делают (прописывают зависимости) как следует. Hand made, так сказать, а не с конвейера.

(я недавно нашёл юз-кейс для обоих этих БСД, фри и опен, и с прицелом на будущее решил начать их использовать)

UPD:

moused по дефолту вроде как включен

не, moused не трогал (вроде – перепроверять сейчас лень), был выключен .

the1 ★★
()
Последнее исправление: the1 (всего исправлений: 1)
Ответ на: комментарий от the1

Там ещё проблема в большом количестве слов, в Handbook-е в частности.

Я только один раз открыл хандбук, когда впервые ставил FreeBSD на десктоп, оказалось что ничего нового я для себя там не открою. ☺

Но да, там объясняют как для маленьких. ☺

Hand made, так сказать, а не с конвейера.

Вот только OpenBSD работает не на каждой железке, а FreeBSD делается так, чтобы работало всё и у всех (хотя до этого ещё далеко).

(я недавно нашёл юз-кейс для обоих этих БСД, фри и опен, и с прицелом на будущее решил начать их использовать)

А мне просто надоело возиться с Linux, они совсем забили на юзеров. FreeBSD юзал на серверах и в виртуалках, потому свалил на неё не задумываясь.

moused по дефолту вроде как включен

не, moused не трогал (вроде – перепроверять сейчас лень), был выключен .

В виртуалке может быть и выключен, я не помню (ставлю обычно из подготовленного образа диска). Я уже писал, что фря на железе и в виртуалке это разные вещи.

mord0d ★★★★★
()
Ответ на: комментарий от mord0d

Вот только OpenBSD работает не на каждой железке

Шо поделать, издержки их фокуса деятельности. Фальшивые «open source» драйверы (которые под NDA в линуксе) их не устраивают, они хотят даташиты. И правильно хотят, очень правильно. Я например не хочу чтобы такой ценой Опен работал «на каждой железке».

the1 ★★
()
Ответ на: комментарий от mord0d

moused

Перепроверил, moused по дефолту был неотмечен звёздочкой. Напротив него описание типа PS/2 mouse support in console. Для моей qemu (ничего мышиного не задавал в командной строке) линуксовый лог иксов пишет VirtualPS/2 VMware VMMouse. Не знал что USB мышка становится под виртуалкой PS2.

В Опене мышь под иксами заработала сама.

the1 ★★
()
Ответ на: комментарий от the1

moused по дефолту был неотмечен звёздочкой

Што? Какие звёздочки?

 % awk -F'"' '/^moused_enable/{print $2}' /etc/defaults/rc.conf
NO

Таки да, по дефолту он выключен. Да, я только сейчас проспался и вспомнил про дефолты. ☺

mord0d ★★★★★
()
Ответ на: комментарий от mord0d

Какие звёздочки?

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

PS.

Вот кстати, вопрос у меня ещё: Низкая производительность веб-сервера gunicorn (python) на BSD (Free и Open)

the1 ★★
()
Последнее исправление: the1 (всего исправлений: 1)
Ответ на: комментарий от the1

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

Да я и из установочного образа ставил руками. ☺ Меня не устраивает дефолтная установка на ZFS.

Вот кстати, вопрос у меня ещё:

Видел, меня кастануло тегом.

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

mord0d ★★★★★
()
Ответ на: комментарий от slovazap

В таком виде да, действительно не нужно.

ass ★★★★
()
Ответ на: комментарий от mord0d

Задача — накатывать набор файлов без ошибок, проверять целостность файлов, проверять обновления на сервере, уметь ставить обновления и откатывать их.

Это задача, которую решает менеджер пакетов.

А при чем тут твои чисто психологические тезисы, непонятно. Линукс тоже можно распаковать, вывалив все файлы в корень. От этого ничего не улучшится.

wandrien ★★★
()
Ответ на: комментарий от wandrien

Задача — накатывать набор файлов без ошибок, проверять целостность файлов, проверять обновления на сервере, уметь ставить обновления и откатывать их.

freebsd-update всем этим и занимается.

Это задача, которую решает менеджер пакетов.

Ещё раз: базовая система и пакеты/порты — разные сущности. Пакеты/порты от базовой системы зависят, базовая система от пакетов (а соответственно и от менеджера пакетов) — нет.

Линукс тоже можно распаковать, вывалив все файлы в корень.

Так именно это в Linux и есть: пакеты ставятся в / и /usr, все системные конфиги валятся в /etc.

В FreeBSD все файлы пакетов лежат в /usr/local, для них даже /usr/local/etc отдельное от системного.

mord0d ★★★★★
()

Я люблю пиво.

J ★★★★★
()
Ответ на: ТСу от sqq

Потому, что в облаках распространена только freebsd и openbsd - я и сравниваю преимущества с линуксом, к примеру, во многих дистрах линукса обновление с одной мажорной версии на другую зачастую проходят с ошибками и факапами (к примеру, на той неделе у меня не смогла обновиться suse leap 15.1 на 15.2 в yandex cloud)

menangen ★★★★★
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.