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
指令不能使用的问题应该就可以解决了