"su" 와 "su - root" 는 분명히 차이가 있습니다.

root 로 로그인을 변경한다는 것에는 동일합니다.
"su - root" 대신 "su -" 만 사용하셔도 됩니다.

만약 su 를 통해서 root 로 로그인 한다고 가정하고..

그냥 su 만 사용하실 경우에는 root 권한에 포함되어 있는 환경변수는 하나도 가져오지 않습니다. 즉 root 권한의 PATH나 기타 여러가지의 환경변수가 포함되지 않고 단지 로그인 계정만 바꾼다는 것이지요... 환경이 바뀌지 않는다는 걸 확인 할 수 있는 것은... su 명령만으로 로그인을 해 보시면 일반 사용자가 지금 위치해 있는 디렉토리에 그대로 있을겁니다. 즉 환경 변수는 제외하고, 권한만 바꾼거지요.

그리고 su - 의 경우 환경변수까지 다 가져옵니다. 위에서 했던 방법처럼 su - 하시고 로그인 해 보시면 기본 /root 디렉토리로 이동해 있을 겁니다. 환경변수를 가져온다는 말이겠지요.

물론 다른 사용자로의 전환도 마찬가지입니다. 일반 유저가 test1으로 전환하고자 할 경우
su test1 를 하거나 su - test1을 사용합니다.
다른 것은... 환경 변수를 가져오냐 가져오지 않냐의 차이입니다.

"-" 하나 때문에 실제로는 엄청나게 차이나는 겁니다.

 

'리눅스' 카테고리의 다른 글

리눅스 백업 관련  (0) 2015.08.31
DNS zone 파일  (0) 2015.08.27
Timestamp 이용하기  (0) 2015.08.19
vim ctrl+z 후 복귀 = fg  (0) 2015.07.20
Redhat Package Manager - RPM  (0) 2015.07.20
Posted by 캐논볼
,