user1
의 일부 wheel group
이고 소유하고 있는 사용자가 있습니다 root privileges
.
user1
user2
다음 명령을 사용하여 비밀번호를 변경할 수 있습니다(내 이해로는 이것이 passwd
로 실행된다는 것입니다 root
).
[user1@rhel-85 ~]$ sudo passwd user2
그러나 user1
실행 passwd
하려고 하면 user2
다음과 같은 오류가 발생합니다.
[user1@rhel-85 ~]$ su -u user2 passwd
Try 'su --help' for more information.
[user1@rhel-85 ~]$
답변1
su는 루트 쉘을 시작하는 데 사용되며, 다른 모든 명령이 루트 액세스를 사용할 수 있도록 허용합니다. su
-u 옵션이 없습니다 ...
https://man7.org/linux/man-pages/man1/su.1.html
그것이 바로 그것이 말하고/불평하는 이유입니다.
자세한 내용을 보려면 "su --help"를 시도하십시오.
user1을 휠 그룹에 추가한 다음 Bodo가 지적한 대로 실행해야 합니다.
sudo -u user2 passwd
임시 권한 상승으로 단일 명령을 실행하려고 하기 때문에 여기서는 sudo를 사용하려는 것이 분명합니다. (이것이 sudo의 목적입니다).
그러나 완전성을 위해 Bib 사용자가 지적했듯이 그렇게 할 수 있습니다.
su - _user_ foo
...이렇게 하면 다른 사용자의 루트로 실행할 수 있습니다.
su
( ) 의 "로그인 쉘" 옵션입니다 -, -l or --login
. 이는 sudo
사용자에게 권한이 없는 경우(그리고 관리자가 사용자에게 권한을 부여하는 것을 원하지 않는 경우) 루트 권한을 부여하는 데도 편리합니다.