물결표가 홈 디렉토리로 돌아가지 않습니다.

물결표가 홈 디렉토리로 돌아가지 않습니다.

sudo 명령을 사용하여 사용자를 변경한 후 물결표(~)는 현재 사용자의 홈 디렉터리를 반환하지 않고 이전에 로그인한 사용자의 홈 디렉터리를 반환합니다. 확장해야 하지만 기존 애플리케이션과의 호환성을 유지 echo ~USERNAME해야 합니다 .echo ~

user1@server1:-$ whoami
user1
user1@server1:-$ sudo -u user2 -s /bin/bash
user2@server1:-$ whoami
user2


user2@server1:- echo ~
/home/user1
user2@server1:-$ echo ~user2
/home/user2

답변1

sudo호출자의 홈 디렉토리를 반드시 변경하지는 않습니다. 다음을 사용하여 -H이를 보장 해야 합니다 .

sudo -H -u user2 -s

또는

sudo -u user2 -i

man sudo자세한 내용은 다음을 참조하세요.

답변2

sudo 명령은 HOME 환경 변수를 설정하지 않습니다. 이렇게 하려면 를 추가 set_home하거나 always_set_home보관 해야 합니다 sudoers.

관련 정보