sudo in bash script: Doesn't always wait for password












0















I have a simple bash script like this:



#!/usr/bin/env bash

sudo ./some_other_script_01
sudo ./some_other_script_02


When I execute this script, I always see the password prompt, as usual:



[sudo] password for user: 


However sometimes, inexplicably, before I have typed my password, ./some_other_script_01 starts getting executed (presumably without root permissions). This happens even though it did prompt me for a password (which I didn't yet provide).



Currently, when this happens, I have to kill the scripts and start again (so that they get executed with root privileges).










share|improve this question




















  • 1





    Is sudo configured with passwd_timeout set to some too small value in the sudoers file?

    – Kusalananda
    Mar 7 at 21:56











  • If you want to force sudo to ask for a password, use the -k option. Check your man page for details.

    – glenn jackman
    Mar 7 at 22:18


















0















I have a simple bash script like this:



#!/usr/bin/env bash

sudo ./some_other_script_01
sudo ./some_other_script_02


When I execute this script, I always see the password prompt, as usual:



[sudo] password for user: 


However sometimes, inexplicably, before I have typed my password, ./some_other_script_01 starts getting executed (presumably without root permissions). This happens even though it did prompt me for a password (which I didn't yet provide).



Currently, when this happens, I have to kill the scripts and start again (so that they get executed with root privileges).










share|improve this question




















  • 1





    Is sudo configured with passwd_timeout set to some too small value in the sudoers file?

    – Kusalananda
    Mar 7 at 21:56











  • If you want to force sudo to ask for a password, use the -k option. Check your man page for details.

    – glenn jackman
    Mar 7 at 22:18
















0












0








0








I have a simple bash script like this:



#!/usr/bin/env bash

sudo ./some_other_script_01
sudo ./some_other_script_02


When I execute this script, I always see the password prompt, as usual:



[sudo] password for user: 


However sometimes, inexplicably, before I have typed my password, ./some_other_script_01 starts getting executed (presumably without root permissions). This happens even though it did prompt me for a password (which I didn't yet provide).



Currently, when this happens, I have to kill the scripts and start again (so that they get executed with root privileges).










share|improve this question
















I have a simple bash script like this:



#!/usr/bin/env bash

sudo ./some_other_script_01
sudo ./some_other_script_02


When I execute this script, I always see the password prompt, as usual:



[sudo] password for user: 


However sometimes, inexplicably, before I have typed my password, ./some_other_script_01 starts getting executed (presumably without root permissions). This happens even though it did prompt me for a password (which I didn't yet provide).



Currently, when this happens, I have to kill the scripts and start again (so that they get executed with root privileges).







bash shell-script ubuntu sudo






share|improve this question















share|improve this question













share|improve this question




share|improve this question








edited Mar 7 at 22:07









Rui F Ribeiro

41.8k1483142




41.8k1483142










asked Mar 7 at 21:49









logideliclogidelic

1155




1155








  • 1





    Is sudo configured with passwd_timeout set to some too small value in the sudoers file?

    – Kusalananda
    Mar 7 at 21:56











  • If you want to force sudo to ask for a password, use the -k option. Check your man page for details.

    – glenn jackman
    Mar 7 at 22:18
















  • 1





    Is sudo configured with passwd_timeout set to some too small value in the sudoers file?

    – Kusalananda
    Mar 7 at 21:56











  • If you want to force sudo to ask for a password, use the -k option. Check your man page for details.

    – glenn jackman
    Mar 7 at 22:18










1




1





Is sudo configured with passwd_timeout set to some too small value in the sudoers file?

– Kusalananda
Mar 7 at 21:56





Is sudo configured with passwd_timeout set to some too small value in the sudoers file?

– Kusalananda
Mar 7 at 21:56













If you want to force sudo to ask for a password, use the -k option. Check your man page for details.

– glenn jackman
Mar 7 at 22:18







If you want to force sudo to ask for a password, use the -k option. Check your man page for details.

– glenn jackman
Mar 7 at 22:18












1 Answer
1






active

oldest

votes


















2














Sudo once is enough, just start the wrapper.sh with sudo. Check if you have root permission in the script no more sudo calls needed.



sudo ./wrapper.sh


wrapper.sh:



#!/usr/bin/env bash

if [ "$EUID" -ne 0 ]
then echo "Please run as root"
exit
fi

./some_other_script_01
./some_other_script_02





share|improve this answer



















  • 1





    Thank you. I've marked this as the answer because it's the right thing to do, but it still doesn't solve my mystery. I will keep investigating.

    – logidelic
    Mar 8 at 14:24












Your Answer








StackExchange.ready(function() {
var channelOptions = {
tags: "".split(" "),
id: "106"
};
initTagRenderer("".split(" "), "".split(" "), channelOptions);

StackExchange.using("externalEditor", function() {
// Have to fire editor after snippets, if snippets enabled
if (StackExchange.settings.snippets.snippetsEnabled) {
StackExchange.using("snippets", function() {
createEditor();
});
}
else {
createEditor();
}
});

function createEditor() {
StackExchange.prepareEditor({
heartbeatType: 'answer',
autoActivateHeartbeat: false,
convertImagesToLinks: false,
noModals: true,
showLowRepImageUploadWarning: true,
reputationToPostImages: null,
bindNavPrevention: true,
postfix: "",
imageUploader: {
brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
allowUrls: true
},
onDemand: true,
discardSelector: ".discard-answer"
,immediatelyShowMarkdownHelp:true
});


}
});














draft saved

draft discarded


















StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2funix.stackexchange.com%2fquestions%2f505014%2fsudo-in-bash-script-doesnt-always-wait-for-password%23new-answer', 'question_page');
}
);

Post as a guest















Required, but never shown

























1 Answer
1






active

oldest

votes








1 Answer
1






active

oldest

votes









active

oldest

votes






active

oldest

votes









2














Sudo once is enough, just start the wrapper.sh with sudo. Check if you have root permission in the script no more sudo calls needed.



sudo ./wrapper.sh


wrapper.sh:



#!/usr/bin/env bash

if [ "$EUID" -ne 0 ]
then echo "Please run as root"
exit
fi

./some_other_script_01
./some_other_script_02





share|improve this answer



















  • 1





    Thank you. I've marked this as the answer because it's the right thing to do, but it still doesn't solve my mystery. I will keep investigating.

    – logidelic
    Mar 8 at 14:24
















2














Sudo once is enough, just start the wrapper.sh with sudo. Check if you have root permission in the script no more sudo calls needed.



sudo ./wrapper.sh


wrapper.sh:



#!/usr/bin/env bash

if [ "$EUID" -ne 0 ]
then echo "Please run as root"
exit
fi

./some_other_script_01
./some_other_script_02





share|improve this answer



















  • 1





    Thank you. I've marked this as the answer because it's the right thing to do, but it still doesn't solve my mystery. I will keep investigating.

    – logidelic
    Mar 8 at 14:24














2












2








2







Sudo once is enough, just start the wrapper.sh with sudo. Check if you have root permission in the script no more sudo calls needed.



sudo ./wrapper.sh


wrapper.sh:



#!/usr/bin/env bash

if [ "$EUID" -ne 0 ]
then echo "Please run as root"
exit
fi

./some_other_script_01
./some_other_script_02





share|improve this answer













Sudo once is enough, just start the wrapper.sh with sudo. Check if you have root permission in the script no more sudo calls needed.



sudo ./wrapper.sh


wrapper.sh:



#!/usr/bin/env bash

if [ "$EUID" -ne 0 ]
then echo "Please run as root"
exit
fi

./some_other_script_01
./some_other_script_02






share|improve this answer












share|improve this answer



share|improve this answer










answered Mar 7 at 21:59









Michael D.Michael D.

1,707917




1,707917








  • 1





    Thank you. I've marked this as the answer because it's the right thing to do, but it still doesn't solve my mystery. I will keep investigating.

    – logidelic
    Mar 8 at 14:24














  • 1





    Thank you. I've marked this as the answer because it's the right thing to do, but it still doesn't solve my mystery. I will keep investigating.

    – logidelic
    Mar 8 at 14:24








1




1





Thank you. I've marked this as the answer because it's the right thing to do, but it still doesn't solve my mystery. I will keep investigating.

– logidelic
Mar 8 at 14:24





Thank you. I've marked this as the answer because it's the right thing to do, but it still doesn't solve my mystery. I will keep investigating.

– logidelic
Mar 8 at 14:24


















draft saved

draft discarded




















































Thanks for contributing an answer to Unix & Linux Stack Exchange!


  • Please be sure to answer the question. Provide details and share your research!

But avoid



  • Asking for help, clarification, or responding to other answers.

  • Making statements based on opinion; back them up with references or personal experience.


To learn more, see our tips on writing great answers.




draft saved


draft discarded














StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2funix.stackexchange.com%2fquestions%2f505014%2fsudo-in-bash-script-doesnt-always-wait-for-password%23new-answer', 'question_page');
}
);

Post as a guest















Required, but never shown





















































Required, but never shown














Required, but never shown












Required, but never shown







Required, but never shown

































Required, but never shown














Required, but never shown












Required, but never shown







Required, but never shown







Popular posts from this blog

How to reconfigure Docker Trusted Registry 2.x.x to use CEPH FS mount instead of NFS and other traditional...

is 'sed' thread safe

How to make a Squid Proxy server?