Как создать общую среду julia для всех пользователей? - PullRequest
1 голос
/ 10 февраля 2020

Среда: CentOS 7 64bit

a) созданный системный пользователь ds:

useradd -r -s /sbin/nologin ds

b) скачал исполняемый файл julia tar и извлек его в / opt / julia:

tar -xvf "/tmp/downloads/julia/julia-1.3.1-linux-x86_64.tar.gz" -C "/opt/julia"

c) сделал ds владельцем папки / файлов / opt / julia и его подпапок:

chown -R "ds:ds" "/opt/julia"

Я хотел бы настроить общую среду julia для всех пользователей.

Пожалуйста, помогите мне настроить следующее в общей среде для всех пользователей:

a) history
b) JULIA_HOME
c) JULIA_LOAD_PATH
d) JULIA_DEPOT_PATH
e) JULIA_PKG_DEVDIR
f) JULIA_PROJECT
g) PATH
h) security

1 Ответ

2 голосов
/ 11 февраля 2020

Примечание: это предлагаемое решение действительно для Ubuntu. Пути могут быть разными в CentOS, но процесс должен быть одинаковым.

Решением, которое я выбрал для подобного сценария, было использование только двоичных файлов Julia (загруженных с Julialang.org), расширяющих их в /lib/julia-1.x/ (с символической ссылкой на /lib/julia.x/bin/julia в /bin) и предоставьте каждому пользователю собственную папку ~ / .julia.

Таким образом вы избежите путаницы с версиями пакетов, которые несовместим между глобальным репозиторием пакетов и локальным.

Если вы через эту конфигурацию go, вы можете добавить в /usr/local/sbin/adduser.local скрипт, который будет выполняться каждый раз, когда вы добавляете нового пользователя с помощью adduser.

Например, я добавил:

su $1 -c "julia /usr/bin/initJuliaRepository.jl", где, в свою очередь, я предварительно устанавливаю на каждого пользователя набор часто используемых пакетов:

import Pkg

Pkg.update()
Pkg.add("IJulia")
Pkg.add("DataFrames")
Pkg.add("Plots")
Pkg.build("IJulia")
...