Вы можете увидеть, существует ли уже докер-контейнер для вашего программного обеспечения (теперь он известен как GNU Octave). Вы сохраняете контейнер образ на USB-устройстве и запускаете его. Фактически он будет использовать вашу основную файловую систему для хранения запущенного экземпляра и виртуальной файловой системы. Чтобы иметь возможность использовать этот контейнер с вашим домашним каталогом, вы должны проинструктировать docker о привязке-монтировании вашего домашнего тома во время создания контейнера.
Похожий вопрос был задан здесь и здесь. В основном, для Linux на базе Ubuntu, ответ нет, без компиляции из исходников. Однако, возможно, есть способ.
Не обращая внимания на вышесказанное, вы можете, например, настроить fstab на автоматическое монтирование USB-устройства в /usr/local
. Убедитесь, что опция exec
установлена (или что noexec
не установлена) На USB-устройстве структура каталогов должна содержать:
/bin
/sbin
/lib
/man
/etc
/share
И, возможно, также /lib64
. В /etc/ld.so.conf
вам понадобится
/usr/local/lib
Где-то в /etc/profile или в .bashrc
вашего пользователя вам понадобится:
PATH="/usr/local/sbin:/usr/local/bin:$PATH"
Теперь самая сложная часть: установка. Как уже упоминалось выше, инструмент apt/dpkg не позволяет перемещать целевой каталог установки пакета. Решение 1: перекомпилировать из исходников. Решение 2: очевидно, существует инструмент для облегчения этой задачи: dpkg-divert. http://manpages.ubuntu.com/manpages/hardy/man8/dpkg-divert.8.html Однако цель этого инструмента - позволить нескольким экземплярам или версиям пакета сосуществовать рядом с другими. Но теоретически, это может сработать в желаемом направлении.