2gusia (2gusia) wrote,
2gusia
2gusia

Category:

Обновление finch и софта в нем, включая plex

Ранее мы устанавливали на nas4free (embedded) finch - софт, облегчающий работу с chroot (см по тегу chroot). В результате у нас как бы полная FreeBSD поверх nas4free, в которую можно ставить практически что угодно. В частности, пригодилось для установки медасервера и каталогизатора PLEX.

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

ЕСЛИ это текущий апдейт, без смены версии FreeBSD - п 2 пропускаем.
ЕСЛИ у нас сменилась минорная версия FreeBSD (например 10.2-p1 на 10.2-p2) - то п 2 исполняем. Это загрузка багфиксов, апдейтов безопасности и пр.
ЕСЛИ у нас сменилась мажорная версия FreeBSD (например 9.2 на 9.3 и, тем более, 9.3 на 10.1) - то всесто п 2 исполняем это.


0) Есть мнение, что перед тем, как куда-то соваться, стоит убедиться в возможности вернуться. Для этого я держу chroot на отдельном датасете Pool/Ext/Finch. И перед апгрейдом советую слелать с него снимок - можно через вебгуй Disks|ZFS|Snapshots|Snapshot, плюсик внизу-справа. Снимок я назвал before_ug, если что, к нему потом можно откатиться из командной строки дав
zfs rollback Pool/Ext/Finch@before_ug

ПОТОМ, и то если что-то пойдет не так, не сейчас :)

Теперь идем в командную строку,

1)заходим в chroot

nas4free ~/ root~$ finch chroot
finch: chrooting to "/mnt/Pool/Ext/Finch".
nas4free // root^>


Обратите внимание - немного изменилось системное приглашение

2) Исполняем ТОЛЬКО в случае минорного апдейта оси - см выше.
Грузим и устанавливаем апдейты (имейте терпение!)


nas4free // root^> freebsd-update fetch install
Looking up update.FreeBSD.org mirrors... 5 mirrors found.
Fetching metadata signature for 9.3-RELEASE from update5.freebsd.org... done.
Fetching metadata index... done.
Fetching 2 metadata patches.. done.
Applying metadata patches... done.
Fetching 2 metadata files... done.
Inspecting system... done.
Preparing to download files... done.
Fetching 1109 patches.....10....20....30....40....50....60....70....80....90....100....110....120....130....140....150....160....170....180....190....200....210....220....230....240....250....260....270....280....290....300....310....320....330....340....350....360....370....380....390....400....410....420....430....440....450....460....470....480....490....500....510....520....530....540....550....560....570....580....590....600....610....620....630....640....650....660....670....680....690....700....710....720....730....740....750....760....770....780....790....800....810....820....830....840....850....860....870....880....890....900....910....920....930....940....950....960....970....980....990....1000....1010....1020....1030....1040....1050....1060....1070....1080....1090....1100.... done.
Applying patches... done.
Fetching 6 files... done.
(END)



Тут надо подождать несколько минут, но почему-то само не завершается. То ли автор накосячил, зайдя и забыв выйти из vi, то ли спецом оставил закладку чтобы из cron не апдейтили... Ну да не важно

Чтобы выйти надо набрать двоеточие и затем q (то есть :q)
Если вы набрали :q слишком рано - ничего страшного, система отпустит только когда процесс завершится. Можно набрать :q и несколько раз с перерывами.

В конце напишет
Installing updates... done.

Бинго!

3) Самое время апдейтить софт, установленный в chroot

pkg upgrade

На вопросы отвечаем Y

В моём случае предлагает проапгрейдить сам pkg, затем

sudo: 1.8.12 -> 1.8.13
qjail: 3.6 -> 3.8
plexmediaserver: 0.9.11.7.803_1 -> 0.9.11.16.958
nano: 2.2.6 -> 2.4.1
lsof: 4.89.c,8 -> 4.89.d,8
libiconv: 1.14_6 -> 1.14_8
indexinfo: 0.2.2 -> 0.2.3
ca_root_nss: 3.17.4_1 -> 3.18



Видно, что под раздачу попал и Plex

Соглашаемся, конечно - Y

4) По окончании выходим из chroot и перезапускаем его


