麒麟系统添加环境变量

  • 环境变量添加方法
  1. 方法一:用户主目录下的.profile或.bashrc文件(推荐)
     

登录到你的用户(非root),在终端输入:

sudo vim  ~/.profile

或者 sudo vim  ~/.bashrc
翻到该文件最后,,按i进入编辑模式,在此文件末尾加入PATH的设置如下:
export  PATH=”$PATH:yourpath1:yourpath2...”
按下esc键推出编辑模式,输入:wq!保存退出文件,注销再登录,变量生效。

图 1 ~/.profile文件

图 2 ~/bashrc文件

~/.profile文件解析:用户家目录底下的私有环境变量设定。每个用户都可以使用该文件输入专用于自己使用的shell信息,当用户登录时,该文件仅仅执行一次。

~/.bashrc文件解析:用户家目录底下的私有环境变量设定。该文件包含专用于本用户shell的bash信息,当登录和每次打开新的shell时,该文件会被读取。(效率可能有细微影响)
注意:该方式添加的变量只对当前用户有效。

  1. 方法二:系统目录下的profile文件或bash.bashrc(谨慎)
    在系统的etc目录下,有一个profile文件,编辑该文件:
    $sudo vim /etc/profile

或者$sudo vim /etc/bash.bashrc
翻到该文件最后,,按i进入编辑模式,在此文件末尾加入PATH的设置如下:
exportPATH=”$PATH:yourpath1:yourpath2...”
按下esc键推出编辑模式,输入:wq!保存退出文件重启系统,变量生效。

图 3 /etc/profile文件

图 4  /etc/bash.bashrc文件

/etc/profile文件解析:全局环境变量设定,对所有用户shell有效

/etc/bash.bashrc文件解析:全局环境变量设定,对所有用户shell有效
注意:该方式添加的变量对所有的用户都有效。

  1. 方法三:系统目录下的environment文件(谨慎)
    在系统的etc目录下,有一个environment文件,编辑该文件:
    $sudo vim /etc/environment
    找到以下的PATH变量:
    PATH="<......>"
    按i进入编辑模式,修改该PATH变量,在其中加入自己的path,例如:

    PATH="<......>:yourpath1:yourpath2…",修改后按esc退出编辑模式,输入:wq!保存退出。该文件也是重启生效,影响所有用户。

图 5  /etc/environment文件
注意:这里不是添加export PATH=…。各个path之间用冒号分割。

  1. 方法四:直接在终端下输入(推荐)

$sudo  export  PATH="$PATH:yourpath1:yourpath2…"

图 6 临时环境变量添加

注意:这种方式变量立即生效,且只对当前终端生效,如图6,我另开一个终端就看不到添加的”/test”了。用户注销或系统重启后设置变成无效,适合临时变量的设置。
   总结:方法二和三的修改需要谨慎,尤其是通过root用户修改,如果修改错误,将可能导致一些严重的系统错误。因此推荐使用第一种方法和第四种方法。另外Linux的开发最好不要在root下进行(除非你对Linux已经非常熟悉了!!),以免因为操作不当导致系统严重错误。

  • 系统环境变量相关配置文件:

1./etc/profile:在登录时,操作系统定制用户环境时使用的第一个文件,此文件为系统的每个用户设置环境信息,当用户第一次登录时,该文件被执行。
   2./etc/environment:在登录时操作系统使用的第二个文件,系统在读取你自己的profile前,设置环境文件的环境变量。

  
3.~/.profile:在登录时用到的第三个文件是.profile文件,每个用户都可使用该文件输入专用于自己使用的shell信息,当用户登录时,该文件仅仅执行一次!默认情况下,他设置一些环境变量,执行用户的.bashrc文件。
 
4./etc/bash.bashrc:为每一个运行bashshell的用户执行此文件.当bashshell被打开时,该文件被读取.
  5.~/.bashrc:该文件包含专用于你的bashshell的bash信息,当登录时以及每次打开新的shell时,该该文件被读取。

  • LD_LIBRARY_PATH配置:

LD_LIBRARY_PATH环境变量是用于指定查找共享库(动态链接库)时除了默认路径之外的其他路径。移植程序时经常碰到需要使用一些特定的动态库,而这些编译好的动态库放在我们自己建立的目录里,这时可以将这些目录设置到LD_LIBRARY_PATH中。当执行函数动态链接.so时,如果此文件不在缺省目录下”/lib””/usr/lib”,就需要指定环境变量LD_LIBRARY_PATH

一般来说,系统的LD_LIBRARY_PATH都是未设置的,echo出来也是空值,该环境变量是使用者额外添加的。

图 7 LD_LIBRARY_PATH

  1. 用户主目录下的.profile或.bashrc文件(推荐)

用户家目录下的.profile文件,直接添加后还需要编辑/etc/X11/Xsession.options文件,将use-ssh-agent更改为no-use-ssh-agent保存重启,这样设置后才能生效。

