본문 바로가기

개발공부

[docker][linux] docker bash -l 옵션

반응형

docker를 사용하다 보니 컨테이너 안의 bash를 실행할 때 -l 옵션이 어떤 역할을 하는지 중요하게 되었다

--help를 했는데 나타나지 않기에 검색해서 찾아봤다 .

 

-l은 로그인 쉘을 실행하겠다는건데 -l 을 하지 않으면 root계정의 모든 권한을 사용할 수 없다.

 

분명 root계정을 가지고 있지만 권한이 없다고 나타나니 이때는 -l옵션을 줘서 쉘에 접근하면 된다. 

 

로그인 쉘 절차 

1. /etc/profile

   .(source 명령으로  /etc/bash.bashrc 를 읽어들인다. 

2. ~/.bash_profile

3. ~/.bash_login

4. ~/.profile 

  ~/.bashrc 파일을 읽는다. 

순서로 파일을 읽는다. 

 

이에 login shell이 아닌 경우에는 source 명령어를 바로 실행할 수 없고 bash.bashrc를 바로 읽지 못한다.

non login shell 로 접속을 하게 되면 위와같은 파일은 실행할 수 없다. 

 

논 로그인 쉘 절차 

1. /etc/bash.bashrc 

2. ~/.bashrc

 

하지만 논 로그인 쉘로 해도 bash -l 명령어를 통해 login shell 에 갈 수 있다. 

반응형

'개발공부' 카테고리의 다른 글

[jstree] jstree 유의점  (0) 2019.12.21
사용하는 포트  (0) 2018.02.14
REST API  (0) 2018.01.22
JSON  (0) 2018.01.22
INFORMATION_SCHEMA  (0) 2017.12.27