当前位置: 首页 > news >正文

linux小白对系统环境变量的一些不解和迷惑解析

linux涉及环境变量的日常问题解释

一、案例一

配置完环境变量后不生效?:

如配置了全局环境变量如下:
在这里插入图片描述
然后查看Java版本并没有变化
在这里插入图片描述
需要检查系统环境变量配置与优先级
以下配置优先级顺序从左到右以此降低
在这里插入图片描述
需将java的环境变量优先级调高
可以将配入/etc/profile中的参数

export PATH=$PATH:$JAVA_HOME/bin
改为
export PATH=$JAVA_HOME/bin:$PATH

重新source /etc/profile发现Java环境变量优先级变高了且java版本也生效了

二、案例二

为什么有的服务可以用任意目录启动为什么有的服务只能去特定的bin/目录下启动?

原因:可以在任意目录下启动的可执行程序是因为配置了全局环境变量
使用下面命令可以查询验证:

echo $PATH
会列出当前系统所有的环境变量生效目录

which 服务可执行程序
例:
which helm
会列出可执行程序helm的具体位置,可以发现可全局使用的可执行程序 helm 处于$PATH下的某一个目录下

如果 which 查不到结果,就说明可执行程序并没有配置全局生效 

将需要全局执行的可执行程序复制到$PATH任一目录下(通常是/usr/bin或/usr/local/bin目录下,前提是这两个目录处于 $PATH所列出的结果中),然后再任一目录下都可以执行了。

三、案例三

在linux中安装软件或服务时为什么有的可以使用 systemctl 来管理服务,有的却提示找不到服务?

原因:使用systemctl管理需要相关的.service文件,大多数情况下该文件存在于/etc/systemd/system/目录下,而一些软件或服务在安装过程中并不会自动创建相关的.service文件。
下面为一个service配置例子:
mysqld.service:

[Unit]
Description=MySQL Server
After=network.target
After=syslog.target

[Service]
User=mysql
Group=mysql
# 指向服务启动的可执行程序用于启动或停止
ExecStart=/usr/sbin/mysqld --daemonize --pid-file=/var/run/mysqld/mysqld.pid
ExecStop=/usr/bin/mysqladmin shutdown
Restart=on-failure

[Install]
WantedBy=multi-user.target

因此将不会自动创建service文件的服务手动创建 name.service 文件后且放于/etc/systemd/system/下后,即可使用system start / stop / restart name.service来管理自己的服务了


文章转载自:
http://bullock.kjawz.cn
http://canonization.kjawz.cn
http://booby.kjawz.cn
http://beadswoman.kjawz.cn
http://autocatalytic.kjawz.cn
http://biography.kjawz.cn
http://booted.kjawz.cn
http://alliterate.kjawz.cn
http://ambitious.kjawz.cn
http://camellia.kjawz.cn
http://assignments.kjawz.cn
http://bookstore.kjawz.cn
http://amygdala.kjawz.cn
http://brd.kjawz.cn
http://casing.kjawz.cn
http://axunge.kjawz.cn
http://aspartate.kjawz.cn
http://cabin.kjawz.cn
http://cheapo.kjawz.cn
http://casework.kjawz.cn
http://azeotropic.kjawz.cn
http://adsl.kjawz.cn
http://borated.kjawz.cn
http://chandelle.kjawz.cn
http://aheap.kjawz.cn
http://balayeuse.kjawz.cn
http://anteriorly.kjawz.cn
http://arugula.kjawz.cn
http://aerodynamically.kjawz.cn
http://antithetical.kjawz.cn
http://www.dtcms.com/a/128166.html

相关文章:

  • Python(10.2)Python可变与不可变类型内存机制解密:从底层原理到工程实践
  • C 语言 - 右左法则与实践练习题 答案解析
  • 文档检索技术详解 (Document Retriever)
  • 代码随想录算法训练营第十六天
  • C++、Python的输入输出及相关的处理操作
  • 通过websocket给服务端发送订单催单提醒消息
  • 基于双闭环PID控制器的永磁同步电机控制系统匝间故障Simulink仿真
  • 当DRAM邂逅SSD:新型“DRAM+”存储技术来了!
  • 网络建设与运维神州数码DCN savi源地址验证改进功能
  • VIRT, RES,SHR之间的关系
  • 图像预处理(OpenCV)
  • Spring Security 使用教程
  • 三维激光测量助力企业检测效率提升3倍
  • 15.【.NET 8 实战--孢子记账--从单体到微服务--转向微服务】--单体转微服务--如何拆分单体
  • 状态机 XState
  • WiFi那些事儿(四)
  • 嵌入式Linux——8 串口
  • pytorch查询字典、列表维度
  • 应急响应排查系统技术解析
  • Ingress蓝绿发布
  • Redis 特性和应用场景
  • 测试模板1
  • python高级编程一(生成器与高级编程)
  • arcpy基础之环境搭建
  • 【QT】学习笔记1
  • leetcode刷题日记——赎金信
  • 【PyTorch项目实战】反卷积(Deconvolution)
  • 解决 weditor 报错AttributeError: ‘Device‘ object has no attribute ‘address’
  • Java对象内存结构详解
  • 文献总结:AAAI2025-UniV2X-End-to-end autonomous driving through V2X cooperation