현재 사용자가 Unix 및 Linux에서 시스템을 종료하는 데 필요한 권한을 가지고 있는지 (안전한 방법으로) 확인하는 방법은 무엇입니까?
현재 사용자에게 시스템을 종료하는 데 필요한 권한이 있는지 확인해야 하는 스크립트를 작성 중입니다. 하지만 물론 확인하고 싶습니다.앞으로실제로 시스템을 종료하려고 합니다.
이상적으로는 가능한 한 많은 Unix 및 Linux 배포판에서 실행되는 솔루션을 원합니다.
현재 사용자에게 시스템 종료 권한이 있는지 확인하기 위해 스크립트에서 무엇을 할 수 있습니까?
답변1
이 옵션이 모든 Unixoid 플랫폼에서 사용 가능한지 알 수는 없지만 -k
시도해 보고 종료 코드를 확인할 수 있습니다. 그러나 이로 인해 모든 터미널에 경고가 발생할 수 있습니다.
$ shutdown -k -r now; echo $?
shutdown: you must be root to do that!
Usage: shutdown [-akrhPHfFnc] [-t sec] time [warning message]
[...]
-k: don't really shutdown, only warn.
[...]
1
$ sudo shutdown -k -r now; echo $?
Broadcast message from root@macalla (pts/2) (Mon Oct 3 11:25:09 2022):
The system is going down for reboot NOW!
Shutdown cancelled.
0