Установка дополнений на embedded-версию

[HowTo] Установка дополнительных программных пакетов на embedded FreeNAS с использованием метода Unionfs

Перевод с английского. Источник © FreeNAS Documentation and Support Team written by Christian Degen bubulein@freenas.org

Настоящий документ описывает простой путь установки дополнительный программных пакетов (приложений) на ваш embedded FreeNAS. В качестве примера, я буду использовать «Midnight Commander Light» (MC) клон известного файлового менеджера «Norton Commander».

Что такое Unionfs?

Источник: Wikipedia.org http://ru.wikipedia.org/wiki/UnionFS

«UnionFS — вспомогательная файловая система для Linux и FreeBSD, производящая каскадно-объединённое монтирование других файловых систем. Это позволяет файлам и каталогам изолированных файловых систем, известных как ветви, прозрачно перекрываться, формируя единую связанную файловую систему. Каталоги, которые имеют тот же путь в объединённых ветвях, будет совместно отображать содержимое в объединённом каталоге новой виртуальной файловой системы.»

Что вы должны знать

У вас должен быть доступ к FreeNAS по SSH, а также привилегии суперпользователя (root) для совершения этих действий.

Как установить MC

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

/mnt/data/opt
/mnt/data/opt/usr_local
/mnt/data/opt/var

Где /mnt/data мое устройство хранения данных.

   # mkdir -p /mnt/data/opt/usr_local
   # mkdir -p /mnt/data/opt/var

Теперь смонтируем вновь созданные каталоги с помощью unionfs в /var и /usr/local

   # mount_unionfs /mnt/data/opt/usr_local /usr/local
   # mount_unionfs /mnt/data/opt/var /var

Чтобы проверить все ли работает как надо, выполните

   # mount -t unionfs
   <above>:/mnt/data/opt/usr_local on /usr/local (unionfs, local)
   <above>:/mnt/data/opt/var on /var (unionfs, local)

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

   # pkg_add -r mc-light

В случае возникновения ошибок используйте команду pkg_add -rv mc-light для подробного вывода сообщений.

После установки MC вам нужно выполнить

   # rehash

чтобы опубликовать только что установленные файлы. Это команда может отличатся в разных командных оболочках.

Как сделать каталоги смонтированные через unionfs, доступными и после перезагрузки?

Если вы перезапустите FreeNAS, то unionfs размонтируется и не смонтируется автоматически после перезагрузки. Во избежание этого, нам потребуется добавить команду «mount_unionfs» через web-интерфейс.

Перейдите на страницу Система|Дополнительно|Командные скрипты и создайте два скрипта:

1Команда: mount_unionfs /mnt/data/opt/usr_local /usr/local
Тип: PostInit
2Команда: mount_unionfs /mnt/data/opt/var /var
Тип: PostInit

Теперь unionfs будет монтироваться после перезагрузки автоматически.

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

Существуют различные решения для этой проблемы.

1. Если к вашему серверу FreeNAS подключен монитор и клавиатура, то войдите в shell нажав клавишу 6 в консольном меню и переименуйте /mnt/data/opt например в /mnt/data/opt_ что отключит монтирование unionfs

   # mv /mnt/data/opt /mnt/data/opt_

Эффект от этого переименования наступит после перезагрузки FreeNAS.

2. Как запасной вариант, на случай если монитор к вашему серверу не подключен, можно изменить скрипт выполняемый при загрузке. Измените в Система|Дополнительно|Командные скрипты команду

mount_unionfs /mnt/data/opt/var /var

на команду

sleep 180 ; mount_unionfs /mnt/data/opt/var /var

И тоже самое для usr_local. Это даст вам 180 секунд на внесение изменений после перезапуска.

Теперь MC или другое установленное приложение готово к использованию.

Для «визуальных людей» имеется краткий скринкаст: Screencast - [HowTo] Install Additional Packages On FreeNAS Embedded Using The Unionfs-Method

Обсуждение

Chingiz R RakhimovChingiz R Rakhimov, 2011/05/06 09:14

Для FreeNAS 8.0 release нужно смонтировать через unionfs еще и /root, иначе mc падает с segmentation fault

МаксимМаксим, 2011/05/07 15:32

