Linux의 환경 변수에는 시스템 수준과 사용자 수준이 있습니다. 시스템 수준 환경 변수는 시스템에 로그인하는 모든 사용자가 읽어야 하는 시스템 변수이고, 사용자 수준 환경 변수는 시스템에 로그인할 때 로드되는 환경 변수입니다. 사용자가 시스템을 사용합니다. 따라서 다음 글에서는 리눅스 환경변수 설정에 관한 관련 정보를 주로 소개합니다. 도움이 필요한 친구들이 참고할 수 있습니다.
소개
우리가 보통 리눅스를 사용하다 보면 환경 변수를 설정해야 하는 경우가 많습니다. 이때 우리는 보통 온라인으로 검색만 하면 누군가 자신의 경험을 소개해 줍니다. 그러나 문제는 그들의 방법이 다르다는 것입니다. 일부는 구성이 /etc/profile에 있다고 말하고, 일부는 /etc/environment에 구성되어 있다고 말하고, 일부는 ~/.bash_profile에 구성되어 있다고 말하고, 일부는 ~에 구성되어 있다고 말합니다. /.bashrc, ~/.bashrc에 구성되어 있다고도 하고, ~/.bash_login에 구성되어 있다고도 하고, ~/.profile에 구성되어 있다고도 합니다. . . 이것은 정말 공평하고 합리적입니다. . . 그렇다면 문제는 Linux가 구성 파일을 어떻게 읽고 그 기반이 무엇인지입니다. 다음 기사에서는 자세한 소개를 제공하므로 살펴 보겠습니다.
Documentation
저는 출처를 밝히지 않고 결론만 말하면 사람들에게 "내가 왜 당신을 믿어야 하는가"라는 느낌을 주는 행동을 항상 싫어합니다. 그리고 사실, 출처가 없는 일상적인 토론에서 도출된 결론은 기본적으로 다른 사람들의 말을 바탕으로 합니다. 사실, 다른 사람에게 물어보는 대신 문서를 물어보세요. 한참을 검색해본 결과, 실제로는 bash 명령의 man 문서에 환경변수 설정 관련 문서가 있다는 것을 알게 되었습니다. 결국 이것이 우리가 흔히 사용하는 쉘입니다.
$man bash에서 다음과 같은 텍스트를 찾았습니다.
INVOCATION A login shell is one whose first character of argument zero is a -, or one started with the --login option. An interactive shell is one started without non-option arguments and without the -c option whose standard input and error are both connected to terminals (as determined by isatty(3)), or one started with the -i option. PS1 is set and $- includes i if bash is interactive, allowing a shell script or a startup file to test this state. The following paragraphs describe how bash executes its startup files. If any of the files exist but cannot be read, bash reports an error. Tildes are expanded in filenames as described below under Tilde Expan‐ sion in the EXPANSION section. When bash is invoked as an interactive login shell, or as a non-inter‐ active shell with the --login option, it first reads and executes com‐ mands from the file /etc/profile, if that file exists. After reading that file, it looks for ~/.bash_profile, ~/.bash_login, and ~/.profile, in that order, and reads and executes commands from the first one that exists and is readable. The --noprofile option may be used when the shell is started to inhibit this behavior. When a login shell exits, bash reads and executes commands from the file ~/.bash_logout, if it exists. When an interactive shell that is not a login shell is started, bash reads and executes commands from /etc/bash.bashrc and ~/.bashrc, if these files exist. This may be inhibited by using the --norc option. The --rcfile file option will force bash to read and execute commands from file instead of /etc/bash.bashrc and ~/.bashrc. When bash is started non-interactively, to run a shell script, for example, it looks for the variable BASH_ENV in the environment, expands its value if it appears there, and uses the expanded value as the name of a file to read and execute. Bash behaves as if the following com‐ mand were executed: if [ -n "$BASH_ENV" ]; then . "$BASH_ENV"; fi but the value of the PATH variable is not used to search for the file‐ name.
이 텍스트를 통해 소위 환경 변수 구성 파일이 쉘 로그인 시 자동으로 로드되는 파일이라는 것을 알았습니다. 그러나 그가 정의한 로그인은
login 쉘 로그인의 두 가지 유형으로 나뉩니다.
대화형 쉘 로그인.
로그인 쉘 로그인
소위 로그인 쉘 로그인은 실제로 비밀번호를 입력해야 하는 로그인을 말합니다. 구체적으로는 부팅, ssh 로그인 또는 "로그인을 위해 비밀번호를 입력하는 척"하기 위해 bash --login을 입력하는 것이 포함됩니다. 이 로그인 방법에서는 시스템이 먼저 /etc/profile 파일을 읽은 다음 ~/.bash_profile, ~/.bash_login 및 ~/.profile 세 파일을 순서대로 검색하고 첫 번째 파일만 실행합니다. 그 중 하나의 파일이 존재합니다. 특히 마지막 세 파일 간의 "논리적 OR" 관계에 주의해야 합니다. 많은 경우 ~/.profile 파일이 수정된 것을 발견하게 됩니다. 다시 로그인한 후에 구성이 적용되지 않는 이유는 무엇입니까? 이는 처음 두 파일 중 하나가 시스템에 존재하여 나머지 파일을 읽지 못할 수 있기 때문입니다.
아래 세 그림은 이 문제를 잘 보여줍니다.
대화형 셸 로그인
소위 대화형 셸 로그인은 실제로 로그인 셸 로그인에 상대적입니다. 조건. 우리는 일반적으로 로그인 후 터미널을 열려면 마우스 오른쪽 버튼을 클릭하거나 대화형 쉘 로그인인 터미널을 열려면 CTRL+ALT+T를 클릭합니다. 이 로그인 방식에서는 시스템이 /etc/bash.bashrc와 ~/.bashrc를 차례로 읽어서 실행하게 됩니다. 일반적인 상황에서는 일부 상수와 별칭이 기본적으로 ~/.bashrc 파일에 기록됩니다. 특히 $PS1 변수는 bash 프롬프트의 형식, 스타일 및 색상을 결정합니다.
참고:
이 두 가지 로그인 방법은 서로 다른 구성 파일을 읽고 서로 겹치지 않는다는 점에 유의해야 합니다. 따라서 환경 변수를 구성해야 할 때 우리 고유의 환경 변수에 따라 구성해야 합니다. 로그인 방법은 필요한 변수를 다른 파일로 구성합니다. 예를 들어 다음과 같은 고전적인 질문이 있습니다.
일반적인 문제
비정상적인 환경 구성 파일 구성의 예는 SSH를 사용하여 서버에 로그인할 때 프롬프트가 다음과 같다는 것입니다.
bash-4.3$
예, 세 번째와 같습니다 위의 그림 그림의 bash 처럼 프롬프트가 굉장히 이상하고, ls 를 입력하면 파일과 폴더의 색상 구분이 없습니다. 이 문제는 분명히 $PS1 환경 변수가 구성되지 않아 기본값을 사용하게 되었기 때문에 발생하지만, .bashrc 파일을 확인하면 $PS1 변수가 정의되어 있는 것으로 나타났습니다. , 그러나 ssh는 로그인 셸에 속하므로 로그인 시 읽는 구성 파일은 /etc/profile과 같은 파일이며 .bashrc는 읽혀지지 않습니다. 이 문제의 원인은 일반적으로 실수로 /etc/profile의 기본 구성 파일을 삭제했기 때문에 해결 방법도 매우 간단합니다. . . .bashrc의 일부 파일을 /etc/profile에 복사하세요.
이 질문이 우리에게 주는 깨달음은 서버에 대한 변수를 구성할 때 /etc/profile 또는 ~/.bash_profile에서 구성을 시도한다는 것입니다. 왜냐하면 .bashrc 파일은 기본적으로 ssh를 사용하여 서버에 로그인할 때 사용되지 않기 때문입니다. 자신의 컴퓨터에 대한 환경 변수를 구성할 때 .bashrc에서 구성해 보십시오. 그러면 터미널을 여는 동안 이 파일을 읽어서 로그아웃하지 않고도 구성을 적용할 수 있습니다(/etc/는 로그아웃 후 다시 로그인 후 적용됩니다.)
요약
위 내용은 Linux에서 환경 변수를 구성하는 방법에 대한 단계 공유(그림)의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

