일반 사용자로 전원 끄기 또는 재부팅


17

명령을 실행 poweroff하거나 reboot하나의 슈퍼 유저해야합니다. 어쨌든 이것을 일반 사용자로 실행할 수 있습니까? sudo재부팅하거나 전원을 끌 때마다 비밀번호를 입력 하고 싶지 않습니다 .


2
대답은 배포판이 사용하는 초기화 시스템에 따라 다릅니다 ... 예를 들어 systemd활성 logind세션을 사용하면 다른 사용자가 아직 로그인하지 않은 경우 권한 상승없이 재부팅하거나 전원을
끌 수 있습니다

@jasonwryan 나는 현재 기본적으로 사용하지 않는 우분투를 사용 systemd하고 있습니다. 따라서 아치와 같은 다른 배포판은 권한을 승격시키지 않고 재부팅 할 수 있습니까?
Stormvirux

예 : 첫 번째 의견의 조건에 따라.
jasonwryan

답변:


22

/etc/sudoersadmin 그룹에있는 모든 사용자가 암호를 요구하지 않고 다음 명령을 실행할 수 있도록 변경했습니다 .

sudo halt
sudo reboot
sudo poweroff

다음 줄을 추가하면됩니다. /etc/sudoers

## Admin user group is allowed to execute halt and reboot 
%admin ALL=NOPASSWD: /sbin/halt, /sbin/reboot, /sbin/poweroff

관리자 그룹에 자신을 추가하십시오.

한 명의 사용자 만이 작업을 수행 할 수있게하려면를 제거하고 %admin다음과 username같이 바꾸십시오.

## user is allowed to execute halt and reboot 
stormvirux ALL=NOPASSWD: /sbin/halt, /sbin/reboot, /sbin/poweroff

/etc/sudoerswith man sudoers또는 온라인 맨 페이지에 대해 자세히 알아볼 수 있습니다


4

원하는 /etc/sudoers.d이름 으로 새 파일을 만들고 (이름을 지정 함 'shutdown') 다음 줄을 안에 넣을 수도 있습니다.

# Allows me to shutdown the system without a password

yourUserName ALL = NOPASSWD: /sbin/halt, /sbin/reboot, /sbin/poweroff

사용자 이름으로 "yourUserName"을 변경하고 사용할 명령을 추가하거나 제거하면 개인적으로 사용됩니다 shutdown. 특정 파일을 생성 할 때의 주요 차이점 중 하나는 sudoers.d이 파일이 시스템 업그레이드 후에도 유지된다는 것입니다


1
이 방법을 선택한 경우 에서 파일을 읽을 수 /etc/sudoers있는 적절한 #include지시어 가 있는지 확인 하십시오 /etc/sudoers.d/.
patricktokeeffe

2

setuid를 사용하여 트릭으로이 작업을 수행 할 수도 있습니다. 때로는 setuid / setgid 비트를 무시하기 때문에 모든 시스템에서 작동하는지 알 수 없습니다.

필자의 경우 시스템 상태 변경을 수행 할 수있는 사용자 그룹을 지정할 수 있습니다 adm. 그런 다음이 그룹에 적절한 사용자를 추가하십시오.

gpasswd -a $USER adm

권한을 지정하십시오.

chmod 4550 /usr/bin/reboot

ls -l outpus는 다음과 같아야합니다.

-r-sr-x--- 1 root adm 18928 Mar 13  2015 /usr/bin/reboot

나중에 다음을 입력하면됩니다.

reboot

1

가장 간단한 해결책 :

sudo echo $USER >> /etc/shutdown.allow

그런 다음이 명령 중 하나를 사용할 수 있습니다.

shutdown -ah now   // halt
shutdown -ar now   // reboot

에 따르면 남자 종료-a 루트가 아닌 사용에 대한 옵션 :

-a 인수 shutdown와 함께 호출 된 경우 ( / etc / inittab 에서 shutdown 호출에 추가 ) /etc/shutdown.allow 파일 이 있는지 확인합니다 . 그런 다음 해당 파일의 로그인 이름을 가상 콘솔에 로그인 한 사용자 목록과 비교합니다 ...

데비안 리눅스에서 작동합니다. 에 32 개의 사용자 이름에 대한 제한이 /etc/shutdown.allow있습니다.


4
Fedora, CentOS 또는 RHEL에는 이러한 옵션이 없습니다.
fpmurphy

1
이것은 또한 우분투에서는 작동하지 않습니다. 적어도 그것은 문서에서 얻은 것입니다. 이것이 데비안 전용 기능인지 확인하는 것이 도움이 될 것입니다.
라파엘 아 렌스

아직 =} 2020 년 우분투 (18.04)에서
팅크
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.