यहाँ मेरे लिए काम किया गया है, यह देखते हुए कि मैं पासवर्ड प्रमाणीकरण रखना चाहता हूं (इसलिए मैं NOPASSWD
उबंटू या कुंजियों का उपयोग नहीं करना चाहता ) - Ubuntu 14.04 पर:
sudo
रिमोट मशीन पर "ओपन अप" tty_tickets
एक अस्थायी फ़ाइल के माध्यम से अक्षम करके /etc/sudoers.d/
(जिसे डेबियन पर समर्थित होना चाहिए, देखें /etc/sudoers.d/README
), और "उपयोगकर्ता के कैश्ड क्रेडेंशियल्स को अपडेट करें", जो "एक और 15 मिनट के लिए सूडो टाइमआउट को बढ़ाता है"
- भागो
rsync
के साथ sudo
के रूप में अन्य उत्तर में दिखाया गया है
sudo
में अस्थायी फ़ाइल को हटाकर रिमोट मशीन पर "बंद करें" /etc/sudoers.d/
, जो फिर से सक्षम करता हैtty_tickets
... या, कमांड लाइनों के साथ:
ssh -t $REMOTEPC 'echo "Defaults !tty_tickets" | sudo tee /etc/sudoers.d/temp; sudo -v'
rsync -aP -e 'ssh' '--rsync-path=sudo rsync' /etc/pulse/client.conf $REMOTEPC:/etc/pulse/client-copy.conf
ssh -t $REMOTEPC 'sudo rm -v /etc/sudoers.d/temp; sudo -v'
स्थानीय मशीन पर इन कमांड को चलाने पर मुझे जो प्रतिक्रियाएं मिलती हैं:
$ ssh -t $REMOTEPC 'echo "Defaults !tty_tickets" | sudo tee /etc/sudoers.d/temp; sudo -v'
remoteuser@$REMOTEPC's password:
[sudo] password for remoteuser:
Defaults !tty_tickets
Connection to $REMOTEPC closed.
$ rsync -aP -e 'ssh' '--rsync-path=sudo rsync' /etc/pulse/client.conf $REMOTEPC:/etc/pulse/client-copy.conf
remoteuser@$REMOTEPC's password:
sending incremental file list
client.conf
1269 100% 0.00kB/s 0:00:00 (xfr#1, to-chk=0/1)
$ ssh -t $REMOTEPC 'sudo rm -v /etc/sudoers.d/temp; sudo -v'
remoteuser@$REMOTEPC's password:
removed ‘/etc/sudoers.d/temp’
[sudo] password for remoteuser:
Connection to $REMOTEPC closed.
ध्यान दें कि sudo -v
हर बार फ़ाइलों के बाद चलना चाहिए /etc/sudoers.d/
, इसलिए उसमें परिवर्तन स्वीकार किए जाते हैं।