Linux 운영을 마스터하는 이유는 광범위한 응용 프로그램 시나리오와 강력한 기능 때문입니다. 1) Linux는 개발자, 시스템 관리자 및 기술 애호가에게 적합하며 서버 관리, 임베디드 시스템 및 컨테이너화 기술에 사용됩니다. 2) Learning Linux는 파일 시스템 구조, 쉘 사용, 사용자 권한 관리 및 프로세스 관리로 시작할 수 있습니다. 3) Linux 명령 줄은 핵심 도구로 LS, MKDIR, CD 등과 같은 쉘을 통해 명령을 실행하고 리디렉션 및 파이프 라인 작업을 지원합니다. 4) 고급 사용법에는 TAR 명령 및 조건부 판단을 사용한 백업 스크립트와 같은 자동 스크립트 작성이 포함됩니다. 5) 일반적인 오류에는 Echo, Set-X 및 $?를 통해 디버깅 할 수있는 권한, 경로 및 구문 문제가 포함됩니다. 6) 성능 최적화 제안

Linux 시스템의 5 개의 기둥은 다음과 같습니다. 1. Kernel, 2. System Library, 3. Shell, 4. 파일 시스템, 5. 시스템 도구. 커널은 하드웨어 리소스를 관리하고 기본 서비스를 제공합니다. 시스템 라이브러리는 애플리케이션에 대한 사전 컴파일 된 기능을 제공합니다. 쉘은 사용자가 시스템과 상호 작용할 수있는 인터페이스입니다. 파일 시스템은 데이터를 구성하고 저장합니다. 시스템 도구는 시스템 관리 및 유지 보수에 사용됩니다.

