linux启动 profile,Linux 启动时profile、bashrc、~/.bash_profile、~/.bashrc、~/.bash_profile执行顺序以及文件说明...-程序员宅基地

技术标签: linux启动 profile  

Linux 启动时profile、bashrc、~/.bash_profile、~/.bashrc、~/.bash_profile执行顺序以及文件说明

一、执行顺序

登录linux时,/etc/profile、~/.bash_profile等几个文件的执行过程。如图所示:

二、

在登录Linux时要执行文件的过程如下:

在刚登录Linux时,首先启动 /etc/profile 文件,然后再启动用户目录下的 ~/.bash_profile、 ~/.bash_login或 ~/.profile文件中的其中一个,执行的顺序为:~/.bash_profile、 ~/.bash_login、 ~/.profile。如果 ~/.bash_profile文件存在的话,一般还会执行 ~/.bashrc文件。因为在 ~/.bash_profile文件中一般会有下面的代码:

if [ -f ~/.bashrc ] ; then

. ./bashrc

fi

~/.bashrc中,一般还会有以下代码:

if [ -f /etc/bashrc ] ; then

. /bashrc

fi

所以,~/.bashrc会调用 /etc/bashrc文件。最后,在退出shell时,还会执行 ~/.bash_logout文件。

执行顺序为:/etc/profile -> (~/.bash_profile | ~/.bash_login | ~/.profile) -> ~/.bashrc -> /etc/bashrc -> ~/.bash_logout

关于各个文件的作用域说明:

/etc/profile: 此文件为系统的每个用户设置环境信息,当用户第一次登录时,该文件被执行. 并从/etc/profile.d目录的配置文件中搜集shell的设置。

/etc/bashrc: 为每一个运行bash shell的用户执行此文件.当bash shell被打开时,该文件被读取。

~/.bash_profile: 每个用户都可使用该文件输入专用于自己使用的shell信息,当用户登录时,该文件仅仅执行一次!默认情况下,他设置一些环境变量,执行用户的.bashrc文件。

~/.bashrc: 该文件包含专用于你的bash shell的bash信息,当登录时以及每次打开新的shell时,该该文件被读取。

~/.bash_logout:当每次退出系统(退出bash shell)时,执行该文件. 另外,/etc/profile中设定的变量(全局)的可以作用于任何用户,而~/.bashrc等中设定的变量(局部)只能继承/etc /profile中的变量,他们是"父子"关系。

~/.bash_profile 是交互式、login 方式进入 bash 运行的~/.bashrc 是交互式 non-login 方式进入 bash 运行的通常二者设置大致相同,所以通常前者会调用后者。

关于Linux启动时挂载rootfs的几种方式

一直对Linux启动时挂载根文件系统的过程存在着很多疑问,今天在水木精华区找到了有用的资料,摘录如下: 1.Linux启动时,经过一系列初始化之后,需要mount 根文件系统,为最后运行init进程等 ...

【转】Linux中/etc/profile,/etc/bashrc,~/.profile,~/.bashrcd的区别

//因为在原文章中博主说以下内容是网友说的,所以我就只加个转了,找不到原作者 /etc/profile,/etc/bashrc 是系统全局环境变量设定 ~/.profile,~/.bashrc用户家目 ...

详解如何在 Linux 启动时自动执行命令或脚本

我一直很好奇,在启动 Linux 系统并登录的过程中到底发生了什么事情.按下开机键或启动一个虚拟机,你就启动了一系列事件,之后会进入到一个功能完备的系统中,有时,这个过程不到一分钟.当你注销或者关机时 ...

转:嵌入式linux启动时运行的inittab文件

嵌入式系统下的linux启动配置文件,不同与普通的PC linux启动配置,启动相关文件与文件的内容也要少得多.嵌入式系统下的linux启动过程一般是:     1 在bootloader中制定各种要 ...

[转载]嵌入式linux启动时运行的inittab文件

源地址:https://www.cnblogs.com/yfz0/p/5853826.html 嵌入式系统下的linux启动配置文件,不同与普通的PC linux启动配置,启动相关文件与文件的内容也要 ...

linux启动时文件系统错误问题

linux开机启动时,文件系统错误(磁盘有坏轨或文件系统出现错误)   原因:        1.系统运行时,突然断电或不正常关机,导致文件系统错误(文件系统错误并不是硬件错误,而是软件数据的问题)  ...

linux -- 启动时启动服务或者执行命令

运行等级 首先,我们需要知道Linux系统关于运行等级的知识.在不同的linux系统上(例如ubuntu和Fedora)这些数字与和所代表的意义可能不同,但主要的有以下几个: 单用户模式. 多用户模式 ...

Linux启动时显示Grub命令行及修改

