• Как обновить систему на current?

    From Eugene V. Boontseff@2:5020/400 to All on Sun Jun 1 11:32:18 2025
    From: "Eugene V. Boontseff" <eugene@home.wdc.spb.ru>


    Hello, All!

    У меня была виртуалка с freebsd 13.0, на которой делался свой
    репозиторий пактов с помощью poudriere для разных версий freebsd.
    Потом она была заброшена, но теперь понадобилось реанимировать.
    Решил установить максимально возможную версии оп. системы, т.е. 15 на
    данный момент. чтобы иметь репозитории для всех систем.
    Hо удалось с помощью freebsd-update апгрейдиться только до весрии 14.2

    Попытавшись поднять версию до 15 получаю:

    Fetching metadata signature for 15-CURRENT from update1.freebsd.org...
    failed.
    Fetching metadata signature for 15-CURRENT from update2.freebsd.org...
    failed.
    Fetching metadata signature for 15-CURRENT from dualstack.aws.update.freebsd.org... failed.
    No mirrors remaining, giving up.

    То же самое, если пытаться поднять версию до 14.3. пробовал указывать -r 14.3-RELEASE, 14.3-STABLE, 14-STABLE.

    Тогда решил из исходниоков. Скачаливал исходники stable/14 и main,
    но buildworld заканчивается почти сразу же одинаковой ошибкой и там и там:


    In file included from /usr/src/contrib/llvm-project/llvm/lib/Demangle/ItaniumDemangle.cpp:13:
    In file included from /usr/src/contrib/llvm-project/llvm/include/llvm/Demangle/Demangle.h:13:
    In file included from /usr/include/c++/v1/optional:1294:
    In file included from /usr/include/c++/v1/memory:937:
    In file included from /usr/include/c++/v1/__memory/ranges_uninitialized_algorithms.h:22:
    In file included from /usr/include/c++/v1/__memory/uninitialized_algorithms.h:13:
    In file included from /usr/include/c++/v1/__algorithm/copy.h:12: /usr/include/c++/v1/__algorithm/copy_move_common.h:18:10: fatal error: '__string/constexpr_c_functions.h' file not found
    18 | #include <__string/constexpr_c_functions.h>
    | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    1 error generated.
    *** Error code 1

    Stop.
    make[3]: stopped in /usr/src/lib/clang/libllvmminimal
    *** Error code 1

    Извините, может я банально что-то забыл про freebsd, и мои действия неправильны, но вопрос:

    Как мне имея freebsd 14.2 одновить ее до версии 15 или 14.3

    --
    Eugene
    --- ifmail v.2.15dev5.4
    * Origin: Demos online service (2:5020/400)
  • From Eugene V. Boontseff@2:5020/400 to Eugene V. Boontseff on Sun Jun 1 16:37:54 2025
    From: "Eugene V. Boontseff" <eugene@home.wdc.spb.ru>



    On 01.06.2025 11:32, Eugene V. Boontseff wrote:

    Hello, All!

    У меня была виртуалка с freebsd 13.0, на которой делался свой
    репозиторий пактов с помощью poudriere для разных версий freebsd.
    Потом она была заброшена, но теперь понадобилось реанимировать.
    Решил установить максимально возможную версии оп. системы, т.е. 15 на
    данный момент. чтобы иметь репозитории для всех систем.
    Hо удалось с помощью freebsd-update апгрейдиться только до весрии 14.2

    Попытавшись поднять версию до 15 получаю:

    Fetching metadata signature for 15-CURRENT from update1.freebsd.org... failed.
    Fetching metadata signature for 15-CURRENT from update2.freebsd.org... failed.
    Fetching metadata signature for 15-CURRENT from dualstack.aws.update.freebsd.org... failed.
    No mirrors remaining, giving up.

    То же самое, если пытаться поднять версию до 14.3. пробовал указывать -r 14.3-RELEASE, 14.3-STABLE, 14-STABLE.

    Тогда решил из исходниоков. Скачаливал исходники stable/14 и main,
    но buildworld заканчивается почти сразу же одинаковой ошибкой и там и там:


    In file included from /usr/src/contrib/llvm-project/llvm/lib/Demangle/ItaniumDemangle.cpp:13:
    In file included from /usr/src/contrib/llvm-project/llvm/include/llvm/Demangle/Demangle.h:13:
    In file included from /usr/include/c++/v1/optional:1294:
    In file included from /usr/include/c++/v1/memory:937:
    In file included from /usr/include/c++/v1/__memory/ranges_uninitialized_algorithms.h:22:
    In file included from /usr/include/c++/v1/__memory/uninitialized_algorithms.h:13:
    In file included from /usr/include/c++/v1/__algorithm/copy.h:12: /usr/include/c++/v1/__algorithm/copy_move_common.h:18:10: fatal error: '__string/constexpr_c_functions.h' file not found
       18 | #include <__string/constexpr_c_functions.h>
          |          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    1 error generated.
    *** Error code 1

    Stop.
    make[3]: stopped in /usr/src/lib/clang/libllvmminimal
    *** Error code 1

    Извините, может я банально что-то забыл про freebsd, и мои действия неправильны, но вопрос:

    Как мне имея freebsd 14.2 одновить ее до версии 15 или 14.3

    От ошибки при компиляции удалось избавиться, скачав тарбол base и
    переписав от туда /usr/include/.
    Пока buildworld идёт нормально)



    --
    Eugene
    --- ifmail v.2.15dev5.4
    * Origin: Demos online service (2:5020/400)
  • From Eugene Grosbein@2:5006/1 to Eugene V. Boontseff on Thu Jun 5 07:25:11 2025
    01 июня 2025, воскресенье, в 11:32 NOVT, Eugene V. Boontseff написал(а):

    У меня была виртуалка с freebsd 13.0, на которой делался свой репозиторий пактов с помощью poudriere для разных версий freebsd.
    Потом она была заброшена, но теперь понадобилось реанимировать.
    Решил установить максимально возможную версии оп. системы, т.е. 15 на данный момент. чтобы иметь репозитории для всех систем.
    Hо удалось с помощью freebsd-update апгрейдиться только до весрии 14.2 Попытавшись поднять версию до 15 получаю:

    Fetching metadata signature for 15-CURRENT from update1.freebsd.org... failed.

    Бинарных обновлений для CURRENT не выпускается.

    Тогда решил из исходниоков. Скачаливал исходники stable/14 и main,
    но buildworld заканчивается почти сразу же одинаковой ошибкой и там и там:
    In file included from /usr/src/contrib/llvm-project/llvm/lib/Demangle/ItaniumDemangle.cpp:13: In file included from /usr/src/contrib/llvm-project/llvm/include/llvm/Demangle/Demangle.h:13: In file included from /usr/include/c++/v1/optional:1294:
    In file included from /usr/include/c++/v1/memory:937:
    In file included from /usr/include/c++/v1/__memory/ranges_uninitialized_algorithms.h:22:
    In file included from /usr/include/c++/v1/__memory/uninitialized_algorithms.h:13:
    In file included from /usr/include/c++/v1/__algorithm/copy.h:12: /usr/include/c++/v1/__algorithm/copy_move_common.h:18:10: fatal error: '__string/constexpr_c_functions.h' file not found
    18 | #include <__string/constexpr_c_functions.h>
    | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    1 error generated.
    *** Error code 1

    Испорченный /usr/src, но ты уже нашел правильное решение - взять
    чистое дерево.

    Как мне имея freebsd 14.2 одновить ее до версии 15 или 14.3

    До 15-CURRENT только исходниками. До 14.3-RELEASE когда выйдет релиз,
    он ещё не вышел, по плану будет 30 июня этого года. Можно обновиться
    бинарно до 14.3-RC1 (первый релиз-кандидат), с него потом можно
    будет бинарно до 14.3-RELEASE. Исходниками тоже можно.

    Eugene
    --- slrn/1.0.3 (FreeBSD)
    * Origin: RDTC JSC (2:5006/1@fidonet)
  • From Eugene V. Boontseff@2:5020/400 to Eugene Grosbein on Sun Jun 8 15:35:28 2025
    From: "Eugene V. Boontseff" <eugene@home.wdc.spb.ru>
    Cc: Eugene.Grosbein@f1.n5006.z2.fidonet.org



    On 05.06.2025 07:25, Eugene Grosbein wrote:
    01 июня 2025, воскресенье, в 11:32 NOVT, Eugene V. Boontseff написал(а):

    EVB> Fetching metadata signature for 15-CURRENT from update1.freebsd.org...
    EVB> failed.

    Бинарных обновлений для CURRENT не выпускается.


    EVB> 1 error generated.
    EVB> *** Error code 1

    Испорченный /usr/src, но ты уже нашел правильное решение - взять
    чистое дерево.

    EVB> Как мне имея freebsd 14.2 одновить ее до версии 15 или 14.3

    До 15-CURRENT только исходниками. До 14.3-RELEASE когда выйдет релиз,
    он ещё не вышел, по плану будет 30 июня этого года. Можно обновиться
    бинарно до 14.3-RC1 (первый релиз-кандидат), с него потом можно
    будет бинарно до 14.3-RELEASE. Исходниками тоже можно.

    Eugene

    А вот ещё вопрос.
    А как обновлять такую систему: FreeBSD 11.4-STABLE amd64 до 14.2,
    например? Hапрямую получится? Или нужно вначале на промежуточные релизы обновить? Какие? Если 12, то откуда ее взять?


    --
    Eugene
    --- ifmail v.2.15dev5.4
    * Origin: Demos online service (2:5020/400)
  • From Eugene Grosbein@2:5006/1 to Eugene V. Boontseff on Sun Jun 8 21:22:19 2025
    08 июня 2025, воскресенье, в 15:35 NOVT, Eugene V. Boontseff написал(а):

    А вот ещё вопрос.
    А как обновлять такую систему: FreeBSD 11.4-STABLE amd64 до 14.2, например? Hапрямую получится? Или нужно вначале на промежуточные релизы обновить? Какие? Если 12, то откуда ее взять?

    Образы 14.3-RELEASE уже доступны, хотя официальный анонс будет позже.

    Hапрямую бинарно такой апдейт официально не поддерживается, но есть способ. Первым делом сделать бекапы или хотя бы снапшоты в случае ZFS.
    Убедиться, что свободного места не впритык.

    Затем:

    cd $HOME
    fetch https://download.freebsd.org/releases/amd64/14.3-RELEASE/kernel.txz
    fetch https://download.freebsd.org/releases/amd64/14.3-RELEASE/base.txz
    fetch https://download.freebsd.org/releases/amd64/14.3-RELEASE/src.txz

    cp -rp /etc /etc.bak
    cp -rp /var/db/pkg /var/db/pkg.bak

    find / -maxdepth 3 -flags +schg | xargs chflags noschg
    tar -C / -xvf ~/kernel.txz
    tar -C / -xvf ~/base.txz
    mv /etc /etc.0 && mv /etc.bak /etc
    mv /var/db/pkg /var/db/pkg.0
    mv /var/db/pkg.bak /var/db/pkg

    То есть, распаковываем 14.3 поверх существующей системы,
    это сопровождается затиранием системной базы пользователей с паролями
    и списка установленных пакетов, поэтому после распаковки мы восстанавливаем каталоги /etc и /var/db/pkg

    После этого надо смержить изменения в /etc:

    mv /usr/src /usr/src.old
    tar -C / -xf src.txz
    mergemaster -iFUP

    После окончания мержа - ребут.

    Альтернативный вариант обновлений - из исходников.
    При помощи gitup (или git) выкачиваешь исходники stable/12
    (или releng/12.4), собираешь и устанавливаешь 12.4.
    Затем повторяешь процедуру с 13.5. Затем с 14.3.

    Eugene
    --
    А ученый уподобляется обученному слону, которого погонщик поставил перед преградой. Он пользуется силой разума, как слон --- силой мышц, подчиняясь приказу. Это необычайно удобно: ученый отныне готов на все, так как ни за
    что уже не отвечает.
    --- slrn/1.0.3 (FreeBSD)
    * Origin: RDTC JSC (2:5006/1@fidonet)
  • From Eugene V. Boontseff@2:5020/400 to Eugene Grosbein on Mon Jun 9 17:01:25 2025
    From: "Eugene V. Boontseff" <eugene@home.wdc.spb.ru>


    On 08.06.2025 21:22, Eugene Grosbein wrote:
    08 июня 2025, воскресенье, в 15:35 NOVT, Eugene V. Boontseff написал(а):

    EVB> А вот ещё вопрос.
    EVB> А как обновлять такую систему: FreeBSD 11.4-STABLE amd64 до 14.2,
    EVB> например? Hапрямую получится? Или нужно вначале на промежуточные релизы
    EVB> обновить? Какие? Если 12, то откуда ее взять?

    Образы 14.3-RELEASE уже доступны, хотя официальный анонс будет позже.

    Hапрямую бинарно такой апдейт официально не поддерживается, но есть способ. Первым делом сделать бекапы или хотя бы снапшоты в случае ZFS.
    Убедиться, что свободного места не впритык.

    Затем:

    cd $HOME
    fetch https://download.freebsd.org/releases/amd64/14.3-RELEASE/kernel.txz fetch https://download.freebsd.org/releases/amd64/14.3-RELEASE/base.txz
    fetch https://download.freebsd.org/releases/amd64/14.3-RELEASE/src.txz

    cp -rp /etc /etc.bak
    cp -rp /var/db/pkg /var/db/pkg.bak

    find / -maxdepth 3 -flags +schg | xargs chflags noschg
    tar -C / -xvf ~/kernel.txz
    tar -C / -xvf ~/base.txz
    mv /etc /etc.0 && mv /etc.bak /etc
    mv /var/db/pkg /var/db/pkg.0
    mv /var/db/pkg.bak /var/db/pkg

    То есть, распаковываем 14.3 поверх существующей системы,
    это сопровождается затиранием системной базы пользователей с паролями
    и списка установленных пакетов, поэтому после распаковки мы восстанавливаем каталоги /etc и /var/db/pkg

    После этого надо смержить изменения в /etc:

    mv /usr/src /usr/src.old
    tar -C / -xf src.txz
    mergemaster -iFUP

    После окончания мержа - ребут.


    О, спасибо. Попробую.







    --
    Eugene
    --- ifmail v.2.15dev5.4
    * Origin: Demos online service (2:5020/400)