Update-Alternatives

Ubuntu自带一个update-alternatives命令, 可以更新ubuntu的环境管理.

管理的原理为: 创建一个软链接, 使用update-alternatives命令将不同的环境(版本)的软件链接到软链接的位置. 因此只需要将软链接的目标位置加入$PATH中即可

Cuda

如果电脑上安装了多个Cuda环境,可以直接在zshrc里面引用/usr/local/cuda/bin作为cuda的目录,然后就可以通过下面的指令切换Cuda:

sudo update-alternatives --config cuda

如果是新安装了一个Cuda,那么需要通过下面的指令进行识别:

sudo update-alternatives --install "/usr/local/cuda" "cuda" "<path/to/cuda/folder>" <priority>

install用法: 接受四个参数

  1. 第一个参数表示目标软连接的位置(相当于将你自己的版本直接存在了<path>里面)
  2. 第二个参数用于后续快捷调整版本(相当于label), 直接通过sudo update-alternatives --config <label>进行选择版本
  3. 第三个参数是用于替换的位置,只需要在zshrc里面引用这个位置就可以
  4. <priority>指的是默认的权重,<path/to/cuda/folder>通常是/usr/local/cuda-xx.x这样的路径

Java

首先先下载对应版本的java包,通常是使用wget来下载。

解压安装包,然后将解压后的文件夹移动到/usr/lib/jvm/java-xx-openjdk-amd64文件夹下,其中xx表示版本号。

然后通过update-alternatives来设置默认的java对应的版本:

sudo update-alternatives --install "/usr/bin/java" "java" "/usr/bin/jvm/java-xx-openjdk-amd64/bin/java" <priority>

其中,<priority>需要替换成优先级,优先级越高,auto模式就会优先调用。

ArchLinux-Java

使用Pacman作为包管理工具,可以直接下载对应版本的java

sudo pacman -S jdk8-openjdk
# or use java 17
sudo pacman -S jdk17-openjdk

安装多个版本的java可以使用自带的archlinux-java进行环境管理。

# use status for checking current java environment
archlinux-java status
# set current java environment
archlinux-java set <Java-env>
# unset current java environment
archlinux-java unset

Conda

Conda

conda是一个多环境管理程序, 可以将虚拟环境与系统环境隔离, 为不同项目配置不同环境, 防止环境冲突

filters:
  and:
    - file.inFolder("Knowledges")
    - file.name.startsWith("Conda")
views:
  - type: cards
    name: Conda
    order:
      - file.name
      - file.tags
      - file.path
      - file.ctime
      - file.mtime
      - done
 
Link to original