sudo su와 sudo su의 차이점은 무엇입니까?


22

RHEL 머신에서 작업 할 때 sudo su -루트로 전환하는 데 사용합니다. 어느 날, 오타는 sudo su --대신 입력 한 것을 의미 했습니다. 명령을 실행하기 전에 같은 폴더에 있다는 것을 제외하고는 모든 것이 단일 하이픈과 동일 한 것 같습니다 (단일 하이픈으로 자신을 찾습니다 /root).

다른 차이점이 있습니까? 동일한 디렉토리에서 작업하려는 시나리오에서 이것을 사용하는 것이 안전합니까?

답변:


22

이중 하이픈을 제공하면 하이픈 sudo su없이 방금 실행 한 경험과 동일합니다 .

단일 하이픈을 전달하는 전달 동일 -l하거나 --login. 의 매뉴얼 페이지 su는 동작을 다음과 같이 설명합니다.

사용자가 사용자가 직접 로그인했을 것으로 예상되는 환경과 유사한 환경을 제공하십시오.

여기에는 디렉토리를 홈 디렉토리로 설정하고 많은 다른 환경 변수를 설정하는 것이 포함됩니다.

이중 하이픈을 명령에 전달하면 일반적으로 명령 줄 플래그의 끝과 플래그가 아닌 인수의 시작을 표시하는 데 사용됩니다. 예를 들어, 실행 touch -R하면 -R이 옵션이 아니라는 오류가 발생 touch하지만 실행 touch -- -R하면이라는 파일이 생성됩니다 -R. 이것은 많은 명령 줄 도구에 해당합니다 ( ls -R재귀 를 수행 ls하지만 파일 또는 디렉토리에서을 ls -- -R수행함) .ls-R

당신이 통과 할 때,이를 마무리하는 단지 --su는 기본적를 무시 --하고 전혀 어떤 옵션을 통과하지 못한처럼 행동.


나는 그것을 있지만에서 질문을 만듭니다 sudo su -sudo su -l다릅니다. 나는 단지 키에 ssh를, 그리고 특정 다른 사용자로 변경 sudo는 권한이있는 계정에서 sudo su -문제없이 사용자를 변경하지만, sudo su -l또는 sudo su --login검사에 의해 비록 (내가하지 않는하는 sudo는 암호를 요청합니다 sudo -lI을 /bin/suNOPASSWD로 실행 가능 )
karatedog

@karatedog, 질문을 만들지 않은 것 같습니다.
Wildcard
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.