Показаны сообщения с ярлыком upgrade. Показать все сообщения
Показаны сообщения с ярлыком upgrade. Показать все сообщения

понедельник, 9 октября 2017 г.

Upgrading FreeBSD box with a custom kernel

PATCHING THE BASE SYSTEM
 
From FreeBSD handbook, chapter 23:
Only the GENERIC kernel can be automatically updated by freebsd-update. If a custom kernel is installed, it will have to be rebuilt and reinstalled after freebsd-update finishes installing the updates.
In this post I am going to show how I usually update my FreeBSD home box running a custom kernel inherited from the GENERIC kernel.

First of all, I update the GENERIC kernel. It is very possible.
From the chapter of handbook mentioned above:
freebsd-update will detect and update the GENERIC kernel if /boot/GENERIC exists, even if it is not the current running kernel of the system.
This option suits my requirements, because my kernel based on the GENERIC.
$ sudo freebsd-update fetch
$ sudo freebsd-update install
$ reboot
After the system come back, I upgrade the custom kernel (in my case called FBSD_GF4-1-NOSND).
$ sudo -i
# cd /usr/src
# make buildkernel KERNCONF=FBSD_GF4-1-NOSND
Building a kernel may take a while. After the kernel is built, I install it.
# make installkernel KERNCONF=FBSD_GF4-1-NOSND
# reboot

UPGRADING SOFTWARE PACKAGES

Starting the Autumn, 2017 I dislike packages again. Ports are the strength of FreeBSD! But I am going to describe the process of updating software packages. For the memories.
$ sudo portsnap fetch update
$ sudo pkg update
$ pkg updating | $PAGER
After reading UPDATING info carefully, I upgraded the software next way.
$ sudo pkg upgrade
$ sudo pkg clean
$ sudo pkg autoremove
Then reboot and try to count regressions =)
$ reboot

вторник, 9 июня 2015 г.

Установка патчей и обновление приложений FreeBSD

Вступление

Крайний раз я обновлял программное обеспечение своего компьютера на новогодних каникулах. Это обновление было для меня особенным. Во-первых, обновление операционной системы заключалось не просто в установке заплаток, а в переходе с FreeBSD версии 9.1 на 9.3. Это был для меня новый опыт. Переход на новую версию оказался простым и безболезненным. Во-вторых, при обновлении пакетов приложений выяснилось, что, так старательно рекламируемый разработчиками, GNOME 3 работать у меня не хочет. Рабочего решения я не нашел, код смотреть не захотел, на форум разработчиков обращаться застеснялся и решил, что перейду на Mate.

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

Обновление

  1. Очистка локального кеша пакетов (у меня там давным-давно лежали 300MiB ненужных пакетов).
    # pkg clean
  2. Получение патчей.
    # freebsd-update fetch
  3. Установка патчей.
    # freebsd-update install
  4. Перезагрузка
    # reboot
  5. Обновление дерева портов (чтобы почитать актуальный pkg updating).
    # portsnap fetch update
  6. Просмотр инструкции к обновлению (все, что я там прочел, мне либо не пригодилось, либо не помогло).
    # pkg updating
  7. Обновление пакетов.
    # pkg upgrade
  8.  После перезагрузки я приступил к восстановлению работоспособности машины.
    # pkg clean
    # reboot

Восстановление

 1. Применение универсальной локали для запуска twm

С первой проблемой я столкнулся, когда попытался войти в систему из под обычного пользователя и у меня это не получилось: после авторизации меня снова выкинуло на экран xdm. Причины такого поведения, как правило записываются в ~/.xsession-errors. Я обнаружил там сообщение об ошибке следующего вида.
twm: unable to open fontset -adobe-helvetica-bold-r-normal-...
Решение я нашел на LinuxQuestions.org в этой статье: [SOLVED] Problems with TWM + UTF-8. Максимально сокращая всю писанину из нее, могу сказать, что проблема в том, что twm разленился запускаться с локалями KOI8-R и UTF-8. Решение: запускать его с универсальной локалью C. На картинке ниже показано, что я изменил в файле ~/.xsession. Как видите, добавилась команда LANG=C, перед запуском оконного менеджера.

2. Установка кириллического шрифта для xterm

Чтобы кириллица отображалась кириллицей, а не крякозябрами, я применил решение отсюда: Блог Eugen772 - XTerm и KOI8-R во FreeBSD, но, используя информацию из man X, сделал его универсальным для всех пользователей.
Решение заключается в установке пакета terminus-font и установке этого шрифта по умолчанию для xterm (подробнее написано в этом ответе на форуме AskUbuntu.com).
# pkg install terminus-font
# # После установки шрифта нужно добавить строку
# # FontPath "/usr/local/share/fonts/terminus-font/"
# # в раздел Files конфигурационного файла X
# # (у меня он /etc/X11/xorg.conf)
# echo 'xterm*font: -*-terminus-*-r-*-*-12-*-*-*-*-*-koi8-r' >> /usr/local/share/X11/app-defaults/XTerm

3. Универсальная локаль больше не требуется

После установки шрифта, можно вернуть ~/.xsession к исходному виду (т.е. убрать из него команду LANG=C). Иначе кириллица в заголовках окон отображаться будет никак :-)

 Проблемы

  1. При новой установке потребуется дополнительно устнавливать шрифт что-ли? Это нонсенс.