본문 바로가기

리눅스

'su'와 'su -' 의 차이

반응형

su(switch user=substitute user)의 약지로 말 그대로 유저를 변경해주는 리눅스 명령어 입니다.

'su'와 'su -'는 환경변수를 가지고 오느냐 아니냐의 차이를 가지고 있습니다.

'su' root 권한에 포함되어 있는 환경변수는 하나도 가져오지 않습니다. 즉 root 권한의 PATH나 기타 여러가지의 환경변수가 포함되지 않고 단지 로그인 계정만 바꾼다는 것입니다. 'su'로 로그인시 일반 사용자가 위치해 있는 디렉토리 그대로 권한만 바뀌는 것을 확인 할 수 있습니다.


'su -'의 경우 'su -root'와 같은 의미로 환경변수까지 다 가지고 root의 권한을 갖는 것으로 'su -'로 로그인시 /root디렉토리로 이동해 권한이 바뀌는 것을 확인 할 수 있습니다.


일반 유저도 마찬가지로 'su test1'과 'su -test1'은 환경변수를 가지고 오느냐 아니냐의 차이가 존재하는 것입니다.

[출처] # 리눅스 // SU 명령어|작성자 듀폰


반응형