update-alternatives是管理符号链接的工具,在Ubuntu和Debian中可用。通过它,我们可以便捷地切换同一使用的软件版本。例如,系统中同时安装了多个gcc版本(例如gcc、riscv64-linux-gnu-gcc和aarch64-linux-gnu-gcc)linux cc,对于不同项目须要使用不同的版本。

原理

update-alternatives通过软链接来处理Linux中多版本切换问题红旗 linux,软链接储存于/etc/alternatives目录。

例如,cc(/usr/bin/cc)虽然是一个软链接,它指向/etc/alternatives/cclinux 版本,而这也是一个软链接,指向/usr/bin/gcclinux cc命令,而这才是最终的可执行文件。

注册版本

命令linux进入救援模式_linux cc命令_linuxcc攻击

格式:sudo update-alternatives --install    `
即为命令所在的路径
为命令的名称
为最终的可执行文件的路径
为正整数,数字越大,优先级越高

举个反例:

# 注册 riscv64-linux-gnu-gcc 版本
$ sudo update-alternatives --install /usr/bin/cc cc /usr/bin/riscv64-linux-gnu-gcc 19

# 注册 aarch64-linux-gnu-gcc 版本
$ sudo update-alternatives --install /usr/bin/cc cc /usr/bin/aarch64-linux-gnu-gcc 18

切换版本

linux cc命令_linuxcc攻击_命令linux进入救援模式

格式:sudo update-alternatives --config 

举个反例:

移除指定版本

格式:sudo update-alternatives --remove  

linuxcc攻击_linux cc命令_命令linux进入救援模式

举个反例:

# 移除 riscv64-linux-gnu-gcc 版本
$ sudo update-alternatives --remove cc /usr/bin/riscv64-linux-gnu-gcc

列举可用版本

格式:sudo update-alternatives --list 

举个反例:

# 列出 cc 替换组中可用版本
$ sudo update-alternatives --list cc
/usr/bin/aarch64-linux-gnu-gcc
/usr/bin/gcc
/usr/bin/riscv64-linux-gnu-gcc

查看替换组信息

格式:sudo update-alternatives --display 

linux cc命令_linuxcc攻击_命令linux进入救援模式

举个反例:

设置默认版本

格式:sudo update-alternatives --set  

举个反例:

# 设置默认版本为 gcc
$ sudo update-alternatives --set cc /usr/bin/gcc

# 设置默认版本为 riscv64-linux-gnu-gcc
$ sudo update-alternatives --set cc /usr/bin/riscv64-linux-gnu-gcc

本文原创地址://gulass.cn/uuhdzglfhljd.html编辑:刘遄,审核员:暂无