FreeBSD: гораздо лучше GNU/Linux

    Сравню FreeBSD с GNU/Linux системами. Всё это исключительно субъективное мнение! Многое это просто мой опыт. Почти 100% всего времени я провожу за компьютером и исключительно Unix системами, примерно поровну с FreeBSD и GNU/Linux, вот уже 20+ лет.

    Большая часть достоинств FreeBSD также относится и к другим популярным свободным BSD системам: NetBSD, OpenBSD, DragonflyBSD. Что-то в этих системах будет получше, многое появилось впервые не в FreeBSD, но перекочевало в неё. FreeBSD многое наследует от NetBSD (различные драйвера и подсистемы), от OpenBSD (сетевые технологии), DragonflyBSD (лучшая масштабируемость на многопроцессорных платформах), от Solaris (DTrace, идея Jail-ов, ZFS), сочетая самое лучшее ото всех.

    Если коротко, то FreeBSD это высокое качество, надёжность, удобство и простота работы. GNU/Linux это зоопарк, помойка малосвязанного кода, мало чего доделываемое до конца, отсутствие документации, хаос, базар.

    Главные отличия


    FreeBSD GNU/Linux
    BSD это целостные законченные ОС, разрабатывающиеся как единое целое. Если решают добавить поддержку Zstd алгоритма сжатия, то это появляется не только в компрессорах, но и в syslog-ротации и других местах. Если есть команды выдачи какой-либо статистики, то все они используют библиотеку типа libxo, унифицируя различные варианты вывода. Все команды создаются под одну гребёнку.
    GNU это просто набор ПО, объединённый названием, copyright holder-ами, советами по созданию документации и конфигурированию сборки. Linux это один из вариантов ядра, наравне с Hurd или FreeBSD. Существуют сотни (тысячи?) дистрибутивов объединяющих всё это вместе, с совершенно разными и отличающимися требованиями, пакетными менеджерами, подходами, проверкой качества и тому прочим. Есть дистрибутивы и почти не использующие GNU ПО. Есть дистрибутивы не использующие Linux.

    Какой-либо унификации документации, конфигурации, вывода информации в софте толком нет. Всюду и везде будет явно и отчётливо видно, что вот эта небольшая программа/утилита написана одним человеком, а вот эта другим. Всюду и везде разные подходы ко всему: один считает так, другой считает так.

    В основном забота о приведении всего к какому-то одному единому виду лежит на плечах distribution maintainer-ов, которым приходится править софт, возможно что-то дописывать за автором, ведь не всегда автор согласен на любого рода изменения. От maintainer-ов зависит удобство работы и качество (аккуратно разложенная документация, учёт демонов в системах ротации логов, системе логирования, периодичных заданий, и т.д.) предоставляемого ПО.

    На практике, если сейчас взять одни из последних дистрибутивов Ubuntu, то вы не факт что сможете поставить его не на первый жёсткий диск, не факт что загрузчик GRUB сможет установится, не факт что вы сможете настроить IPv6, не факт что после первого же обновления пакетов системы во время установки у вас всё загрузится. Недавно я столкнулся с невозможностью штатно настроить MTU на сетевом интерфейсе в Ubuntu (серьёзно!?). Всё это я прошёл на практике и подобные банальные действия регулярно ломаются и не работают.

    Взяв дистрибутив GNU/Linux, вы можете получить тысячу компонентов ПО вместе с GNOME, NetworkManager и чем-то подобным, потом занимаясь отключением и удалением последних. А можете получить дистрибутив в котором нет и компиляторов и даже netcat утилит которые бы умели IPv6 (и не будет ни telnet, ни socat), имея на руках мало на что пригодную даже для проверки работоспособности сети ОС.
    Качество ПО BSD систем значительно лучше. Если разработчики говорят что такой-то функционал готов к промышленному использованию, то значит это так. Годами многие фичи могут быть включены в ОС с громкими пометками о том что это EXPERIMENTAL и только после проверки временем и уверенности разработчиков эту пометку снимут.
    Если разработчики Linux сказали что что-то готово к использованию, то стоит подождать ещё лет пять, чтобы хотя бы начать смотреть на ту или иную технологию, если, конечно, у вас не критично важная работа, где стоит пойти на риск. Например файловая система btrfs давно официально считается стабильной и production ready, однако на практике никто из серьёзных компаний её не использует (слышал про Facebook — потеря ФС на серверах им не критична), так как на практике она всё равно не стабильна.

    Никаких гарантий что та или иная фича вообще когда-либо будет достаточно стабильна и надёжна. Например POSIX file locks, по сути, до сих пор не работают в Linux.
    Нет зоопарка утилит, когда одно и то же действие можно потенциально выполнить множеством инструментов. Если вам хочется получать разного рода статистику и информацию об ОС, то fstat, gstat, ifmcstat, iostat, ipfstat, kldstat, lockstat, netstat, nfsstat, plockstat, pmcstat, procstat, pstat, sockstat, vmstat к вашим услугам. Хочется что-то настроить? acpiconf, atmconfig, bsdconfig, ifconfig, kldconfig, mdconfig, pciconf, usbconfig, sysctl, sysrc. Почти все имеют унифицированные правила обработки аргументов, конфигурационных файлов, вывода.

    Framework для конфигурирования сети штатный один: настройки в rc файле, банально вызывающие ifconfig команды.

    В FreeBSD есть три firewall-а: ipf, ipfw, pf — каждый со своими за/против, но каждый из них является полноценным законченным firewall-ом. ipfw это IPv4, IPv6, TCP/UDP/SCTP, ICMP*, Ethernet, traffic shaper/scheduler, NAT, NAT64, NPTv6, IPsec, stateless/stateful firewall в одном флаконе.

    Почти всё что касается конфигурирования уровня ОС, глобального, использует sysctl.
    Если хотите настроить IP адреса на интерфейсе, используйте ifconfig или ip. Хотите маршрутизацию статическую, используйте route или ip. Хотите TUN/TAP интерфейсы, используйте tunctl или ip. Хотите bridge интерфейсы, используйте brctl или ip. Хотите bond, используйте ifenslave или ip. Хотите IPsec SA, используйте setkey или ip. Для беспроводных сетей iwconfig, ip. Хотите различные туннели, то iptunnel, ip. Хотите сменить MAC, то nameif, ip.

    Думаете что раз команда ip призвана всё заменить, то она справилась со своей задачей? STP для bridge вы всё равно не настроите на данный момент без brctl, который из коробки может и не стоять. Вместо десятка утилит с совершенно отличающимся синтаксисом, теперь мы имеем на одну утилиту больше, не отменяющую надобность в остальных. В FreeBSD всё описанное выше делается ровно одним ifconfig.

    Framework-ов для конфигурирования сети масса: shell-based системы как в Debian, NetworkManager, systemd средства. У всех у них есть какие-нибудь да ограничения на возможные конфигурации.

    Думаете можно обойтись одним только iptables, пришедшим на смену ipchains? Для Ethernet пакетов надо использовать ebtables, для IPv6 ip6tables, для ARP arptables. И при этом, как мне кажется, ни один здоровый человек не сможет сказать что синтаксис правил для iptables удобен — он выполняет задачу, но все будут писать собственные скрипты/обёртки с отличным синтаксисом для удобного конфигурирования типа ufw.

    Используется ли это всё до сих пор? Безусловно. Однако это считается deprecated и должно замениться nftables. Однако и он объявлен уже deprecated и bpfilter его может заменить. Однако на практике многие популярные дистрибутивы используют firewalld.

    Кроме sysctl имеется /sys, а также ещё и дубляж аналогичных ручек управления через специфичные команды.

    Для управления разделами накопителей есть fdisk, parted, gdisk, sfdisk, gparted. Думаете хотя бы одна из них может сразу же и работать с MBR/GPT дисками, давать возможность скриптования, иметь удобный интерфейс для пользователя чтобы указывать не конкретное количество блоков/байт для размера партиций, а просто сказать 100%/full? Ни одной. В FreeBSD полностью всему этому удовлетворяющая команда gpart есть, которая, к тому же, ещё и загрузчики умеет устанавливать, делать бэкапы/восстановление разделов.
    Уже 12+ лет имеет надёжную работающую ZFS реализацию.
    ZFS-on-Linux, появившись спустя годы, спустя ещё годы начав считаться production-ready, мог потерять ваши файлы. ARC под Linux-ом, хоть и являясь по сути кэшом, не может по требованию освободится, что приводит к тому, что у вас ПО может получить ошибку при попытке выделения памяти. В Linux поэтому размер ARC-а ограничивают сверху RAM/2 — из коробки у вас остаётся куча свободной памяти. Поддержка TRIM появилась лишь в прошлом году, по сути не позволяя достойно использовать ZFS на SSD.
    Имеет богатую документацию в виде огромного количества man-ов для каждой команды, каждой подсистемы, каждого модуля ядра и его настройки, и в виде FreeBSD Handbook. С последним вы сможете, практически ничего не зная о Unix, полностью настроить себе и сети и диски и софт и кучу всего ещё. Не знаете с чего начать? man intro, а дальше куча ссылок на другие intro или описания подсистем. В OpenBSD вообще почти всё есть в man-ах, без handbook-ов, не требуя доступа в Интернет для внешних ссылок.
    GNU/Linux администраторы и разработчики высокооплачиваемы ещё и потому, что просто имеют много тайных знаний, которые не идут вместе с дистрибутивами ОС. Часто даже не знаешь с чего начать и куда подглядеть (документация то редко актуальна!) — многим приходиться только лезть в поисковик или на stackexchange.com какой-нибудь. Хотя это всё напрямую следует из того, что система не целостна. Качество многих дистрибутивов хромает так, что документацию часто не приложат, или приложат не полностью.
    Производительность не всегда лучше/выше чем у GNU/Linux (хотя почти всегда это связано с более простой архитектурой/кодом, а значит и большей надёжностью), но одни из самых высоконагруженных серверов в мире — WhatsApp, держат 2M+ конкурентных TCP соединений. 60% трафика в США (сетевая и дисковые подсистемы) генерируется Netflix, полностью работающим на FreeBSD. Крупнейшая ИТ компания в РФ — Яндекс, для своих ядерных сетевых решений также использует FreeBSD. Когда-то Quake3-for-Linux запускаемый в режиме эмуляции под FreeBSD давал на 10-15% больше FPS.
    Производительность GNU/Linux систем может в каких-то случаях быть и выше, но это часто зависит от драйверов, версий ядра и тому прочего.
    Простое и логичное управление памятью и нехваткой памяти.
    Наверняка любой пользователь сталкивался с тем, что система или перестаёт отвечать/работать при нехватке памяти или OOM killer убивает какой-нибудь («наименее», по его мнению) важный процесс типа SSH демона или СУБД. Даже делают user-space костыли по управлению памятью чтобы хоть как-то иметь работоспособную систему при нехватках памяти: earlyoom, oomd, low-memory-monitor, nohang.
    Имеет систему портов и параллельно систему бинарных пакетов. Кто хочет собирать из исходников — пожалуйста, кто хочет сразу бинарник кем-то собранный скачать — пожалуйста. При использовании портов можно конфигурировать опции сборки: если я не собираюсь печатать, то зачем мне поддержка тяжёлого CUPS в каком-нибудь GIMP?
    Дистрибутивы, как правило, предлагают только что-то одно: или что-то аналогичное портам или бинарные пакеты. Либо ничего — собирайте и ставьте софт как хотите самостоятельно. Одна и та же версия пакета может быть разделена на два разных: vim-full или vim-minimal, например, но это всё зависит от maintainer-а.
    Как правило, отличная поддержка серверного железа. Драйверы, бывает, даже раньше чем для GNU/Linux появляются.
    Поддержка всякого ширпотреба домашнего, ноутбуков, desktop-ов наверняка будет лучше.
    IPsec ESP реализация возможно быстрая и стабильная, но не поддерживает ни TFC, ни ESN — последний очень актуален для 10Gbps+ каналов связи. Security Policies не позволяют задавать идентификаторы сторон.
    Поддержка ESPv3 ESN и TFC имеется, как и, судя по коду strongSwan, identities в Security Policies. По вопросу производительности и стабильности ничего не могу сказать.

    Постоянная технологическая отсталость GNU/Linux


    FreeBSD GNU/Linux
    Production-ready ZFS имеется уже 12+ лет.

    UFS2 ФС показывает отличную производительность и устойчивость к сбоям. Хотя я часто слышал что теряли данные на UFS2, но у меня за всю жизнь с FreeBSD ни разу не было, тогда как на ext3/ext4 неоднократно.
    До сих пор production ready ZFS нет. Поддержка TRIM появилась лишь в прошлом году.

    ext4 появился лет на 10 позже UFS2 и только с ним в Linux появилась штатная система в которой хотя бы динамически происходит inode allocation. Однако, в ext4 при этом может утекать место занимаемое под директории и его невозможно вернуть назад без пересоздания ФС. Опыт компании ivi.ru говорит что на очень нагруженной (постоянно создание, удаление, тасование файлов) ext4 через месяцы работы становится неработоспособной и нужно пересоздавать ФС с нуля.

    Также ext4 имеет смехотворный максимальный размер файла в 16 TiB для 4K блоков.

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

    Единственной хорошей работающей достойной ФС в GNU/Linux я видел только XFS, творение начала 90-х SGI IRIX.
    Имеет мощнейшую GEOM дисковую подсистему прозрачно позволяющую (как бы) что угодно делать с блочными устройствами. Одни из модулей этой подсистемы: CACHE — кэширование; CONCAT — JBOD; ELI — шифрование; JOURNAL — журналирование (независимое от ФС); LABEL — labeling; MIRROR — зеркалирование; MULTIPATH — I/O multipath; NOP — эмуляция ошибок, секторов, размеров; RAID, RAID3; SCHED — планировщик I/O; SHSEC — диски с разделяемым секретом; STRIPE — striping. Можно собрать RAID3 из журналируемого зашифрованного диска, вместе с stripe-ом из зеркал с дисками с разделённым секретом и отдельно диском для кэширования. Из коробки полная (и target и initiator) поддержка iSCSI имеется вместе с iSER.
    Аналогом пытается быть dm подсистема, но до сих пор в ней всё равно нет всего функционала, например по созданию RAID-ов. iSCSI зоопарк реализаций, мало где идущий из коробки.

    Более того, Linux не может полноценно эмулировать блочные устройства и если вы сделаете losetup, то у нового появившегося блочного устройства таблица разделов всё равно автоматически не будет прочитана.
    Имеет netgraph сетевую подсистему позволяющую в виде графов/деревьев выстраивать какие вам заблагорассудятся потоки обработки сетевого трафика. L2TP, ATM, PPP, Bluetooth, PPTP, HDLC реализованы в виде модулей этой системы и вы можете делать pipe-ы между ними, firewall-ами, аналог tee, и т.д…
    Аналогов нет.
    Имеет систему трассировки ядра/приложений DTrace (из Solaris).
    Единственным ближайшим аналогом является SystemTap, но который не обеспечивает никакой безопасности от своего использования. DTrace предназначен и работает прямо на боевой системе в real-time. SystemTap легко её повесит или затормозит — он официально не предназначен и не годится для запуска на боевой системе на горячую.
    Имеет jail подсистему контейнеров с 2000-го года. Позже в нём появилась возможность и полной эмуляции сетевого стэка VIMAGE. А также управление ограничениями по ресурсам rctl.
    LXC, как нечто наиболее похожее и близкое, появилось спустя 10 лет.
    Имеет capsicum — простой легковесный capability and sandbox framework, для создания изолированных ограниченных по возможностям компонентов программ. OpenBSD переняла этот framework к себе. Так как FreeBSD это целостная ОС, то почти все программы в составе ОС используют его.
    Linux тоже портировал подсистему к себе. Но вопроса о том, чтобы софт (хотя бы весь GNU) начал бы её использовать для большей безопасности, не ставится, так как это не целостная ОС.
    С 2000-го имеет kqueue подсистему оповещений о события в ядре. Она позволяет эффективно с удобным API обрабатывать I/O между сокетами сетевых соединений, файловыми дескрипторами, мониторить изменение файлов, состояние дочерних процессов и AIO.
    Linux, глядя на FreeBSD, сказав, что мы же всё равно запилим что-то своё отличающееся, для сетевых сокетов двумя годами позже сделал epoll.

    Для слежения за изменением файлов был dnotify, потом его сменил inotify — отдельная от epoll подсистема. Всё это всё равно не покрывает все возможности kqueue.
    С начала 2016-го в FreeBSD появились ZFS Boot Environment, что было взято у Solaris.
    Какая-то поддержка в загрузчике появилась только во второй половине 2019-го.
    Как и ZFS, поддерживает NFSv4 ACL, а также POSIX ACL.
    Не имеет стабильной реализации (экспериментальная поддержка только для ext3/ext4) NFSv4 ACL.
    Есть OSS4 аудио-подсистема с простым API. Resampling, микширование от разных приложений, эквалайзер, объёмный звук, независимые настройки громкости для приложений, bit-perfect режим.

    sndio используемый в OpenBSD умеет resampling, микширование от разных приложений, причём микшируя по устройствам (одна колонка для одного приложения, другая для другого), запись программами того, что играют другие, независимое управление громкостью, поддержка MIDI (с кучей фич), near real-time маленькие задержки.

    Когда-то был OSS, параллельно с ALSA (зоопарк даже тут). Теперь только ALSA, мало чего умеющая из вышеперечисленного, поэтому поверх неё ещё добавляют PulseAudio, как костыль. О малых задержках без патчей и пересборки ядра можно не мечтать. Ещё есть JACK (переставший поддерживать OSS4). А ещё PipeWire грозится заменить PulseAudio.
    IPv6 и IPsec (с IKE/ISAKMP) в 1998 году полностью реализовано в OpenBSD, пару лет спустя в FreeBSD.
    Заимел IPsec спустя пять лет.
    С начала 2000-х использует криптографически стойкий Yarrow PRNG для /dev/random а потом и вовсе перешла на Fortuna.
    До сих пор в Linux нет Fortuna, а используется самопридуманный основанный на ChaCha20 PRNG, с архитектурой схожей с Yarrow, а значит его можно отравить.
    Имеет CARP подсистему (портирована из OpenBSD), заменяющую проприетарный VRRP, для создания отказоустойчивых сетей.
    ucarp появился годами позже.
    В 2015-ом GELI мог аутентифицировать шифротекст в полнодисковом шифровании.
    dm-integrity появился через два года.
    Можно собрать IPv6-only ядро.
    Много зависимостей от IPv4-стэка/кода и собрать IPv6-only ядро нельзя.
    Я молчу о том, что преобладающая часть популярных дистрибутивов начала активно использовать systemd и один только факт того, что *BSD его не используют уже является killer-feature. Но если взять systemd-free дистрибутив, то тогда нормально. При этом в FreeBSD, среди NetBSD и OpenBSD, самая продвинутая система загрузки, поддерживающая зависимости между службами, легко конфигурируемая простым текстовым файлом, написанная на небольшом количестве pure shell.

    Неужели у GNU/Linux нет достоинств? С ходу я могу сказать, что некоторый важный GNU софт работает значительно быстрее BSD вариантов: sed и grep я ставлю GNU-шные. Это, зачастую, ценой усложнения кода и всяких трюков, но нельзя совершенно отбрасывать со счетов производительность. Чем, кстати, OpenBSD не может похвалиться — она плохо масштабируется на несколько процессоров.
    AdBlock похитил этот баннер, но баннеры не зубы — отрастут

    Подробнее
    Реклама

    Комментарии 367

      +7
      Даешь Kubernetes на FreeBSD!
        +5
        Было бы просто прекрасно.
        Обожаю эту ось, к сожалению они уступили линуксу на волне хайпа и не смогли в виртуализацию(bhyve и jail только).
          +1
          Да пожалуйста!
          www.bsdnow.tv/337
            +1
            так со слоем виртуализации можно любую ОС «вниз положить»
              0
              Ну соглашусь с Вами, но есть
              bastillebsd.org/templates
              Прекрасная система от Олега Гинзбурга, активно живущая и с развивающимся сообществом
              www.bsdstore.ru
                0
                Как появится работающий апдейтер — позовите меня.
          +16
          Есть более короткий формат:
          image
            +71
            Если коротко:
            — FreeBSD: гораздо лучше GNU/Linux
            — чем лучше?
            — чем GNU/Linux…
              –2
              Будьте добры скрыть это в черновики и подготовить более основательное сравнение, без субъективной оценки. Плашка «далее написанное — мое личное мнение» не помогает, особенно в статье на тему «мои фломастеры более вкусные, чем другие».
                +40
                BSD: Уже 12+ лет имеет надёжную работающую ZFS реализацию.

                Linux: До сих пор production ready ZFS нет.


                А теперь барабанная дробь — BSD переезжает на кодовую базу ZFSonLinux, который теперь OpenZFS.
                  0
                  *задумчиво* в Oracle Linux есть и поддержка zfs, и готовые ПАК под zfs стойками продаются уже несколько лет как.
                    +4
                    У вас ссылка не приложилась.
                      +1

                      Наверное, потому что и не прикладывал: вот рекламная ссыль на zfs одной из последних версий https://www.oracle.com/storage/nas/zs7-2/, вот реклама одной из первых версий, датированная 2014 годом http://www.tadviser.ru/index.php/%D0%9F%D1%80%D0%BE%D0%B4%D1%83%D0%BA%D1%82:Oracle_ZFS_Storage_ZS3_Series
                      Или вы о чём?

                        +1
                        Не знаю что имел в виду оригинальный автор, но Oracle ZFS storage appliance (ZFS SA) базируется на Solaris и там не OpenZFS.
                          +1
                          Посмотрел — да, вы правы: в серверах oracle zfs стоит солярка, а zfs на ol смонтировалась как том nfs. К тому же, нашёл официальный ответ на форумах оракла про Zpool: «Oracle does not currently offer ZFS as a supported product for Linux.»
                          Похоже, ввёл всех в заблуждение, извиняюсь.
                    +9

                    Вы долго эту чушь "про переезд на кодовую базе ZoL" нести будете?
                    Нет никакой "кодовой базы ZoL", а есть репозиторий где на базе OpenZFS пилили костыли для Linux (впрочем, не слишком успешно).
                    Было принято решение о слиянии базовых репозиториев, где велась разработка ZFS для различных систем на базе ZoL потому что он более жив, чем использовавшийся ранее аналогичный в проекте IllumOS.
                    Репозиторий ZoL, кстати, на днях будет переименован в OpenZFS.

                      +2
                      на базе ZoL потому что он более жив

                      так про это и речь


                      Репозиторий ZoL, кстати, на днях будет переименован в OpenZFS.

                      на гитхабе уже

                        +8
                        Нет никакой «кодовой базы ZoL», а есть репозиторий где на базе OpenZFS пилили

                        Ну это и есть кодовая база проекта ZoL. Речь именно о жизни в конкретном репозитории, до этого все OpenZFS проекты жили отдельно, теперь непосредственно в репу ZoL добавляют обвязки для сборки из неё и для FreeBSD.

                        Чем вам «кодовая база» не нравится?:)

                        Было принято решение о слиянии базовых репозиториев, где велась разработка ZFS для различных систем на базе ZoL потому что он более жив, чем использовавшийся ранее аналогичный в проекте IllumOS.


                        Как непосредственно участвовавший — слияния репозиториев нет, ZoL активно пилит свои фичи и он уже 2-3 года впереди, мы давно забекпортили все нужные изменения из Illumos и уже несколько лет бекпортят из ZoL в обратную сторону. В том числе и «костыли», как вы их называете.

                        Репозиторий ZoL, кстати, на днях будет переименован в OpenZFS

                        Уже.
                          0
                          Как непосредственно участвовавший

                          Ну тогда тем паче грешно дезинформировать публику заявляя о "переезде не кодовую базу ZoL", тем более что, со своей стороны, я вижу, что за примерно год прошедший с начала объявления процесса миграции разработка ZFS во FreeBSD фактически заморожена и она получила из кодовой базы наработанной в рамках ZoL примерно ничего, в то время как идущая на "2-3 года впереди" ZoL, наконец-то, получила SSD TRIM и ZFS on root.

                            0

                            ну вроде как скоро получит special allocation class, ИМХО мегаполезная фича

                              +4
                              что за примерно год прошедший с начала объявления процесса миграции разработка ZFS во FreeBSD фактически заморожена и она получила из кодовой базы наработанной в рамках ZoL примерно ничего

                              Именно.

                              ZoL, наконец-то, получила SSD TRIM

                              С другой реализацией с нуля, если что.

                              и ZFS on root.

                              Вы серьёзно? Я 5 лет этим на линуксе пользуюсь уже, и я не первый.

                              Не понимаю что вы хотите доказать. FreeBSD будет собираться из репы ZoL->OpenZFS? Да. «разработка ZFS во FreeBSD фактически заморожена». Вот и переезд на кодовую базу. Вас смущает терминология?

                              Если хотите что-то объяснить, то скажите просто что вам в этом выражении не нравится.
                                –6

                                Доказывать тут ничего не нужно, поскольку на сегодня объективно FreeBSD не использует "кодовую базу ZoL", что аннулирует ваше начальное заявление.


                                Вы серьёзно? Я 5 лет этим на линуксе пользуюсь уже, и я не первый.

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

                              0

                              А подскажите что за терки с ZoL в линуксе, вроде Линус сильно недоволен и вроде как выпилил ядерные структуры для поддержки ZFS в ядре. Удалось как-то решить эту проблему? Я ZFS в линкксах не пользуюсь поэтому не знаю…

                                +2
                                Да, проблему решили, GKH принял патч, где несколько функций начали экспортировать только для GPL совместимых модулей. Пришлось сделать патч и реализовать просто часть логики на стороне zfsonlinux.

                                Т.е. мейнтейнеры ядра придерживаются подхода «на всё, что не в ядре — нам плевать» и они не пытаются помогать сторонним проектам, а иногда (не буду говорить насколько осознанно) вставляют этим палки в колёса. Но всё можно обойти на своей стороне.
                                  0

                                  Спасибо за ликбез. Рад что нашли решение проблемы. Надеюсь общими усилиями удастся сделать ZFS и стабильной и совместимой хотябы в Open Source OS.

                                    –4
                                    FS не в ядре? Тогда это просто игрушка
                                    0
                                    Не Линус, а Грег, не выпилил, а упорядочил свой код, недоволен чужим недовольством, т.к. с чего бы человеку GPL заботиться о ПО, намеренно и умышленно выпущенным под несовместимой с GPL лицензией. Могли выпустить под совместимой лицензией — никто не мешал.

                                    Идут споры о совместимости — несовместимости лицензий: GPL у Linux и CDDL у ZFS.
                                    Вроде как поставка готовой сборки Linux с включённой поддержкой ZFS вообще незаконна, чем занимается Canonical, но вроде как больше никто из крупных поставщиков.
                                    У Linux есть «своя» BTRFS, использующаяся по умолчанию в SUSE и openSUSE, и ими же поддерживающаяся (кроме прочих). Redhat отошёл от BTRFS и делает свою Stratis (или что-то там ещё).

                                    Подробнее см.:
                                    ru.wikipedia.org/wiki/ZFS#Linux
                                    en.wikipedia.org/wiki/ZFS#Linux
                                    ru.wikipedia.org/wiki/CDDL
                                    en.wikipedia.org/wiki/Common_Development_and_Distribution_License#GPL_compatibility
                                      +1

                                      Их позиция "нам пофиг на всё, что не в ядре" имеет право на жизнь, жаль что при этом начинаются политические игрища по поводу лицензий, при этом никто не агитирует gkh и Линуса вливать код zfs в ядро. Но зачем осознанно портить жизнь другим людям?


                                      Но вот такой патч упорядочиванием кода назвать сложно, по сути убран экспорт функции для nongpl консьюмеров, и всё https://github.com/torvalds/linux/commit/12209993e98c5fa1855c467f22a24e3d5b8be205


                                      Что мешало оставить экспорт как было раньше? Вот и недовольство.

                                        –1
                                        Что мешало оставить экспорт как было раньше?

                                        Ну вообще каждая функция объявленная как static в таком огромном
                                        проекте это благо. Это и ускоряет компиляцию и линковку, и упрощает поддержку, так как чем меньше функций доступных извне данной единицы трансляции тем меньше межмодульных связей, и думаю очевидна польза от уменьшения связанности огромного проекта?

                                +1
                                С козырей зашел)
                                  0

                                  … который не совместим с ядром 5.5, потому что… не GPL и Linus решил, что еще один метод будет GPL-only


                                  И так при каждым выпуске ядра было и будет продолжаться :)

                                    +1
                                    несовместимость только с PREEMPT ядром, так норм:

                                    # CONFIG_PREEMPT_NONE is not set
                                    CONFIG_PREEMPT_VOLUNTARY=y
                                    # CONFIG_PREEMPT is not set
                                    CONFIG_PREEMPT_NOTIFIERS=y


                                    CONFIG_PREEMPT_NONE тоже годится, особенно для сервера

                                    p.s. кстати, дело c «нелюбовью» не только в лицензии, но и в идеологии комбайн (aka Rampant Layering Violation?) vs модульность
                                  +11
                                  Какой-либо унификации документации, конфигурации, вывода информации в софте толком нет. Всюду и везде будет явно и отчётливо видно, что вот эта небольшая программа/утилита написана одним человеком, а вот эта другим.

                                  Как-то притянуто за уши. Кроме базовых утилит набор-то софта у обоих одинаковый. От GNOME до Wireshark, от mongodb до nginx все же одинаковое. Или разработчики *BSD для всех этих тысяч популярных проектов с открытым кодом дописывают документацию, переделывают им формат конфигов и так далее? Почему-то я очень в этом сомневаюсь.

                                    +3
                                    Думаю, что речь идёт про базовую систему: www.freebsd.org/doc/en_US.ISO8859-1/books/handbook
                                      +6

                                      Так я писал


                                      Кроме базовых утилит

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

                                      +3
                                      Для конечного юзера софт один до тех пор, пока его разработчик юзает только posix, а иначе терпит.

                                      Например, есть доклад от nginx про ядро, там есть явные места про «в bsd задизайнено удобнее»: sendfile, epoll_ctl.

                                      p.s. Кстати, бы очень интересно услышать отзыв от nginx команды про io_uring
                                      +11
                                      Очень однобокое сравнение.
                                        +12

                                        Сегодня вроде не 1 апреля.

                                          +5
                                          Спасибо за проделанный труд и интересное сравнение, правда ОС обычно выбирается исключительно под задачи.
                                          Так как я работаю восновном с веб и почтовым хостингом то в этих прикладных областях доля FreeBSD ничтожно мала.
                                          Также отмечу что для СХД FreeBSD (FreeNAS и аналоги) встречается часто благодаря zfs.
                                          Если есть ниши где FreeBSD также используется широко — расскажите об этом, думаю всем будет интересно узнать.

                                          Я предполагаю что мы говорим про администрирование серверов, и возможно СХД и странно читать что:
                                          «Поддержка TRIM появилась лишь в прошлом году, по сути не позволяв достойно использовать ZFS на SSD.»

                                          Вас не смущает что в большинстве RAID контроллеров нет поддержки TRIM?
                                          И это нисколько не мешает использовать SSD.
                                          TRIM имеет смысл только на десктопных SSD, для серверных он не нужен.

                                          И немножко про zfs:
                                          zfs является бесспорно отличной ФС, также в линуксе уже давно есть btrfs кторая сейчас является достойной альтернативой zfs.
                                            +3
                                            Вас не смущает что в большинстве RAID контроллеров нет поддержки TRIM?

                                            А вас не смущает, что RAID контроллеры противопоказаны при работе с ZFS?


                                            также в линуксе уже давно есть btrfs кторая сейчас является достойной альтернативой zfs

                                            Не является даже близко. Почитайте эпичный тред на IXBT с обсуждением реально с ней работающих… Там, очень мягко говоря, до продакшн реди ещё как до Луны пешком. В общем, Redhat не даром её из кодовой базы выпил к чертям.

                                              0
                                              Меня смущает то что вы почемуто решили что TRIM нужен на серверных SSD.
                                              «Redhat не даром её из кодовой базы выпил к чертям.» я лично считаю что это решение было политическим ради того чтобы не уменьшалась доля xfs.
                                              Чтото я не могу нагуглить «эпичный тред на IXBT про btrfs», поделитесь ссылкой пожалуста.
                                                –4
                                                Меня смущает то что вы почемуто решили что TRIM нужен на серверных SSD.

                                                Отнюдь.
                                                Меня смущает что вы, видимо, считаете что ZFS хорош только на серверах. Так вот нет. Boot environments и snapshots, не говоря уже про надёжность хранения, чрезвычайно полезны и востребованы и при персональном использовании.


                                                Чтото я не могу нагуглить «эпичный тред на IXBT про btrfs», поделитесь ссылкой пожалуста.

                                                Честно говоря мне лень, но вы найдёте. Там реальный "адъ и Израиль".


                                                UPD. По-моему это был тред про NAS.

                                              +1
                                              Ссылочку на тред про ZFS на IXBT скиньте пожалуйста.
                                            +4

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

                                              –1
                                              Это если только говорить о выборе типа фряха, линь или винда.
                                              Если говорить о линушных дистрибутивах, то разницы, по большому счёту, нет. Линукс он и в Африке линукс.
                                                +1
                                                Линукс он и в Африке линукс.

                                                К сожалению, нет. Как говорится — бери тот дистрибутив, который знает твой друг-админ.

                                              +2
                                              Так как я работаю восновном с веб и почтовым хостингом то в этих прикладных областях доля FreeBSD ничтожно мала.
                                              Когда-то работал в конторе обслуживающей кроме всего прочего почтовые и веб сервера в коммерческих конторах. Линукс не использовался вообще. Почта, прокси, маршрутизация и проч связанное с сетями — 100% FreeBSD. Сейчас поинтересовался у коллеги — ситуация та-же самая.
                                              Что греха таить, домашний NAS/сервер живет у меня с 98-го года под FreeBSD, но в 2016-м одна очень нужная софтина не захотела ставиться не под каким соусом и психанув, поставил Ubuntu, тем более, что десктоп у меня уже с ~2010 под ним же. Не буду описывать причины, что бы не скатываться в субъективизм, но с начала 2019-го сервер вернулся под управление FreeBSD. При этом на десктопе отказываться от Линукса пока не собираюсь.
                                                +1
                                                Ну это не показатель от слова вообще.
                                                У меня вон есть серверы на SUSE Linux, первом выпуске. Тоже еще работают. Сколько им лет? 15?
                                                Убунту это не серверная среда. Смысл ее ставить на сервер, а потом использовать как аргумент.
                                                Имхо FreeBSD просто сильно заигралась. Никому не нужно такой ценой идеальность.
                                                  +2
                                                  Все дистрибутивы Linux — суть Linux. Отличия в части «серверной среды» минимальны, ибо базируются на функционале ядра. Даже systemd теперь практически везде — вроде все чуть ли не молятся на него, а на деле, можно убить кучу времени пытаясь понять, почему служба не стартует. И окажется, что это чудо _думает_ что демон жив и здоров, а значит не надо ничего делать.
                                                  Что касается серверов на FreeBSD, то это не где-то забытые машины, а регулярно обновляемые и поддерживаемые системы.
                                                  Собственно, домашний сервер:
                                                  FreeBSD xxx.xxx 11.3-RELEASE-p3 FreeBSD 11.3-RELEASE-p3 #0: Mon Aug 19 21:08:43 UTC 2019 root@amd64-builder.daemonology.net:/usr/obj/usr/src/sys/GENERIC amd64
                                                    0
                                                    11.3? 12.1 уже давно надо.
                                                      0
                                                      Продуктивный же пока ещё 12.0.
                                                      27 октября будет релиз 12.2.
                                                        0
                                                        www.freebsd.org/releases
                                                        Most Recent Releases
                                                        Production Release
                                                        Release 12.1 (November, 2019)
                                                        Release 11.3 (July, 2019)

                                                        11.3 вполне Ок, особенно для старого железа.
                                                      +4
                                                      Учитывая какой был раздрай и бардак до systemd, его наличие благо. Но как и все поделия Поттеринга, нужно подождать пока он перестанет его писать :) И тогда станет все прекрасно и хорошо. Как это стало когда он перестал активно пилить pulseaudio. Как визионер он молодец, но вот его код и то как он это делает нууу такое :)

                                                      Насчет же а как же в разобраться, ну дак почитайте документацию к systemd там не так уж много, достаточно сделать это один раз.
                                                        0

                                                        "Насчет же а как же в разобраться, ну дак почитайте документацию к systemd там не так уж много, достаточно сделать это один раз."
                                                        У вас хорошая память, вам повезло ..

                                                          +1
                                                          Читайте концепции и то как устроен unit файл. Не надо читать там все специфические случаи, там действительно много что сделано, так чтобы скрипты надо было писать только в 0.01% случаев. Когда надо фичу M открыли документацию да посмотрели.
                                                            0

                                                            Да не с unit фалом то проблем нет, проблема в том какие зависимости прописать под ситуацию, было ровно 2 кейса, монтирование root раздела с dm-raid (вышло так, при миграции с win) и перевод видеокарты в low режим, со вторым чуть проще (разгон турбины, нагрев, не такой шустрый) а вот с первым было трудно понять куда его ставить :)

                                                  +2
                                                  большинство RAID контроллеров поддерживает UNMAP, с которого скопирован TRIM. Кроме того ZFS рекомендуют использовать не с RAID контроллерами а с HBA, т.к. у последних задержки ниже, а функциональность первых не востребована.
                                                    0
                                                    это нисколько не мешает использовать SSD.

                                                    Ну, если не смущает необходимость регулярно менять диски. И если не смущает постепенная деградация их скорости. Оба эффекта мы ловили.

                                                    +2

                                                    В 2000 году FreeBSD не умел грузиться с extended partition. А lilo и Linux умели. Это похоронил вряху для меня. Субъективно.

                                                      +1

                                                      Простите, но ссылаться на 2000 год также "актуально", как обсуждать сейчас достоинства и недостатки Windows XP

                                                        0
                                                        Так оно и сейчас вроде не умеет.
                                                        Другое дело, что там кроме ZFS больше нет файловых систем нормальных. ufs — зеркало из 2 дисков по 1тб, fsck после хард резета занимает 6 часов. Нормально?
                                                          +2
                                                          Можно (нужно) включить журналирование для этой ФС, вместе с soft-updates (SU+J). Занимать будет секунды.
                                                            0
                                                            SU нужно для ускорения работы фс, разрушение данных как раз при аппаратном ребуте будет только сильнее. А журнал — он там как 5 нога, сбоку приделан костылём. И под него нужно или уменьшать раздел, или иметь место после раздела. Точных значений не скажу, лет 10 назад последний раз активировал, но помню что без освобождения места за разделом журнал не сделать. И помнится что с ним существенно проседала производительность…
                                                            Хотя может за 10 лет сильно поменялось всё, но вообще на такие объёмы только zfs имело смысл, имхо разумный предел для ufs — гигабайт 50-100.
                                                              +1
                                                              Ваша претензия была к времени fsck. На любой ФС без журнала (ну и не CoW) это будет долго, по очевидным причинам.

                                                              То, что вы написали про журнал, это похоже вы руками делали gjournal (10 лет назад возможно только такой вариант и был). Сейчас это автоматизированно можно сделать, просто одним аргументом к newfs. И производительность, похоже, тоже страдала из-за этого (хотя с журналированием она в любом случае просядет).

                                                              С SU вы всегда будете иметь консистентное (работающее) состояние ФС. Без него вы рискуете «терять» часть ФС, а то и всю. Без SU вы вынуждены всегда делать fsck при сбоях. С SU вы всегда можете подмонировать и работать с ФС. Единственное от чего SU не обезопашивает, так это от утечки места при сбоях (блоки диска могут быть помечены как занятые, хотя это не так): только для этого нужен fsck, время которого сокращается за счёт журнала.
                                                      +1
                                                      Простое и логичное управление памятью и нехваткой памяти.

                                                      а что там вместо OOM killer?

                                                        0

                                                        Он просто работает. Причём работает так, что даже мысли не возникает об использовании своего отдельного OOM "с блекджеком и шлюхами" в userland как это теперь водится в Linux.

                                                          +1

                                                          Интересно а как? Вот есть 2 user space процесса постепенно выбирающих память до предела, какое решение?

                                                            0
                                                            Немного не по теме, но например в MacOS при нехватке памяти (и свопа тоже) ОС фризит процессы которые запрашивают аллокацию. Это несколько раз спасало меня позволив разрулить ситуацию, закрыть что-то тяжелое и ненужное, а потом разморозить процессы и они продолжали работу штатно. Своп у меня отключен, а великолепное сжатие ОЗУ на лету тоже не всесильно.
                                                              0

                                                              Такое поведение возможно при существовании гарантированного резервирования памяти под системный процесс, насколько я понимаю, проблемы возникают из-за механизмов типа copy on write, я в принципе далёк от системного программирования, но на мо взгляд такие механизмы очень усложняют отслеживание процесса которой запросил больше чем доступно, в итоге тот самый oom killer который по умолчанию настроен на работу до последнего (ведь крайний запрос на память может быть от системного процесса не смотря на то что 99% съел условный браузер) просто не успевает отработать и в итоге выстраивается очередь подвисших процессов.
                                                              Дома на debian эта проблема решилась добавлением 1Гб swap при 16гб. RAM, насколько я понимаю (из прочитанного лет 7-8 назад) из-за особенностей алгоритма наличие swap даже небольшого размера частично решает проблему(зависаний нет совсем, но да что-то будет прибито).

                                                                +1
                                                                > проблемы возникают из-за механизмов типа copy on write, я в принципе далёк от системного программирования, но на мо взгляд такие механизмы очень усложняют отслеживание процесса которой запросил больше чем доступно

                                                                Именно так.

                                                                Заметку по этому поводу я не обновлял по сути где-то с 2002 года. И сейчас ничего не изменилось.

                                                                > Дома на debian эта проблема решилась добавлением 1Гб swap при 16гб

                                                                Своп помогает — за счёт превращения исчерпания памяти в торможение программ — и даёт время, если есть админ или автоматический мониторинг, остановить проблему до наступления критического исчерпания. Может, поэтому никто и не чешется лечить по сути.
                                                                  0

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

                                                                    0
                                                                    за счёт превращения исчерпания памяти в торможение программ

                                                                    Только из-за современных nvme или ssd этого почти незаметно.

                                                                    +1
                                                                    Не соглашусь. Точнее, не всегда и не везде это так.
                                                                    Вот у меня дома 8 ГБ оперативки, и своп на 1ГБ. Однако, когда прожорливый процесс подбирается к потолку (это около 7,4...7,6ГБ), он и вся система начинает жутко тормозить. До того, что сложно (или невозможно в адекватное время) переключиться по Ctrl+Alt+F2 на консоль и грохнуть там процесс.
                                                                    При этом swap и вся система на SSD, и swap на отдельном разделе. И oomkiller не срабатывает почему-то.
                                                                    Да мне как-то и не хочется чтобы этот процесс убивался, было бы гораздо логичнее, если бы процессу на запрос новой памяти система вернула бы «эй, у нас больше нет!», а процесс обработал бы это событие, и уже как-то сам выкручивался (выдать сообщение пользователю, использовать какие-то другие методы вычислений, и т.д.).
                                                                    Для конкретики,
                                                                    [avx@localhost ~]$ uname -a
                                                                    Linux localhost.localdomain 5.5.6-desktop-2.mga7 #1 SMP Tue Feb 25 11:54:56 UTC 2020 x86_64 x86_64 x86_64 GNU/Linux

                                                                    Процесс — игра Deus Ex: Mankind Devided, запущенная из steam.
                                                                    В процессе игры иногда встречаются моменты, когда логично и понятно, что будет занято много памяти, и на компе индикатор активности диска сразу начинает активность, а игра подвисает, и иногда может даже «прожевать» этот пик нагрузки на оперативку, используя swap, но чаще приходится делать hard reset кнопкой.
                                                                    P.S. Да, я понимаю, что лучше просто добавить память. Но не всегда можно быть богатым и здоровым :-)
                                                                      0

                                                                      Мне кажется, хотя я могу ошибаться, но ваш сценарий, независимо от того, что у вас вроде как 1 большой процесс, не исключает указанной мной причины, просто если в вашем случае реализовать только гарантированное выделение, возможно "провисания" не будет, но при этом ваша игра выпадет по "out if memory", насколько я понимаю, в текущих системах, система до последнего пытается высвободить место под ваш процесс, а когда почти все системные процессы (в том числе код библиотек) уже вытеснены, происходит ошибка идёт в процесс, который пытается её обработать, но для этого ему нужно поднять то что до этого было вытеснено из памяти, но на этот процесс уже не хватает ресурсов и тут просыпается oom killer, я не настаиваю, но возможно именно не совсем некорректная обработка прерывания процессом игры и вызывает такое поведение. Особенность в том, что современное ПО уже "привыкло" к тому что можно выделять памяти больше чем есть реально, и при этом использовать сколько нужно (когда я первый раз увидел много лет назад объём виртуальной(не уверен в точности термина) памяти больше чем вся RAM я удивился, а теперь никто и не обращает внимания.
                                                                      p.s. совсем не специалист в части работы ядра и его систем, всё что написано выше, только исходя из моего понимания логики работы подобных систем.

                                                                        0
                                                                        Особенность в том, что современное ПО уже "привыкло" к тому что можно выделять памяти больше чем есть реально, и при этом использовать сколько нужно (когда я первый раз увидел много лет назад объём виртуальной(не уверен в точности термина) памяти больше чем вся RAM я удивился, а теперь никто и не обращает внимания.

                                                                        Именно так. Это тот же самый бич, когда программа требует привилегий больше, чем ей нужно для работы — но все уже привыкли и теперь ломать стереотипы сложно. Проще запихивать этот помойкософт в контейнеры (докер) и виртуалки (qubeos) и надеяться, что все будет хорошо. Ну, и своевременно подкидывать новых аппаратных ресурсов

                                                                        +1
                                                                        Да мне как-то и не хочется чтобы этот процесс убивался, было бы гораздо логичнее, если бы процессу на запрос новой памяти система вернула бы «эй, у нас больше нет!», а процесс обработал бы это событие, и уже как-то сам выкручивался (выдать сообщение пользователю, использовать какие-то другие методы вычислений, и т.д.).

                                                                        в линуксе достаточно отключить оверкоммит памяти, но только при этом начинаются спецэффекты. Чертов софт, который написан кое-как

                                                                          0
                                                                          Подробнее можно? Где и как отключить, и чем именно это грозит? Для обычных приложений залезть в своп — ну, замедлится, ну подождёт пользователь подольше… А для игры — это подобно просто выключению игры. Ибо настолько всё замирает, что уже об игре и не вспоминаешь, а только как бы её просто закрыть (да, потерянный прогресс иногда жалко). Так что если игра просто вылетит с ругательствами на память — пусть бы и так, это лучше, чем просто висеть и насиловать мой SSD.

                                                                          P.S. на работе выключил на одной слабой машинке (2004 г выпуска, Celeron 2.6GHz, 512MB памяти, winXP и KES10 + рабочий софт несколько штук) swap совсем, и… работать стало лучше! Раньше — запустит юзер сразу 5 программ, они сожрут оперативку (которой уже на старте ОС почти нет), и машина свопится, а диск тормозной, и всё сильно подвисает. После — запускают одну программу, вторую, третью — оп, а на четвёртой (или на третьей, как повезёт) ошибка — нехватка памяти! Они закрывают ненужные на данный момент программы, и работают дальше, без тормозов (ну, для этой машины если так можно сказать). И аптайм машинки по несколько месяцев случается.
                                                                        +3
                                                                        Это баг, из-за которого Linux на компьютерах с низким количеством памяти лучше вообще не использовать. В Windows, например, ситуация намного лучше.

                                                                        bugzilla.kernel.org/show_bug.cgi?id=196729
                                                                        bugzilla.kernel.org/show_bug.cgi?id=199763
                                                                        www.reddit.com/r/linux/comments/94u116/gnulinux_on_12gb_ram_tablets_how_it_really_works

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

                                                                А внутре неонка!

                                                                +48

                                                                По параметрам, про которые вы говорите, msdos восхитительна. Там нет зоопарка веб-серверов, а все фичи, если они поддерживаются, поддерживаются всюду (например, директории). А уж как хорошо msdos справляется с зоопарком файловых систем — словами не передать. msdos использует только те файловые системы, которые поддерживаются всеми другими операционными системами. msdos удивительно компактна и требует микроскопический объём памяти.


                                                                По всем этим критериям msdos лучше, чем freebsd.

                                                                  0
                                                                  FreeDOS же. Там даже драйвера сетевые есть!
                                                                  +9
                                                                  Я думал холивары начинаются и заканчиваются на ЛОРе… Странно видеть это здесь.
                                                                    0
                                                                    Хотя я часто слышал что теряли данные на UFS2, но у меня за всю жизнь с FreeBSD ни разу не было, тогда как на ext3/ext4 неоднократно.

                                                                    Единственной хорошей работающей достойной ФС в GNU/Linux я видел только XFS, творение начала 90-х SGI IRIX.

                                                                    я вот как раз терял данные на xfs, а с ext3/4 проблем не было.

                                                                      +1

                                                                      Я слышал, что xfs не умеет в сжатие (я сейчас про уменьшение виртуального диска у ВМ, например с 20 до 10гб — если xfs, то такой фокус не пройдет), расскажите теперь про zfs, а то я с *BSD на уровне "потыкать" сталкивался.

                                                                      +1

                                                                      Угу. На чем там по-умолчанию собирается pfSense? Два раза разбирался после обычного reset...

                                                                      +6
                                                                      Тем не менее почему-то разработчики суперкомпьютеров как правило выбирают GNU/Linux. Может они тупые, или есть какие-то другие причины? Насколько мне понаслышке известно, у FreeBSD еще большая проблема с драйверами, чем у Linux (возможно, не прав, только вот на сайтах производителей видеокарт, например, драйверы для Linux можно встретить, причем для разных дистрибутивов, а FreeBSD как-то не встречал). Возможно, FreeBSD — неплохой вариант для сервера, который достаточно один раз настроить и забыть, но в статье это не раскрыто. Думаю, что ставить ее себе на ноутбук не особо хорошая идея.
                                                                        –8

                                                                        Миллионы мух [не] ошибаются?

                                                                          +2
                                                                          А вы не задумывались о том, почему мухи как вид намного старее нас, и нас ещё переживут?
                                                                          +3
                                                                          на сайтах производителей видеокарт, например, драйверы для Linux можно встретить
                                                                          Способ распространения драйверов у винды сильно отличается от всех других ОС. Предоставьте, пожалуйста, ссылки на страницы на сайтах производителей видеокарт, где есть драйвера кроме как для винды.

                                                                          Драйвера для FreeBSD есть на сайте Nvidia. Раньше делали и для Solaris x86/x64, но уже вроде как прекратили для GeForce 1600-х (может, ещё появятся, но вряд ли).

                                                                          Вакансий с требованиями именно xBSD в РФ не нашёл, они перечисляются среди пожеланий — т.е. требуется «Linux, ну и до кучи еще и BSD».
                                                                          С поддержкой оборудования есть трудности — его список меньше, чем у Linux.
                                                                          С поддержкой новейшего оборудования — ещё сложнее.
                                                                          Драйвера FreeBSD обычно берёт у Linux.
                                                                          ZFS хороша, но для начала желательно что попроще. А этого в готовых сборках FreeBSD обычно нет, в отличие от Linux.
                                                                          У Linux есть больше преимущество — гораздо легче начать им пользоваться, чем xBSD. У Linux есть «преимущество лёгкого начала»: Linux можно поставить не особо разбираясь, и он начнёт работать. С FreeBSD всё труднее. А когда освоил Linux, заниматься xBSD уже не особо-то и нужно.
                                                                          FreeBSD — хорошая система, и местами выглядит лучше чем Linuix. Но пока что работать с ней и изучать её — тяжело, распространена она меньше. Знание FreeBSD навряд ли значительно повысит зарплату (в РФ и Украине. Для Netflix м.б. будет преимуществом).
                                                                          Т.ч. всё вот так — «не очень».
                                                                            +5
                                                                            Звучит так будто вы BSD никогда не пользовались, она значительно проще в администрировании и настройке нежели линукс, так же первой установке. Этому способствует bsdinstaller, псевдографическая утилита настройки, ей же можно и обновлять систему и тд, псевдографика есть так же при установке из портов, и широкий выбор удобных утилит для отладки и мониторинга, а так общая консистентность в расположении конфигов, логов и прочего. Всегда все конфиги установленных программ будут в /usr/local/etc//, системные в /etc и тд. В то время как интернет полнится запросами подобно «где конфиг %app_name% в линукс %dist_name%, где в зависимости от дистра, ментейнера или просто автора аппки он может где угодно лежать.
                                                                            Так же FreeBSD по-умолчанию идет с UFS — это как раз и есть „что попроще“. С поддержкой железа сейчас ситуация в принципе в паритете с линуксом, десктопное железо конечно пониже приоритет имеет. Но у меня Фря даже на малинке бегает бодро. В целом обьем знаний для работы с Линукс требуется больше, этому способствует большой зоопарк утилит, особенностей каждого дистра и пакетных менеджеров.
                                                                              –3
                                                                              Вы говорите так как будто зоопарк утилит и софта это плохо? Лично я считаю что чем больше возможностей сделать одну и туже задачу тем лучше. Или Вы склонны делать всё по шаблонам? и как китайские программисты которые выучили только один способ работы другому же практически не обучаемы? и тем более высших грех им думать о другом способе который может быть в разы быстрее, легче и удобнее?
                                                                                +4
                                                                                Это порождает фрагментацию, сам альтернативный софт — это хорошо, плохо когда в рамках по сути одной ОС в базе используются разные подходы, разные утилиты, разный синтаксис команд и прочее. База должна быть стандартизирована. Не стоит так же забывать про принцип KISS. Собственно поэтому существуют всякие POSIX и UNIX сертификации. И что плохого в шаблонах? Они экономят время позволяя не задумываться над базовыми операциями. Не думаю что это то место где нужен творческий подход.
                                                                                  –3
                                                                                  Если хотите что-то единое, используйте коммерческие ОС, типа Windows и Darwin/Mac OS, где народ без дополнительной копейки даже «пукать» не будет, не то что бы что-то иное либо новое реализовывать… И даже в рамках всей этой проприетарщины многие утилиты чистое гоумно и сторонними разработчиками за отдельную не маленькую такую копеечку разрабатываются утилиты которые предоставляют больший набор возможностей и при условии что Вы хотите а иногда и вынуждены их использовать нужно будет эту копеечку платить. А теперь по поводу KISS, это конечно хорошо, но что для одного «просто», для другого будет крайне сложно и это уже от человека зависит. Теперь по поводу того что же из себя представляет GNU/Linux — это такой крутой конструктор лего… из которого Вы можете сделать то что хотите используя те подходы которые Вам ближе а не какому-то дяде. Нет или не устраивает что-то в одном дистрибутиве, не проблема найдёте это в другом. Зачастую многие GNU/Linux даже специализируются на каких-то задачах, что нельзя сказать о других О.С.…

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

                                                                                  А теперь по поводу творческого подхода, он нужен везде, можно использовать стандартные базовые операции и тратить время к примеру на копирование вручную сотни каталогов, подкаталогов и файлов с разных устройств и мест, а можно подойти творчески засунуть всё в 1 список и выполнить за раз написанным скриптом ))))

                                                                                  так же можно развёртывать новые машины и настраивать их каждый раз ручками, а можно подойти творчески взять ансибл либо паппет и всё будет работать само…
                                                                                    +2
                                                                                    Я для десктопа и использую макось, и там как раз есть покрытие всего линукс софта и плюс коммерческого, все что есть на линь портируют на мак для удобства разработки, а утилиты тут BSD, макось же подтверждают юникс сертификацию и позикс и не надо ни за что платить ) только за коммерческий гуевый софт.

                                                                                    За линь же как раз эту фрагментацию дистрибутивов и критикуют. Это только на словах звучит так круто, большое обилие выбора и свободы, по факту это это сотни и тысячи дистрибутивов с минимальными отличиями в виде нескучных обоев с разной степенью стабильности как самой ОС так и своих реп и наличия софта в ней. А в этот конструктор совершенно не хочется лезть, хочется что б все просто работало, при этом выглядело не всрато, и требовало минимальных и понятных вмешательств для настройки, все остальное лежит в области хобби и энтузиазма. Либо если тебе очень хорошо платят за создание конкретной эмбед платформы, типо роутеров, прошивочки камер и прочего и время которое ты тратишь разбираясь в этом.
                                                                                      0

                                                                                      Насчёт фрагментации — полностью поддержу.
                                                                                      Просто задумайтесь сколько способов есть решить тривиальную задачу в линуксе, а именно настройку сети. Причем рассмотрите не только конкретный дистрибутив, а ситуацию в целом.

                                                                                        +1
                                                                                        Повторюсь ещё раз, вы смотрите со стороны того кому все и всё обязаны. GNU/Linux состоит из открытого софта разработчики которого предлагают свои решения ничего не требуя в замен того времени и тех усилий которые пришлось потратить на разработку этого софта. Вы же не довольные этим фактом, пользуетесь и плюетесь сравнивая его с проприетарным коммерческим софтом…

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

                                                                                        А по поводу многообразия утилит которым Вы так не довольны, да их много но время отсеивает большую часть и остаются только те которые действительно удобны народу. Если Вы считаете иначе это Ваше мнение как индивида из всего того сообщества которое использует их и далеко не факт что все должны думать и думают как Вы…
                                                                                          0
                                                                                          Нет, счего бы? Просто есть code of conduct, который держит проект на определенном уровне качества, если ты как разработчик не готов ему следовать и доводить свои решения до определенных стандартов принятых в проекте, каким бы полезным не был твой вклад — это будет медвежья услуга, неуважение к комьюнити и такой продукт даже не будет принят. Тем более когда есть аналоги. А если кто-то создал действительно уникальный полезный инструмент, то люди приведут его под стандарты проекта либо же напишут свой велосипед (привет Поттеринг).
                                                                                            0
                                                                                            1. Вы снова пытаетесь сравнивать дистрибутив и отдельных разработчиков которые ведут свой проект. Это тоже самое что сравнить Blender и к примеру Inkscape и говорить какой плохой дистрибутив они отличаются стилистически… и набором функционала…
                                                                                            2. Code of conduct — к сведению, привязан к одному конкретному проекту, не путайте. Да и это больше относится к поведению, нежели разработке и составу кода и качеству кода.
                                                                                              0
                                                                                              Разработчики ведут свой проект для какой-то целевой системы же, должны учитывать специфику и правила, а раз в Линуксе строгих правил нет это и порождает беспорядок.

                                                                                              Ну Фря и есть конкретный проект, это целостная ОС. Вообще в различных ОС приняты свои требования к ПО под нее. Как, например, в MacOS в любой программе комбинация CMD +, откроет окно настроек программы. Так же частенько вижу в консольных утилитах и софте определенные флаги с пометкой «добавленно для совместимости с POSIX».

                                                                                              За флаги, кстати, тоже раздражает, в одних программах --version выводит версию в по, в других внезапно только -v, в третьих это verbouse, а четвертые вообще выводят версию без "-" просто version. Это пример, такие претензии к -h help и прочим стандартным флагам, очевидно же было бы лучше будь они как-то стандартизированы.
                                                                                                0
                                                                                                CMD +,

                                                                                                Не с "Command ," перепутали? А, все, понял, неудачное форматирование было )

                                                                                                  0
                                                                                                  Разработчики ведут свой проект для какой-то целевой системы же

                                                                                                  Вы сильно ошибаетесь. Ещё раз Вы путаете всё и вся. Не нужно писать об этом если Вы в этом ничего не понимаете. Как разработчик говорю.

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

                                                                                                  В общем я ещё раз убеждаюсь в вашей не компетенции в этих вопросах. разработкой нужно заниматься что бы понимать о чём речь. Консольные утилиты и набор команд для них а тем более обработчик их может сильно зависеть от выполняемых ими функционала.
                                                                                    0
                                                                                    Именно. «Если ты читаешь книгу по FreeBSD, ты читаешь книгу по FreeBSD. Если ты читаешь книгу по Linux, ты читаешь книгу по конкретному дистрибутиву Linux.» ©
                                                                                      +1
                                                                                      > BSD никогда не пользовались, она значительно проще в администрировании и настройке нежели линукс, так же первой установке.

                                                                                      Вот сейчас решил проверить, при том, что до 2008 этих самых FreeBSD поставил несколько десятков штук и основные воспоминания сохранились. Ставлю по сети с bootonly образа.
                                                                                      Задал дохлое зеркало: минут 10 попыток достучаться и перешло в режим, что на клавиши не реагировало. Пришлось перезагружать.
                                                                                      Манера диалогов, что пробел меняет настройку, а Enter применяет весь диалог — нигде не описана на экране (что мешало дать подсказку?)
                                                                                      Куча вопросов типа «а включать ли ntpd?» Почему вообще спрашивают, что, точное время обычно локально не нужно?
                                                                                      В диалоге добавления юзера: «Invite vasya into other groups? []» — как догадаться с первого раза, что тут нужно не «yes», а список групп?
                                                                                      Пошёл в postinstall настройку интерфейсов — спрашивает, вам DHCP там нужен? На моё Yes говорил — не шмогла. Ещё бы, dhclient уже запущен, а она этого не помнит.
                                                                                      А почему не было пункта добавить софта (может, я хочу KDE сразу поставить?)
                                                                                      Что-то многовато получилось жалоб даже от опытного пользователя и админа. А новичку как?

                                                                                      > Всегда все конфиги установленных программ будут в /usr/local/etc//, системные в /etc и тд. В то время как интернет полнится запросами подобно «где конфиг %app_name% в линукс %dist_name%, где в зависимости от дистра, ментейнера или просто автора аппки он может где угодно лежать.

                                                                                      Во-первых, это очень дурная манера использовать /usr/local для пакетного хозяйства. Не зря в NetBSD поместили это в /usr/pkg.
                                                                                      Во-вторых, проблемы линукса от стиля управления или от принципов типа «называть по сервису или по продукту» (отсюда различие типа /etc/httpd vs. /etc/apache2), а во FreeBSD получается, например, пока BIND был в базе — есть /etc/named, а потом вдруг /usr/local/etc/named, причём там только первый конфиг, продолжение из-за jail где-то глубоко в /var/named…

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

                                                                                      Зато если остановиться на одном конкретном — то возможностей больше и реализуются они обычно с меньшей пляской с бубном.
                                                                                      Исключения — всё те же netgraph и GEOM — сейчас это два основных кита, на которых FreeBSD ещё хоть как-то держится на плаву. Ну ещё ZFS немного помогает. Linux сильно шире в количестве ниш и между ними всеми перетекают новые разработки.
                                                                                        0
                                                                                        Честно говоря больше на придирки похоже. Дохлое зеркало не вина FreeBSD, по-умолчанию там толи эникастом толи роутером выдается оптимальное корневое зеркало и есть так же зеркала 2го эшелона работоспособность которых никто не гарантирует, но они могут висеть на сайте.
                                                                                        NTPd нужен далеко не всегда естественно, это в хендбуке описано кстати:
                                                                                        25.10.3.1 Если вам нужно только синхронизировать ваши часы при загрузке машины, вы можете воспользоваться утилитой ntpdate(8). Это может подойти для некоторых настольных машин, которые часто перезагружаются и только требуют изредка синхронизироваться, но на большинстве машин должен работать ntpd(8).

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

                                                                                        Почему манера использовать /usr/local дурная? Вообще именование каталогов, точек монтирования в unix исторически довольно малосвязная и забавная тема, просто FreeBSD использует одну из ранних вариаций, не думаю что она чем-то хуже или лучше любой другой, мне лично скорее нравится отсутствие лишних сущностей в виде /opt /pkg и тд и этот подход, опять же лично мне, кажется вполне логичным.

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

                                                                                        > Зато если остановиться на одном конкретном…
                                                                                        А вот проблема в том что приходится использовать то что там уже есть, а предидущий интегратор мог развернуть тот дистр что он больше знает или по каким-то своим убеждением, холивары там между дистрами идут еще горячее, хоть казалось бы. Это и имелось мной в виду.
                                                                                          +1
                                                                                          > Честно говоря больше на придирки похоже. Дохлое зеркало не вина FreeBSD,

                                                                                          А вот то, что на опознание проблемы потребовалось ему 10 минут, за это время нельзя было нажать отмену, и после этого на клавиши перестало реагировать — вот это полностью вина FreeBSD, точнее, авторов кривого инсталлятора. Странно вы читаете, если это проигнорировали.

                                                                                          > там толи эникастом толи роутером выдается оптимальное корневое зеркало

                                                                                          Но оно же может быть недоступным по сетевым причинам.

                                                                                          > NTPd нужен далеко не всегда естественно, это в хендбуке описано кстати:

                                                                                          Даже для выключаемого десктопа мягкая корректировка темпа хода полезнее, чем прыжки. В плане управления временем тут у FreeBSD отсталость лет на 15.

                                                                                          > Почему манера использовать /usr/local дурная?

                                                                                          Потому что /usr/local — типовое умолчание для autotools и аналогов для ручной сборки. Поставленное таким образом плохо отделяется от установленного из портов и может с ним подраться.

                                                                                          > В диалоге добавления юзера квадратные скобки намекают на то что там пусто и предлагается что-то добавить,

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

                                                                                          Этот инсталлятор, на самом деле, всегда затачивается под то, что он будет идти с инструкцией (в Handbook, в браузере чего-то соседнего или вообще в бумажном виде). Но типовой современный юзер никогда эту handbook не читает (и игнорирует её существование, если не наступил уже на эти грабли). Инсталляторы типа RHEL ещё предполагают, что установщик что-то читает кроме того, что пишет сам инсталлятор, но Ubuntu — уже нет.

                                                                                          > А вот проблема в том что приходится использовать то что там уже есть,

                                                                                          Да, это факт. Ты набил руку на Debian, приходишь — а там SLES. «Дык опаньки, братуха» (tm)
                                                                                            –2

                                                                                            В убунтовском инсталляторе проблемы похлеще есть. Например, у меня последний инсталлятор серверной убунты тупо завис, когда сетевуха была не подключена к сети. Лол што. Реальные проблемы с разбивкой диска — то ту разметку, которую тебе надо, через инсталлятор не применить, то что-то ещё. Вообще все эти претензии к инсталлятора фрибсд смешны… Поверьте — у остальных линуксов они (инсталлятора) не лучше.

                                                                                              0
                                                                                              > В убунтовском инсталляторе проблемы похлеще есть.

                                                                                              Ну я, конечно, последние K лет записной кедорас, но проблемы инсталлятора собственно Ubuntu мне неинтересны, а в Kubuntu я таких эффектов не видел.
                                                                                              И тупых зависов не было, и разметка получалась.
                                                                                              Ставил также центось — стиль совсем другой, но тоже прилично. Может, если бы захотел суперстранного, то получил бы по рукам, но фрёвый в принципе такого не умеет.

                                                                                              Всё-таки само по себе участие большего количества пользователей обеспечивает, в среднем по больнице, лучшее качество просто за счёт обратной связи.

                                                                                              > Поверьте — у остальных линуксов они (инсталлятора) не лучше.

                                                                                              Вот я таки испытал обе стороны и делаю другой вывод — что как для рядового пользователя линуксовые таки лучше.

                                                                                              Когда я фряхи ставил потоком, там уже все чудеса были отработаны, рука набита… но там и результаты часто требовались нестандартные. И таки это были pets, а не cattle.
                                                                                        0
                                                                                        А как ты Фряху на малинку накатил?
                                                                                        Сам образ наваял?
                                                                                        Или есть готовые на сайте малинки?
                                                                                      0
                                                                                      Драйвера FreeBSD обычно берёт у Linux.

                                                                                      Что, простите? Им лицензия какбэ не позволяет. Так что не берут. Кроме графических, которые под MIT лицензией.
                                                                                      У Linux есть больше преимущество — гораздо легче начать им пользоваться, чем xBSD.

                                                                                      Вообще неправда. Наоборот. Если, конечно, вы не имеете в виду «скачать образ, не читая ничего».

                                                                                      Так-то поддерживается меньшее количество железа, да.
                                                                                      А вот «выглядит лучше, чем Linux» субъективно везде.
                                                                                        +1
                                                                                        Ну графические, под нвидиа например, нативные под фрю и даже в пакетах лежат. И они кстати содержат два набора файликов: нативно под ядро фри и линуксовые под эмулятор линя. Недавно поднимал нас и медиацентр под Фрей, на Коди. Вобщем-то довольно безпроблемно завелось все с карточной нвидиа.
                                                                                          +2
                                                                                          У Nvidia есть официальный проприетарный драйвер под фрю, да. Свободные портируются с linuxkpi, и они староваты(linux 4.4, если не ошибаюсь), конечно, но работают.
                                                                                          0
                                                                                          Что, простите? Им лицензия какбэ не позволяет. Так что не берут. Кроме графических, которые под MIT лицензией.
                                                                                          Пойдите и почитайте что и как и берётся у Linux
                                                                                            –1
                                                                                            Дадите ссылку с пруфами? (риторический вопрос, не дадите)
                                                                                              0
                                                                                              Неужели вы не умеете пользоваться гуглом? и Мне нужно тыкать пальцем как маленькому ребёнку? и даже забить запрос в гугл и щёлкнуть по первой же ссылке сложно? wiki.freebsd.org/Graphics… Ах да, Многим же сейчас это делать сложно… так как лапки…
                                                                                                +1
                                                                                                Мой комментарий:
                                                                                                «Так что не берут. Кроме графических, которые под MIT лицензией.»
                                                                                                Когда научитесь читать, можете использовать этот тон.
                                                                                                  +1
                                                                                                  Как это отменят тот факт что они берут драйвера у GNU/Linux? речь шла про это. Я в своё время на стаксоверфлоу видел кучу описаний по портации линуксовых драйвров PCiE на фряху, не спорю особо не вчитывался в то под какой лицензией драйвера были, но всё же…
                                                                                        0
                                                                                        Nvidia прямо с сайта предлагает дрова для: GeForce, RTX, Titan
                                                                                          0
                                                                                          Дык у него как были так и остались проблемы с драйверами, при мне извечный фряхолюб на 11 фряхе решил доказать что она быстра и работает везде… решил поставить себе на корпоративный ПК фряху 11, да не получилось оказалось нет драйвера под чипсет и следовательно не виделись винты… А так многие драйвера фряхи по прежнему тянут с GNU/Linux. Как я ниже писал и это ещё одно доказательство технологической отсталости GNU/Linux…
                                                                                            –1
                                                                                            А так многие драйвера фряхи по прежнему тянут с GNU/Linux.

                                                                                            Что? Этого нет и никогда не было, потому что лицензии.
                                                                                              0
                                                                                              Никогда не сталкивался с тем, чтобы фряха не узрела такую базовую переферию, как винты. Я там понимаю ещё, когда она не видит какие-нибудь там принтеры или (как это бывало нередко лет 20 назад) не может нормально включить графику в иксах — эти штуки серверной операционке и даром не нужны. Но не видеть винты… — это очень странно.
                                                                                                +1

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

                                                                                                  +1
                                                                                                  Я еще напомню, что новые контроллеры без встроенных драйверов не видятся не только во фре, пресловутые винды этим страдали не в меньшей степени. Вспомните ХР + SATA в enhanced mode, если нет дискетки с драйвером (или не вживить драйвер в дистрибутив руками).
                                                                                                    0
                                                                                                    В винде это было в 2000х годы, а во фряхе с этим я столкнулся 2 года назад.
                                                                                                      0
                                                                                                      На семерке я с этим сталкивался лет пять назад: деталей не помню, да и не в них суть: я все это писал к тому, что «винты» — это вовсе не настолько «базовая периферия».
                                                                                                      А что полшага в сторону от совсем массовых систем, и проблема с драйверами встает в полный рост, так по-моему, этим вряд ли кого здесь можно удивить. Имхо, конечно.
                                                                                                        0
                                                                                                        Тут не проблема в винте а проблема в контроллере а он и есть базовая периферия, не путайте, ставили разные винты.
                                                                                                          +1
                                                                                                          Да, приношу извинения.
                                                                                                          Винт подключается к контроллеру жестких дисков, и драйвера нужны именно для этого контроллера (при этом еще один контроллер расположен непосредственно на винте).
                                                                                                          Свойство базовости периферии не кодифицировано, о его значении и объеме можно спорить, но необходимости драйверов ни один спор не отменит.
                                                                                                0
                                                                                                Это говорит лишь о том что линукс это попсовая система для позеров
                                                                                                  +1
                                                                                                  Тут товарищ просто забыл написать, что во FreeBSD все довольно плохо, с масштабированием на большие машины с большим количеством процессоров и памяти. Как сейчас там не знаю, но вот несколько лет назад FreeBSD показывала производительность хуже на машинах с больше чем 16 процессорными ядрами. Тест был насколько помню на использование PostgreSQL и MySQL. Причем мотивация людей со стороны FreeBSD была такова, что товарищи не делают специфичные для FreeBSD оптимизации.
                                                                                                    0
                                                                                                    > Причем мотивация людей со стороны FreeBSD была такова, что товарищи не делают специфичные для FreeBSD оптимизации.

                                                                                                    А что удивительного? Если делается явная оптимизация под Linux, но не FreeBSD, и получатся результаты с явным перекосом.

                                                                                                    Так уже было с таймером. В Linux было очень дешёвое, хоть и неточное, gettimeofday() (это ещё до варианта с user space, забыл его название), и MySQL очень активно его использовал (вызывая во много раз чаще, чем надо — в strace можно было видеть просто сотни вызовов подряд в одной нитке). Аналог FreeBSD был дорогой, потому что лез к аппаратному таймеру. В результате производительность страдала заметно, а на бенчмарках — просто чудовищно.
                                                                                                    Пришлось сделать специальный удешевлённый вызов (clock_gettime с CLOCK_REALTIME_FAST) и подставлять его в свою сборку через патч порта. Цифры выправились, и об этом гордо отрапортовали, с объяснением причин.

                                                                                                    Аналогично было в некоторых других проектах с kqueue — epoll сделан, а остальным — раз не умеете, довольствуйтесь медленным poll или вообще select. И пришлось самим патчить в порте.

                                                                                                    Соотношение сил и намерений разработки под Linux vs. FreeBSD напоминает сейчас такое же для Windows vs. Linux ещё совсем недавно: есть типа одна большая целевая ОС, всё делаем под неё, там реальные потребители. Уже второй по счёту получает объедки, третий не получает ничего. И эта история точно так же продолжается дальше — на OpenBSD ещё на порядок меньше сил, чем на FreeBSD (хотя тут помогает, что все проекты BSD группы очень активно друг у друга тянут код).
                                                                                                      0
                                                                                                      Ну дак, а еще усилия по нормальной работе ОС на больших машинах так же пилятся в Linux в первую очередь как в целевой платформе. Больше ресурсов больше выхлоп.
                                                                                                        0
                                                                                                        «Но и это ещё не всё».

                                                                                                        1. FreeBSD предпочитает LLVM Clang, с которым производительность была существенно меньше, чем с gcc. Сейчас почти сравнялись, но «в среднем» всё же FreeBSD+clang немного медленнее, чем FreeBSD+gcc (зависит от задачи).

                                                                                                        2. После трёх лет (!!!) обсуждения всё-таки включили поддержку OpenMP во FreeBSD:
                                                                                                        начало
                                                                                                        конец
                                                                                                        Не включали потому что «нам в базе не надо, а на остальных пох», при этом ныли «а чё на Форониксе такие циферки маленькие?...». А надо не ныть, не жить прошлым, а внедрять новые фичи, которых просят люди.

                                                                                                        На многопоточных нагрузках FreeBSD может быть лучше, чем Linux (и тем паче — Windows) в силу унаследования опыта UNIX. (когда я на хабре говорил, что Linux ≠ UNIX мне заминусовали карму + ответ). Опять же щас Linux и FreeBSD сравнялись.
                                                                                                          0
                                                                                                          > когда я на хабре говорил, что Linux ≠ UNIX мне заминусовали карму + ответ

                                                                                                          Ну ответ я бы тоже поминусовал (в карму не полезу из принципа даже когда/если будут права) — различия между разными вроде бы Unix (Bell, BSD, SysV, OSF...) настолько велики, что надо или называть Unix только то, что происходит без потерь от SVR4 и OSF/1, или надо расширять понятие, и тогда, если мы включаем туда BSD системы, то включать и Linux. То, что Linux был испечён с нуля, имело значение первые лет 5 его существования, но сейчас уже всё это давно потерялось.

                                                                                                          > На многопоточных нагрузках FreeBSD может быть лучше, чем Linux (и тем паче — Windows) в силу унаследования опыта UNIX.

                                                                                                          Никакого «унаследованного опыта Unix» у FreeBSD нет. Реальная многонитевость во FreeBSD появилась только в 5.x, и то она была очень кривой — авторы не смогли реализовать наполеоновские планы на M:N модель через scheduler activations. Уже в 6.x вариант 1:1 стал основным, в 7.x — единственным. Код поддержки этого всего свой (ну, в пределах копирований внутри BSD сообщества). Linux на тот момент имел уже NPTL. Накладные расходы на смену контекста и на сисколл у FreeBSD всегда были и сейчас есть чуть выше. Многопроцессорность ядра тоже очень долго выравнивали (чисто скользящую сериализацию 5.x во многом убили и сейчас она заметно ближе к линуксовой). Если в каком-то случае получается тут выигрыш, то за счёт других факторов.

                                                                                                          > FreeBSD предпочитает LLVM Clang, с которым производительность была существенно меньше, чем с gcc.

                                                                                                          Тут как раз разница очень неровная. Иногда clang выигрывает. Более того, на том же phoronix есть примеры, где gcc7 резко ухудшил часть тестов.
                                                                                                          Но для основного кода FreeBSD это всё несущественно. Часть портов явно имеет инструкцию использовать GCC — там, где есть проблемы с Clang, не только с производительностью.

                                                                                                          Про OpenMP в ней я совсем не знаю, надо будет как-нибудь почитать.
                                                                                                            0
                                                                                                            Я бы не был так уж уверен, современные суперкомпьютеры живут под управлением GNU/Linux так как другие не особо то справлялись с таким огромным количеством ядер. Где-то одно время даже читал тесты которые показали что лучше GNU/Linux не найти было, обосновывалась на примере расчётов многопоточных для сборки с 512 ядрами. Вполне возможно что уже что-то поменялось с тех пор, однако я не вижу движухи в сторону фряхи с той стороны…

                                                                                                            Вообще суть сравнения ХЗ/BSD (потому что понатаскали от всего и вся) vs GNU/Linux, знаю что у обе системы можно спокойно уместить в мизер ОЗУ для линухи последних версий это порядка 4х МБ и 16мб на ПЗУ. Да уже и не в том возрасте что бы мериться у кого длинней и толще… работать надо, да и дома десктом уже давно без дуалбутов и всё работает на Debian Sarge GNU/Linux… в своё время перепробовал всё, убунты, федоракоры, мандрейки, редхаты и т.п. остался на дебе так как оптимальное соотношение цены / качества.
                                                                                                      +4

                                                                                                      Ох, lets lorcombat begin!
                                                                                                      Для меня Эдуард Шишкин является примером специалистом, который продолжает развивать свою тему наперекор всем, включая Линуса Allmightly.

                                                                                                        –3

                                                                                                        Фря в качестве датаьейз сервера просто унылое говно — скорости нет. Это единственное место где у меня не фря, все остальное инфраструктурное только на фре, если я выбираю.
                                                                                                        А так вообще пофигу что настраивать

                                                                                                          +1
                                                                                                          А в чем именно скорости нет? Во что упирается?
                                                                                                          +1
                                                                                                          Так. А Солярис?
                                                                                                            +5
                                                                                                            Пилили её дико крутые люди, дико крутые технологии зародились именно на ней, вообще прогресс она двигала ещё как (ну, не она, а Sun Microsystems в целом), но… она не является свободным ПО, так что тут уж лучше даже GNU/Linux :-(
                                                                                                              +1
                                                                                                              RIP. Развитие закрыто, все новые системы на Oracle Linux. Выпускаются только обновления и security fix.
                                                                                                              +8
                                                                                                              Лучше срачей *Nix vs Windows, только срачики Linux vs FreeBSD
                                                                                                                +23
                                                                                                                image
                                                                                                                  –23
                                                                                                                  Была бы карма, я бы лайкнул)
                                                                                                                +8
                                                                                                                помню в 90-х некоторые очень жаловались на виддовс и хвалили «правильную» os/2. где теперь та os/2?
                                                                                                                примерно то же самое с freebsd, сколько на ней сетапов в top500, например?
                                                                                                                конечно же все эти люди из top500 на linux те еще мухи, кушающие то, что на земле лежит :))
                                                                                                                  +6

                                                                                                                  Я и сейчас готов хвалить OS/2.
                                                                                                                  Для того времени это был очень серьёзный шаг вперёд, намного более стабильный и удобный.
                                                                                                                  Но сейчас "оспополам" это просто часть истории.


                                                                                                                  Где-то в 2000х я активно использовал FreeBSD и для работы с сетью она объективно была сильно круче Linux'а (всё портил разве что NAT в userspace'е, но и это в итоге починили). Я и сейчас готов утверждать, что тогда для многих серверных задач она была лучше. А уж jail был (на фоне имевшегося chroot в линуксе) просто великолепен.
                                                                                                                  Но сейчас лично для меня FreeBSD — часть истории.


                                                                                                                  Приятно осознавать, что в отличии от OS/2 она всё ещё жива, но не более того.

                                                                                                                    0
                                                                                                                    Да и OS/2 вполне себе жива, в виде ArcaOS…
                                                                                                                      0
                                                                                                                      Полуось часто вижу на IBM-овских кассовых терминалах в супермаркетах, те что моноблоки с экранами и тд.
                                                                                                                        0
                                                                                                                        Пока IBM исходники не откроет, скорее мертва. А она их не откроет, ибо там не только их интеллектуальная собственность.
                                                                                                                      +1

                                                                                                                      В конце нулевых — начале 10-х фряха была очень популярна как серверная ось. Как-раз, по причинам, описанным автором статьи. В последнее время, как я вижу, для серверов выбирают centOS, Debian и Ubuntu. Почему фряха обосралась — сложно сказать. Насколько помню, в десятых годах активно находили уязвимости в ntp, openssl и проч. И фряха оказывалась крайне небезопасной при том, что обновление проблемных утилит в ней вызывало проблемы. Плюс, получили распространение лёгкие дистрибутивы типа CentOS. Их развёртывание и обслуживание было легче, чем развёртывание и обслуживание фряхи. А без популярности на серверах фряха, по сути, нафиг не нужна и её смерть — вопрос времени.

                                                                                                                        0
                                                                                                                        В определенный момент в linux все стало сильно лучше с драйверами и производительностью. Плюс с коммерческой поддержкой как итог интерпрайз голосовал рублем и переходил с коммерческих *nix на linux с коммерческой поддержкой.
                                                                                                                      +10

                                                                                                                      Не знаком с BSD, но мне кажется или у вас аргумент про 3 фаервола противоречит аргументу про отсутствие "зоопарка" утилит для одних и тех-же задач?

                                                                                                                        0
                                                                                                                        Их не обязательно все использовать одновременно, в отличие от того зоопарка. Точнее, никто и не использует обычно. Просто выбор.
                                                                                                                        0

                                                                                                                        Еще и DPDK на BSD не работает

                                                                                                                          +1
                                                                                                                          Работает. Есть и статьи с этим опытом и даже просто на Wikipedia указывается поддержка FreeBSD и Linux. Про другие BSD не в курсе.
                                                                                                                            0

                                                                                                                            Справедливости ради — netmap появился на FreeBSD.

                                                                                                                              +1
                                                                                                                              Ну он и появился от автора ipfw. Вот только его идеи не пошли дальше в штатный сетевой стек. В итоге стек Linux на ядрах 3.12 и 4.5 резко прогрессировал, а FreeBSD так и утилизируется на 100% при 100kpps syn-флуда.
                                                                                                                            0

                                                                                                                            Легкий наброс, bsd конечно ок, но сообщество в разы кислотнее, нежeли linux


                                                                                                                            ps: десктоп клиента для телеги даже на gtk так и не изобрели, запускают linux клиент в эмуляторе… это все, что нужно знать о будущем

                                                                                                                              +1
                                                                                                                              Что? Официальный клиент как бы открытый, соответственно нативный с небольшим отставанием версий(и если так уж хочется свежий, можно руками собрать или из свежих портов).
                                                                                                                              +5
                                                                                                                              bpftraсe автору не знаком, ну ок.
                                                                                                                              По наблюдениям — BSD заводится там, где сошлись звезды и несколько BSD-шников. Так оно в NetFlix, примерно так — в Juniper (там вообще дикая смесь под капотом).
                                                                                                                                +4

                                                                                                                                Juniper переходит на Linux. Junos Evolved называется.

                                                                                                                                +3
                                                                                                                                Холивар знатный конечно же. Весело. :) Давайте вспомним ещё, что PlayStation тоже на FreeBSD работает. Адепты фряхи ещё вспоминают давнишнюю историю с MacOS.
                                                                                                                                Если серьёзно, то шлюзы безопасности на всех предприятиях, где я работал или фрилансил, я всегда поднимал и настраивал на FreeBSD. PF — отличный пакетный фильтр.
                                                                                                                                  +1
                                                                                                                                  Адепты фряхи ещё вспоминают давнишнюю историю с MacOS.

                                                                                                                                  Apple как сосал, так и сосёт код из FreeBSD в свои OS. И в ядро тоже. Только особенно по теме не распостраняется. Информация об этом выдаётся только вскользь, как это было, к примеру, при обнаружении Meltdown / Spectre.

                                                                                                                                    +1

                                                                                                                                    А еще они роутеры делали на NetBSD когда-то давно :-)

                                                                                                                                      +3
                                                                                                                                      github.com/apple/darwin-xnu явно написано что там есть компоненты FreeBSD, но архитектура все же сильно отличается
                                                                                                                                      0
                                                                                                                                      А ещё есть чудесные pfSense/OPNSense.
                                                                                                                                      0

                                                                                                                                      Это всё просто замечательно, но как там во фре с играми? :D

                                                                                                                                        +3

                                                                                                                                        Плэйсэйшон же

                                                                                                                                          +2
                                                                                                                                          Очень плохо. Даже в NetBSD есть games.tar.xz, а во Free ничего нет :D
                                                                                                                                              0
                                                                                                                                              Wine есть(обычный, из портов можно собрать с -staging и dxvk, например), старые линуксовые работают, свободные нативно.
                                                                                                                                                0
                                                                                                                                                Не знаю насчет FreeBSD, но в OpenBSD c играми не так уж и плохо.
                                                                                                                                                www.reddit.com/r/openbsd_gaming
                                                                                                                                                +4
                                                                                                                                                BSD это целостные законченные ОС, разрабатывающиеся как единое целое.

                                                                                                                                                А DE и программы входящие в KDE, Gnome, XFCE тоже сами делают?
                                                                                                                                                Качество ПО BSD систем значительно лучше.

                                                                                                                                                И по этому используют портированные программы?
                                                                                                                                                  +3
                                                                                                                                                  А DE и программы KDE, Gnome, XFCE тоже сами делают?

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

                                                                                                                                                    +1
                                                                                                                                                    На правах шутки:
                                                                                                                                                    они нужны только для

                                                                                                                                                    Да. Всего лишь для большинства компьютеров)))
                                                                                                                                                      0
                                                                                                                                                      В компании, в которой я работаю, соотношение один к одному. На один декстоп или тонкий клиент приходится один сервер.
                                                                                                                                                    0
                                                                                                                                                    А DE и программы входящие в KDE, Gnome, XFCE тоже сами делают?

                                                                                                                                                    Они относятся к FreeBSD так же, как к Linux(ну, конечно, с поправкой на популярность). При сравнении между двумя Unix-подобными системами класть весь общий софт для таких систем на одну чашу весов как-то странно.
                                                                                                                                                    +4
                                                                                                                                                    Сейчас все в контейнерах. Без поддержки докера (каким бы он не был плохим) и его стека — я не могу использовать эту ОС.

                                                                                                                                                    Даже винда это поняла и начала пились WSL.

                                                                                                                                                    Более того я еще недавно работал в проекте распределенной ФС для HPC. Даже в этом случае нужна поддержка докера для дисковых полок.

                                                                                                                                                    Таким образом фря работает только в одном классе сценариев — когда нужна функционально прошивка, вместо ОС. И рано или поздно RTOSы допилят до уровня, когда они вытеснят фляху из этого класса.
                                                                                                                                                      +2

                                                                                                                                                      А зачем Вам контейнеры, какая задача, что дают?