Linux /etc/profile 详解

概述

        Linux是一个多用户的操作系统。每个用户登录系统后,都会有一个专用的运行环境。通常每个用户默认的环境都是相同的,这个默认环境实际上就是一组环境变量的定义。用户可以对自己的运行环境进行定制,其方法就是修改相应的系统环境变量用户在自己的主目录下(如 ~/.bash_profile~/.bash_login~/.profile 等)覆盖或添加个性化的设置。

        /etc/profile 是 Linux 系统中的一个重要配置文件,它主要用于设置系统级的环境变量和启动程序。该文件在用户登录时会被自动执行,无论用户是通过图形界面还是命令行界面登录。/etc/profile 文件为所有用户提供了系统范围内的环境设置也就是说,在这里修改的内容是对所有用户起作用的用户也可以在自己的主目录下(如 ~/.bash_profile~/.bash_login~/.profile 等)覆盖或添加个性化的设置。

主要内容和作用

1)设置环境变量:
        /etc/profile 可以用来设置一些全局的环境变量,比如 PATHLD_LIBRARY_PATH 等,这些变量会影响系统查找可执行文件、库文件等的路径。

2)运行脚本和程序:
        可以在 /etc/profile 中调用其他脚本或程序,这些脚本或程序可以在用户登录时自动执行,比如更新系统信息、启动某些服务等。

3)别名设置:
        可以定义一些全局的 shell 别名,使得用户在使用 shell 时可以更方便地执行某些命令。

4)条件判断:
        通过条件判断(如使用 if 语句),可以根据不同的条件执行不同的命令或设置不同的环境变量。

5)调用其他配置文件:
        /etc/profile 通常会调用 /etc/profile.d/ 目录下的所有脚本,以及用户个人的 ~/.bash_profile~/.bash_login 或 ~/.profile 文件(具体取决于 shell 类型和用户的登录方式)。

注意事项

1)修改 /etc/profile 文件需要管理员权限。

2)修改后,为了使更改生效,需要重新登录或执行 source /etc/profile 命令。

3)考虑到不同用户可能有不同的需求,一些个性化的设置应该放在用户自己的配置文件中,而不是 /etc/profile

4)在 /etc/profile 中设置的环境变量和别名对通过 SSH 登录的用户也有效,但如果是通过图形界面登录,则可能还受到桌面环境启动脚本的影响。

PATH介绍

        PATH 是一个环境变量,它包含了一系列由冒号(:分隔的目录路径。当用户在命令行中输入一个命令时,系统会按照 PATH 环境变量中定义的目录顺序,在这些目录中查找相应的可执行文件。如果找到了相应的可执行文件,则执行该命令;如果没有找到,系统通常会返回一个错误消息,提示命令未找到。

        在 /etc/profile 文件中设置 PATH 环境变量时,通常使用 export 命令来定义或修改它。这里有几个关键点需要注意:

1)追加到现有PATH:为了避免覆盖掉系统或其他应用程序已经设置的 PATH,通常会将新的目录路径追加到现有的 PATH 后面。这可以通过在 PATH 变量后添加新路径,并用冒号分隔来实现。

# 将 /usr/local/git-2.45.2/bin 添加到现有的 PATH 后面。
export PATH=$PATH:/usr/local/git-2.45.2/bin

2)修改或重置PATH:虽然不推荐这样做,但有时可能需要完全修改或重置 PATH 环境变量。这可以通过直接为 PATH 赋一个新值来实现,但这样做会覆盖掉所有现有的路径设置,因此需要谨慎操作。 

# 将 PATH 设置为仅包含 /new/path 和 /another/path
export PATH=/new/path:/another/path

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

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

相关文章

化繁为简!新一代 Anybus 网关为何简单易用?

为什么易用性很重要? 产品的易用性一直至关重要,它直接影响用户满意度和市场接受度。近年来,随着自动化设备数量的迅速增长,自动化工程师的工作量大幅增加,使得用户对易用性的要求日益提高。 自动化工程师面临的主要…

BGP第二日

上图为今日所用拓扑 ,其中R1和R4,R3和R5为EBGP邻居,R1和R3为IBGP邻居,AS200区域做OSPF动态路由 一.BGP建立邻居的六种状态 1.idle 空闲状态:建立邻居最初的状态 2.Connect 连接状态:在…

解决GPT-4o耗电难题!DeepMind新算法训练效率提升13倍,能耗降低10倍!

目录 01 有更好的解决方案吗? 02 从“超级batch”中筛选数据 03 技术介绍 04 实验结果 生成可学习batch 谷歌DeepMind推出的新算法JEST,将LLM训练的迭代次数减少了13倍,计算量降低了10倍,有望重塑AI未来。GPT-4o早已成为耗能…

linux 0.11 中的重要的全局变量

通过对全局变量的了解,也有助于了解整个代码的逻辑。就跟学习类一样,了解类有哪些成员变量,也有助于了解类的成员函数的功能。 (1)内存初始化相关 static u_char mem_map [ PAGING_PAGES ] { 0 , } .本数组对 1M 以外…

数据结构 —— BellmanFord算法

数据结构 —— BellmanFord算法 BellmanFord算法检测负权值环BellmanFord和Dijkstra思想上的区别Dijkstra算法的思想Bellman-Ford算法的思想思想上的对比 我们今天来看一个算法BellmanFord算法,我们之前的Dijkstra算法只能用来解决正权图的单源最短路径问题。 Bell…

06浅谈大语言模型可调节参数TopP和TopK