图 8 /etc/X11/Xsession.option文件和~/.profile文件

用户家目录下.bashrc文件,直接添加后保存重启即可查看到:

图 9 ~/.bashrc

  1. 系统目录下的profile文件或bash.bashrc(谨慎)

     通过修改系统/etc/profile文件设置LD_LIBRARY_PATH时,也是需要修改/etc/X11/Xsession.option文件,把use-ssh-agent修改为no-use-ssh-agent后重启才能生效,否则不生效。

图 10 /etc/X11/Xsession.option文件和/etc/profile文件

通过系统/etc/bash.bash.rc文件设置LD_LIBRARY_PATH时,只修改该文件,保存后重启即可生效。

 

图 11 /etc/bash.bashrc

  1. 系统目录下的environment文件(谨慎)

通过修改系统目录下的environment文件设置LD_LIBRARY_PATH环境变量,同样需要修改/etc/X11/Xsession.option文件,把use-ssh-agent修改为no-use-ssh-agent后重启才能生效,否则不生效。

图 12 /etc/X11/Xsession.option文件和/etc/environment文件

  1. 直接在终端下输入(推荐)

通过设置临时变量的方法,设置LD_LIBRARY_PATH,只对当前终端生效,但用其他终端就不生效,关掉当前终端就不生效了。该方法影响域较小,不会对系统文件做更改,建议通过此方法设置环境变量,可以把需要设置的环境变量做成脚本,在使用前执行一下这个脚本即可。

图 13 终端直接输入



 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/192714.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

电容和电感

一、电感 1&#xff09;图片 2&#xff09;作用 a&#xff09;储存容量 例如dcdc转换器的原理,将一个电压值转换成另外一个电压值 b&#xff09;选择信号 比如空气中弥漫着很多信号&#xff0c;我们应该怎么选取我们所需要的信号。 电感和电容可以看成一个电阻&#xff0c;当电…

PTA结构体经典编程题

目录 第一题&#xff1a;计算平均成绩 第二题&#xff1a;平面向量加法 第三题&#xff1a;查找书籍 第四题&#xff1a;通讯录排序 第五题&#xff1a;计算职工工资 第一题&#xff1a;计算平均成绩 思路&#xff1a;看到一个学生的基本信息&#xff0c;所以定义一个结构…

神经网络模型预训练

根据神经网络各个层的计算逻辑用程序实现相关的计算&#xff0c;主要是&#xff1a;前向传播计算、反向传播计算、损失计算、精确度计算等&#xff0c;并提供保存超参数到文件中。 # coding: utf-8 import sys, os sys.path.append(os.pardir) # 为了导入父目录的文件而进行的…

【Python百练——第3练】矩形类及操作

&#x1f490;作者&#xff1a;insist-- &#x1f490;个人主页&#xff1a;insist-- 的个人主页 理想主义的花&#xff0c;最终会盛开在浪漫主义的土壤里&#xff0c;我们的热情永远不会熄灭&#xff0c;在现实平凡中&#xff0c;我们终将上岸&#xff0c;阳光万里 ❤️欢迎点…

Golang 原生Rpc Server实现

Golang 原生Rpc Server实现 引言源码解析服务端数据结构服务注册请求处理 客户端数据结构建立连接请求调用 延伸异步调用定制服务名采用TPC协议建立连接自定义编码格式自定义服务器 参考 引言 本文我们来看看golang原生rpc库的实现 , 首先来看一下golang rpc库的demo案例: 服…

python的制图

测试数据示例&#xff1a; day report_user_cnt report_user_cnt_2 label 2023-10-01 3 3 欺诈 2023-10-02 2 4 欺诈 2023-10-03 6 5 欺诈 2023-10-04 2 1 正常 2023-10-05 4 3 正常 2023-10-06 4 4 正常 2023-10-07 2 6 正常 2023-10-08 3 7 正常 2023-10-09 3 12 正常 2023-…

找不到DNS地址的解决方案

找不到DNS地址的解决方案 第一种解决方案&#xff1a;刷新DNS缓存第二种解决方案&#xff1a; 配置Internet协议版本4&#xff08;TCP/IPv4&#xff09;配置IP地址配置DNS地址 如何查看本机IPv4地址、子网掩码与默认网关 第一种解决方案&#xff1a;刷新DNS缓存 WINR输入cmd回…

基于SSH三大框架的员工管理系统

基于SSH三大框架的员工管理系统 摘要 本系统为本人学习SSH三大框架时所做的整合实例&#xff0c;系统角色包括普通用户和管理员两种&#xff0c;首页有管理员登录入口链接。系统功能主要包括管理员对用户的基本增、删、改、查和分页显示用户信息等。 系统环境 本系统使用ec…

【C++练级之路】【Lv.1】C++,启动!(命名空间,缺省参数,函数重载,引用,内联函数,auto,范围for,nullptr)

