alternatives 链接失败:没有那个文件或目录

AI权益加码!Claude Code、Cursor等20+工具免费用! 购周边限时加赠Coding Plan Lite,畅享主流AI工具!学习进阶更高效! 阅读详情

[root@apm-cdh01 ~]# alternatives --list
libnssckbi.so.x86_64    auto    /usr/lib64/pkcs11/p11-kit-trust.so
ld    auto    /usr/bin/ld.bfd
mta    auto    /usr/sbin/sendmail.postfix
print    auto    /usr/bin/lpr.cups
pax    auto    /usr/bin/spax
hbase-conf    auto    /etc/hbase/conf.cloudera.hbase
spark-conf    auto    /etc/spark/conf.cloudera.spark_on_yarn
hadoop-conf    auto    /etc/hadoop/conf.cloudera.yarn

[root@apm-cdh01 ~]# 
[root@apm-cdh01 ~]# 
[root@apm-cdh01 ~]# 
[root@apm-cdh01 ~]# update-alternatives --remove hbase-conf /etc/hbase/conf.cloudera.hbase
/etc/hbase/conf -> /etc/alternatives/hbase-conf 链接失败:没有那个文件或目录

[root@apm-cdh01 lib]# alternatives --display hbase-conf
hbase-conf - 状态为手工。
链接当前指向 /etc/hbase/conf.cloudera.hbase

/opt/cloudera/parcels/CDH-6.2.1-1.cdh6.2.1.p0.1425774/etc/hbase/conf.dist - 优先度 10
当前“最佳”版本是 /opt/cloudera/parcels/CDH-6.2.1-1.cdh6.2.1.p0.1425774/etc/hbase/conf.dist。
[root@apm-cdh01 lib]# 
[root@apm-cdh01 lib]# update-alternatives --remove hbase-conf /opt/cloudera/parcels/CDH-6.2.1-1.cdh6.2.1.p0.1425774/etc/hbase/conf.dist
[root@apm-cdh01 lib]# 
[root@apm-cdh01 lib]# alternatives --list
libnssckbi.so.x86_64    auto    /usr/lib64/pkcs11/p11-kit-trust.so
ld    auto    /usr/bin/ld.bfd
mta    auto    /usr/sbin/sendmail.postfix
print    auto    /usr/bin/lpr.cups
pax    auto    /usr/bin/spax
spark-conf    auto    /etc/spark/conf.cloudera.spark_on_yarn
hadoop-conf    auto    /etc/hadoop/conf.cloudera.yarn
[root@apm-cdh01 lib]# 


 

update-alternatives --remove name path

name是一个在/etc/alternatives中的名字,也就是上面的link,而path是希望删除的可选程序名的绝对路径名(放心,这样 只是从列表中删除了这个程序,并不会真的从硬盘上删除程序的可执行文件)。如果从一个alternative组中删除了一个正在被链接的程序并且这个组仍 然没有变成空的,update-alternative会自动用一个具有其他优先级的可选程序代替原来的程序。如果这个组变成空的了,那么连这个 alternative组都会被移除。如果删除的程序没有被链接,则只有有关这个程序的信息会移除。

详解写的比较好的博客:Linux下alternatives工具详解_LinuxEye

Linux系统Python版本切换实战:alternatives命令的5个隐藏技巧 本文深入探讨Linux系统中使用alternatives命令进行Python版本切换的5个高级技巧,包括优先级动态调整、手动与自动模式选择、从属链接控制、目录隔离策略和原子性操作。这些技巧帮助开发者在多版本Python环境中实现灵活管理,确保系统稳定性和开发效率。 阅读详情

相关推荐

Linux alternatives机制:多版本程序路由与系统级版本治理

