Linux login/etc/profile, ~/.bash_profile and so on several files loading process

Source: Internet
Author: User

About logging in to Linux,/etc/profile, ~/.bash_profile, and so on several files of the execution process.

The procedure to execute a file when logging on to Linux is as follows:

When you first log in to Linux, start the/etc/profile file, and then start one of the ~/.bash_profile, ~/.bash_login, or ~/.profile files in the user directory, in the following order: ~/.bash_ Profile, ~/.bash_login, ~/.profile. If the ~/.bash_profile file exists, the ~/.BASHRC file is typically executed. Because the following code is commonly found in the ~/.bash_profile file:

If [-f ~/.BASHRC]; Then

. ./BASHRC

Fi

In ~/.BASHRC, the following code is generally available:

if [-F/ETC/BASHRC]; Then

. /bashrc

Fi

Therefore, ~/.BASHRC will call the/ETC/BASHRC file. Finally, when you exit the shell, the ~/.bash_logout file is also executed.

The order of execution is:

/etc/profile---(~/.bash_profile | ~/.bash_login | ~/.profile), ~/.BASHRC,/ETC/BASHRC, ~/.bash_logo UT

For the scope of each file, the following instructions were found on the Web:

(1)/etc/profile: This file sets the environment information for each user of the system, and the file is executed when the user logs on for the first time. and collect the shell settings from the configuration file of the/ETC/PROFILE.D directory.

(2)/ETC/BASHRC: Executes this file for each user running the bash shell. When the bash shell is opened, the file is read.

(3) ~/.bash_profile: Each user can makeUse this file to enter the shell information that is dedicated to your own use, and when the user logs in, the file executes only once!by default, he sets some environment variables to execute the user's. bashrc file.

(4) ~/.BASHRC: This file contains bash information dedicated to your bash shell, whenWhen you log on and every time you open a new shell, the file is read.

(5) ~/.bash_logout: Executes the file each time it exits the system (exiting the Bash shell). In addition, variables set in/etc/profile (global) can be applied to any user, while variables set in ~/.BASHRC, etc. (local) Only the variables in/etc/profile are inherited, and they are "parent-child" relationships.

(6) ~/.bash_profile is the interactive login way into bash run ~/.BASHRC, ~/.BASHRC is interactive non-login way into bash usually the two settings are roughly the same, so the former will usually call the latter.

Linux login/etc/profile, ~/.bash_profile and so on several files loading process

Related Article

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.