Linux多用户共享Anaconda的安装和配置方法

文章来源Linux多用户共用Anaconda环境,然后根据自己安装过程实际情况修改了一些内容

一、Anaconda3下载和安装

1、下载

Anaconda官网:https://www.anaconda.com/

2、安装:

先进入root用户,再进行安装:

su root

[下述教程会在命令前加入(username)以表示在哪个账户下进行该操作]

#(root)
bash Anaconda3-2022.05-Linux-x86_64.sh
#版本对应自己下载的版本
注意!!!!

在安装过程中,在选择安装路径时候,需要将路径更改为/usr/local/anaconda3,而不能放在默认的/home/username/anaconda3里面,会使得其他用户没有读写权限。
安装的过程中,其他选项都选yes

二、多用户共享Anaconda配置

教程中,自己新建用户以userA为示例

第一部分(root用户部分):

1、创建用户组anaconda

#(root)
groupadd anaconda

2、将用户添加到用户组

#(root)
usermod -a -G anaconda userA

[添加完成之后可以使用 vim /etc/group 命令在最后一排看到用户组情况]

3、移交目录管理权

#(root)
chgrp -R anaconda /usr/local/anaconda3

4、设置读写权限

#(root)
chmod 770 -R /usr/local/anaconda3

5、设置继承组

#(root)
chmod g+s /usr/local/anaconda3

6、设子目录组继承

#(root)
chmod -R g+s /usr/local/anaconda3

7、关闭共享环境的写入权限

#(root)
chmod g-w /usr/local/anaconda3/envs

8、root用户下启动anaconda环境

#(root)
source /usr/local/anaconda3/bin/activate

9、创建环境

#(root)
conda create -n <环境名> python=<python版本号>

10、配置环境变量

#(root)
vim /etc/profile

先到最后一排,按i进入插入模式,在最后一排添加:export PATH=/usr/local/anaconda3/bin:$PATH,然后按ESC进入命令行模式,输入:wq保存退出
激活文件:

#(root)
source /etc/profile

第二部分(用户userA部分):

#(root)
su userA
#(userA)
vim ~/.bashrc

同样,先到最后一排按i进入插入模式,在最后一排添加:export PATH=/usr/local/anaconda3/bin:$PATH,然后按ESC进入命令行模式,输入:wq保存退出

#(userA)
/usr/local/anaconda3/bin/conda init bash

之后会在最后一排显示:modified /home/hisense/.bashrc

  • 然后再激活文件:
#(userA)
source ~/.bashrc

按照顺序操作完成之后应该就能多用户共享anaconda环境了,如果还是不行尝试重启服务器

查看anaconda是否可用:

conda info --envs

如果能够显示环境列表,就能用了

三、安装之后出现的小问题

在安装和配置完成后,使用指令clear时,会出现如下报错

clear: error while loading shared libraries: libtinfow.so.6: cannot open shared object file: No such file or directory

原因是在配置完anaconda之后,共享库libtinfow.so.6的路径被修改了,导致使用clear时找不到共享库,解决办法如下:

  • 安装mlocate
apt install mlocate
  • 使用locate指令定位libtinfow.so.6的位置
locate libtinfow.so.6

结果显示如下:

/usr/local/anaconda3/envs/pytorch1.11/lib/libtinfow.so.6
/usr/local/anaconda3/envs/pytorch1.11/lib/libtinfow.so.6.3
/usr/local/anaconda3/envs/tensorflow1.14/lib/libtinfow.so.6
/usr/local/anaconda3/envs/tensorflow1.14/lib/libtinfow.so.6.3
/usr/local/anaconda3/envs/tensorflow2.8/lib/libtinfow.so.6
/usr/local/anaconda3/envs/tensorflow2.8/lib/libtinfow.so.6.3
/usr/local/anaconda3/lib/libtinfow.so.6
/usr/local/anaconda3/lib/libtinfow.so.6.3
/usr/local/anaconda3/pkgs/ncurses-6.3-h7f8727e_2/lib/libtinfow.so.6
/usr/local/anaconda3/pkgs/ncurses-6.3-h7f8727e_2/lib/libtinfow.so.6.3

我们需要的路径是:/usr/local/anaconda3/lib

  • 将路径写入配置文件/etc/ld.so.conf
vim /etc/ld.so.conf

vim编辑器使用方法和上面的一样,在文件中添加路径/usr/local/anaconda3/lib,之后保存退出。

  • 然后输入指令:
ldconfig -v

clear指令不能使用的问题应该就可以解决了

Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