目录 引言入门须知一、命名空间1.1 作用域限定符1.2 命名空间的意义1.3 命名空间的定义1.4 命名空间的使用 二、C输入&输出2.1 cout输出2.2 cin输入2.3 std命名空间的使用惯例 三、缺省参数3.1 缺省参数概念3.2 缺省参数分类 四、函数重载4.1 函数重载概念4.2 函数重载分类…

BUUCTF 间谍启示录 1

BUUCTF:https://buuoj.cn/challenges 题目描述&#xff1a; 在城际公路的小道上&#xff0c;罪犯G正在被警方追赶。警官X眼看他正要逃脱&#xff0c;于是不得已开枪击中了罪犯G。罪犯G情急之下将一个物体抛到了前方湍急的河流中&#xff0c;便头一歪突然倒地。警官X接近一看&…

公平锁和非公平锁以及他们的实现原理是什么

文章目录 什么是非公平锁和公平锁呢&#xff1f;我们来看看acquire(1)的源码如下&#xff1a;这里的判断条件主要做两件事&#xff1a;在tryAcquire()方法中&#xff0c;主要是做了以下几件事&#xff1a;公平锁的tryAcquire()&#xff0c;实现的原理图如下&#xff1a;我们来看…

ORA-00257: archiver error. Connect internal only, until freed 的解决方法

归档文件存储空间不足&#xff0c;导致出现该问题。 当我们将数据库的模式修改为归档模式的时候&#xff0c;如果没有指定归档目录&#xff0c;默认的归档文件就会放到Flash Recovery Area的目录&#xff0c;但是这个目录是有大小限制的&#xff0c;如果超过了这个大小&#x…

C#基础学习--命名空间和程序集

引用其他程序集 编译器接受源代码文件并生成一个名为程序集的输出文件。 在许多项目中&#xff0c;会想使用来自其他程序集的类或类型。这些程序集可能来自BCL或第三方供应商&#xff0c;或者自己创建的。这些程序集称为类库&#xff0c;而且它们的程序集文件的名称通常以dll…

微信小程序组件与插件有啥区别?怎么用?

目录 一、微信小程序介绍 二、微信小程序组件 三、微信小程序插件 四、微信小程序组件与插件有啥区别 一、微信小程序介绍 微信小程序是一种基于微信平台的应用程序&#xff0c;它可以在微信客户端内直接运行&#xff0c;无需下载和安装。微信小程序具有轻量、便捷、跨平台…

对比ProtoBuf和JSON的序列化和反序列化能力

1.序列化能力对比验证 在这里让我们分别使用PB与JSON的序列化与反序列化能力&#xff0c;对值完全相同的一份结构化数据进行不同次数的性能测试。 为了可读性&#xff0c;下面这一份文本使用JSON格式展示了需要被进行测试的结构化数据内容: {"age" : 20,"name…

线程安全的问题以及解决方案

线程安全 线程安全的定义 线程安全:某个代码无论是在单线程上运行还是在多线程上运行,都不会产生bug. 线程不安全:单线程上运行正常,多线程上运行会产生bug. 观察线程不安全 看看下面的代码: public class ThreadTest1 {public static int count 0;public static void main…

数据结构和算法-树与二叉树的存储结构以及树和二叉树和森林的遍历

文章目录 二叉树的存储结构二叉树的顺序存储二叉树的链式存储小结 二叉树的先中后序遍历例题小结 二叉树的层次遍历小结 由遍历序列构造二叉树一个遍历序列即使给定了前中后序&#xff0c;也不能确定该二叉树的形态可以确定的序列组合前序中序后序中序层序中序 小结若前序&…

算力基础设施领域国家标准发布

2023 年 11 月 27 日&#xff0c;国家标准 GB/T 43331-2023《互联网数据中心&#xff08;IDC&#xff09;技术和分级要求》正式发布。这一国家标准由中国信息通信研究院&#xff08;简称“中国信通院”&#xff09;联合多家企事业单位编制&#xff0c;旨在满足当前国家算力基础…

强化学习(一)——基本概念及DQN

1 基本概念 智能体 agent &#xff0c;做动作的主体&#xff0c;&#xff08;大模型中的AI agent&#xff09; 环境 environment&#xff1a;与智能体交互的对象 状态 state &#xff1b;当前所处状态&#xff0c;如围棋棋局 动作 action&#xff1a;执行的动作&#xff0c;…

C#——Delegate(委托)与Event(事件)

C#——Delegate&#xff08;委托&#xff09;与Event&#xff08;事件&#xff09; 前言一、Delegate&#xff08;委托&#xff09;1.是什么&#xff1f;2.怎么用&#xff1f;Example 1&#xff1a;无输入无返回值Example 2&#xff1a;有输入Example 3&#xff1a;有返回值Exa…