Linux 시스템에서 시작시 특정 키를 누르거나 "sudosystemctlrescue"와 같은 명령을 사용하여 유지 보수 모드를 입력 할 수 있습니다. 유지 보수 모드는 관리자가 파일 시스템 수리, 비밀번호 재설정, 보안 취약성 패치 등과 같은 간섭없이 시스템 유지 관리 및 문제 해결을 수행 할 수 있습니다.

Linux 초보자는 파일 관리, 사용자 관리 및 네트워크 구성과 같은 기본 작업을 마스터해야합니다. 1) 파일 관리 : mkdir, touch, ls, rm, mv 및 cp 명령을 사용하십시오. 2) 사용자 관리 : userAdd, passwd, userdel 및 usermod 명령을 사용합니다. 3) 네트워크 구성 : ifconfig, echo 및 ufw 명령을 사용하십시오. 이러한 운영은 Linux 시스템 관리의 기초이며, 마스터하면 시스템을 효과적으로 관리 할 수 있습니다.

이 기사는 Linux의 Sudo 권한을 관리하는 방법, 보안 및 보안 모범 사례를 포함하여 Linux의 Sudo 권한을 관리하는 방법을 설명합니다. 주요 초점은 /etc /sudoers를 안전하게 편집하고 액세스를 제한하는 데 중점을 둡니다. 문자 수 : 159

이 기사는 Google Authenticator를 사용하여 Linux에서 SSH에 대한 2 단계 인증 (2FA) 설정, 설치, 구성 및 문제 해결 단계에 대한 가이드를 제공합니다. Enhanced SEC와 같은 2FA의 보안 이점을 강조합니다.

이 기사는 Linux 시스템 성능을 모니터링하기위한 Top, HTOP 및 VMSTAT 사용에 대해 설명하고 효과적인 시스템 관리를위한 고유 한 기능 및 사용자 정의 옵션을 자세히 설명합니다.

기사는 APT, YUM 및 DNF를 사용하여 Linux의 소프트웨어 패키지 관리, 설치, 업데이트 및 제거를 다루는 것에 대해 설명합니다. 다양한 분포에 대한 기능과 적합성을 비교합니다.


핫 AI 도구

Undresser.AI Undress
사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover
사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool
무료로 이미지를 벗다

Clothoff.io
AI 옷 제거제

AI Hentai Generator
AI Hentai를 무료로 생성하십시오.

인기 기사

뜨거운 도구

DVWA
DVWA(Damn Vulnerable Web App)는 매우 취약한 PHP/MySQL 웹 애플리케이션입니다. 주요 목표는 보안 전문가가 법적 환경에서 자신의 기술과 도구를 테스트하고, 웹 개발자가 웹 응용 프로그램 보안 프로세스를 더 잘 이해할 수 있도록 돕고, 교사/학생이 교실 환경 웹 응용 프로그램에서 가르치고 배울 수 있도록 돕는 것입니다. 보안. DVWA의 목표는 다양한 난이도의 간단하고 간단한 인터페이스를 통해 가장 일반적인 웹 취약점 중 일부를 연습하는 것입니다. 이 소프트웨어는

Atom Editor Mac 버전 다운로드
가장 인기 있는 오픈 소스 편집기

SublimeText3 Mac 버전
신 수준의 코드 편집 소프트웨어(SublimeText3)

SublimeText3 영어 버전
권장 사항: Win 버전, 코드 프롬프트 지원!

ZendStudio 13.5.1 맥
강력한 PHP 통합 개발 환경
