백그라운드에서 루트로 명령을 실행하고 싶습니다. 질문이 있어요과 같이주문하다.
그리고스도, 나는 사용할 수 있습니다 sudo --background <command>
. 비밀번호를 묻고 백그라운드에서 실행됩니다. doas <command> &
백그라운드에서 비밀번호를 요청하고 영원히 멈춰 있기 때문에 이 작업을 수행할 수 없습니다 .
맨페이지를 확인했지만 이에 상응하는 옵션을 찾지 못했습니다.과 같이.
답변1
sh -c
이를 수행하는 한 가지 방법은 bash -c
또는(또는 명령에 필요한 모든 쉘)을 사용하여 인라인 스크립트를 시작하고 doas
해당 스크립트가 백그라운드에서 명령을 실행하도록 하는 것입니다. 백그라운드에서 여러 개의 연속 명령을 실행하려면 해당 명령을 서브셸에 수집합니다.
doas sh -c '(sleep 10; echo done) &'
위의 명령은 문자열을 인쇄하기 전에 10초 동안 기다리는 백그라운드 하위 쉘과 함께 루트로 실행되는 하위 쉘을 시작합니다 done
. 인라인 스크립트의 명령이 백그라운드에서 시작되면 루트가 아닌 초기 대화형 셸에 대한 제어권이 사용자에게 반환됩니다.
이는 에도 적용됩니다 sudo
.