Am făcut o căutare, dar nu prea găsesc o soluție sau o explicație la acest subiect. Aș aprecia gândurile și sugestiile dvs. și apreciez în avans că aceasta ar putea acoperi mai multe subiecte.
Am început recent să gestionez o mașină Ubuntu de înaltă performanță (x2 GPU-uri, x2 socket Intel Xeons, 128 GB RAM etc). Utilizatorii pot SSH într-un terminal și pot trimite procese persistente prin tmux (încă nu sunt foarte priceput la tehnologie pentru a aborda SLURM). Acesta este sistemul meu Ubuntu:
ID distribuitor: Ubuntu
Descriere: Ubuntu 20.04.3 LTS
Lansare: 20.04
Nume de cod: focal
Momentan am doi utilizatori plus un administrator:
/home/user1
/home/user2
/home/admin
Utilizatorii nu au privilegii de root.
Aș dori ca utilizatorii să își poată configura propriile medii R și Python. Aceasta va implica descărcarea bibliotecilor R și a modulelor Python pe măsură ce au nevoie de ele. În calitate de utilizator zilnic R și Python, știu că derularea bibliotecilor și modulelor poate fi frecventă și adesea neplanificată, așa că nu este bine dacă necesită privilegii de acces la root în mod frecvent.
Aș dori ca un utilizator să poată:
-au acces la Conda pentru a-și crea propriile medii Conda, astfel încât configurarea unui Utilizator să nu afecteze configurarea altui Utilizator.
- să poată descărca și instala pachete R și Python în acest mediu - unele pachete, prin însăși natura lor, se vor compila folosind un compilator C++.
- interzice instalarea a orice altceva care nu este nici R sau Python.
Editare #1
M-am gândit să ofer un exemplu despre ceea ce încerc să realizez, deoarece mă confrunt cu multe tehnologii și software noi și risc să-mi pierd concentrarea.
Un utilizator se conectează la mașină folosind SSH și, implicit, ajunge în directorul său /home/user. Încep să lucreze și constată că au nevoie de Deseq2. Distribuitorii gazdă, Bioconductor, ai Deseq2 fac pachetul disponibil prin următorul cod R:
BiocManager::install("DESeq2")
Utilizatorul trebuie să se afle într-un mediu în care să poată descărca și instala DESeq2, apoi să îl facă disponibil atunci când execută un script R de la terminalul Ubuntu.