sudo -c를 실행하고 권한을 유지할 수 있습니까?

sudo -c를 실행하고 권한을 유지할 수 있습니까?

명령을 실행한 후 권한을 즉시 제거(예: 일반 사용자로 돌아가기)하는 대신 su root -c "$some_command"사용자로 로그인을 실행하고 유지할 수 있습니까 ?root

즉, 명령을 으로 실행 하고 까지 권한을 root유지하고 싶습니다 .suexit

예를 들어, 현재 다음 작업만 수행하면 됩니다.
1. 실행 su2. 메시지가 표시되면
비밀번호를 입력합니다. 3. 실행(rootPassword:
$some_command또는: source ./.bashrc).
4. 상승된 권한을 유지하고 다음이 될 때까지 다른 작업을 수행합니다...
5. exit.

그리고 를 사용하면 -c다른 작업을 수행할 시간을 주지 않고 첫 번째 명령만 실행하고 종료됩니다. 그렇지 않다면 세상의 종말은 아니고 다른 방법으로 대처할 수 있는 방법도 있겠지만 이렇게라도 할 수 있으면 좋을 것 같습니다.


참고: 물론 su root -l -c "$some_command"이것이 해결책이라고 생각합니다. 그러나
a. 디렉토리 로 변경됩니다 /root(실제로 문제는 아닙니다).
b. -l실행 되면 -c첫 번째 명령을 실행하고 종료됩니다.

답변1

다른 셸을 시작할 수 있습니다.

su root -c "${some_command}; bash"

bash필요한 경우 원하는 케이스로 교체하세요.

관련 정보