본문 바로가기
리눅스/리눅스 기초 과정

리눅스 su username 와 su - username 명령어: 어떤 것을 사용해야 할까요?

by 혼자왔서연 2023. 7. 30.
반응형

su username과 su - username 명령어

이번시간에는 리눅스에서 사용되는 su username과 su - username 명령어의 차이점을 비교하고, 각 명령어의 사용법과 활용 방법을 알아보겠습니다

su username 명령어란?

su username 명령어는 리눅스 운영체제에서 다른 사용자로 전환하는 명령어입니다. su 명령어 뒤에 사용자 이름을 입력하여 해당 사용자의 권한을 얻을 수 있습니다. 이를 통해 다른 사용자로서 특정 작업을 수행할 수 있습니다.

su - username 명령어란?

su - username 명령어는 su 명령어와 비슷하지만, 하이픈(-)이 포함된 형태입니다. 이 명령어를 사용하여 다른 사용자로 전환할 때, 해당 사용자의 환경 설정을 따라갑니다. 즉, 환경 변수 및 디렉토리 설정이 변경됩니다.

두 명령어의 주요 차이점

  • su username 명령어는 사용자만 변경되지만, 환경 설정은 현재 사용자와 동일하게 유지됩니다.
  • su - username 명령어는 사용자 변경과 동시에 해당 사용자의 환경 설정을 따라갑니다.

언제 어떤 명령어를 사용해야 할까요?

  • su username 명령어는 다른 사용자의 권한을 얻는 경우에만 사용해야 합니다. 환경 설정을 변경하지 않고 해당 사용자의 작업만 수행하고 싶을 때 유용합니다.
  • su - username 명령어는 해당 사용자의 환경 설정이 필요한 경우에 사용합니다. 예를 들어, 사용자별로 다른 PATH 설정 등을 따라가야 할 때 유용합니다.

실습

먼저, 환경변수를 생성하고 두 명령어의 차이를  echo 명령어를 통해 보여드리겠습니다

간단한 실습을 위해서 adduser로 계정 두개를 만들겠습니다  

adduser monkey
adduser dog

  2023.07.26 - [리눅스/리눅스 기초 과정] - 실무자가 알려주는 리눅스 명령어 모음 - 기초편

 

실무자가 알려주는 리눅스 명령어 모음 - 기초편

리눅스 명령어 배우기 네트워크 관제,시스템 엔지니어,정보통신,통합,구축 이모든 부분에서 리눅스를 처음 접하시는 분들에게는..리눅스 기초 명령어는 선택이 아닌 필수!!! 리눅스 명령어 기초

ubuntu2304.tistory.com

 

(만드는 법 잊어버리셨다면 참고해주세요)

1단계 - 계정에 로그인하고 환경변수를 생성한다 그리고 출력확인

su monkey
 export my_name="MAMAMO"

 

echo $my_name

2단계 - 계정에 로그인하고  출력확인 후 USER 로그아웃

su dog
echo $my_name
exit

3단계 - 계정에 su  - 로 로그인 후 결과 출력

su - dog
echo $my_name

su - 에 결과물

글을 마치며

리눅스에서의 su username과 su - username 명령어를 비교해보았습니다. su username은 다른 사용자로 전환하지만 환경 설정은 현재 사용자와 동일하게 유지됩니다. 반면에 su - username은 해당 사용자의 환경 설정을 따라가므로, 다른 사용자의 작업을 수행할 때 유용하게 활용할 수 있습니다. 적절한 명령어의 선택은 시스템 관리와 보안에 큰 영향을 미치므로, 신중하게 사용해야 합니다. 리눅스 환경에서 명령어를 올바르게 이해하고 활용하면, 보다 효율적인 시스템 관리가 가능할 것입니다. 더 많은 유용한 정보를 제공하기 위해 노력하겠습니다. 감사합니다.

반응형

Animated Rainbow Nyan Cat