Каким образом можно монтировать каталоги автоматом после перезагрузки во FreeNAS 8.0? Аналога «Командные скрипты» в вебморде найти не смог (

ogreogre, 2012/01/02 22:05

Посмотри тут http://forums.freenas.org/archive/index.php/t-1064.html

ilovefreenasilovefreenas, 2011/07/12 17:19

Полезная инструкция, спасибо!

Есть один непонятный глюк: после монтирования /usr/local и /var в system log перестали фиксироваться события. Т.е. при запуске системы логирование происходит, после монтирования - прекращается. Кто-нибудь знает как лечится?

0.7.2 Sabanda (6694), i386-embedded

ilovefreenasilovefreenas, 2011/08/31 12:10

Разобрался, решается перезапуском syslogd.

stassikstassik, 2011/08/21 13:36

в (6694), 64-embedded, не получается :(

test:/mnt/mega# mkdir -p /mnt/mega/opt/usr_local test:/mnt/mega# mkdir -p /mnt/mega/opt/var test:/mnt/mega# mount_unionfs /mnt/mega/opt/usr_local /usr/local mount_unionfs: /usr/local: : Operation not supported test:/mnt/mega# mount_unionfs /mnt/mega/opt/var /var mount_unionfs: /var: : Operation not supported

stassikstassik, 2011/08/21 14:26

разобрался, всё дело в ZFS…

Light PeetLight Peet, 2011/10/02 13:36

и как это победили? или отказались от ZFS

shurshikshurshik, 2012/02/02 09:37

на freenas 7.5.- надо тоже монтировать /root иначе вылетает ошибка и зависает сервак полностью

shurshikshurshik, 2012/02/02 09:48

Подскажите пожалуйста, такая проблема, поставил mc он работает, запускается, но когда начинаю в нем копировать файлы объемом больше 200 метров он виснит и при этом зависает вся система, приходится перезагружать ручками системник. При копировании файлов малого объема, до 200 метров проблемы такой нет. Установлена Freenas 0.7.5.9898

guestguest, 2012/02/05 10:42

Такая же ситуация, после использования unionfs, перестали фиксироваться события, перезапуск syslogd не помогает. Последняя запись в логах после перезагрузки: «syslogd: exiting on signal 15». Есть ли решения? (0.7.5 revision 9496).

Введите ваш комментарий
If you can't read the letters on the image, download this .wav file to get them read to you.
 

  • Сохранить "Установка дополнений на embedded-версию" на del.icio.us
  • Сохранить "Установка дополнений на embedded-версию" на Digg
  • Сохранить "Установка дополнений на embedded-версию" на Furl
  • Сохранить "Установка дополнений на embedded-версию" на Reddit
  • Сохранить "Установка дополнений на embedded-версию" на Ask
  • Сохранить "Установка дополнений на embedded-версию" на BlinkList
  • Сохранить "Установка дополнений на embedded-версию" на blogmarks
  • Сохранить "Установка дополнений на embedded-версию" на Google
  • Сохранить "Установка дополнений на embedded-версию" на Ma.gnolia
  • Сохранить "Установка дополнений на embedded-версию" на Netscape
  • Сохранить "Установка дополнений на embedded-версию" на ppnow
  • Сохранить "Установка дополнений на embedded-версию" на Rojo
  • Сохранить "Установка дополнений на embedded-версию" на Shadows
  • Сохранить "Установка дополнений на embedded-версию" на Simpy
  • Сохранить "Установка дополнений на embedded-версию" на Socializer
  • Сохранить "Установка дополнений на embedded-версию" на Spurl
  • Сохранить "Установка дополнений на embedded-версию" на StumbleUpon
  • Сохранить "Установка дополнений на embedded-версию" на Tailrank
  • Сохранить "Установка дополнений на embedded-версию" на Technorati
  • Сохранить "Установка дополнений на embedded-версию" на Live Bookmarks
  • Сохранить "Установка дополнений на embedded-версию" на Wists
  • Сохранить "Установка дополнений на embedded-версию" на Yahoo! Myweb
  • Сохранить "Установка дополнений на embedded-версию" на BobrDobr
  • Сохранить "Установка дополнений на embedded-версию" на Memori
  • Сохранить "Установка дополнений на embedded-версию" на Faves
  • Сохранить "Установка дополнений на embedded-версию" на Favorites
  • Сохранить "Установка дополнений на embedded-версию" на Facebook
  • Сохранить "Установка дополнений на embedded-версию" на Newsvine
  • Сохранить "Установка дополнений на embedded-версию" на Yahoo! Bookmarks
  • Сохранить "Установка дополнений на embedded-версию" на Twitter
  • Сохранить "Установка дополнений на embedded-версию" на myAOL
  • Сохранить "Установка дополнений на embedded-версию" на Slashdot
  • Сохранить "Установка дополнений на embedded-версию" на Fark
  • Сохранить "Установка дополнений на embedded-версию" на RawSugar
  • Сохранить "Установка дополнений на embedded-версию" на LinkaGoGo
  • Сохранить "Установка дополнений на embedded-версию" на Mister Wong
  • Сохранить "Установка дополнений на embedded-версию" на Wink
  • Сохранить "Установка дополнений на embedded-версию" на BackFlip
  • Сохранить "Установка дополнений на embedded-версию" на Diigo
  • Сохранить "Установка дополнений на embedded-версию" на Segnalo
  • Сохранить "Установка дополнений на embedded-версию" на Netvouz
  • Сохранить "Установка дополнений на embedded-версию" на DropJack
  • Сохранить "Установка дополнений на embedded-версию" на Feed Me Links
  • Сохранить "Установка дополнений на embedded-версию" на funP
  • Сохранить "Установка дополнений на embedded-версию" на HEMiDEMi
ustanovka_dopolnenij_na_embedded-versiju.txt · Последние изменения: 2011/05/19 06:16 (внешнее изменение)
CC Attribution-Share Alike 3.0 Unported
www.chimeric.de Valid CSS Driven by DokuWiki do yourself a favour and use a real browser - get firefox!! Recent changes RSS feed Valid XHTML 1.0