1.在启动Linux系统时,如果/boot/grub/grub.cfg文件损坏或者不存在时,启动Linux时,就会有Grub命令行的提示. 如下操作,将系统自带的grub.cfg文件改名.重新启动系统 ...

随机推荐

ASP.NET MVC关于Ajax以及Jquery的无限级联动

---恢复内容开始--- 第一次发表博文,发表博文的目的是巩固自己的技术,也能够共享给大家.写的不好的地方,希望大家多给给意见.老司机勿喷 数据结构() NewsTypeId 新闻ID, NewsTy ...

LINQ系列:LINQ to SQL Transact-SQL函数

1. CASE WHEN ... THEN ... var expr = from p in context.Products select new { 商品ID = p.ProductID, 商品名 ...

概率图模型(PGM)学习笔记(三)模式判断与概率图流

我们依旧使用"学生网络"作为样例,如图1. 图1 首先给出因果判断(Causal Reasoning)的直觉解释. 能够算出来 即学生获得好的推荐信的概率大约是0.5. 但假设我们 ...

2C 产品的本质是人性,2B 产品的背后是业务(转)

本文作者李源是 BLUES 原来做 YY 语音客户端产品时候的同事,原来针对 YY 语音的游戏用户做 2C 的 PC 客户端产品和 APP,后来到某品牌手机做 2B 的后台系统.以下文章,是作者经历了 ...

二cha树

void porder(BTree *b) { BTree *St[MaxSize],*p; ; if(b!=NULL) { top++; St[top]=b; ) { p=St[top]; top- ...

Jquery 父级元素、同级元素、子元素

prev():获取指定元素的上一个同级元素(是上一个哦). prevAll():获取指定元素的前边所有的同级元素. find():查找子元素方式 next(): 获取指定元素的下一个同级元素(注意是下 ...

vim/network/ssh语法

一.编辑器——vim vi编辑器是Linux和Unix上最基本的文本编辑器,工作在字符模式下.由于不需要图形界面,vi是效率很高的文本编辑器.尽管在Linux上也有很多图形界面的编辑器可用,但vi在系 ...

网络编程一定要看过的socket另一座大山

上次的socket还有很多坑.但是总是在不断的改进的.下面就来看看一个升级版的内容 import socket server = socket.socket() ip_port = ("19 ...

cin.ignore

功能:函数用于输入流.它读入字符,直到已经读了num 个字符(默认为1)或是直到字符delim 被读入(默认为EOF).其调用形式为cin.ignore(n,终止字符)       原型:istrea ...

Python基础环境搭建

一.编程语言 1.解释型语言:每执行一次程序就要将代码翻译一次,如Java.JavaScript.VBScript.Perl.Python.Ruby.MATLAB 等都是解释型语言 2.编译型语言:程 ...

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/weixin_34911236/article/details/117313456

智能推荐

centos6.4.yum-lamp环境设置-程序员宅基地

文章浏览阅读47次。  首先防火墙开启mysql:3306 apache 80 and 81端口:vi /etc/sysconfig/iptables-A INPUT -m state --state NEW -m tcp -p tcp --dport 80 -j ACCEPT #允许80端口通过防火墙-A INPUT -m state --state NEW -m tcp -p tcp --dpor...

kvm虚拟化学习笔记(十七)之KVM到KVM之v2v迁移-程序员宅基地

文章浏览阅读80次。原创作品,允许转载,转载时请务必以超链接形式标明文章原始出处、作者信息和本声明。否则将追究法律责任。http://koumm.blog.51cto.com/703525/1304271KVM虚拟化学习笔记系列文章列表----------------------------------------kvm虚拟化学习笔记(一)之kvm虚拟化环境安..._virt-v2v -i vmx -it ssh -ip passwordfile

消息队列MQ的特点及API_mq与api接口的区别-程序员宅基地

文章浏览阅读4.1k次。消息队列技术是分布式应用间交换信息的一种技术。消息队列可驻留在内存或磁盘上,队列存储消息直到它们被应用程序读走。通过消息队列,应用程序可独立地执行--它们不需要知道彼此的位置、或在继续执行前不需要等待接收程序接收此消息。消息队列的特点:异步 --- 消息队列本身是异步的,它允许接收者在消息发送很长时间后再取回消息,这和大多数通信协议是不同的。 解耦 --- 消息队列减少了..._mq与api接口的区别

王者荣耀服务器维护多久12.4,王者荣耀12月4日维护新活动介绍 王者荣耀维护到几点...-程序员宅基地

文章浏览阅读119次。王者荣耀今天维护到几点?王者荣耀12月4号要维护多久?王者荣耀维护到几点2018?应该有不少玩家在早上都发现了王者荣耀处于维护状态。那么具体的时间是怎么样的呢?下面就随琵琶网小编来了解一下!王者荣耀维护到几点?亲爱的召唤师:我们计划在2018年12月4日7:30-9:00对IOS手Q区、安卓微信区和IOS微信区进行不停机更新。更新结束后,登录即可领取钻石*120+铭文碎片*120!【更新时间】12...

Cisco AP-Mobility Express基础-程序员宅基地

文章浏览阅读647次。Part I 介绍1.1基本概况Cisco Mobility Express这个名词出现在Cisco “8”系列的AP上,例如现在的AP1852,AP2802,AP3802等都是Mobility Express AP,该类AP也有“胖/瘦”之分,所谓的胖AP,携带的是ME的镜像,而瘦AP,和其他的AP类似,携带的是Lightweight AP的镜像。这类AP也被叫做COS AP(...

html网页布局论文,DIV+CSS在网页布局制作中的应用-程序员宅基地

文章浏览阅读945次。网页设计与制作论文第三篇:DIV+CSS在网页布局制作中的应用摘要:布局对网页的作用类似于设计图对地产开发商的作用,制作商务网页的首要内容是对网页进行布局。常见的布局方式有:表格布局、框架布局、层布局,鉴于以上布局方式均存在一定的缺陷逐渐退出历史潮流。目前流行的布局方式是DIV+CSS来制作页面,DIV主要解决网页中的元素(如文字、图片、表格、音视频等)放置在网页显示位置的问题,而CSS主要解决网..._html和css项目论文

随便推点

NIFI大数据进阶_NIFI集群知识点_集群的断开_重连_退役_卸载_总结---大数据之Nifi工作笔记0018_nifi卸载-程序员宅基地

文章浏览阅读270次。然后我们再来看如何管理集群中的节点,可以看到,如果由于一些故障导致集群的某个节点断开了,那么,这个时候,整个集群处理就会停止,那么这个时候,如果这个节点恢复了以后,整个集群才会继续运行,那么如何进行,节点的,断开,连接恢复呢。我们可以点击一下重新连接,连接上,但是这个时候没有连接上,是因为我们这个18003,这个机器,已经是断开的状态了,断开的状态,当然不能再连接了,需要从集群中的,其他机器来进行连接。然后每个机器上配置一个myid,指定一个编号,一般就是1,2,3,4,...这样。_nifi卸载

MyBatis详解-程序员宅基地

文章浏览阅读350次。MyBatis详解

Redis安装教程(保姆级详细图文)-程序员宅基地

文章浏览阅读6k次,点赞8次,收藏31次。Redis最详细安装教程·(建议收藏)_redis安装

SNMP、TELNET、SSH、FTP、DHCP、CSMA/CD面试常问协议初介绍_解释dhcp,snmp是什么?-程序员宅基地

文章浏览阅读2k次。SNMP: 简单网络管理协议(SNMP) 是专门设计用于在 IP 网络管理网络节点(服务器、工作站、路由器、交换机及HUBS等)的一种标准协议,它是一种应用层协议。面向无连接服务 Telnet协议是TCP/IP协议族中的一员,是Internet远程登录服务的标准协议和主要方式。它为用户提供了在本地计算机上完成远程主机工作的能力。在终端使用者的电脑上使用telnet程序,用它连接到服务器。终端使用者可以在telnet程序中输入命令,这些命令会在服务器上运行,就像直接在服务器的控制台上输入一样。可以在本地就能_解释dhcp,snmp是什么?

基于YOLOv7算法的高精度实时安全背心目标检测识别系统(PyTorch+Pyside6+YOLOv7)-程序员宅基地

文章浏览阅读981次,点赞19次,收藏24次。基于YOLOv7算法的高精度实时安全背心目标检测系统可用于日常生活中检测与定位安全背心,此系统可完成对输入图片、视频、文件夹以及摄像头方式的目标检测与识别,同时本系统还支持检测结果可视化与导出。本系统采用YOLOv7目标检测算法来训练数据集,使用Pysdie6框架来搭建桌面页面系统,支持PT、ONNX等模型权重作为系统的预测模型加载。本系统实现的功能包括:模型权重的选择与初始化;检测置信度与后处理IOU阈值的调节;图像的导入、检测、检测结果的可视化与目标统计;视频的导入、检测、检测结果的可视化与目标统计;文

MFC与SDK_检查mfc用到windows sdk-程序员宅基地

文章浏览阅读317次。MFC即微软基础类(Microsoft Foundation Classes),同VCL类似,是一种Application Framework,随微软Visual C++ 开发工具发布。该类库提供一组通用的可重用的类库供开发人员使用。大部分类均从CObject 直接或间接派生,只有少部分类例外。MFC 应用程序的总体结构通常由开发人员从MFC类派生的几个类和一个CWinApp类对象(应用程序对象)组成。MFC 提供了MFC AppWizard 自动生成框架。 MFC不只是一_检查mfc用到windows sdk