Это, как я решил это (пока), используя второе предложение по ivarne .I использовать установку в два яруса, две сети, подключенный к Интернету (офисной сети), один воздух гэп сети (разработка сети).
Информация о системе: OpenSUSE-13,1 (обе сети), джулия-0.3.5 (обе сети)
Tier один (офис сети)
- установлен джулия на долю NFS ,
/sharename/local/julia
.
- мягкие связаны
/sharename/local/bin/julia
с /sharename/local/julia/bin/julia
- приложенным
/sharename/local/bin/
к $PATH
с помощью сценария в /etc/profile.d/scriptname.sh
- создан
/etc/gitconfig
всех офис сети машин: [url "https://"] insteadOf = git://
(для решения проблем прокси-сервер с GitHub)
- теперь каждый пользователя в офисе сеть может просто запустить
# julia
Pkg.add("PackageName")
затем используется для установки различных пакетов.
Эти две сети периодически подключаются (с определенными мерами безопасности ssh, межсетевой экран, маршрутизация) для автоматического обмена данными в течение короткого периода времени.
уровня два (развитие сети)
- установлен джулия на долю NFS, равном уровне одного.
- Когда сети подключены, я использую сценарий оболочки с
rsync -avz --delete
, чтобы синхронизировать каталог .julia
первого уровня на второй уровень для каждого пользователя.
Заключение (до сих пор): Это, кажется, работает достаточно хорошо. Как ivarne предложил проблемы, если пакет установлен И что-то большее, чем просто копирование файлов (скомпилировано?) На уровне первого, пакет не будет работать на втором уровне. Но это можно решить с помощью Pkg.build("Pkgname")
.
Благодарим вас за ответ. Насколько я понимаю, используя каталог ~/.julia, я могу установить пакеты на один уровень (интернет) с помощью Pkg.add («Packagename»). Переместите его на второй уровень (без Интернета), установите переменную окружения JULIA_PKGDIR, чтобы указать на .julia. Я должен проверить это. Что касается вашего первого варианта, я клонировал METADATA в локальный каталог. Я мог бы указать на него с помощью JULIA_PKGDIR. Но тогда это только метаданные пакета, все должно быть загружено из github, когда я действительно добавляю пакет. Оптимальным случаем было бы, если бы я мог создать репо, которое включает в себя все, как зеркало CRAN 100GB. – Roman