浅谈大模型参数TopP和TopK 大语言模型中的temperature、top_p和top_k参数是用来控制模型生成文本时的随机性和创造性的。下面分享一下topP和topK两个参数的意义及逻辑; top K(Top-K Sampling) 作用:只从模型认为最可能的k个词中选…

Nodejs 第八十四章(ElasticSearch搜索)

ElasticSearch基本用法在之前的篇章介绍过了 这里不在过多阐述 模拟假数据 安装库 faker-js/faker 模拟假数据的一个库非常好用支持中文使用中文 locale: [zh_CN], 设置即可生成名字,邮箱,手机号,id,年龄,性别生成完成…

Python功能制作之获取CSDN所有发布文章的对应数据

大家好,今天我要分享的是一个实用的Python脚本,它可以帮助你批量获取CSDN博客上所有发布文章的相关数据,并将这些数据保存到Excel文件中。此外,脚本还会为每篇文章获取一个质量分,并将这个分数也记录在Excel中。让我们…

LLM-阿里云 DashVector + ModelScope 多模态向量化实时文本搜图实战总结

文章目录 前言步骤图片数据Embedding入库文本检索 完整代码 前言 本文使用阿里云的向量检索服务(DashVector),结合 ONE-PEACE多模态模型,构建实时的“文本搜图片”的多模态检索能力。整体流程如下: 多模态数据Embedd…

HTML5新增的input元素类型:number、range、email、color、date等

HTML5 大幅度地增加与改良了 input 元素的种类,可以简单地使用这些元素来实现 HTML5 之前需要使用 JavaScript 才能实现的许多功能。 到目前为止,大部分浏览器都支持 input 元素的种类。对于不支持新增 input 元素的浏览器,input 元素被统一…

采购订单列表根据条件设置行背景色

文章目录 采购订单列表根据条件设置行背景色Python实现Bos配置实现-列表条件格式化 采购订单列表根据条件设置行背景色 Python实现 python脚本 import clr clr.AddReference(System) clr.AddReference(Kingdee.BOS) clr.AddReference(Kingdee.BOS.Core) clr.AddReference(Sy…

spark shuffle写操作——SortShuffleWriter

写入的简单流程: 1.生成ExternalSorter对象 2.将消息都是插入ExternalSorter对象中 3.获取到mapOutputWriter,将中间产生的临时文件合并到一个临时文件 4.生成最后的data文件和index文件 可以看到写入的重点类是ExternalSorter对象 ExternalSorter 基…

高创新 | CEEMDAN-VMD-GRU-Attention双重分解+门控循环单元+注意力机制多元时间序列预测

目录 效果一览基本介绍模型设计程序设计参考资料 效果一览 基本介绍 高创新 | CEEMDAN-VMD-GRU-Attention双重分解门控循环单元注意力机制多元时间序列预测 本文提出一种基于CEEMDAN 的二次分解方法,通过样本熵重构CEEMDAN 分解后的序列,复杂序列通过VMD…

算法日常练习

对于这个题&#xff0c;如何处理同一个方向的问题&#xff0c;且对于同一组的如果间隔太大如何实现离散化 #include<bits/stdc.h> using namespace std;#define int long long typedef long long ll; map<pair<int,int>,vector<pair<ll,ll>>> mp…

小程序做自定义分享封面图,Canvas base64图片数据真机上不显示?【已解决】

首选说一下需求&#xff0c;做一个小程序分享&#xff0c;但是封面图要自定义&#xff0c;除了要有对应商品还有有背景图&#xff0c;商品名。类似这种 实现逻辑&#xff0c;把商品图和背景图&#xff0c;再加上价格和商品名用canvas 渲染出来 这是弄好之后的效果图&#xff0…

【简历】兰州某大学一本硕士:面试通过率基本是为0

注&#xff1a;为保证用户信息安全&#xff0c;姓名和学校等信息已经进行同层次变更&#xff0c;内容部分细节也进行了部分隐藏 简历说明 这是一个一本硕士的Java简历&#xff0c;那这个简历因为学校本身&#xff0c;它是一个一本的硕士&#xff0c;我们一般认为这一本硕士&a…

Riscv 架构的合规测试

为啥直接关注riscv-arch-test&#xff0c;是因为RISCOF 测试框架使用的是riscv-arch-test 1. The architectural test 架构测试是一个单一的测试&#xff0c;代表了可编译和运行的最小测试代码。它是用汇编代码编写的&#xff0c;其产品是test signature。一个架构测试可能由…

体育资讯小程序的设计

管理员账户功能包括&#xff1a;系统首页&#xff0c;个人中心&#xff0c;用户管理&#xff0c;球员管理&#xff0c;教练管理&#xff0c;赛事日程管理&#xff0c;赛事类型管理&#xff0c;联赛积分榜管理 开发系统&#xff1a;Windows 架构模式&#xff1a;SSM JDK版本&am…

【前端项目笔记】10 项目优化上线

项目优化上线 目标&#xff1a;优化Vue项目部署Vue项目&#xff08;上线提供使用&#xff09; 项目优化 项目优化策略&#xff1a; 生成打包报告&#xff1a;根据生成的报告发现问题并解决第三方库启用CDN&#xff1a;提高首屏页面的加载效率Element-UI组件按需加载路由懒加…

java算法day12

java算法day12 199二叉树的右视图637二叉树的层平均值515 在每个树行中找最大值429 N叉树的层序遍历116 填充每个节点的下一个右侧节点指针 199 二叉树的右视图 这题还是层序遍历的板子&#xff0c;但是在处理上略有差异 这个题我一开始的想法就有误&#xff0c;因为我一开始…