转载自
http://kimva.blogbus.com/logs/19989279.html
(1)/etc/profile
全局(公有)配置,不管是哪个用户,登录时都会读取该文件。
(2)/ect/bashrc
Ubuntu没有此文件,与之对应的是/ect/bash.bashrc
它也是全局(公有)的
bash执行时,不管是何种方式,都会读取此文件。
(3)~/.profile
若bash是以login方式执行时,读取~/.bash_profile,若它不存在,则读取~/.bash_login,若前两者不存在,读取~/.profile。
另外,图形模式登录时,此文件将被读取,即使存在~/.bash_profile和~/.bash_login。
(4)~/.bash_login
若bash是以login方式执行时,读取~/.bash_profile,若它不存在,则读取~/.bash_login,若前两者不存在,读取~/.profile。
(5)~/.bash_profile
Unbutu默认没有此文件,可新建。
只有bash是以login形式执行时,才会读取此文件。通常该配置文件还会配置成去读取~/.bashrc。
(6)~/.bashrc
当bash是以non-login形式执行时,读取此文件。若是以login形式执行,则不会读取此文件。
(7)~/.bash_logout
注销时,且是longin形式,此文件才会读取。也就是说,在文本模式注销时,此文件会被读取,图形模式注销时,此文件不会被读取。
下面是在本机的几个例子:
1. 图形模式登录时,顺序读取:/etc/profile和~/.profile
2. 图形模式登录后,打开终端时,顺序读取:/etc/bash.bashrc和~/.bashrc
3. 文本模式登录时,顺序读取:/etc/bash.bashrc,/etc/profile和~/.bash_profile
4. 从其它用户su到该用户,则分两种情况:
(1)如果带-l参数(或-参数,--login参数),如:su -l username,则bash是lonin的,它将顺序读取以下配置文件:/etc/bash.bashrc,/etc/profile和~/.bash_profile。
(2)如果没有带-l参数,则bash是non-login的,它将顺序读取:/etc/bash.bashrc和~/.bashrc
5. 注销时,或退出su登录的用户,如果是longin方式,那么bash会读取:~/.bash_logout
6. 执行自定义的shell文件时,若使用“bash -l a.sh”的方式,则bash会读取行:/etc/profile和~/.bash_profile,若使用其它方式,如:bash a.sh, ./a.sh,sh a.sh(这个不属于bash shell),则不会读取上面的任何文件。
7. 上面的例子凡是读取到~/.bash_profile的,若该文件不存在,则读取~/.bash_login,若前两者不存在,读取~/.profile。
分享到:
相关推荐
在ZedBoard上部署Ubuntu 16.04文件系统有以下几个关键点: 1. **安装流程**:首先,你需要将`koheron-zedboard.img`这个文件写入到一个SD卡或USB驱动器中。通常使用工具如`dd`命令在Linux环境下完成。然后,将SD卡...
在硬盘安装过程中,主要涉及几个关键文件,这些文件在提供的压缩包中已经包含:grub menu.lst、grldr、vmlinuz和initrd.gz。 首先,让我们理解这些文件的作用: 1. **grub menu.lst**:GRUB(GRand Unified ...
离线安装步骤通常包括以下几个关键步骤: 1. **下载和传输安装包**: 你需要确保已下载包含MySQL 5.7.25和其三个依赖包的压缩文件到你的Ubuntu系统。这通常通过USB驱动器、网络共享或者其他文件传输方式完成。 2....
在提供的文件列表中,我们看到与引导安装相关的几个关键文件:grub.exe、grldr、initrd.gz、menu.lst和vmlinuz。这些文件在Ubuntu引导过程中起着重要作用。 1. **GRUB(Grand Unified Bootloader)**: - `grub....
在Ubuntu中,我们可以使用多种方法来格式化SD卡,但推荐使用官方推荐的Panasonic SDFormatter工具,这个工具简单易用,且兼容性良好。在“文件”应用中,找到名为"SD卡格式化工具PanasonicSDFormatter_ha"的压缩包,...
在实现TCP通信时,我们需要关注以下几个关键步骤: 1. **初始化网络环境**:确保QT的网络模块已经正确安装和配置,可以在Ubuntu中通过QT Creator或命令行进行编译和调试。 2. **创建服务器端**:在服务端程序中,...
- **邮件列表**:推荐了几个Ubuntu相关的邮件列表,方便用户交流问题。 - **Internet Relay Chat (IRC)**:介绍了如何加入Ubuntu IRC频道参与讨论。 - **搜索引擎**:推荐了一些常用的搜索引擎,帮助用户快速找到...
- **发行版升级**:详细说明了如何从一个版本平滑过渡到另一个版本,特别是提到的Breezy、Dapper和Edgy这几个版本的升级流程。 - **软件包管理**:深入介绍了APT的工作原理,以及如何有效地使用它来管理软件包。 - *...
在深入探讨如何在Ubuntu下下载Android源码之前,我们首先需要理解几个关键概念:Ubuntu、Android源码以及必要的软件工具。Ubuntu是一种基于Linux的操作系统,以其稳定性和安全性著称,广泛用于开发环境。Android源码...
选择在VMware Workstation虚拟机中安装Ubuntu 10.04有几个关键原因: 1. **资源隔离**:虚拟化允许您在一个物理主机上运行多个独立的操作系统,每个操作系统都有自己的资源分配,这有助于测试新软件或配置,而不会...
启动 VMware,然后将下载的 Ubuntu 11.10 ISO 镜像文件拖放到虚拟光驱中。在初始设置阶段,系统要求输入用户名和密码,这与通常在安装过程中设置不同。接着,选择安装目录,预设空间为 20GB,建议根据需求增加。完成...
从BIOS/UEFI初始化到内核加载,再到init进程启动,每一个环节都至关重要。 通过以上详细的步骤介绍,相信您已经掌握了如何解决启动Ubuntu时进入BusyBox界面的问题。希望这些信息能够帮助您有效地处理类似的系统启动...
7. **启动脚本**:除了主要的安装脚本"ubuntu.sh",压缩包中的"启动脚本"可能用于在安装后自动执行某些初始化任务,例如激活网络、设置时区、安装额外的驱动程序等。 在使用这个脚本前,你需要确保你的计算机已经...
安装Keystone通常涉及以下几个步骤: 1. **系统准备**:确保你的服务器运行着支持OpenStack Folsom的Ubuntu或CentOS等操作系统,并且已经安装了必要的依赖库和工具。 2. **安装Keystone**:通过包管理器(如`apt-...
在Ubuntu上进行STM32的开发测试,主要涉及到以下几个核心知识点: 1. **交叉编译工具链**:由于STM32硬件平台与Ubuntu Linux的架构不同,我们需要使用交叉编译工具链,如`gcc-arm-none-eabi`,来构建针对STM32的可...
该工具主要实现了以下几个功能: 1. **打开目标设备**:通过 USB 总线找到并打开指定的 USB 设备。 2. **准备写入缓冲区**:读取指定文件的内容,并准备好用于写入 USB 设备的数据缓冲区。 #### 主要代码分析 - **...
- **/boot**:存储启动时使用的文件,如内核映像和初始化脚本等。 - **/dev**:设备文件所在的位置。 - **/etc**:存放系统配置文件。 - **/home**:用户的主目录,每个用户都有一个独立的子目录。 - **/lib**:包含...
同时,设备树(Device Tree)是描述硬件结构的文件,它告诉内核如何初始化硬件资源。编译设备树编译器(dtc)是为了生成设备树二进制文件,这个文件会与内核一起加载到目标系统中。 总的来说,这个文档提供了一个...
我们将分为几个关键步骤进行讲解。 ### 一、启动到救援模式 首先,需要通过启动时选择菜单进入救援模式(Rescue Mode)。不同的Linux发行版进入救援模式的方式可能略有不同,但通常是在BIOS设置中选择启动设备后,...