배포하는 과정에서, sudo su - root
라는 명령어를 입력하는데,
sudo는 알겠는데 root는 왜나오지.. 싶어서 정리 하지 않고선 못넘어 가겠으니
오늘의 정리는 이것으로 정했다.😲
여러 블로그를 읽고 돌아다녀 보니
리눅스의 다중 사용자 개념으로 사용되는 것이 root와 admin, user인 듯 하다.
차이점을 보자면 아래와 같다.
sudo
$ sudo 명령어
일반 사용자가 root권한을 잠시 빌려명령을 실행
su
$ su 계정명
현재 사용자를로그아웃하지 않은 상태에서 다른 사용자의 계정으로 전환하는 명령어
su -
$ su - 계정명
다른 사용자의 계정으로 완전히 전환하고, 전환한 사용자의 환경설정을 불러오는 명령어
su와 su-의 차이
su 명령어는 현재 계정의 환경변수들을 유지한 채, 대상 계정으로 전환한다.
반면에 su - 명령어는 다른 사용자의 계정으로 전환하고 환경변수까지 그 계정의 상태로 완전히 전환한다.
+) 검색하다 발견한것
검색하다 명령어 정리한 것들 보면 $로 시작하는것도, #로 시작하는 것도 있는데,
이 차이는 user일때와 , root일때의 차이이라고 한다.
$ → user상태일때 표시
# → root상태일때 표시
Root 해당 시스템 전체의 관리권한을 가진 전지전능한 ★슈퍼유저
admin 일반유저, Root가 원하면 관리권한을 줄 수 도 있음
user 그냥 일반유저
admin은 일반계정의 하나일 뿐이고 그 자체로는 "관리자"의 권한을 가지고 있지 않다고 한다. 그냥 이름만 admin 인 user계정과 같다.
근데 왜 하필 이름이 admin 이냐 하면,
컴퓨터에서 시스템관련 명령을 내릴때 그 계정으로 들어와서 정식으로 허가를(root의 권한을) 얻으라는 의미입니다.
즉, 다른 일반계정으로는 개인적인 일을, admin 으로는 컴퓨터 관리에 관한 일만 수행하도록 서로 분리시켜서 처리하라는 뜻
sudo ➡︎ 일반 사용자가 root권한을 잠시 빌려 명령을 실행
기본적으로 sudo 명령어를 사용할 수 있는 사용자 혹은 그룹은 /etc/sudoers 에 등록이 되어 있어야 한다.
계속 관리자 권한이 필요한 경우에는 매번 명령어를 입력할 때마다 sudo를 붙이기 번거로우므로 sudo -s 또는 sudo su 명령어를 통해 root 계정을 반영구적으로 사용 할 수 있게 하는 것이다.
✓ Reference
https://2cpu.co.kr/bbs/board.php?bo_table=QnA&wr_id=448140
https://www.leafcats.com/168
포스팅 잘보구 감돠!
'--login' 을 가장 짧게 쭐여쓴게 '-' 임돠
--login (아이고 매번 졸라귀챦 😣) => -l (alias치기도 귀챦 😣) => - (어우썅.. 개편함 👏)
따라서 su - 는 su --login root와 동일한 명령임돠!
그래서 ‘-’의 유무가 환경변수와 워킹디렉토리에 영향을 줌돠
너무 잘 정리해주신 내용에 덧붙여주시면 이해하기 더 좋을 것 같아 댓글 남김다