개키우는개발자 : )

리눅스 프로필과 환경변수를 설정하는 방법 본문

Linux/Linux 무작정 따라하기

리눅스 프로필과 환경변수를 설정하는 방법

DOGvelopers 2019. 2. 13. 14:40
반응형

광고 클릭은 개발자(저) 에게 큰힘이 됩니다!!'ㅁ'

프로필과 환경변수를 설정하는 방법



리눅스 부팅 순서



초기화 스크립트 작성 위치 이미지초기화 스크립트 작성 위치



Shell 스크립트 실행 순서


로그인 할 때 실행되는 스크립트 이미지로그인 할 때 실행되는 스크립트


두개가 실행되는 이유


/etc/profile


모든 사용자에게 적용되는 설정이 적용


~/.profile


현재 로그인한 사용자에게 적용되는 설정



/etc/profile 확인해보기.


cd /etc -> ls


etc폴더에는 여러가지 파일들이 있다 


etc 디렉토리 이미지etc 디렉토리



ls profile -> ls -l profile -> cat profile


profile 파일이 있는지 확인해본다. 그이후 상세보기로 파일 형식이 어떤지 확인한다. profile 은 일반파일 이다 파일 내용을 확인해본다.


profile 파일 이미지profile 파일 스크립트



cd profile.d/ -> ls


if [ -d /etc/profile.d ] 디렉토리 에 가서 리스트 목록 확인.



profile 파일 별칭 설정 해보기(1)


sudo nano ../profile


제일 밑에 alias aa='ls-l


alias profile 이미지profile alias 추가



aa 실행


aa 가 없다 나온다. aa 를 적용하는 방법은 두 가지가 있다. source 명령어를 이용하거나 다시 재접속 하는 방법이 있다.

aa를 실행하기 위해 재접속을 하겠다. exit && logout


수정된 profile 이미지aa 실행




profile 파일 별칭 설정 해보기(2)


profile 에 가서 alias 값을 지워준다. 지운 내용이 적용되기 위해 다시 재접속을 한다.


profile alias 삭제 이미지profile alias 삭제



cd profile.d/ -> ls


본인의 디렉토리 위치마다 명령어가 다르다. 나는 etc 디렉토리 안에 있기때문에 

etc안에 profile.d 디렉토리로 이동후 파일을 하나 만든다.



sudo nano alias.sh


sh 확장자는 shell을 의미한다. alias aa='ls -l' 생성후 저장하고 나온다.


alias.sh 파일 이미지alias.sh 파일



alias.sh 파일은 일반파일로 분류 되어있다 실행권한도 없지만 한번 로그아웃하고 실행해보겠다.






재접속 후 실행


잘 실행이 된다 그이유는 /etc/profile -> /etc/profile.d 을 읽고 그다음 ~/.profile 읽는다.





방금 만들었던 /etc/profile.d/alias.sh 파일을 삭제후 이제 개인화된 프로필 에 설정을 하겠다.


/etc/profile.d 디렉토리 에 이동되어 있어야한다.


sudo rm alias.sh 삭제후 재접속 실행해보니 삭제되었다.


삭제 이미지삭제 이미지



profile 파일 별칭 설정 해보기(3)


cd ~


내 개인 디렉토리 이동


ls -a


숨겨진 파일 까지 확인하니 .profile이라는 파일이 있다. 이파일을 편집해보겠다.


숨겨진파일 이미지숨겨진파일 확인


nano .profile


alias aa='ls -l'추가 아오 지겨워.. 또 재접속 해야 실행된다..


개인화 폴더 프로필 수정.profile 수정



실행 이미지실행 완료



그렇다면 다른 유저로 로그인을 해보겠다. 


개인 폴더에서 .profile 을 변경한것 이기 때문에 다른 계정에는 적용되지 않는다.


실행 안됨실행되지 않음



Shell 에서 추가로 읽어주는 파일


/etc/profile 외에 /etc/bash.hashrc ... 가 있다.


shell에서 추가로 읽어주는 파일 이미지shell에서 추가로 읽어주는 파일



그렇다면 이렇게 나뉘어져 있는 이유


로그인 상태일땐 /etc/profile , ~/.profile 전체 프로세스가 실행되는데


비로그인 창 일땐 bashrc 프로세스가 실행된다.



환경 변수를 설정할 수 있는 파일들



환경 변수를 설정할 수 있는 파일들환경 변수를 설정할 수 있는 파일들



PAM(Pluggable Authentication Modules)


PAM(Pluggable Authentication Modules)PAM(Pluggable Authentication Modules)



리눅스 - PAM은 인증 작업을 4가지 독립적인 관리 그룹으로 분리한다.


- 계정 모듈(account module)들은 명시된 계정이 현재 조건에서 유효한 인증 목표인지를 검사한다. 이것은계정 유효기간, 시간 그리고 사용자가 요청된 서비스에 접근 가능한지 같은 조건을 포함한다.


- 인증 모듈(authentication module)들은 비밀번호를 요청하고 검사하는 것 같이 사용자의 신원을 확인한다. 또한 인증 정보를 keyring 같은 다른 시스템들에 전달한다.


- 비밀번호 모듈(password module)들은 비밀번호 갱신을 책임진다. 또한 강력한 비밀번호 강화에도 사용된다.


- 세션 모듈(session module)들은 세션 시작과 끝에 수행되는 행동을 정의한다. 그 후 사용자는 성공적으로 인증된다.



구글링을 하다보면 jdk 들을 profile~,etc 등등 설정하는 방법이 다 다르지만 /etc/environment 에 설정하면된다.


jdk path 경로설정 이미지jdk path 경로 설정 위치



여러가지 방법의 파일을 읽는순서 설정방법을 실습해보았습니다.


좀 복잡하긴 하지만 파일실행이 어떤식으로 동작하는지 알 수 있어 꼭 실습하기를 권합니다.



출처[뉴렉처] 유튜브 채널

https://www.youtube.com/watch?v=gRUV7sICeNc&index=35&list=PLq8wAnVUcTFU9zLWK-dHWrvTJ0PF8Y0Sf

반응형
Comments