반응형
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 |