[Linux] sudo , su , su - 차이점
sudo
$ sudo 명령어
- sudo(=superuser do)는 현재 계정에서 로그아웃 없이 슈퍼 유저로서 root 권한만 빌리는 명령어
- 현재 로그인된 계정의 패스워드 필요
- 기본적으로 sudo 명령어를 사용 할 수 있는 사용자 혹은 그룹은 /etc/sudoers에 등록 되어야 함
sudo -s / sudo su
$ sudo -s
$ sudo su
- root 계정의 권한을 반영구 적으로 빌리고 root로 로그인한 상태의 쉘을 사용할 수 있음
- sudo su는 root로 전환했을 때, home 디렉토리가 /root로 설정되며 이는 환경변수 설정들을 root 계정의 상태로 완전히 전환
- sudo -s는 root로 전환했을 때, home 디렉토리가 사용자의 홈 디렉토리로 설정되며 이는 현재 계정의 환경변수들이 유지된 채로 환경변수들을 root로 넘길 뿐임
su
$ su 계정명
- su(=switch user)는 현재 계정을 로그아웃하지 않은 상태에서 다른 사용자의 계정으로 전환하는 명령어
- su, su - 는 모두 로그인 하려는대상 계정의 비밀번호 요구
- 현재 계정의 환경변수들을 유지한 채, 대상 계정으로 전환
su -
$ su - 계정명
- 다른 사용자의 계정으로 완전히 전환하고 전환한 사용자의 환경설정을 불러옴