Linux alternatives是一种内置于主流发行版(如Debian/Ubuntu、RHEL/CentOS)的系统级程序路由机制,用于解决同一命令名(如java、python、editor)在多版本共存环境下的统一调用问题。其核心原理是通过数据库注册候选路径、优先级排序及双跳符号链接(/usr/bin/cmd → /etc/alternatives/cmd → 实际二进制),实现自动/手动模式切换。该机制具备原子性、可审计性与CI/CD友好性,技术价值在于消除PATH污染、支持零停机版本升级、保障工具

weixin_33883104的博客 325

遇到一问题,无法解决!

今天在编程的时候,遇到一个小问题。在vs2005中 调试 可以正常通过。一旦运行就会报内存出错。最后找了很久终于发现愿意了。代码:  char *filename= "Data/start.bmp";                                                                                          

pskpl的专栏 631

Python开发者必看:用alternatives命令实现秒级版本切换(含pip自动跟随技巧)

本文为Linux环境下的Python开发者详细介绍了如何使用系统自带的alternatives命令实现多版本Python的秒级切换。通过实战配置步骤,重点讲解了如何确保pip等工具自动跟随当前Python版本,从而解决依赖混乱问题,并提供了优先级策略、常见问题排查及生产环境自动化脚本等高级技巧。

java5的博客 1052

oracle-j2sdk1.8,CDH agent无法安装

截图如下:目前查看了日志,端口之类的都没发现问题,整个页面日志只有在安装java的时候出现了2个找到镜像,但是最终结果还是already install了,请大牛帮忙看看什么原因,多谢了/tmp/scm_prepare_node.H8O9IPN5using SSH_CLIENT to get the SCM hostname: 192.168.202.211 51404 22opening lo...

weixin_36485298的博客 2042

Linux杂谈之mail

总结:经过两天的研究,终于解决了问题,特来记录以下,心情有些能自已,真是学无止境!   一、问题的引入:            操作:mail发送邮件失败            结果:找到libmysqlclient.so.18 二、问题的分析       刚开始有点懵逼,跟mysql怎么扯上关系,这个后续再讲,既然找到此文件--->       分析1:开始思考是是特...

wzj_110的博客 1495

玩转 Linux 文件目录、命令、软硬链接一网打尽

本文为 CentOS7 Linux 文件管理全套实训笔记,以rm命令踩坑警示切入,完整梳理目录切换、文件增删改查、通配符批量操作、软硬链接核心原理与实操案例,覆盖日常运维高频命令;同时补充目录层级规范、文件权限基础配套实战,知识点搭配可直接复现的终端演示,零基础也能快速吃透 Linux 文件体系,规避误删等常见操作风险。

2301_79710376的博客 478

linux 使用alternatives 切换Java版本

xception in thread "main" java.lang.UnsupportedClassVersionError: M : Unsupported major.minor version 在linux上编译的java程序,在运行的时候报这个错误。 经过查找原来是javac的版本和java的版本一致导致的, 因为我机器上安装了系统自带的java-1.5.0-gcj

ccfxue的博客 1万+

Puppeteer 页面历史前进导航详解:Page.goForward() 使用指南与实现原理