nas4free // root^> exit
logout
nas4free ~/ root~$ finch stop
Stopping finch.
Stopping cron.
Stopping plexmediaserver.
Waiting for PIDS: 3099, 3099.
Cleaning up leftover child processes.
Waiting for PIDS: 3652 3254, 3652.
nas4free ~/ root~$ finch stop
Already stopped.
nas4free ~/ root~$ finch start
Starting finch.
Starting plexmediaserver.
Starting cron.
nas4free ~/ root~$



Подождав недолго идём в вебгуй PLEX, Настройки, Сервер, основные, видим, что версия обновилась.
На то, что пишет про доступную новую версию - не обращаем внимания. Это для платных подписчиков замануха - на одну версию вперёд дают :)

UPD от 01 мая 2015
Сложилась на сегодня забавная ситуация. В текущей версии Plex мелкий баг, который мне мешает жить (не могу руками подгрузить собственный постер к сериалу). Судя по форуму он исправлен в самой последней версии. Но она есть только в портах, а не в пакетах.

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

5) Обязательно делаем пп 1, 2 и 3. Затем смотрим установленную версию желаемого софта (plexmediaserver) Прим. Напомню, мы в chroot!

nas4free // root^> pkg version -Rv
Updating FreeBSD repository catalogue...
FreeBSD repository is up-to-date.
All repositories are up-to-date.
bash-4.3.33 = up-to-date with remote
ca_root_nss-3.18.1 = up-to-date with remote
gettext-runtime-0.19.4 = up-to-date with remote
indexinfo-0.2.3 = up-to-date with remote
jq-1.4 = up-to-date with remote
libiconv-1.14_8 = up-to-date with remote
lsof-4.89.d,8 = up-to-date with remote
nano-2.4.1 = up-to-date with remote
pkg-1.5.1 = up-to-date with remote
plexmediaserver-0.9.11.16.958 = up-to-date with remote
portmaster-3.17.7 = up-to-date with remote
qjail-4.0 = up-to-date with remote
sudo-1.8.13 = up-to-date with remote


Видим версию plexmediaserver 0.9.11.16.958

6) Идём на www.freshports.org и ищем интересующую нас софтину (plexmediaserver), смотрим версию.
Сейчас она 0.9.12.0.1071. То есть новее. Можно обновить! Если версия будет та же, что в п 5 - то дальше ничего делать не надо, толку не будет.

7) Обновляем дерево портов (если вы делаете по этому блогу, то оно уже в chroot есть)
portsnap fetch update

Это на пару минут

8) апгрейдим наш plexmediaserver (если другой софт - то по аналогии, где он лежит написано на) freshports)

cd /usr/ports/multimedia/plexmediaserver/ && make reinstall

Обычно начинается до-о-олгий процесс компиляции. Но Plex - софт собственнический, поставляется уже компилированным, так что всё пойдёт очень быстро.

9) По итогу снова даём
pkg version -Rv

И в выводе должно появиться

plexmediaserver-0.9.12.0.1071 > succeeds remote (remote has 0.9.11.16.958)

Бинго!

Перезапускаем chroot, как в п 4 и имеем свежую версию, в чём убеждаемся через вебгуй. /UPD

Tags: chroot, nas, nas4free, plex
Subscribe

  • OpenZFS и XigmaNAS

    Месяц назад я писал про Open ZFS. Там были мысли о том, когда он будет доступен в XogmaNAS. А в конце декабря зацепился на эту тему языками с…

  • Как провожают жесткие диски

    Сдох у меня жесткий диск в NAS Как видно - из SMART отпахал 70428 часов, то есть если 24/7 - больше 8 лет. И, я вам скажу, он не просто крутился…

  • О добавлении диска в ZFS raidz

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

  • Post a new comment

    Error

    Anonymous comments are disabled in this journal

    default userpic

    Your reply will be screened

  • 21 comments

  • OpenZFS и XigmaNAS

    Месяц назад я писал про Open ZFS. Там были мысли о том, когда он будет доступен в XogmaNAS. А в конце декабря зацепился на эту тему языками с…

  • Как провожают жесткие диски

    Сдох у меня жесткий диск в NAS Как видно - из SMART отпахал 70428 часов, то есть если 24/7 - больше 8 лет. И, я вам скажу, он не просто крутился…

  • О добавлении диска в ZFS raidz

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