Puppeteer(当前仓库即 puppeteer/puppeteer)提供了一套与浏览器历史导航对齐的 Page API,其中 `Page.goForward()` 用于让当前页面在历史记录中向后(前进)跳转,等价于用户点击浏览器工具栏中的“前进”按钮。本文以官方 API 文档 [puppeteer.page.goforward.md](https://link.gitcode.com/i/07

gitblog_00755的博客 724

Angular 扩展诊断 NG8106(suffixNotSupported):属性绑定中误用 `.px` / `.%` / `.em` 后缀的识别与修复指南

NG8106(`suffixNotSupported`)是 Angular 编译器内置的一项扩展诊断(extended diagnostic),用于在**属性绑定**(attribute binding)中检测误用 `.px`、`.%`、`.em` 等样式单位后缀的模板写法。这类后缀在 Angular 中仅为**样式绑定**(style binding)设计,写在 `attr.` 绑定上没有

gitblog_00584的博客 431

避坑指南:Linux服务器安装多JDK时容易忽略的5个权限细节(附alternatives最佳实践)

本文深入剖析了在Linux服务器上安装和管理多版本JDK时,围绕alternatives工具最易被忽视的5个权限细节。内容涵盖sudo权限的精粒度控制、SELinux上下文修复、JAVA_HOME动态设置、优先级管理陷阱及安全卸载流程,旨在帮助DevOps工程师构建稳定、安全且可审计的多JDK环境,避免因权限问题导致的构建失败安全风险。

weixin_29231263的博客 216

Ubuntu 18.04 Java环境配置避坑指南:JDK版本、JAVA_HOME与update-alternatives实战

Java开发环境的核心是JDK的正确安装与环境变量管理,其本质涉及版本兼容性、运行时路径解析和多版本调度机制。OpenJDK作为主流开源实现,在Ubuntu等Debian系系统中通过apt包管理器分发,但默认行为自动设置JAVA_HOME,且包命名隐含headless、jre、jdk等关键语义差异。理解update-alternatives的替代项机制,是实现java/javac版本解耦与生产级可控切换的技术基础。典型应用场景包括Spring Boot多版本部署、Maven构建环境隔离、ARM64服务器适

weixin_33695082的博客 407

配置 update-alternatives 的步骤

符号链接路径(如/usr/bin/java):优先级数字(越大优先级越高):备选项组名称(如java)

388

CentOS下利用alternatives实现多版本JDK无缝切换与管理

本文详细介绍了在CentOS系统中使用alternatives工具实现多版本JDK无缝切换与管理的完整方案。通过下载安装多个JDK版本,利用alternatives注册java、javac等命令,开发者可以轻松在项目间切换Java环境,解决版本依赖冲突,提升开发与运维效率。

weixin_29311017的博客 183

深入解析alternatives命令:Python多版本管理的实战指南

本文深入解析Linux系统中的alternatives命令,提供Python多版本管理的实战指南。通过alternatives命令,开发者可以轻松切换Python版本,确保同项目依赖的Python环境互干扰,同时保持系统稳定性。文章详细介绍了命令的工作原理、配置步骤及高级管理技巧,帮助开发者高效管理多版本Python环境。

alpha的博客 127

Ubuntu 16.04 Java环境配置:apt-get、update-alternatives与JAVA_HOME契约解析

Java开发环境并非简单安装即可运行,其本质是操作系统与JDK之间的系统级契约。在Linux发行版中,JVM运行依赖JDK提供的编译器、类库和运行时组件,而Ubuntu 16.04因软件源策略、符号链接调度机制及环境变量管理的特殊性,使JDK安装演变为多环节协同过程。apt-get仅负责包分发,update-alternatives承担版本调度职责,JAVA_HOME则作为关键环境契约影响Maven、IDEA、Tomcat等所有Java工具链。该机制决定了Java应用能否在生产环境中稳定启动与编译,尤其在混

weixin_34279579的博客 329

Linux开发环境搭建避坑:用update-alternatives搞定Java、GCC、Python多版本共存

本文详细介绍了如何在Linux系统中使用update-alternatives工具管理Python、Java和GCC的多版本共存问题。通过符号链接链机制,开发者可以灵活切换同版本,确保项目需求与系统稳定性。文章提供了从注册版本到交互式切换的完整实战指南,并分享了优先级设置和自动化管理的最佳实践。

weixin_30394981的博客 483

alternatives命令用法

alternatives是Linux下的一个功能强大的命令。只能在root权限下执行。如系统中有几个命令功能十分类似,却又能随意删除,那么可以用 alternatives 来指定一个全局的设置。alternatives常用于同一个系统中安装同一软件的多个版本。比如为了开发需要,我需要安装JDK1.4.2,同时还需要JDK1.6.10,我怎么样才能忽略安装路径,按照我自己的意...

weixin_34088598的博客 82
上一篇: ssh远程无法链接
下一篇: iptables 用法
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值